FS#11081 - Hotkey patch. Many targets supported, but some keymaps need work before...
[kugel-rb.git] / firmware / export / config / iriverh10_5gb.h
blob7ff09273ad5350aad711d2872cff59782a1a8324
1 /*
2 * This config file is for the iriver H10 5/6Gb model
3 */
5 #define TARGET_TREE /* this target is using the target tree system */
7 /* For Rolo and boot loader */
8 #define MODEL_NUMBER 14
9 #define MODEL_NAME "iriver H10 5/6GB"
11 /* define this if you use an ATA controller */
12 #define CONFIG_STORAGE STORAGE_ATA
14 /* define this if you have recording possibility */
15 #define HAVE_RECORDING
16 /* Define bitmask of input sources - recordable bitmask can be defined
17 explicitly if different */
18 #define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_LINEIN | SRC_CAP_FMRADIO)
20 /* define the bitmask of hardware sample rates */
21 #define HW_SAMPR_CAPS (SAMPR_CAP_96 | SAMPR_CAP_88 | SAMPR_CAP_48 | \
22 SAMPR_CAP_44 | SAMPR_CAP_32 | SAMPR_CAP_8)
24 /* define the bitmask of recording sample rates */
25 #define REC_SAMPR_CAPS (SAMPR_CAP_96 | SAMPR_CAP_88 | SAMPR_CAP_48 | \
26 SAMPR_CAP_44 | SAMPR_CAP_32 | SAMPR_CAP_8)
28 /* define this if you have a bitmap LCD display */
29 #define HAVE_LCD_BITMAP
31 /* define this if you have a colour LCD */
32 #define HAVE_LCD_COLOR
34 /* define this if you want album art for this target */
35 #define HAVE_ALBUMART
37 /* define this to enable bitmap scaling */
38 #define HAVE_BMP_SCALING
40 /* define this to enable JPEG decoding */
41 #define HAVE_JPEG
43 /* define this if you have access to the quickscreen */
44 #define HAVE_QUICKSCREEN
46 /* define this if you have access to the pitchscreen */
47 #define HAVE_PITCHSCREEN
49 /* define this if you would like tagcache to build on this target */
50 #define HAVE_TAGCACHE
52 /* LCD dimensions */
53 #define LCD_WIDTH 128
54 #define LCD_HEIGHT 128
55 #define LCD_DEPTH 16 /* 65536 colours */
56 #define LCD_PIXELFORMAT RGB565SWAPPED /* rgb565 byte-swapped */
58 /*#define IRAM_LCDFRAMEBUFFER IDATA_ATTR*//* put the lcd frame buffer in IRAM */
60 #define CONFIG_KEYPAD IRIVER_H10_PAD
62 /* Define this to enable morse code input */
63 #define HAVE_MORSE_INPUT
65 /* Define this if you do software codec */
66 #define CONFIG_CODEC SWCODEC
68 /* define this if you have a real-time clock */
69 #ifndef BOOTLOADER
70 #define CONFIG_RTC RTC_E8564
71 #define HAVE_RTC_ALARM
72 #endif
74 /* Define this if you have a software controlled poweroff */
75 #define HAVE_SW_POWEROFF
77 /* The number of bytes reserved for loadable codecs */
78 #define CODEC_SIZE 0x100000
80 /* The number of bytes reserved for loadable plugins */
81 #define PLUGIN_BUFFER_SIZE 0x80000
83 /* Define this if you have the WM8731 audio codec */
84 #define HAVE_WM8731
86 /* WM8731 has no tone controls, so we use the software ones */
87 #define HAVE_SW_TONE_CONTROLS
89 #define AB_REPEAT_ENABLE 1
91 /* FM Tuner */
92 #define CONFIG_TUNER TEA5767
93 #define CONFIG_TUNER_XTAL 32768
95 /* define this if you have a disk storage, i.e. something
96 that needs spinups and can cause skips when shaked */
97 #define HAVE_DISK_STORAGE
99 /* Define this for LCD backlight available */
100 #define HAVE_BACKLIGHT
102 #define AB_REPEAT_ENABLE 1
104 #define BATTERY_CAPACITY_DEFAULT 820 /* default battery capacity */
105 #define BATTERY_CAPACITY_MIN 700 /* min. capacity selectable */
106 #define BATTERY_CAPACITY_MAX 900 /* max. capacity selectable */
107 #define BATTERY_CAPACITY_INC 10 /* capacity increment */
108 #define BATTERY_TYPES_COUNT 1 /* only one type */
110 /* Hardware controlled charging */
111 #define CONFIG_CHARGING CHARGING_SIMPLE
113 /* define this if the unit can be powered or charged via USB */
114 #define HAVE_USB_POWER
116 /* define current usage levels */
117 #define CURRENT_NORMAL 98 /* ~8.4h (820mAh) from bench with r25244 */
118 #define CURRENT_BACKLIGHT 20 /* FIXME: this needs adjusting */
119 #define CURRENT_RECORD 35 /* FIXME: this needs adjusting */
121 #ifndef SIMULATOR
123 /* Define this if you have a PortalPlayer PP5020 */
124 #define CONFIG_CPU PP5020
126 /* Define this if you want to use the PP5020 i2c interface */
127 #define CONFIG_I2C I2C_PP5020
129 /* define this if the hardware can be powered off while charging */
130 #define HAVE_POWEROFF_WHILE_CHARGING
132 /* The start address index for ROM builds */
133 #define ROM_START 0x00000000
135 /* The size of the flash ROM */
136 #define FLASH_SIZE 0x100000
138 /* Define this to the CPU frequency */
139 /* TODO: this is probably wrong */
140 #define CPU_FREQ 75000000
142 /* Type of LCD */
143 #define CONFIG_LCD LCD_H10_5GB
145 /* We're able to shut off power to the HDD */
146 #define HAVE_ATA_POWER_OFF
148 /* Offset ( in the firmware file's header ) to the file length */
149 #define FIRMWARE_OFFSET_FILE_LENGTH 0x8
151 /* Offset ( in the firmware file's header ) to the file CRC and data. These are
152 only used when loading the old format rockbox.h10 file */
153 #define FIRMWARE_OFFSET_FILE_CRC 0x0
154 #define FIRMWARE_OFFSET_FILE_DATA 0x8
156 /* USB On-the-go */
157 #define CONFIG_USBOTG USBOTG_ARC
159 /* enable these for the experimental usb stack */
160 #define HAVE_USBSTACK
161 #define USE_ROCKBOX_USB
162 #define USB_VENDOR_ID 0x0B70
163 #define USB_PRODUCT_ID 0x00BA
164 #define HAVE_USB_HID_MOUSE
166 /* Define this if you have adjustable CPU frequency */
167 #define HAVE_ADJUSTABLE_CPU_FREQ
169 #define MI4_FORMAT
170 #define BOOTFILE_EXT "mi4"
171 #define BOOTFILE "rockbox." BOOTFILE_EXT
172 #define BOOTDIR "/.rockbox"
174 #define ICODE_ATTR_TREMOR_NOT_MDCT
176 #endif
178 /* DMA is used only for reading on PP502x because although reads are ~8x faster
179 * writes appear to be ~25% slower.
181 #define HAVE_ATA_DMA
183 /* Define this if a programmable hotkey is mapped */
184 #define HAVE_HOTKEY