summaryrefslogtreecommitdiff
path: root/bootloader/mpio_hd200_hd300.c
diff options
context:
space:
mode:
Diffstat (limited to 'bootloader/mpio_hd200_hd300.c')
-rw-r--r--bootloader/mpio_hd200_hd300.c26
1 files changed, 7 insertions, 19 deletions
diff --git a/bootloader/mpio_hd200_hd300.c b/bootloader/mpio_hd200_hd300.c
index 3e4ba76c83..1828907ea7 100644
--- a/bootloader/mpio_hd200_hd300.c
+++ b/bootloader/mpio_hd200_hd300.c
@@ -43,6 +43,8 @@
43#include "file.h" 43#include "file.h"
44 44
45#include "common.h" 45#include "common.h"
46#include "rb-loader.h"
47#include "loader_strerror.h"
46#include "version.h" 48#include "version.h"
47 49
48#include <stdarg.h> 50#include <stdarg.h>
@@ -199,35 +201,21 @@ static void rb_boot(void)
199 201
200 rc = storage_init(); 202 rc = storage_init();
201 if(rc) 203 if(rc)
202 { 204 error(EATA, rc, true);
203 printf("ATA error: %d", rc);
204 sleep(HZ*5);
205 return;
206 }
207 205
208 disk_init(); 206 disk_init();
209 207
210 rc = disk_mount_all(); 208 rc = disk_mount_all();
211 if (rc<=0) 209 if (rc <= 0)
212 { 210 error(EDISK, rc, true);
213 printf("No partition found");
214 sleep(HZ*5);
215 return;
216 }
217 211
218 printf("Loading firmware"); 212 printf("Loading firmware");
219 213
220 rc = load_firmware((unsigned char *)DRAM_START, 214 rc = load_firmware((unsigned char *)DRAM_START,
221 BOOTFILE, MAX_LOADSIZE); 215 BOOTFILE, MAX_LOADSIZE);
222 216
223 if (rc < EOK) 217 if (rc <= EFILE_EMPTY)
224 { 218 error(EBOOTFILE, rc, true);
225 printf("Error!");
226 printf("Can't load " BOOTFILE ": ");
227 printf("Result: %s", strerror(rc));
228 sleep(HZ*5);
229 return;
230 }
231 219
232 cpu_boost(false); 220 cpu_boost(false);
233 start_rockbox(); 221 start_rockbox();