summaryrefslogtreecommitdiff
path: root/firmware/target/mips/ingenic_x1000/spl-x1000.h
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2021-05-11 13:28:43 +0100
committerAidan MacDonald <amachronic@protonmail.com>2021-05-12 10:35:20 +0000
commit3f26fcf34001197ed267fa1ad549095aae49c88e (patch)
treec81ab3298a349d1156e905d467492b603236f74d /firmware/target/mips/ingenic_x1000/spl-x1000.h
parentcc22df198d0ccb64dfdfe0c2f247f7d86b7fd750 (diff)
downloadrockbox-3f26fcf34001197ed267fa1ad549095aae49c88e.tar.gz
rockbox-3f26fcf34001197ed267fa1ad549095aae49c88e.zip
FiiO M3K: New bootloaderbootloader_fiiom3k_v1
SPL and UCL-compressed bootloader are now packed into one output, bootloader.m3k, eliminating the separate SPL build phase. The Rockbox bootloader now has a recovery menu, accessible by holding VOL+ when booting, that lets you back up, restore, and update the bootloader from the device. Change-Id: I642c6e5fb83587a013ab2fbfd1adab439561ced2
Diffstat (limited to 'firmware/target/mips/ingenic_x1000/spl-x1000.h')
-rw-r--r--firmware/target/mips/ingenic_x1000/spl-x1000.h11
1 files changed, 3 insertions, 8 deletions
diff --git a/firmware/target/mips/ingenic_x1000/spl-x1000.h b/firmware/target/mips/ingenic_x1000/spl-x1000.h
index d2255a8d05..062cb40f88 100644
--- a/firmware/target/mips/ingenic_x1000/spl-x1000.h
+++ b/firmware/target/mips/ingenic_x1000/spl-x1000.h
@@ -22,10 +22,7 @@
22#ifndef __SPL_X1000_H__ 22#ifndef __SPL_X1000_H__
23#define __SPL_X1000_H__ 23#define __SPL_X1000_H__
24 24
25#include "spl-x1000-defs.h" 25#include <stdint.h>
26
27#define SPL_ARGUMENTS ((struct x1000_spl_arguments*)SPL_ARGUMENTS_ADDRESS)
28#define SPL_STATUS ((struct x1000_spl_status*)SPL_STATUS_ADDRESS)
29 26
30struct spl_boot_option { 27struct spl_boot_option {
31 uint32_t nand_addr; 28 uint32_t nand_addr;
@@ -35,15 +32,13 @@ struct spl_boot_option {
35 const char* cmdline; /* for Linux */ 32 const char* cmdline; /* for Linux */
36}; 33};
37 34
38/* Defined by target, indices are 0 = ROCKBOX, 1 = ORIG_FW, etc... */ 35/* Defined by target, order is not important */
39extern const struct spl_boot_option spl_boot_options[]; 36extern const struct spl_boot_option spl_boot_options[];
40 37
41/* Called on a fatal error */ 38/* Called on a fatal error */
42extern void spl_error(void) __attribute__((noreturn)); 39extern void spl_error(void) __attribute__((noreturn));
43 40
44/* When SPL boots with SPL_BOOTOPTION_CHOOSE, this function is invoked 41/* Invoked by SPL main routine to determine the boot option */
45 * to let the target figure out the boot option based on buttons the
46 * user is pressing */
47extern int spl_get_boot_option(void); 42extern int spl_get_boot_option(void);
48 43
49/* Do any setup/initialization needed for the given boot option, this 44/* Do any setup/initialization needed for the given boot option, this