diff options
Diffstat (limited to 'firmware/export/config/ipod6g.h')
-rw-r--r-- | firmware/export/config/ipod6g.h | 246 |
1 files changed, 246 insertions, 0 deletions
diff --git a/firmware/export/config/ipod6g.h b/firmware/export/config/ipod6g.h new file mode 100644 index 0000000000..16cf9afcef --- /dev/null +++ b/firmware/export/config/ipod6g.h | |||
@@ -0,0 +1,246 @@ | |||
1 | /* | ||
2 | * This config file is for iPod 6G / Classic | ||
3 | */ | ||
4 | #define TARGET_TREE /* this target is using the target tree system */ | ||
5 | |||
6 | #define IPOD_ARCH 1 | ||
7 | |||
8 | /* For Rolo and boot loader */ | ||
9 | #define MODEL_NUMBER 71 | ||
10 | |||
11 | #define MODEL_NAME "Apple iPod Classic/6G" | ||
12 | |||
13 | /* define this if you use an ATA controller */ | ||
14 | #define CONFIG_STORAGE STORAGE_ATA | ||
15 | |||
16 | #define HAVE_ATA_DMA | ||
17 | #define ATA_MAX_UDMA 4 | ||
18 | #define ATA_MAX_MWDMA 2 | ||
19 | |||
20 | /* define this if the ATA controller and method of USB access support LBA48 */ | ||
21 | #define HAVE_LBA48 | ||
22 | |||
23 | /* define this if you have recording possibility */ | ||
24 | //#define HAVE_RECORDING | ||
25 | |||
26 | /* Define bitmask of input sources - recordable bitmask can be defined | ||
27 | explicitly if different */ | ||
28 | #define INPUT_SRC_CAPS (SRC_CAP_LINEIN) | ||
29 | |||
30 | /* define the bitmask of hardware sample rates */ | ||
31 | #define HW_SAMPR_CAPS (SAMPR_CAP_44 | SAMPR_CAP_22 | SAMPR_CAP_11 \ | ||
32 | | SAMPR_CAP_48 | SAMPR_CAP_24 | SAMPR_CAP_12 \ | ||
33 | | SAMPR_CAP_32 | SAMPR_CAP_16 | SAMPR_CAP_8) | ||
34 | |||
35 | /* define the bitmask of recording sample rates */ | ||
36 | #define REC_SAMPR_CAPS (SAMPR_CAP_44 | SAMPR_CAP_22 | SAMPR_CAP_11 \ | ||
37 | | SAMPR_CAP_48 | SAMPR_CAP_24 | SAMPR_CAP_12 \ | ||
38 | | SAMPR_CAP_32 | SAMPR_CAP_16 | SAMPR_CAP_8) | ||
39 | |||
40 | /* define this if you have a bitmap LCD display */ | ||
41 | #define HAVE_LCD_BITMAP | ||
42 | |||
43 | /* define this if you can flip your LCD */ | ||
44 | //#define HAVE_LCD_FLIP | ||
45 | |||
46 | /* define this if you have a colour LCD */ | ||
47 | #define HAVE_LCD_COLOR | ||
48 | |||
49 | /* define this if you want album art for this target */ | ||
50 | #define HAVE_ALBUMART | ||
51 | |||
52 | /* define this to enable bitmap scaling */ | ||
53 | #define HAVE_BMP_SCALING | ||
54 | |||
55 | /* define this to enable JPEG decoding */ | ||
56 | #define HAVE_JPEG | ||
57 | |||
58 | /* define this if you can invert the colours on your LCD */ | ||
59 | //#define HAVE_LCD_INVERT | ||
60 | |||
61 | /* LCD stays visible without backlight - simulator hint */ | ||
62 | #define HAVE_TRANSFLECTIVE_LCD | ||
63 | |||
64 | /* define this if you have access to the quickscreen */ | ||
65 | #define HAVE_QUICKSCREEN | ||
66 | |||
67 | /* define this if you have access to the pitchscreen */ | ||
68 | #define HAVE_PITCHSCREEN | ||
69 | |||
70 | /* define this if you would like tagcache to build on this target */ | ||
71 | #define HAVE_TAGCACHE | ||
72 | |||
73 | /* define this if the unit uses a scrollwheel for navigation */ | ||
74 | #define HAVE_SCROLLWHEEL | ||
75 | #define HAVE_WHEEL_ACCELERATION | ||
76 | #define WHEEL_ACCEL_START 270 | ||
77 | #define WHEEL_ACCELERATION 3 | ||
78 | |||
79 | /* Define this if you can detect headphones */ | ||
80 | #define HAVE_HEADPHONE_DETECTION | ||
81 | |||
82 | /* LCD dimensions */ | ||
83 | #define LCD_WIDTH 320 | ||
84 | #define LCD_HEIGHT 240 | ||
85 | #define LCD_DEPTH 16 /* pseudo 262.144 colors */ | ||
86 | #define LCD_PIXELFORMAT RGB565 /* rgb565 */ | ||
87 | |||
88 | /* Define this if the LCD can shut down */ | ||
89 | #define HAVE_LCD_SHUTDOWN | ||
90 | |||
91 | /* Define this if your LCD can be enabled/disabled */ | ||
92 | #define HAVE_LCD_ENABLE | ||
93 | |||
94 | /* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE | ||
95 | should be defined as well. */ | ||
96 | #ifndef BOOTLOADER | ||
97 | //TODO: #define HAVE_LCD_SLEEP | ||
98 | //TODO: #define HAVE_LCD_SLEEP_SETTING | ||
99 | #endif | ||
100 | |||
101 | #define CONFIG_KEYPAD IPOD_4G_PAD | ||
102 | |||
103 | //#define AB_REPEAT_ENABLE | ||
104 | //#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE | ||
105 | |||
106 | /* Define this to enable morse code input */ | ||
107 | #define HAVE_MORSE_INPUT | ||
108 | |||
109 | /* Define this if you do software codec */ | ||
110 | #define CONFIG_CODEC SWCODEC | ||
111 | |||
112 | /* define this if you have a real-time clock */ | ||
113 | #define CONFIG_RTC RTC_NANO2G | ||
114 | |||
115 | /* Define if the device can wake from an RTC alarm */ | ||
116 | //#define HAVE_RTC_ALARM | ||
117 | |||
118 | #define CONFIG_LCD LCD_IPOD6G | ||
119 | |||
120 | /* Define the type of audio codec */ | ||
121 | #define HAVE_CS42L55 | ||
122 | |||
123 | #define HAVE_PCM_DMA_ADDRESS | ||
124 | |||
125 | /* Define this for LCD backlight available */ | ||
126 | #define HAVE_BACKLIGHT | ||
127 | #define HAVE_BACKLIGHT_BRIGHTNESS | ||
128 | |||
129 | /* Define this if you have a software controlled poweroff */ | ||
130 | #define HAVE_SW_POWEROFF | ||
131 | |||
132 | /* The number of bytes reserved for loadable codecs */ | ||
133 | #define CODEC_SIZE 0x100000 | ||
134 | |||
135 | /* The number of bytes reserved for loadable plugins */ | ||
136 | #define PLUGIN_BUFFER_SIZE 0x80000 | ||
137 | |||
138 | // TODO: Figure out real values | ||
139 | #define BATTERY_CAPACITY_DEFAULT 400 /* default battery capacity */ | ||
140 | #define BATTERY_CAPACITY_MIN 300 /* min. capacity selectable */ | ||
141 | #define BATTERY_CAPACITY_MAX 500 /* max. capacity selectable */ | ||
142 | #define BATTERY_CAPACITY_INC 10 /* capacity increment */ | ||
143 | #define BATTERY_TYPES_COUNT 1 /* only one type */ | ||
144 | |||
145 | /* Hardware controlled charging with monitoring */ | ||
146 | #define CONFIG_CHARGING CHARGING_MONITOR | ||
147 | |||
148 | /* define current usage levels */ | ||
149 | //TODO: #define CURRENT_NORMAL 21 /* playback @48MHz clock, backlight off */ | ||
150 | //TODO: #define CURRENT_BACKLIGHT 23 /* maximum brightness */ | ||
151 | |||
152 | /* define this if the unit can be powered or charged via USB */ | ||
153 | #define HAVE_USB_POWER | ||
154 | |||
155 | /* Define this if your LCD can set contrast */ | ||
156 | //#define HAVE_LCD_CONTRAST | ||
157 | |||
158 | /* Define Apple remote tuner */ | ||
159 | //#define CONFIG_TUNER IPOD_REMOTE_TUNER | ||
160 | //#define HAVE_RDS_CAP | ||
161 | |||
162 | /* The exact type of CPU */ | ||
163 | #define CONFIG_CPU S5L8702 | ||
164 | |||
165 | /* I2C interface */ | ||
166 | #define CONFIG_I2C I2C_S5L8702 | ||
167 | |||
168 | #define HAVE_USB_CHARGING_ENABLE | ||
169 | |||
170 | /* The size of the flash ROM */ | ||
171 | #define FLASH_SIZE 0x400000 | ||
172 | |||
173 | /* Define this to the CPU frequency */ | ||
174 | //TODO: Figure out exact value | ||
175 | #define CPU_FREQ 216000000 | ||
176 | |||
177 | /* define this if the hardware can be powered off while charging */ | ||
178 | #define HAVE_POWEROFF_WHILE_CHARGING | ||
179 | |||
180 | /* Offset ( in the firmware file's header ) to the file CRC */ | ||
181 | #define FIRMWARE_OFFSET_FILE_CRC 0 | ||
182 | |||
183 | /* Offset ( in the firmware file's header ) to the real data */ | ||
184 | #define FIRMWARE_OFFSET_FILE_DATA 8 | ||
185 | |||
186 | /* Define this if you can read an absolute wheel position */ | ||
187 | #define HAVE_WHEEL_POSITION | ||
188 | |||
189 | /* define this if the device has larger sectors when accessed via USB */ | ||
190 | /* (only relevant in disk.c, fat.c now always supports large virtual sectors) */ | ||
191 | #define MAX_LOG_SECTOR_SIZE 4096 | ||
192 | |||
193 | /* define this if the hard drive uses large physical sectors (ATA-7 feature) */ | ||
194 | /* and doesn't handle them in the drive firmware */ | ||
195 | #define MAX_PHYS_SECTOR_SIZE 4096 | ||
196 | |||
197 | /* Define this if you have adjustable CPU frequency */ | ||
198 | //TODO: #define HAVE_ADJUSTABLE_CPU_FREQ | ||
199 | |||
200 | #define BOOTFILE_EXT "ipod" | ||
201 | #define BOOTFILE "rockbox." BOOTFILE_EXT | ||
202 | #define BOOTDIR "/.rockbox" | ||
203 | |||
204 | /* Alternative bootfile extension - this is for encrypted images */ | ||
205 | #define BOOTFILE_EXT2 "ipodx" | ||
206 | |||
207 | /* Define this for FM radio input available */ | ||
208 | #define HAVE_FMRADIO_IN | ||
209 | |||
210 | /** Port-specific settings **/ | ||
211 | |||
212 | #if 0 | ||
213 | /* Main LCD contrast range and defaults */ | ||
214 | #define MIN_CONTRAST_SETTING 1 | ||
215 | #define MAX_CONTRAST_SETTING 30 | ||
216 | #define DEFAULT_CONTRAST_SETTING 19 /* Match boot contrast */ | ||
217 | #endif | ||
218 | |||
219 | /* Main LCD backlight brightness range and defaults */ | ||
220 | #define MIN_BRIGHTNESS_SETTING 1 | ||
221 | #define MAX_BRIGHTNESS_SETTING 0x3f | ||
222 | #define DEFAULT_BRIGHTNESS_SETTING 0x20 | ||
223 | |||
224 | /* USB defines */ | ||
225 | #define HAVE_USBSTACK | ||
226 | //#define HAVE_USB_HID_MOUSE - broken? | ||
227 | #define CONFIG_USBOTG USBOTG_S3C6400X | ||
228 | #define USB_VENDOR_ID 0x05AC | ||
229 | //TODO: This is still the Nano2G product ID. Figure out the real one. | ||
230 | #define USB_PRODUCT_ID 0x1260 | ||
231 | #define USB_NUM_ENDPOINTS 5 | ||
232 | #define USE_ROCKBOX_USB | ||
233 | #define USB_DEVBSS_ATTR __attribute__((aligned(16))) | ||
234 | |||
235 | /* Define this if you can switch on/off the accessory power supply */ | ||
236 | #define HAVE_ACCESSORY_SUPPLY | ||
237 | //#define IPOD_ACCESSORY_PROTOCOL | ||
238 | //#define HAVE_SERIAL | ||
239 | |||
240 | /* Define this, if you can switch on/off the lineout */ | ||
241 | #define HAVE_LINEOUT_POWEROFF | ||
242 | |||
243 | #define USB_WRITE_BUFFER_SIZE (1024*64) | ||
244 | |||
245 | /* Define this if a programmable hotkey is mapped */ | ||
246 | #define HAVE_HOTKEY | ||