diff options
Diffstat (limited to 'bootloader')
-rw-r--r-- | bootloader/x1000/boot.c | 22 | ||||
-rw-r--r-- | bootloader/x1000/x1000bootloader.h | 13 |
2 files changed, 35 insertions, 0 deletions
diff --git a/bootloader/x1000/boot.c b/bootloader/x1000/boot.c index 60fb864d19..9e22192516 100644 --- a/bootloader/x1000/boot.c +++ b/bootloader/x1000/boot.c | |||
@@ -29,6 +29,10 @@ | |||
29 | #include "boot-x1000.h" | 29 | #include "boot-x1000.h" |
30 | #include <ctype.h> | 30 | #include <ctype.h> |
31 | #include <sys/types.h> | 31 | #include <sys/types.h> |
32 | #if defined(EROS_QN) | ||
33 | # include "lcd-x1000.c" | ||
34 | # include "backlight-target.h" | ||
35 | #endif | ||
32 | 36 | ||
33 | void boot_rockbox(void) | 37 | void boot_rockbox(void) |
34 | { | 38 | { |
@@ -201,6 +205,24 @@ void boot_of_helper(uint32_t addr, uint32_t flash_size, const char* args) | |||
201 | 205 | ||
202 | gui_shutdown(); | 206 | gui_shutdown(); |
203 | 207 | ||
208 | /* The Eros Q needs the LCD initialized in the bootloader */ | ||
209 | #if defined(EROS_QN) | ||
210 | /* enable LCD if it's not yet on, but keep the backlight off to avoid a white flash */ | ||
211 | init_lcd(); | ||
212 | backlight_hw_off(); | ||
213 | |||
214 | /* TODO: this doesn't work for some reason */ | ||
215 | //lcd_clear_display(); | ||
216 | //lcd_update(); | ||
217 | //lcd_wait_frame(); | ||
218 | |||
219 | /* disable irq and dma */ | ||
220 | lcd_enable(false); | ||
221 | |||
222 | /* set up LCD in a config compatible with OF */ | ||
223 | lcd_tgt_enable_of(1); | ||
224 | #endif | ||
225 | |||
204 | x1000_dualboot_load_pdma_fw(); | 226 | x1000_dualboot_load_pdma_fw(); |
205 | x1000_dualboot_cleanup(); | 227 | x1000_dualboot_cleanup(); |
206 | x1000_dualboot_init_clocktree(); | 228 | x1000_dualboot_init_clocktree(); |
diff --git a/bootloader/x1000/x1000bootloader.h b/bootloader/x1000/x1000bootloader.h index 1fba9a29a1..81c7f2aaa4 100644 --- a/bootloader/x1000/x1000bootloader.h +++ b/bootloader/x1000/x1000bootloader.h | |||
@@ -99,6 +99,19 @@ struct uimage_header; | |||
99 | # define BL_QUIT_NAME "POWER" | 99 | # define BL_QUIT_NAME "POWER" |
100 | # define BL_SCREENSHOT_NAME "MENU" | 100 | # define BL_SCREENSHOT_NAME "MENU" |
101 | # define BOOTBACKUP_FILE "/erosqnative-boot.bin" | 101 | # define BOOTBACKUP_FILE "/erosqnative-boot.bin" |
102 | # define OF_PLAYER_NAME "Aigo Player" | ||
103 | # define OF_PLAYER_ADDR 0x300000 | ||
104 | # define OF_PLAYER_LENGTH (6 * 1024 * 1024) | ||
105 | # define OF_PLAYER_ARGS OF_RECOVERY_ARGS \ | ||
106 | " init=/linuxrc ubi.mtd=4 root=ubi0:rootfs ubi.mtd=5 rootfstype=ubifs \ | ||
107 | sn_no=00000000000000000000000000000000 bt_mac=xxxxxxxxxxxx wifi_mac=xxxxxxxxxxxx rw" | ||
108 | # define OF_PLAYER_BTN BUTTON_PLAY | ||
109 | /* Note: OF Recovery boots, but is otherwise untested. */ | ||
110 | //# define OF_RECOVERY_NAME "Aigo Recovery" | ||
111 | //# define OF_RECOVERY_ADDR 0x900000 | ||
112 | //# define OF_RECOVERY_LENGTH (7 * 1024 * 1024) | ||
113 | # define OF_RECOVERY_ARGS \ | ||
114 | "console=ttyS2,115200n8 mem=32M@0x0 no_console_suspend lpj=5009408 ip=off" | ||
102 | #else | 115 | #else |
103 | # error "Missing keymap!" | 116 | # error "Missing keymap!" |
104 | #endif | 117 | #endif |