summaryrefslogtreecommitdiff
path: root/bootloader/gigabeat.c
diff options
context:
space:
mode:
authorMarcin Bukat <marcin.bukat@gmail.com>2012-03-04 15:34:29 +0100
committerMarcin Bukat <marcin.bukat@gmail.com>2013-06-27 13:50:11 +0200
commit0b29691324e5700f15ea653592bf29f8552d47d7 (patch)
tree00e4f77f28c813a493cd8af22170f486f6e82903 /bootloader/gigabeat.c
parent46ea8bfe7c690c8db230fff3a582a69779f8e432 (diff)
Move load_firmware() to separate file
The idea is to share loading code between bootloaders and rolo(). Change-Id: I1656ed91946d7a05cb7c9fa7a16793c3c862a5cd Reviewed-on: http://gerrit.rockbox.org/190 Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
Diffstat (limited to 'bootloader/gigabeat.c')
-rw-r--r--bootloader/gigabeat.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/bootloader/gigabeat.c b/bootloader/gigabeat.c
index fb03f0ea4d..d77021571a 100644
--- a/bootloader/gigabeat.c
+++ b/bootloader/gigabeat.c
@@ -41,6 +41,8 @@
#include "power.h"
#include "file.h"
#include "common.h"
+#include "rb-loader.h"
+#include "loader_strerror.h"
#include "rbunicode.h"
#include "usb.h"
#include "mmu-arm.h"
@@ -201,18 +203,15 @@ void main(void)
buffer_size = (unsigned char*)0x31400000 - loadbuffer;
rc = load_firmware(loadbuffer, BOOTFILE, buffer_size);
- if(rc < 0)
+ if(rc <= EFILE_EMPTY)
error(EBOOTFILE, rc, true);
storage_close();
system_prepare_fw_start();
- if (rc == EOK)
- {
- commit_discard_idcache();
- kernel_entry = (void*) loadbuffer;
- rc = kernel_entry();
- }
+ commit_discard_idcache();
+ kernel_entry = (void*) loadbuffer;
+ rc = kernel_entry();
#if 0
/* Halt */