blob: 81e1e453b285b76b2c602a6c951a0cf83c091d30 [file] [log] [blame]
Amaury Pouly12c64a42012-05-19 16:09:46 +02001/*
2 * This config file is for the Creative Zen X-Fi3
3 */
Amaury Pouly81224c62013-06-16 14:39:58 +02004#define IMX233_SUBTARGET 3780
5#define IMX233_PACKAGE IMX233_BGA169
Amaury Pouly7d62a782013-10-22 00:03:04 +02006#define IMX233_PARTITIONS IMX233_FREESCALE
Amaury Pouly12c64a42012-05-19 16:09:46 +02007
8/* For Rolo and boot loader */
9#define MODEL_NUMBER 83
10#define MODEL_NAME "Creative Zen X-Fi3"
William Wilgus41869a62017-02-05 21:07:20 +010011/* Define if boot data from bootloader has been enabled for the target */
12#define HAVE_BOOTDATA
Amaury Pouly12c64a42012-05-19 16:09:46 +020013
14#define HW_SAMPR_CAPS SAMPR_CAP_ALL
15
16/* define this if you have recording possibility */
17#define HAVE_RECORDING
18
19#define REC_SAMPR_CAPS SAMPR_CAP_ALL
20
21/* Default recording levels */
22#define DEFAULT_REC_MIC_GAIN 23
23#define DEFAULT_REC_LEFT_GAIN 23
24#define DEFAULT_REC_RIGHT_GAIN 23
25
26/* Define bitmask of input sources - recordable bitmask can be defined
27 explicitly if different */
28#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_FMRADIO)
29
30/* define this if you have a bitmap LCD display */
31#define HAVE_LCD_BITMAP
32/* define this if you have a colour LCD */
33#define HAVE_LCD_COLOR
34
35#ifndef BOOTLOADER
36#define HAVE_ALBUMART
37
38/* define this to enable bitmap scaling */
39#define HAVE_BMP_SCALING
40
41/* define this to enable JPEG decoding */
42#define HAVE_JPEG
43
Amaury Pouly6e69e3a2017-04-29 14:30:10 +100044/* Define this if a programmable hotkey is mapped
Amaury Pouly12c64a42012-05-19 16:09:46 +020045#define HAVE_HOTKEY
Amaury Pouly6e69e3a2017-04-29 14:30:10 +100046*/
Amaury Pouly12c64a42012-05-19 16:09:46 +020047
48/* define this if you have access to the quickscreen */
49#define HAVE_QUICKSCREEN
50
51/* define this if you have a light associated with the buttons */
52#define HAVE_BUTTON_LIGHT
53#define HAVE_BUTTONLIGHT_BRIGHTNESS
54
Amaury Pouly12c64a42012-05-19 16:09:46 +020055/* define this if you would like tagcache to build on this target */
56#define HAVE_TAGCACHE
57
58/* define this if the target has volume keys which can be used in the lists */
59#define HAVE_VOLUME_IN_LIST
60
61/* define this if you have LCD enable function */
62#define HAVE_LCD_ENABLE
63
64/* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE
65 should be defined as well.
66#define HAVE_LCD_SLEEP
67#define HAVE_LCD_SLEEP_SETTING
68*/
69
70/* define this if you can flip your LCD
71#define HAVE_LCD_FLIP
72*/
73
74/* define this if you can invert the colours on your LCD
75#define HAVE_LCD_INVERT
76*/
77
78/* define this if you have a real-time clock */
79#define CONFIG_RTC RTC_IMX233
80
81/* define this if you have a real-time clock with alarm facilities */
82#define HAVE_RTC_ALARM
83
84#endif /* !BOOTLOADER */
85
86/* define this if you have an i.MX23 codec */
87#define HAVE_IMX233_CODEC
88
89#define CONFIG_TUNER STFM1000
90
91/* There is no hardware tone control */
92#define HAVE_SW_TONE_CONTROLS
93
94#define CONFIG_KEYPAD CREATIVE_ZENXFI3_PAD
Amaury Poulyebb70572014-02-22 20:41:32 +010095#define HAVE_HEADPHONE_DETECTION
Amaury Pouly12c64a42012-05-19 16:09:46 +020096
97/* Define this to enable morse code input */
98#define HAVE_MORSE_INPUT
99
100/* Define this if you do software codec */
101#define CONFIG_CODEC SWCODEC
102
Amaury Poulyaae249c2014-02-22 18:13:48 +0100103/* Define this if you have a speaker */
104#define HAVE_SPEAKER
105
Amaury Pouly12c64a42012-05-19 16:09:46 +0200106/* LCD dimensions */
107#define LCD_WIDTH 176
108#define LCD_HEIGHT 220
Thomas Martitz62524232014-01-23 08:23:34 +0100109/* sqrt(176^2 + 220^2) / 2.0 = 140.9 */
110#define LCD_DPI 141
Amaury Pouly12c64a42012-05-19 16:09:46 +0200111#define LCD_DEPTH 16 /* 65536 colours */
112#define LCD_PIXELFORMAT RGB565 /* rgb565 */
113
114/* Define this if you have a software controlled poweroff */
115#define HAVE_SW_POWEROFF
116
117/* Some Sansa Fuzes seem to be FAT16 formatted */
118#define HAVE_FAT16SUPPORT
119
120/* The number of bytes reserved for loadable codecs */
121#define CODEC_SIZE 0x100000
122
123/* The number of bytes reserved for loadable plugins */
124#define PLUGIN_BUFFER_SIZE 0x80000
125
Amaury Pouly6e69e3a2017-04-29 14:30:10 +1000126//#define AB_REPEAT_ENABLE
Amaury Pouly12c64a42012-05-19 16:09:46 +0200127
128/* Define this for LCD backlight available */
129#define HAVE_BACKLIGHT
130#define HAVE_BACKLIGHT_BRIGHTNESS
131
132/* Main LCD backlight brightness range and defaults */
133#define MIN_BRIGHTNESS_SETTING 0
134#define MAX_BRIGHTNESS_SETTING 100
135#define DEFAULT_BRIGHTNESS_SETTING 50
136
137/* Which backlight fading type? */
138#define CONFIG_BACKLIGHT_FADING BACKLIGHT_FADING_SW_SETTING
139
140/* define this if you have a flash memory storage */
141#define HAVE_FLASH_STORAGE
142
143/* define this if the flash memory uses the SecureDigital Memory Card protocol */
144#define CONFIG_STORAGE STORAGE_SD
145#define NUM_DRIVES 2
146#define HAVE_MULTIDRIVE
Amaury Pouly12c64a42012-05-19 16:09:46 +0200147#define HAVE_HOTSWAP
148
149/* Extra threads: touchpad */
150#define TARGET_EXTRA_THREADS 1
151
152/* todo */
153#define BATTERY_CAPACITY_DEFAULT 550 /* default battery capacity */
154#define BATTERY_CAPACITY_MIN 550 /* min. capacity selectable */
155#define BATTERY_CAPACITY_MAX 550 /* max. capacity selectable */
156#define BATTERY_CAPACITY_INC 0 /* capacity increment */
157#define BATTERY_TYPES_COUNT 1 /* only one type */
158
159#define CONFIG_BATTERY_MEASURE VOLTAGE_MEASURE
160
161/* Charging implemented in a target-specific algorithm */
162#define CONFIG_CHARGING CHARGING_TARGET
163
164/* define this if the unit can be powered or charged via USB */
165#define HAVE_USB_POWER
166
167/* Define this if you have an IMX233*/
168#define CONFIG_CPU IMX233
169
170/* Define this if you want to use the IMX233 i2c interface */
171#define CONFIG_I2C I2C_IMX233
172
173/* define current usage levels (based on battery bench) */
174#define CURRENT_NORMAL 35
175#define CURRENT_BACKLIGHT 30
176#define CURRENT_RECORD CURRENT_NORMAL
177
178/* maximum charging current */
179#define CURRENT_MAX_CHG 200
180
181/* Define this to the CPU frequency */
182#define CPU_FREQ 454000000
183
184/* Type of LCD */
185#define CONFIG_LCD LCD_CREATIVEZXFI3
186
187/* Offset ( in the firmware file's header ) to the file CRC and data. These are
188 only used when loading the old format rockbox.e200 file */
189#define FIRMWARE_OFFSET_FILE_CRC 0x0
190#define FIRMWARE_OFFSET_FILE_DATA 0x8
191
192/* USB On-the-go */
193#define CONFIG_USBOTG USBOTG_ARC
194
195/* enable these for the experimental usb stack */
196#define HAVE_USBSTACK
197//#define USB_HANDLED_BY_OF
Amaury Pouly12c64a42012-05-19 16:09:46 +0200198#define USB_VENDOR_ID 0x041e
199#define USB_PRODUCT_ID 0x2020
200#define HAVE_USB_HID_MOUSE
201#define HAVE_BOOTLOADER_USB_MODE
202
203/* The fuze+ actually interesting partition table does not use 512-byte sector
204 * (usually 2048 logical sector size) */
205#define MAX_LOG_SECTOR_SIZE 2048
206
207/* Define this if you have adjustable CPU frequency */
Amaury Poulye9f88462013-01-18 18:59:08 +0000208#define HAVE_ADJUSTABLE_CPU_FREQ
Amaury Pouly12c64a42012-05-19 16:09:46 +0200209
Amaury Poulya9838592016-09-26 21:22:21 +0100210/* Define this on iMX233 if the boot process uses a dualboot stub */
211#define HAVE_DUALBOOT_STUB
212
Amaury Pouly12c64a42012-05-19 16:09:46 +0200213#define BOOTFILE_EXT "creative"
214#define BOOTFILE "rockbox." BOOTFILE_EXT
215#define BOOTDIR "/.rockbox"
216
217#define INCLUDE_TIMEOUT_API