9
0
Fork 0

* Fix parameter passing to standalone images with bootm command

* Patch by Kyle Harris, 30 Oct 2003:
  Fix build errors for ixdp425 board

* Patch by David M. Horn, 29 Oct 2003:
  Fixes to build under CYGWIN

* Get IceCube MGT5100 working (again)
This commit is contained in:
wdenk 2003-10-30 21:49:38 +00:00
parent 5fa66df63a
commit b13fb01a62
8 changed files with 51 additions and 23 deletions

View File

@ -2,6 +2,16 @@
Changes for U-Boot 1.0.0: Changes for U-Boot 1.0.0:
====================================================================== ======================================================================
* Fix parameter passing to standalone images with bootm command
* Patch by Kyle Harris, 30 Oct 2003:
Fix build errors for ixdp425 board
* Patch by David M. Horn, 29 Oct 2003:
Fixes to build under CYGWIN
* Get IceCube MGT5100 working (again)
* Fix problems in memory test on some boards (which was not * Fix problems in memory test on some boards (which was not
non-destructive as intended) non-destructive as intended)

View File

@ -44,6 +44,10 @@ SECTIONS
. = ALIGN(4); . = ALIGN(4);
.got : { *(.got) } .got : { *(.got) }
__u_boot_cmd_start = .;
.u_boot_cmd : { *(.u_boot_cmd) }
__u_boot_cmd_end = .;
armboot_end_data = .; armboot_end_data = .;
. = ALIGN(4); . = ALIGN(4);

View File

@ -149,7 +149,7 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
uint unc_len = 0x400000; uint unc_len = 0x400000;
int i, verify; int i, verify;
char *name, *s; char *name, *s;
int (*appl)(cmd_tbl_t *, int, int, char *[]); int (*appl)(int, char *[]);
image_header_t *hdr = &header; image_header_t *hdr = &header;
s = getenv ("verify"); s = getenv ("verify");
@ -251,21 +251,24 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
SHOW_BOOT_PROGRESS (5); SHOW_BOOT_PROGRESS (5);
switch (hdr->ih_type) { switch (hdr->ih_type) {
case IH_TYPE_STANDALONE: name = "Standalone Application"; case IH_TYPE_STANDALONE:
/* A second argument overwrites the load address */ name = "Standalone Application";
if (argc > 2) { /* A second argument overwrites the load address */
hdr->ih_load = simple_strtoul(argv[2], NULL, 16); if (argc > 2) {
} hdr->ih_load = simple_strtoul(argv[2], NULL, 16);
break; }
case IH_TYPE_KERNEL: name = "Kernel Image"; break;
break; case IH_TYPE_KERNEL:
case IH_TYPE_MULTI: name = "Multi-File Image"; name = "Kernel Image";
len = ntohl(len_ptr[0]); break;
/* OS kernel is always the first image */ case IH_TYPE_MULTI:
data += 8; /* kernel_len + terminator */ name = "Multi-File Image";
for (i=1; len_ptr[i]; ++i) len = ntohl(len_ptr[0]);
data += 4; /* OS kernel is always the first image */
break; data += 8; /* kernel_len + terminator */
for (i=1; len_ptr[i]; ++i)
data += 4;
break;
default: printf ("Wrong Image Type for %s command\n", cmdtp->name); default: printf ("Wrong Image Type for %s command\n", cmdtp->name);
SHOW_BOOT_PROGRESS (-5); SHOW_BOOT_PROGRESS (-5);
return 1; return 1;
@ -362,8 +365,8 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
setenv("filesize", buf); setenv("filesize", buf);
return 0; return 0;
} }
appl = (int (*)(cmd_tbl_t *, int, int, char *[]))ntohl(hdr->ih_ep); appl = (int (*)(int, char *[]))ntohl(hdr->ih_ep);
(*appl)(cmdtp, flag, argc-1, &argv[1]); (*appl)(argc-1, &argv[1]);
return 0; return 0;
case IH_TYPE_KERNEL: case IH_TYPE_KERNEL:
case IH_TYPE_MULTI: case IH_TYPE_MULTI:

View File

@ -30,6 +30,11 @@
#include <common.h> #include <common.h>
#include <asm/arch/ixp425.h> #include <asm/arch/ixp425.h>
ulong get_timer (ulong base)
{
return get_timer_masked () - base;
}
void ixp425_udelay(unsigned long usec) void ixp425_udelay(unsigned long usec)
{ {
/* /*

View File

@ -213,8 +213,13 @@
/* /*
* Various low-level settings * Various low-level settings
*/ */
#if defined(CONFIG_MPC5200)
#define CFG_HID0_INIT HID0_ICE | HID0_ICFI #define CFG_HID0_INIT HID0_ICE | HID0_ICFI
#define CFG_HID0_FINAL HID0_ICE #define CFG_HID0_FINAL HID0_ICE
#else
#define CFG_HID0_INIT 0
#define CFG_HID0_FINAL 0
#endif
#define CFG_BOOTCS_START CFG_FLASH_BASE #define CFG_BOOTCS_START CFG_FLASH_BASE
#define CFG_BOOTCS_SIZE CFG_FLASH_SIZE #define CFG_BOOTCS_SIZE CFG_FLASH_SIZE

View File

@ -41,6 +41,11 @@
#include <inttypes.h> #include <inttypes.h>
#elif defined(__linux__) && defined(USE_HOSTCC) #elif defined(__linux__) && defined(USE_HOSTCC)
#include <stdint.h> #include <stdint.h>
#elif defined(__WIN32__)
#include <unistd.h>
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
#endif #endif
/* /*

View File

@ -96,6 +96,7 @@ endif
# #
ifeq ($(HOSTOS),cygwin) ifeq ($(HOSTOS),cygwin)
SFX = .exe SFX = .exe
HOST_CFLAGS += -D__WIN32__
else else
SFX = SFX =
endif endif

View File

@ -11,11 +11,6 @@
#endif #endif
#endif #endif
#ifdef __CYGWIN__
typedef unsigned short ushort;
#endif /* __CYGWIN__ */
typedef struct bitmap_s { /* bitmap description */ typedef struct bitmap_s { /* bitmap description */
uint16_t width; uint16_t width;
uint16_t height; uint16_t height;