fuzev2: prevent button light flickering when accessing µSD
[kugel-rb.git] / firmware / export / config / sansae200v2.h
blob5694f0b9e29f5deb678e7abab655ecb133f3647e
1 /*
2 * This config file is for the Sandisk Sansa e200v2
3 */
4 #define TARGET_TREE /* this target is using the target tree system */
6 /* For Rolo and boot loader */
7 #define MODEL_NUMBER 41
8 #define MODEL_NAME "Sandisk Sansa e200v2 series"
10 #define HW_SAMPR_CAPS SAMPR_CAP_ALL
12 /* define this if you have recording possibility */
13 #define HAVE_RECORDING
15 #define REC_SAMPR_CAPS SAMPR_CAP_ALL
17 /* Define bitmask of input sources - recordable bitmask can be defined
18 explicitly if different */
19 #define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_FMRADIO)
21 /* define this if you have a bitmap LCD display */
22 #define HAVE_LCD_BITMAP
24 /* define this if you have a colour LCD */
25 #define HAVE_LCD_COLOR
27 /* define this if you want album art for this target */
28 #define HAVE_ALBUMART
30 /* define this to enable bitmap scaling */
31 #define HAVE_BMP_SCALING
33 /* define this to enable JPEG decoding */
34 #define HAVE_JPEG
36 /* define this if you have a light associated with the buttons */
37 #define HAVE_BUTTON_LIGHT
39 /* define this if you have access to the quickscreen */
40 #define HAVE_QUICKSCREEN
42 /* define this if you have access to the pitchscreen */
43 #define HAVE_PITCHSCREEN
45 /* define this if you would like tagcache to build on this target */
46 #define HAVE_TAGCACHE
48 /* LCD dimensions */
49 #define LCD_WIDTH 176
50 #define LCD_HEIGHT 220
51 #define LCD_DEPTH 16 /* 65536 colours */
52 #define LCD_PIXELFORMAT RGB565 /* rgb565 */
54 #ifndef BOOTLOADER
55 /* define this if you have LCD enable function */
56 #define HAVE_LCD_ENABLE
58 /* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE
59 should be defined as well.
60 #define HAVE_LCD_SLEEP
61 #define HAVE_LCD_SLEEP_SETTING
63 #endif
65 /* define this if you can flip your LCD */
66 #define HAVE_LCD_FLIP
68 /* define this if you can invert the colours on your LCD */
69 #define HAVE_LCD_INVERT
71 /* put the lcd frame buffer in IRAM */
72 #define IRAM_LCDFRAMEBUFFER IBSS_ATTR
74 #define CONFIG_KEYPAD SANSA_E200_PAD
76 /* Define this to enable morse code input */
77 #define HAVE_MORSE_INPUT
79 /* Define this if you do software codec */
80 #define CONFIG_CODEC SWCODEC
82 /* There is no hardware tone control */
83 #define HAVE_SW_TONE_CONTROLS
85 /* We're working on the assumption that the AS3525 has something
86 similar to the AS3514 for audio codec etc */
87 #define HAVE_AS3514
89 /* define this if you have a real-time clock */
90 #ifndef BOOTLOADER
91 #define CONFIG_RTC RTC_AS3514
92 #endif
94 /* Define this if you have a software controlled poweroff */
95 #define HAVE_SW_POWEROFF
97 /* Some Sansa E200s seem to be FAT16 formatted */
98 #define HAVE_FAT16SUPPORT
100 /* The number of bytes reserved for loadable codecs */
101 #define CODEC_SIZE 0x100000
103 /* The number of bytes reserved for loadable plugins */
104 #define PLUGIN_BUFFER_SIZE 0x80000
106 #define AB_REPEAT_ENABLE 1
108 /* FM Tuner - suspected to be the SI4702 */
109 #define CONFIG_TUNER SI4700
110 /* #define HAVE_TUNER_PWR_CTRL */
112 /* Define this for LCD backlight available */
113 #define HAVE_BACKLIGHT
114 #define HAVE_BACKLIGHT_BRIGHTNESS
116 /* Main LCD backlight brightness range and defaults */
117 #define MIN_BRIGHTNESS_SETTING 1
118 #define MAX_BRIGHTNESS_SETTING 12
119 #define DEFAULT_BRIGHTNESS_SETTING 6
121 /* Which backlight fading type? */
122 #define CONFIG_BACKLIGHT_FADING BACKLIGHT_FADING_SW_SETTING
124 /* define this if the unit uses a scrollwheel for navigation */
125 #define HAVE_SCROLLWHEEL
126 /* define to activate advanced wheel acceleration code */
127 #define HAVE_WHEEL_ACCELERATION
128 /* define from which rotation speed [degree/sec] on the acceleration starts */
129 #define WHEEL_ACCEL_START 540
130 /* define type of acceleration (1 = ^2, 2 = ^3, 3 = ^4) */
131 #define WHEEL_ACCELERATION 1
133 /* define this if you have a flash memory storage */
134 #define HAVE_FLASH_STORAGE
136 /* define this if the flash memory uses the SecureDigital Memory Card protocol */
137 #define CONFIG_STORAGE STORAGE_SD
139 #define BATTERY_CAPACITY_DEFAULT 730 /* default battery capacity */
140 #define BATTERY_CAPACITY_MIN 730 /* min. capacity selectable */
141 #define BATTERY_CAPACITY_MAX 730 /* max. capacity selectable */
142 #define BATTERY_CAPACITY_INC 0 /* capacity increment */
143 #define BATTERY_TYPES_COUNT 1 /* only one type */
145 /* Charging implemented in a target-specific algorithm */
146 #define CONFIG_CHARGING CHARGING_TARGET
148 /* define this if the unit can be powered or charged via USB */
149 #define HAVE_USB_POWER
151 /* Define this if you have an AMS AS3525*/
152 #define CONFIG_CPU AS3525
154 /* Define how much SD sectors are reserved for OF */
155 #define AMS_OF_SIZE 0xF000
157 /* Define this if you want to use the AS2525 i2c interface */
158 #define CONFIG_I2C I2C_AS3525
160 /* define current usage levels (based on battery bench) */
161 #define CURRENT_NORMAL 45
162 #define CURRENT_BACKLIGHT 30
163 #define CURRENT_RECORD CURRENT_NORMAL
165 /* The start address index for ROM builds */
166 #define ROM_START 0x00000000
168 /* Define this to the CPU frequency */
169 #define CPU_FREQ 248000000
171 /* Type of LCD TODO: hopefully the same as the x5 but check this*/
172 #define CONFIG_LCD LCD_X5
174 /* Offset ( in the firmware file's header ) to the file CRC and data. These are
175 only used when loading the old format rockbox.e200 file */
176 #define FIRMWARE_OFFSET_FILE_CRC 0x0
177 #define FIRMWARE_OFFSET_FILE_DATA 0x8
179 #ifndef BOOTLOADER
180 #define HAVE_MULTIDRIVE
181 #define NUM_DRIVES 2
182 #define HAVE_HOTSWAP
183 #endif
185 #ifndef BOOTLOADER
187 #define USB_HANDLED_BY_OF
189 /* USB On-the-go */
190 #define CONFIG_USBOTG USBOTG_AS3525
192 /* enable these for the experimental usb stack */
193 #define HAVE_USBSTACK
194 #define USB_VENDOR_ID 0x0781
195 #define USB_PRODUCT_ID 0x7423
197 #endif /* !BOOTLOADER */
199 /* Define this if you have adjustable CPU frequency */
200 #define HAVE_ADJUSTABLE_CPU_FREQ
202 #define BOOTFILE_EXT "sansa"
203 #define BOOTFILE "rockbox." BOOTFILE_EXT
204 #define BOOTDIR "/.rockbox"
206 #define ICODE_ATTR_TREMOR_NOT_MDCT
208 #define INCLUDE_TIMEOUT_API
210 /* Default recording levels */
211 #define DEFAULT_REC_MIC_GAIN 23
212 #define DEFAULT_REC_LEFT_GAIN 23
213 #define DEFAULT_REC_RIGHT_GAIN 23
215 /* Define this if a programmable hotkey is mapped */
216 #define HAVE_HOTKEY