HiFiMAN: Implement lcd powersave mode.
[maemo-rb.git] / firmware / export / config / hifimanhm60x.h
blob860cc967d9a6623282f23b47a39732bb4a9c0ea6
1 /*
2 * This config file is for HiFiMAN HM-60x reference design
3 */
5 /* For Rolo and boot loader */
6 #define MODEL_NUMBER 79
8 #define MODEL_NAME "HiFiMAN HM-60x"
10 /* Define bitmask of input sources - recordable bitmask can be defined
11 explicitly if different */
12 /* #define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_FM) */
14 /* define the bitmask of hardware sample rates */
15 #define HW_SAMPR_CAPS (SAMPR_CAP_96 | SAMPR_CAP_48 | SAMPR_CAP_44 | \
16 SAMPR_CAP_32 | SAMPR_CAP_24 | SAMPR_CAP_22 | \
17 SAMPR_CAP_16 | SAMPR_CAP_12 | SAMPR_CAP_11 | SAMPR_CAP_8)
19 #define HAVE_DUMMY_CODEC
20 #define CODEC_SLAVE
21 /* define this if you have a bitmap LCD display */
22 #define HAVE_LCD_BITMAP
24 /* define this if you can flip your LCD */
25 /* #define HAVE_LCD_FLIP */
27 /* define this if you have a colour LCD */
28 #define HAVE_LCD_COLOR
30 /* define this if you want album art for this target */
31 #define HAVE_ALBUMART
33 /* define this to enable bitmap scaling */
34 #define HAVE_BMP_SCALING
36 /* define this to enable JPEG decoding */
37 #define HAVE_JPEG
39 /* define this if you can invert the colours on your LCD */
40 /* #define HAVE_LCD_INVERT */
42 /* define this if you have access to the quickscreen */
43 #define HAVE_QUICKSCREEN
45 /* define this if you have access to the pitchscreen */
46 #define HAVE_PITCHSCREEN
48 /* define this if you would like tagcache to build on this target */
49 #define HAVE_TAGCACHE
51 /* define this if you have a flash memory storage */
52 #define HAVE_FLASH_STORAGE
54 #define CONFIG_STORAGE (STORAGE_SD | STORAGE_NAND)
56 #define CONFIG_NAND NAND_RK27XX
57 #define HAVE_SW_TONE_CONTROLS
59 /* commented for now */
60 /* #define HAVE_HOTSWAP */
62 #define NUM_DRIVES 2
63 #define SECTOR_SIZE 512
65 /* for small(ish) SD cards */
66 #define HAVE_FAT16SUPPORT
68 /* LCD dimensions */
69 #define LCD_WIDTH 220
70 #define LCD_HEIGHT 176
71 #define LCD_DEPTH 16 /* pseudo 262.144 colors */
72 #define LCD_PIXELFORMAT RGB565 /* rgb565 */
74 /* Define this if the LCD can shut down */
75 /* #define HAVE_LCD_SHUTDOWN */
77 /* Define this if your LCD can be enabled/disabled */
78 #define HAVE_LCD_ENABLE
80 /* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE
81 should be defined as well. */
82 #ifndef BOOTLOADER
83 /* TODO: #define HAVE_LCD_SLEEP */
84 /* TODO: #define HAVE_LCD_SLEEP_SETTING */
85 #endif
87 #define CONFIG_KEYPAD HM60X_PAD
89 /* Define this to enable morse code input */
90 #define HAVE_MORSE_INPUT
92 /* Define this if you do software codec */
93 #define CONFIG_CODEC SWCODEC
95 /* define this if you have a real-time clock */
96 /* #define CONFIG_RTC RTC_NANO2G */
98 /* Define if the device can wake from an RTC alarm */
99 /* #define HAVE_RTC_ALARM */
101 #define CONFIG_LCD LCD_HX8340B
103 /* Define the type of audio codec */
104 /*#define HAVE_RK27XX_CODEC */
106 /* #define HAVE_PCM_DMA_ADDRESS */
108 /* Define this for LCD backlight available */
109 #define HAVE_BACKLIGHT
110 #define HAVE_BACKLIGHT_BRIGHTNESS
111 #define MIN_BRIGHTNESS_SETTING 0
112 #define MAX_BRIGHTNESS_SETTING 31
113 #define DEFAULT_BRIGHTNESS_SETTING 20
114 #define CONFIG_BACKLIGHT_FADING BACKLIGHT_FADING_SW_HW_REG
116 /* Define this if you have a software controlled poweroff */
117 #define HAVE_SW_POWEROFF
119 /* The number of bytes reserved for loadable codecs */
120 #define CODEC_SIZE 0x100000
122 /* The number of bytes reserved for loadable plugins */
123 #define PLUGIN_BUFFER_SIZE 0x80000
125 /* TODO: Figure out real values */
126 #define BATTERY_CAPACITY_DEFAULT 600 /* default battery capacity */
127 #define BATTERY_CAPACITY_MIN 300 /* min. capacity selectable */
128 #define BATTERY_CAPACITY_MAX 600 /* max. capacity selectable */
129 #define BATTERY_CAPACITY_INC 10 /* capacity increment */
130 #define BATTERY_TYPES_COUNT 1 /* only one type */
132 #define CONFIG_BATTERY_MEASURE VOLTAGE_MEASURE
134 /* Hardware controlled charging with monitoring */
135 #define CONFIG_CHARGING CHARGING_MONITOR
137 /* define current usage levels */
138 /* TODO: #define CURRENT_NORMAL
139 * TODO: #define CURRENT_BACKLIGHT 23
142 /* define this if the unit can be powered or charged via USB */
143 #define HAVE_USB_POWER
145 /* USB On-the-go */
146 #define CONFIG_USBOTG USBOTG_RK27XX
148 /* enable these for the experimental usb stack */
149 #define HAVE_USBSTACK
151 #define USE_ROCKBOX_USB
152 #define USB_VENDOR_ID 0x071b
153 #define USB_PRODUCT_ID 0x3202
154 #define HAVE_BOOTLOADER_USB_MODE
156 /* Define this if your LCD can set contrast */
157 /* #define HAVE_LCD_CONTRAST */
159 /* The exact type of CPU */
160 #define CONFIG_CPU RK27XX
162 /* I2C interface */
163 #define CONFIG_I2C I2C_RK27XX
165 /* Define this to the CPU frequency */
166 #define CPU_FREQ 200000000
168 /* define this if the hardware can be powered off while charging */
169 /* #define HAVE_POWEROFF_WHILE_CHARGING */
171 /* Offset ( in the firmware file's header ) to the file CRC */
172 #define FIRMWARE_OFFSET_FILE_CRC 0
174 /* Offset ( in the firmware file's header ) to the real data */
175 #define FIRMWARE_OFFSET_FILE_DATA 8
177 #define STORAGE_NEEDS_ALIGN
179 /* Define this if you have adjustable CPU frequency */
180 /* #define HAVE_ADJUSTABLE_CPU_FREQ */
182 #define BOOTFILE_EXT "rk27"
183 #define BOOTFILE "rockbox." BOOTFILE_EXT
184 #define BOOTDIR "/.rockbox"