summaryrefslogtreecommitdiffstats
path: root/firmware/export
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2008-10-19 14:11:01 +0000
committerDave Chapman <dave@dchapman.com>2008-10-19 14:11:01 +0000
commit08c41d42bb699a1be99c9696b4d4fb7b40e8723a (patch)
tree2834231979d52b81a7860fd4a5e19ed79b3ffee7 /firmware/export
parent14ee31865e366dc19fb87caf4877a8d93305a01b (diff)
downloadrockbox-08c41d42bb699a1be99c9696b4d4fb7b40e8723a.tar.gz
rockbox-08c41d42bb699a1be99c9696b4d4fb7b40e8723a.tar.bz2
rockbox-08c41d42bb699a1be99c9696b4d4fb7b40e8723a.zip
Add e200v2 and m200v2 targets. Move the telechips lcd-ssd1815.c (currently used by Logik DAX and m200v1 ports) driver up in the target tree and share with the m200v2 - as2525 parts contributed by Rafael Carre. Includes the start (but is still very incomplete) of an LCD driver for the e200v2. m200v2 is not yet fully supported by mkamsboot - that will come soon. Also some minor cleanups for the Clip.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18836 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config-clip.h13
-rw-r--r--firmware/export/config-e200v2.h202
-rw-r--r--firmware/export/config-m200v2.h127
-rw-r--r--firmware/export/config.h7
4 files changed, 344 insertions, 5 deletions
diff --git a/firmware/export/config-clip.h b/firmware/export/config-clip.h
index 0685e45fd9..d2c2b51d18 100644
--- a/firmware/export/config-clip.h
+++ b/firmware/export/config-clip.h
@@ -4,7 +4,7 @@
#define TARGET_TREE /* this target is using the target tree system */
/* For Rolo and boot loader */
-#define MODEL_NUMBER 50
+#define MODEL_NUMBER 40
#define MODEL_NAME "Sandisk Sansa Clip"
#define FIRMWARE_OFFSET_FILE_DATA 0
#define FIRMWARE_OFFSET_FILE_CRC 0
@@ -69,11 +69,9 @@
/* There is no hardware tone control */
#define HAVE_SW_TONE_CONTROLS
-#define HAVE_AS3525
-
/* define this if you have a real-time clock */
#ifndef BOOTLOADER
-//#define CONFIG_RTC RTC_AS3525
+#define CONFIG_RTC RTC_AS3525
#endif
/* Define this if you have a software controlled poweroff */
@@ -148,7 +146,7 @@
/* enable these for the experimental usb stack */
#define HAVE_USBSTACK
#define USB_VENDOR_ID 0x0781
-#define USB_PRODUCT_ID 0x7421
+#define USB_PRODUCT_ID 0x7433
#endif /* BOOTLOADER */
/* Virtual LED (icon) */
@@ -157,6 +155,11 @@
/* Define this if you have adjustable CPU frequency */
#define HAVE_ADJUSTABLE_CPU_FREQ
+#define MI4_FORMAT
+#define BOOTFILE_EXT "sansa"
+#define BOOTFILE "rockbox." BOOTFILE_EXT
+#define BOOTDIR "/.rockbox"
+
#define ICODE_ATTR_TREMOR_NOT_MDCT
#define INCLUDE_TIMEOUT_API
diff --git a/firmware/export/config-e200v2.h b/firmware/export/config-e200v2.h
new file mode 100644
index 0000000000..ac41cd33c4
--- /dev/null
+++ b/firmware/export/config-e200v2.h
@@ -0,0 +1,202 @@
+/*
+ * This config file is for the Sandisk Sansa e200v2
+ */
+#define TARGET_TREE /* this target is using the target tree system */
+
+/* For Rolo and boot loader */
+#define MODEL_NUMBER 41
+#define MODEL_NAME "Sandisk Sansa e200v2 series"
+
+#define HW_SAMPR_CAPS (SAMPR_CAP_44)
+
+/* define this if you have recording possibility */
+#define HAVE_RECORDING
+
+#define REC_SAMPR_CAPS (SAMPR_CAP_22)
+#define REC_FREQ_DEFAULT REC_FREQ_22 /* Default is not 44.1kHz */
+#define REC_SAMPR_DEFAULT SAMPR_22
+
+/* Define bitmask of input sources - recordable bitmask can be defined
+ explicitly if different */
+#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_FMRADIO)
+
+/* define this if you have a bitmap LCD display */
+#define HAVE_LCD_BITMAP
+
+/* define this if you have a colour LCD */
+#define HAVE_LCD_COLOR
+
+/* define this if you want album art for this target */
+#define HAVE_ALBUMART
+
+/* define this if you have a light associated with the buttons */
+#define HAVE_BUTTON_LIGHT
+
+/* define this if you have access to the quickscreen */
+#define HAVE_QUICKSCREEN
+
+/* define this if you have access to the pitchscreen */
+#define HAVE_PITCHSCREEN
+
+/* define this if you would like tagcache to build on this target */
+#define HAVE_TAGCACHE
+
+/* LCD dimensions */
+#define LCD_WIDTH 176
+#define LCD_HEIGHT 220
+#define LCD_DEPTH 16 /* 65536 colours */
+#define LCD_PIXELFORMAT RGB565 /* rgb565 */
+
+/* define this if you have LCD enable function */
+#define HAVE_LCD_ENABLE
+
+/* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE
+ should be defined as well. */
+#define HAVE_LCD_SLEEP
+#define HAVE_LCD_SLEEP_SETTING
+
+/* define this if you can flip your LCD */
+#define HAVE_LCD_FLIP
+
+/* define this if you can invert the colours on your LCD */
+#define HAVE_LCD_INVERT
+
+/* #define IRAM_LCDFRAMEBUFFER IDATA_ATTR *//* put the lcd frame buffer in IRAM */
+
+#define CONFIG_KEYPAD SANSA_E200_PAD
+
+/* Define this if you do software codec */
+#define CONFIG_CODEC SWCODEC
+/* There is no hardware tone control */
+#define HAVE_SW_TONE_CONTROLS
+
+/* Define this if you have an AMS AS3525 */
+#define HAVE_AS3525
+
+/* define this if you have a real-time clock */
+#ifndef BOOTLOADER
+#define CONFIG_RTC RTC_AS3525
+#endif
+
+/* Define this if you have a software controlled poweroff */
+#define HAVE_SW_POWEROFF
+
+/* Some Sansa E200s seem to be FAT16 formatted */
+#define HAVE_FAT16SUPPORT
+
+/* The number of bytes reserved for loadable codecs */
+#define CODEC_SIZE 0x100000
+
+/* The number of bytes reserved for loadable plugins */
+#define PLUGIN_BUFFER_SIZE 0x80000
+
+#define AB_REPEAT_ENABLE 1
+
+/* FM Tuner */
+/* #define CONFIG_TUNER LV24020LP */
+/* #define HAVE_TUNER_PWR_CTRL */
+
+/* Define this for LCD backlight available */
+#define HAVE_BACKLIGHT
+#define HAVE_BACKLIGHT_BRIGHTNESS
+
+/* define this if the unit uses a scrollwheel for navigation */
+#define HAVE_SCROLLWHEEL
+/* define from which rotation speed [degree/sec] on the acceleration starts */
+#define WHEEL_ACCEL_START 540
+/* define type of acceleration (1 = ^2, 2 = ^3, 3 = ^4) */
+#define WHEEL_ACCELERATION 1
+
+/* define this if you have a flash memory storage */
+#define HAVE_FLASH_STORAGE
+
+/* define this if the flash memory uses the SecureDigital Memory Card protocol */
+#define HAVE_ATA_SD
+
+#define BATTERY_CAPACITY_DEFAULT 750 /* default battery capacity */
+#define BATTERY_CAPACITY_MIN 750 /* min. capacity selectable */
+#define BATTERY_CAPACITY_MAX 750 /* max. capacity selectable */
+#define BATTERY_CAPACITY_INC 0 /* capacity increment */
+#define BATTERY_TYPES_COUNT 1 /* only one type */
+
+/* Hardware controlled charging? FIXME */
+#define CONFIG_CHARGING CHARGING_SIMPLE
+
+/* define this if the unit can be powered or charged via USB */
+#define HAVE_USB_POWER
+
+/** Non-simulator section **/
+#ifndef SIMULATOR
+
+/* Define this if you have an AMS AS3525*/
+#define CONFIG_CPU AS3525
+
+/* Define this if you want to use the AS2525 i2c interface */
+#define CONFIG_I2C I2C_AS3525
+
+/* define this if the hardware can be powered off while charging */
+/* Sansa can't be powered off while charging */
+/* #define HAVE_POWEROFF_WHILE_CHARGING */
+
+/* The start address index for ROM builds */
+#define ROM_START 0x00000000
+
+/* Define this to the CPU frequency */
+#define CPU_FREQ 75000000
+
+/* Type of LCD TODO: hopefully the same as the x5 but check this*/
+#define CONFIG_LCD LCD_X5
+
+/* Offset ( in the firmware file's header ) to the file CRC and data. These are
+ only used when loading the old format rockbox.e200 file */
+#define FIRMWARE_OFFSET_FILE_CRC 0x0
+#define FIRMWARE_OFFSET_FILE_DATA 0x8
+
+#ifndef BOOTLOADER
+#define HAVE_MULTIVOLUME
+#define HAVE_HOTSWAP
+#endif
+
+/* #define USB_IPODSTYLE */
+
+/* USB On-the-go */
+#define CONFIG_USBOTG USBOTG_AS3525
+
+/* enable these for the experimental usb stack */
+#define HAVE_USBSTACK
+#define USB_VENDOR_ID 0x0781
+#define USB_PRODUCT_ID 0x7423
+
+/* Virtual LED (icon) */
+#define CONFIG_LED LED_VIRTUAL
+
+/* Define this if you have adjustable CPU frequency */
+#define HAVE_ADJUSTABLE_CPU_FREQ
+
+#define MI4_FORMAT
+#define BOOTFILE_EXT "sansa"
+#define BOOTFILE "rockbox." BOOTFILE_EXT
+#define BOOTDIR "/.rockbox"
+
+#define ICODE_ATTR_TREMOR_NOT_MDCT
+
+#define INCLUDE_TIMEOUT_API
+
+#endif /* SIMULATOR */
+
+/** Port-specific settings **/
+
+/* Main LCD backlight brightness range and defaults */
+#define MIN_BRIGHTNESS_SETTING 1
+#define MAX_BRIGHTNESS_SETTING 12
+#define DEFAULT_BRIGHTNESS_SETTING 6
+
+/* Default recording levels */
+#define DEFAULT_REC_MIC_GAIN 23
+#define DEFAULT_REC_LEFT_GAIN 23
+#define DEFAULT_REC_RIGHT_GAIN 23
+
+#ifdef E200R_INSTALLER
+#define IRAMORIG 0x40004000
+#endif
+
diff --git a/firmware/export/config-m200v2.h b/firmware/export/config-m200v2.h
new file mode 100644
index 0000000000..9386a157f6
--- /dev/null
+++ b/firmware/export/config-m200v2.h
@@ -0,0 +1,127 @@
+/*
+ * This config file is for the Sansa M200 series
+ */
+#define TARGET_TREE /* this target is using the target tree system */
+
+/* For Rolo and boot loader */
+#define MODEL_NUMBER 42
+
+#define MODEL_NAME "Sandisk Sansa m200 series"
+
+/* Enable FAT16 support */
+#define HAVE_FAT16SUPPORT
+
+/* define this if you have recording possibility */
+//#define HAVE_RECORDING
+
+/* Define bitmask of input sources - recordable bitmask can be defined
+ explicitly if different */
+//#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_LINEIN | SRC_CAP_SPDIF)
+
+/* define this if you have a bitmap LCD display */
+#define HAVE_LCD_BITMAP
+
+/* define this if you can flip your LCD */
+#define HAVE_LCD_FLIP
+
+/* define this if you can invert the colours on your LCD */
+#define HAVE_LCD_INVERT
+
+/* define this if you have access to the quickscreen */
+#define HAVE_QUICKSCREEN
+/* define this if you have access to the pitchscreen */
+#define HAVE_PITCHSCREEN
+
+/* define this if you would like tagcache to build on this target */
+#define HAVE_TAGCACHE
+
+/* define this if you have a flash memory storage */
+#define HAVE_FLASH_STORAGE
+
+/* LCD dimensions */
+#define LCD_WIDTH 128
+#define LCD_HEIGHT 64
+#define LCD_DEPTH 1
+
+#define LCD_PIXELFORMAT VERTICAL_PACKING
+
+/* define this to indicate your device's keypad */
+#define CONFIG_KEYPAD SANSA_M200_PAD
+
+/* define this if you have a real-time clock */
+#define CONFIG_RTC RTC_AS3525
+
+/* define this if you have RTC RAM available for settings */
+//#define HAVE_RTC_RAM
+
+/* Define this if you have a software controlled poweroff */
+#define HAVE_SW_POWEROFF
+
+/* The number of bytes reserved for loadable codecs */
+#define CODEC_SIZE 0x38000
+
+/* The number of bytes reserved for loadable plugins */
+#define PLUGIN_BUFFER_SIZE 0x10000
+
+#define AB_REPEAT_ENABLE 1
+
+/* Define this if you do software codec */
+#define CONFIG_CODEC SWCODEC
+
+/* Define this if you have the TLV320 audio codec */
+/*#define HAVE_TLV320*/
+
+/* TLV320 has no tone controls, so we use the software ones */
+#define HAVE_SW_TONE_CONTROLS
+
+/* Define this for LCD backlight available */
+#define HAVE_BACKLIGHT
+
+#define CONFIG_I2C I2C_AS3525
+
+#define BATTERY_CAPACITY_DEFAULT 1500 /* default battery capacity */
+#define BATTERY_CAPACITY_MIN 1500 /* min. capacity selectable */
+#define BATTERY_CAPACITY_MAX 3200 /* max. capacity selectable */
+#define BATTERY_CAPACITY_INC 50 /* capacity increment */
+#define BATTERY_TYPES_COUNT 1 /* only one type */
+
+/* define this if the unit should not shut down on low battery. */
+#define NO_LOW_BATTERY_SHUTDOWN
+
+#ifndef SIMULATOR
+
+/* Define this if you have an AMS AS3525 */
+#define CONFIG_CPU AS3525
+
+/* Define this if you have ATA power-off control */
+#define HAVE_ATA_POWER_OFF
+
+/* Define this to the CPU frequency */
+#define CPU_FREQ 120000000
+
+/* Offset ( in the firmware file's header ) to the file CRC */
+#define FIRMWARE_OFFSET_FILE_CRC 0
+
+/* Offset ( in the firmware file's header ) to the real data */
+#define FIRMWARE_OFFSET_FILE_DATA 8
+
+/* Software controlled LED */
+#define CONFIG_LED LED_VIRTUAL
+
+#define CONFIG_LCD LCD_SSD1815
+
+#define BOOTFILE_EXT "sansa"
+#define BOOTFILE "rockbox." BOOTFILE_EXT
+#define BOOTDIR "/"
+
+#define IBSS_ATTR_VOICE_STACK
+#define ICODE_ATTR_TREMOR_NOT_MDCT
+#define ICODE_ATTR_TREMOR_MDCT
+#define ICODE_ATTR_FLAC
+#define IBSS_ATTR_FLAC_DECODED0
+#define ICONST_ATTR_MPA_HUFFMAN
+#define IBSS_ATTR_MPC_SAMPLE_BUF
+#define ICODE_ATTR_ALAC
+#define IBSS_ATTR_SHORTEN_DECODED0
+
+#endif /* SIMULATOR */
diff --git a/firmware/export/config.h b/firmware/export/config.h
index 7d36289ff2..73ecca1495 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -173,6 +173,7 @@
#define I2C_DM320 12 /* DM320 style */
#define I2C_S5L8700 13
#define I2C_JZ47XX 14 /* Ingenic Jz47XX style */
+#define I2C_AS3525 15
/* CONFIG_LED */
#define LED_REAL 1 /* SW controlled LED (Archos recorders, player) */
@@ -199,6 +200,7 @@
#define RTC_S5L8700 14
#define RTC_S35390A 15
#define RTC_JZ47XX 16 /* Ingenic Jz47XX */
+#define RTC_AS3525 17
/* USB On-the-go */
#define USBOTG_ISP1362 1362 /* iriver H300 */
@@ -206,6 +208,7 @@
#define USBOTG_M5636 5636 /* iAudio X5 */
#define USBOTG_ARC 5020 /* PortalPlayer 502x */
#define USBOTG_JZ4740 4740 /* Ingenic Jz4740/Jz4732 */
+#define USBOTG_AS3525 3525 /* AMS AS3525 */
/* Multiple cores */
#define CPU 0
@@ -306,6 +309,10 @@
#include "config-ondavx767.h"
#elif defined(SANSA_CLIP)
#include "config-clip.h"
+#elif defined(SANSA_E200V2)
+#include "config-e200v2.h"
+#elif defined(SANSA_M200V2)
+#include "config-m200v2.h"
#else
/* no known platform */
#endif