mirror of
https://xff.cz/git/u-boot/
synced 2025-09-01 16:52:14 +02:00
[PCS440EP] upgrade the PCS440EP board:
- Show on the Status LEDs, some States of the board. - Get the MAC addresses from the EEProm - use PREBOOT - use the CF on the board. - check the U-Boot image in the Flash with a SHA1 checksum. - use dynamic TLB entries generation for the SDRAM Signed-off-by: Heiko Schocher <hs@denx.de>
This commit is contained in:
@@ -216,6 +216,7 @@ int do_docboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
|
||||
image_header_t *hdr;
|
||||
int rcode = 0;
|
||||
|
||||
SHOW_BOOT_PROGRESS (34);
|
||||
switch (argc) {
|
||||
case 1:
|
||||
addr = CFG_LOAD_ADDR;
|
||||
@@ -236,24 +237,27 @@ int do_docboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
|
||||
break;
|
||||
default:
|
||||
printf ("Usage:\n%s\n", cmdtp->usage);
|
||||
SHOW_BOOT_PROGRESS (-1);
|
||||
SHOW_BOOT_PROGRESS (-35);
|
||||
return 1;
|
||||
}
|
||||
|
||||
SHOW_BOOT_PROGRESS (35);
|
||||
if (!boot_device) {
|
||||
puts ("\n** No boot device **\n");
|
||||
SHOW_BOOT_PROGRESS (-1);
|
||||
SHOW_BOOT_PROGRESS (-36);
|
||||
return 1;
|
||||
}
|
||||
SHOW_BOOT_PROGRESS (36);
|
||||
|
||||
dev = simple_strtoul(boot_device, &ep, 16);
|
||||
|
||||
if ((dev >= CFG_MAX_DOC_DEVICE) ||
|
||||
(doc_dev_desc[dev].ChipID == DOC_ChipID_UNKNOWN)) {
|
||||
printf ("\n** Device %d not available\n", dev);
|
||||
SHOW_BOOT_PROGRESS (-1);
|
||||
SHOW_BOOT_PROGRESS (-37);
|
||||
return 1;
|
||||
}
|
||||
SHOW_BOOT_PROGRESS (37);
|
||||
|
||||
printf ("\nLoading from device %d: %s at 0x%lX (offset 0x%lX)\n",
|
||||
dev, doc_dev_desc[dev].name, doc_dev_desc[dev].physadr,
|
||||
@@ -262,9 +266,10 @@ int do_docboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
|
||||
if (doc_rw (doc_dev_desc + dev, 1, offset,
|
||||
SECTORSIZE, NULL, (u_char *)addr)) {
|
||||
printf ("** Read error on %d\n", dev);
|
||||
SHOW_BOOT_PROGRESS (-1);
|
||||
SHOW_BOOT_PROGRESS (-38);
|
||||
return 1;
|
||||
}
|
||||
SHOW_BOOT_PROGRESS (38);
|
||||
|
||||
hdr = (image_header_t *)addr;
|
||||
|
||||
@@ -276,16 +281,18 @@ int do_docboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
|
||||
cnt -= SECTORSIZE;
|
||||
} else {
|
||||
puts ("\n** Bad Magic Number **\n");
|
||||
SHOW_BOOT_PROGRESS (-1);
|
||||
SHOW_BOOT_PROGRESS (-39);
|
||||
return 1;
|
||||
}
|
||||
SHOW_BOOT_PROGRESS (39);
|
||||
|
||||
if (doc_rw (doc_dev_desc + dev, 1, offset + SECTORSIZE, cnt,
|
||||
NULL, (u_char *)(addr+SECTORSIZE))) {
|
||||
printf ("** Read error on %d\n", dev);
|
||||
SHOW_BOOT_PROGRESS (-1);
|
||||
SHOW_BOOT_PROGRESS (-40);
|
||||
return 1;
|
||||
}
|
||||
SHOW_BOOT_PROGRESS (40);
|
||||
|
||||
/* Loading ok, update default load address */
|
||||
|
||||
|
Reference in New Issue
Block a user