diff options
-rw-r--r-- | bootloader/main-pp.c | 55 | ||||
-rw-r--r-- | firmware/export/config-e200.h | 1 | ||||
-rw-r--r-- | firmware/export/config-h10.h | 1 | ||||
-rw-r--r-- | firmware/export/config-h10_5gb.h | 1 |
4 files changed, 19 insertions, 39 deletions
diff --git a/bootloader/main-pp.c b/bootloader/main-pp.c index 8381aa2d8a..b26807dd62 100644 --- a/bootloader/main-pp.c +++ b/bootloader/main-pp.c | |||
@@ -543,6 +543,25 @@ void* main(void) | |||
543 | i, pinfo->type, pinfo->size / 2048); | 543 | i, pinfo->type, pinfo->size / 2048); |
544 | } | 544 | } |
545 | 545 | ||
546 | /* Try loading Rockbox, if that fails, fall back to the OF */ | ||
547 | if((btn & BOOTLOADER_BOOT_OF) == 0) | ||
548 | { | ||
549 | printf("Loading Rockbox..."); | ||
550 | rc = load_mi4(loadbuffer, BOOTFILE, MAX_LOADSIZE); | ||
551 | if (rc < EOK) | ||
552 | { | ||
553 | bool old_verbose = verbose; | ||
554 | verbose = true; | ||
555 | printf("Can't load " BOOTFILE ": "); | ||
556 | printf(strerror(rc)); | ||
557 | verbose = old_verbose; | ||
558 | btn |= BOOTLOADER_BOOT_OF; | ||
559 | sleep(5*HZ); | ||
560 | } | ||
561 | else | ||
562 | return (void*)loadbuffer; | ||
563 | } | ||
564 | |||
546 | if(btn & BOOTLOADER_BOOT_OF) | 565 | if(btn & BOOTLOADER_BOOT_OF) |
547 | { | 566 | { |
548 | /* Load original mi4 firmware in to a memory buffer called loadbuffer. | 567 | /* Load original mi4 firmware in to a memory buffer called loadbuffer. |
@@ -602,42 +621,6 @@ void* main(void) | |||
602 | } | 621 | } |
603 | 622 | ||
604 | error(0, 0); | 623 | error(0, 0); |
605 | |||
606 | } else { | ||
607 | #if 0 /* e200: enable to be able to dump the hidden partition */ | ||
608 | if(btn & BUTTON_UP) | ||
609 | { | ||
610 | int fd; | ||
611 | pinfo = disk_partinfo(1); | ||
612 | fd = open("/part.bin", O_CREAT|O_RDWR); | ||
613 | char sector[512]; | ||
614 | for(i=0; i<40960; i++){ | ||
615 | if (!(i%100)) | ||
616 | { | ||
617 | printf("dumping sector %d", i); | ||
618 | } | ||
619 | storage_read_sectors(IF_MV2(0,) pinfo->start + i, 1, sector); | ||
620 | write(fd,sector,512); | ||
621 | } | ||
622 | close(fd); | ||
623 | } | ||
624 | #endif | ||
625 | printf("Loading Rockbox..."); | ||
626 | rc=load_mi4(loadbuffer, BOOTFILE, MAX_LOADSIZE); | ||
627 | if (rc < EOK) { | ||
628 | printf("Can't load " BOOTFILE ": "); | ||
629 | printf(strerror(rc)); | ||
630 | |||
631 | #ifdef OLD_BOOTFILE | ||
632 | /* Try loading rockbox from old rockbox.e200/rockbox.h10 format */ | ||
633 | rc=load_firmware(loadbuffer, OLD_BOOTFILE, MAX_LOADSIZE); | ||
634 | if (rc < EOK) { | ||
635 | printf("Can't load " OLD_BOOTFILE" : "); | ||
636 | error(EBOOTFILE, rc); | ||
637 | } | ||
638 | #endif | ||
639 | } | ||
640 | } | 624 | } |
641 | |||
642 | return (void*)loadbuffer; | 625 | return (void*)loadbuffer; |
643 | } | 626 | } |
diff --git a/firmware/export/config-e200.h b/firmware/export/config-e200.h index e4d4b739bc..fd481d9e63 100644 --- a/firmware/export/config-e200.h +++ b/firmware/export/config-e200.h | |||
@@ -187,7 +187,6 @@ | |||
187 | #define MI4_FORMAT | 187 | #define MI4_FORMAT |
188 | #define BOOTFILE_EXT "mi4" | 188 | #define BOOTFILE_EXT "mi4" |
189 | #define BOOTFILE "rockbox." BOOTFILE_EXT | 189 | #define BOOTFILE "rockbox." BOOTFILE_EXT |
190 | #define OLD_BOOTFILE "rockbox.e200" | ||
191 | #define BOOTDIR "/.rockbox" | 190 | #define BOOTDIR "/.rockbox" |
192 | 191 | ||
193 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 192 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
diff --git a/firmware/export/config-h10.h b/firmware/export/config-h10.h index 756b4da0ea..011c1316de 100644 --- a/firmware/export/config-h10.h +++ b/firmware/export/config-h10.h | |||
@@ -177,7 +177,6 @@ | |||
177 | #define MI4_FORMAT | 177 | #define MI4_FORMAT |
178 | #define BOOTFILE_EXT "mi4" | 178 | #define BOOTFILE_EXT "mi4" |
179 | #define BOOTFILE "rockbox." BOOTFILE_EXT | 179 | #define BOOTFILE "rockbox." BOOTFILE_EXT |
180 | #define OLD_BOOTFILE "rockbox.h10" | ||
181 | #define BOOTDIR "/.rockbox" | 180 | #define BOOTDIR "/.rockbox" |
182 | 181 | ||
183 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 182 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
diff --git a/firmware/export/config-h10_5gb.h b/firmware/export/config-h10_5gb.h index 3a52823fd5..ef53e02ab4 100644 --- a/firmware/export/config-h10_5gb.h +++ b/firmware/export/config-h10_5gb.h | |||
@@ -157,7 +157,6 @@ | |||
157 | #define MI4_FORMAT | 157 | #define MI4_FORMAT |
158 | #define BOOTFILE_EXT "mi4" | 158 | #define BOOTFILE_EXT "mi4" |
159 | #define BOOTFILE "rockbox." BOOTFILE_EXT | 159 | #define BOOTFILE "rockbox." BOOTFILE_EXT |
160 | #define OLD_BOOTFILE "rockbox.h10" | ||
161 | #define BOOTDIR "/.rockbox" | 160 | #define BOOTDIR "/.rockbox" |
162 | 161 | ||
163 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 162 | #define ICODE_ATTR_TREMOR_NOT_MDCT |