summaryrefslogtreecommitdiff
path: root/firmware/export/config/fiiom3k.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export/config/fiiom3k.h')
-rw-r--r--firmware/export/config/fiiom3k.h116
1 files changed, 116 insertions, 0 deletions
diff --git a/firmware/export/config/fiiom3k.h b/firmware/export/config/fiiom3k.h
new file mode 100644
index 0000000000..68186d7aaf
--- /dev/null
+++ b/firmware/export/config/fiiom3k.h
@@ -0,0 +1,116 @@
1/* RoLo-related defines */
2#define MODEL_NAME "FiiO M3K"
3#define MODEL_NUMBER 114
4#define BOOTFILE_EXT "m3k"
5#define BOOTFILE "rockbox." BOOTFILE_EXT
6#define BOOTDIR "/.rockbox"
7#define FIRMWARE_OFFSET_FILE_CRC 0
8#define FIRMWARE_OFFSET_FILE_DATA 8
9
10/* CPU defines */
11#define CONFIG_CPU X1000
12#define X1000_EXCLK_FREQ 24000000
13#define TIMER_FREQ X1000_EXCLK_FREQ
14#define CPU_FREQ 1008000000
15#define CPUFREQ_MAX CPU_FREQ
16/* TODO: figure out if this does in fact affect power consumption. */
17#define CPUFREQ_DEFAULT (CPUFREQ_MAX/4)
18#define CPUFREQ_NORMAL (CPUFREQ_MAX/4)
19#define HAVE_ADJUSTABLE_CPU_FREQ
20#define HAVE_GUI_BOOST
21
22/* Kernel defines */
23#define INCLUDE_TIMEOUT_API
24#define HAVE_SEMAPHORE_OBJECTS
25
26/* Drivers */
27#define HAVE_I2C_ASYNC
28
29/* Buffer for plugins and codecs. */
30#define PLUGIN_BUFFER_SIZE 0x200000 /* 2 MiB */
31#define CODEC_SIZE 0x100000 /* 1 MiB */
32
33/* LCD defines */
34#define CONFIG_LCD LCD_FIIOM3K
35#define LCD_WIDTH 240
36#define LCD_HEIGHT 320
37#define LCD_DEPTH 16
38#define LCD_PIXELFORMAT RGB565
39#define LCD_DPI 200
40#define HAVE_LCD_COLOR
41#define HAVE_LCD_BITMAP
42#define HAVE_LCD_ENABLE
43#define LCD_X1000_FASTSLEEP
44
45/* Backlight defines */
46#define HAVE_BACKLIGHT
47#define HAVE_BACKLIGHT_BRIGHTNESS
48#define HAVE_BUTTON_LIGHT
49#define HAVE_BUTTONLIGHT_BRIGHTNESS
50#define MIN_BRIGHTNESS_SETTING 1
51#define MAX_BRIGHTNESS_SETTING 100
52#define BRIGHTNESS_STEP 5
53#define DEFAULT_BRIGHTNESS_SETTING 70
54#define CONFIG_BACKLIGHT_FADING BACKLIGHT_FADING_SW_SETTING
55
56/* Codec / audio hardware defines */
57#define HW_SAMPR_CAPS SAMPR_CAP_ALL_192
58#define HAVE_AK4376
59#define HAVE_SW_TONE_CONTROLS
60#define HAVE_SW_VOLUME_CONTROL
61
62/* TODO: Need to implement recording */
63
64/* Button defines */
65#define CONFIG_KEYPAD FIIO_M3K_PAD
66#define HAVE_HEADPHONE_DETECTION
67#define HAVE_TOUCHPAD
68#define HAVE_TOUCHPAD_SENSITIVITY_SETTING
69#define MIN_TOUCHPAD_SENSITIVITY_SETTING (-25)
70#define MAX_TOUCHPAD_SENSITIVITY_SETTING (25)
71#define DEFAULT_TOUCHPAD_SENSITIVITY_SETTING (0)
72#define HAVE_SCROLLWHEEL
73/* #define HAVE_WHEEL_ACCELERATION */
74/* #define WHEEL_ACCELERATION */
75/* #define WHEEL_ACCEL_START */
76
77/* Storage defines */
78#define CONFIG_STORAGE STORAGE_SD
79#define HAVE_HOTSWAP
80#define HAVE_HOTSWAP_STORAGE_AS_MAIN
81#define HAVE_MULTIDRIVE
82#define NUM_DRIVES 1
83#define STORAGE_WANTS_ALIGN
84#define STORAGE_NEEDS_BOUNCE_BUFFER
85
86/* RTC settings */
87#define CONFIG_RTC RTC_X1000
88/* TODO: implement HAVE_RTC_ALARM */
89
90/* Power management */
91#define HAVE_AXP173
92#define CONFIG_BATTERY_MEASURE VOLTAGE_MEASURE
93#define CONFIG_CHARGING CHARGING_MONITOR
94#define HAVE_SW_POWEROFF
95#define HAVE_POWEROFF_WHILE_CHARGING
96
97/* Only one battery type */
98#define BATTERY_CAPACITY_DEFAULT 1100
99#define BATTERY_CAPACITY_MIN 1100
100#define BATTERY_CAPACITY_MAX 1100
101#define BATTERY_CAPACITY_INC 0
102#define BATTERY_TYPES_COUNT 1
103
104/* USB is still TODO. */
105#define USB_NONE
106
107/* Rockbox capabilities */
108#define HAVE_FAT16SUPPORT
109#define HAVE_ALBUMART
110#define HAVE_BMP_SCALING
111#define HAVE_JPEG
112#define HAVE_TAGCACHE
113#define HAVE_VOLUME_IN_LIST
114#define HAVE_QUICKSCREEN
115#define HAVE_HOTKEY
116#define AB_REPEAT_ENABLE