summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
authorMiika Pekkarinen <miipekk@ihme.org>2007-01-12 18:34:00 +0000
committerMiika Pekkarinen <miipekk@ihme.org>2007-01-12 18:34:00 +0000
commit0ea4d3197ed7e56f39c630741cb69152ac9e41de (patch)
treebc29ccef30da139df3e928fd3b8ff3801407b58c /firmware/export
parent12ef310466937551dbedb2165769d7832b11156c (diff)
downloadrockbox-0ea4d3197ed7e56f39c630741cb69152ac9e41de.zip
rockbox-0ea4d3197ed7e56f39c630741cb69152ac9e41de.tar.gz
rockbox-0ea4d3197ed7e56f39c630741cb69152ac9e41de.tar.bz2
rockbox-0ea4d3197ed7e56f39c630741cb69152ac9e41de.tar.xz
Prepare core support for the iriver bootloader supporting ROM images
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11991 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config-h120.h5
-rw-r--r--firmware/export/eeprom_settings.h13
-rw-r--r--firmware/export/system.h4
3 files changed, 17 insertions, 5 deletions
diff --git a/firmware/export/config-h120.h b/firmware/export/config-h120.h
index ee3d702..9bfb958 100644
--- a/firmware/export/config-h120.h
+++ b/firmware/export/config-h120.h
@@ -139,8 +139,9 @@
#define BOOTFILE "rockbox." BOOTFILE_EXT
#define BOOTLOADER_ENTRYPOINT 0x001F0000
-#define FLASH_ENTRYPOINT 0x00001000
-#define FLASH_MAGIC 0xfbfbfbf1
+#define FLASH_RAMIMAGE_ENTRY 0x00001000
+#define FLASH_ROMIMAGE_ENTRY 0x00100000
+#define FLASH_MAGIC 0xfbfbfbf2
/* Define this if there is an EEPROM chip */
#define HAVE_EEPROM
diff --git a/firmware/export/eeprom_settings.h b/firmware/export/eeprom_settings.h
index 367e7b2..aade86b 100644
--- a/firmware/export/eeprom_settings.h
+++ b/firmware/export/eeprom_settings.h
@@ -23,17 +23,26 @@
#include <stdbool.h>
#include "inttypes.h"
-#define EEPROM_SETTINGS_VERSION 0x24c01001
+#define EEPROM_SETTINGS_VERSION 0x24c01002
#define EEPROM_SETTINGS_BL_MINVER 7
+enum boot_methods {
+ BOOT_DISK = 0,
+ BOOT_RAM,
+ BOOT_ROM,
+ BOOT_RECOVERY,
+};
+
struct eeprom_settings
{
long version; /* Settings version number */
bool initialized; /* Is eeprom_settings ready to be used */
bool disk_clean; /* Is disk intact from last reboot */
- bool boot_disk; /* Load firmware from disk (default=FLASH) */
+ uint8_t bootmethod; /* The default boot method. */
uint8_t bl_version; /* Installed bootloader version */
+ long reserved; /* A few reserved bits for the future. */
+
/* This must be the last entry */
uint32_t checksum; /* Checksum of this structure */
};
diff --git a/firmware/export/system.h b/firmware/export/system.h
index 9492287..86bbefb 100644
--- a/firmware/export/system.h
+++ b/firmware/export/system.h
@@ -52,7 +52,9 @@ struct flash_header {
char version[32];
};
-bool detect_flashed_rockbox(void);
+bool detect_flashed_romimage(void);
+bool detect_flashed_ramimage(void);
+bool detect_original_firmware(void);
#ifdef HAVE_ADJUSTABLE_CPU_FREQ
#define FREQ cpu_frequency