From: mariusgroeger Date: Thu, 21 Mar 2002 09:13:59 +0000 (+0000) Subject: * Cleanup (remove some obsolete files and CVS keys X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=5e01ff35d095fe9fc43d4d8727e898bf4362b9c4;p=users%2Frw%2Farmboot.git * Cleanup (remove some obsolete files and CVS keys * Remove flashasm.S for DNP1110 - DNP doesn't require data puzzling. Flash still not working on DNP * Add Support for JFFS2 boot * Import PPCboot: Change command functions to have a return value --- diff --git a/CHANGELOG b/CHANGELOG index 6ae1144..f46f9ea 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,16 @@ +====================================================================== +Modifications for 1.0.1: +====================================================================== + +* Cleanup (remove some obsolete files and CVS keys + +* Remove flashasm.S for DNP1110 - DNP doesn't require data puzzling. + Flash still not working on DNP + +* Add Support for JFFS2 boot + +* Import PPCboot: Change command functions to have a return value + ====================================================================== Modifications for 1.0: ====================================================================== diff --git a/MAKEALL b/MAKEALL index b29b17a..c0ddc26 100755 --- a/MAKEALL +++ b/MAKEALL @@ -36,6 +36,8 @@ build_target() { ${MAKE} ${target}_config ${MAKE} all 2>&1 >LOG/$target.MAKELOG | tee LOG/$target.ERR ${CROSS_COMPILE:-arm_armv4-}size armboot | tee -a LOG/$target.MAKELOG + test -n "$KEEP_BINARY" && cp armboot.bin LOG/$target.bin + test -n "$KEEP_ELF" && cp armboot.bin LOG/$target.elf } #----------------------------------------------------------------------- diff --git a/board/dnp1110/Makefile b/board/dnp1110/Makefile index 8d985a4..67bbfbf 100644 --- a/board/dnp1110/Makefile +++ b/board/dnp1110/Makefile @@ -26,7 +26,7 @@ include $(TOPDIR)/config.mk LIB = lib$(BOARD).a OBJS := dnp1110.o flash.o env.o -SOBJS := flashasm.o memsetup.o +SOBJS := memsetup.o $(LIB): $(OBJS) $(SOBJS) $(AR) crv $@ $^ diff --git a/board/dnp1110/flash.c b/board/dnp1110/flash.c index affb86f..6cd2d82 100644 --- a/board/dnp1110/flash.c +++ b/board/dnp1110/flash.c @@ -39,8 +39,8 @@ ulong myflush(void); extern u32 data_from_flash(u32); extern u32 data_to_flash(u32); -#define PUZZLE_FROM_FLASH(x) data_from_flash((x)) -#define PUZZLE_TO_FLASH(x) data_to_flash((x)) +#define PUZZLE_FROM_FLASH(x) (x) +#define PUZZLE_TO_FLASH(x) (x) flash_info_t flash_info[CFG_MAX_FLASH_BANKS]; diff --git a/board/dnp1110/flashasm.S b/board/dnp1110/flashasm.S deleted file mode 100644 index 4779962..0000000 --- a/board/dnp1110/flashasm.S +++ /dev/null @@ -1,187 +0,0 @@ -/* - * flashasm.S: flash magic for LART - * - * Copyright (C) 1999 2000 2001 Jan-Derk bakker (J.D.Bakker@its.tudelft.nl) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -.ident "$Id: flashasm.S,v 1.1 2002/03/14 16:44:04 mariusgroeger Exp $" - -//#ifdef HAVE_CONFIG_H -//# include -//#endif - -.text - - -.globl data_to_flash -.globl data_from_flash - /* Subroutine that takes data in r0 and formats it so it will be in */ - /* the correct order for the internal flash */ - /* used for LART only */ -data_to_flash: -//#if defined LART - mov r1, #0x0 - - tst r0, #0x00000001 - orrne r1, r1, #0x00001000 - tst r0, #0x00000002 - orrne r1, r1, #0x00004000 - tst r0, #0x00000004 - orrne r1, r1, #0x00000800 - tst r0, #0x00000008 - orrne r1, r1, #0x00000200 - tst r0, #0x00000010 - orrne r1, r1, #0x00000001 - tst r0, #0x00000020 - orrne r1, r1, #0x00000004 - tst r0, #0x00000040 - orrne r1, r1, #0x00000080 - tst r0, #0x00000080 - orrne r1, r1, #0x00000020 - - tst r0, #0x00000100 - orrne r1, r1, #0x00002000 - tst r0, #0x00000200 - orrne r1, r1, #0x00008000 - tst r0, #0x00000400 - orrne r1, r1, #0x00000400 - tst r0, #0x00000800 - orrne r1, r1, #0x00000100 - tst r0, #0x00001000 - orrne r1, r1, #0x00000002 - tst r0, #0x00002000 - orrne r1, r1, #0x00000008 - tst r0, #0x00004000 - orrne r1, r1, #0x00000040 - tst r0, #0x00008000 - orrne r1, r1, #0x00000010 - - tst r0, #0x00010000 - orrne r1, r1, #0x00100000 - tst r0, #0x00020000 - orrne r1, r1, #0x00400000 - tst r0, #0x00040000 - orrne r1, r1, #0x00080000 - tst r0, #0x00080000 - orrne r1, r1, #0x00020000 - tst r0, #0x00100000 - orrne r1, r1, #0x01000000 - tst r0, #0x00200000 - orrne r1, r1, #0x04000000 - tst r0, #0x00400000 - orrne r1, r1, #0x80000000 - tst r0, #0x00800000 - orrne r1, r1, #0x20000000 - - tst r0, #0x01000000 - orrne r1, r1, #0x00200000 - tst r0, #0x02000000 - orrne r1, r1, #0x00800000 - tst r0, #0x04000000 - orrne r1, r1, #0x00040000 - tst r0, #0x08000000 - orrne r1, r1, #0x00010000 - tst r0, #0x10000000 - orrne r1, r1, #0x02000000 - tst r0, #0x20000000 - orrne r1, r1, #0x08000000 - tst r0, #0x40000000 - orrne r1, r1, #0x40000000 - tst r0, #0x80000000 - orrne r1, r1, #0x10000000 - - mov r0, r1 -//#endif - mov pc, lr - - /* Takes data received from the flash, and unshuffles it. */ -data_from_flash: -//#if defined LART - mov r1, #0x00 - - tst r0, #0x00000001 - orrne r1, r1, #0x00000010 - tst r0, #0x00000002 - orrne r1, r1, #0x00001000 - tst r0, #0x00000004 - orrne r1, r1, #0x00000020 - tst r0, #0x00000008 - orrne r1, r1, #0x00002000 - tst r0, #0x00000010 - orrne r1, r1, #0x00008000 - tst r0, #0x00000020 - orrne r1, r1, #0x00000080 - tst r0, #0x00000040 - orrne r1, r1, #0x00004000 - tst r0, #0x00000080 - orrne r1, r1, #0x00000040 - - tst r0, #0x00000100 - orrne r1, r1, #0x00000800 - tst r0, #0x00000200 - orrne r1, r1, #0x00000008 - tst r0, #0x00000400 - orrne r1, r1, #0x00000400 - tst r0, #0x00000800 - orrne r1, r1, #0x00000004 - tst r0, #0x00001000 - orrne r1, r1, #0x00000001 - tst r0, #0x00002000 - orrne r1, r1, #0x00000100 - tst r0, #0x00004000 - orrne r1, r1, #0x00000002 - tst r0, #0x00008000 - orrne r1, r1, #0x00000200 - - tst r0, #0x00010000 - orrne r1, r1, #0x08000000 - tst r0, #0x00020000 - orrne r1, r1, #0x00080000 - tst r0, #0x00040000 - orrne r1, r1, #0x04000000 - tst r0, #0x00080000 - orrne r1, r1, #0x00040000 - tst r0, #0x00100000 - orrne r1, r1, #0x00010000 - tst r0, #0x00200000 - orrne r1, r1, #0x01000000 - tst r0, #0x00400000 - orrne r1, r1, #0x00020000 - tst r0, #0x00800000 - orrne r1, r1, #0x02000000 - - tst r0, #0x01000000 - orrne r1, r1, #0x00100000 - tst r0, #0x02000000 - orrne r1, r1, #0x10000000 - tst r0, #0x04000000 - orrne r1, r1, #0x00200000 - tst r0, #0x08000000 - orrne r1, r1, #0x20000000 - tst r0, #0x10000000 - orrne r1, r1, #0x80000000 - tst r0, #0x20000000 - orrne r1, r1, #0x00800000 - tst r0, #0x40000000 - orrne r1, r1, #0x40000000 - tst r0, #0x80000000 - orrne r1, r1, #0x00400000 - - mov r0, r1 -//#endif - mov pc, lr diff --git a/board/lart/flashasm.S b/board/lart/flashasm.S index 4779962..9021972 100644 --- a/board/lart/flashasm.S +++ b/board/lart/flashasm.S @@ -19,12 +19,6 @@ * */ -.ident "$Id: flashasm.S,v 1.1 2002/03/14 16:44:04 mariusgroeger Exp $" - -//#ifdef HAVE_CONFIG_H -//# include -//#endif - .text @@ -34,7 +28,6 @@ /* the correct order for the internal flash */ /* used for LART only */ data_to_flash: -//#if defined LART mov r1, #0x0 tst r0, #0x00000001 @@ -106,12 +99,10 @@ data_to_flash: orrne r1, r1, #0x10000000 mov r0, r1 -//#endif mov pc, lr /* Takes data received from the flash, and unshuffles it. */ data_from_flash: -//#if defined LART mov r1, #0x00 tst r0, #0x00000001 @@ -183,5 +174,4 @@ data_from_flash: orrne r1, r1, #0x00400000 mov r0, r1 -//#endif mov pc, lr diff --git a/common/cmd_autoscript.c b/common/cmd_autoscript.c index c4b9c56..8cc61d6 100644 --- a/common/cmd_autoscript.c +++ b/common/cmd_autoscript.c @@ -44,20 +44,21 @@ extern image_header_t header; /* from cmd_bootm.c */ -void +int autoscript(bd_t *bd, ulong addr) { ulong crc, data, len; image_header_t *hdr = &header; ulong *len_ptr; char *cmd = 0; + int rc; memcpy (hdr, (char *)addr, sizeof(image_header_t)); if (SWAP32(hdr->ih_magic) != IH_MAGIC) { printf("Bad magic number\n"); - return; + return 1; } crc = SWAP32(hdr->ih_hcrc); @@ -67,7 +68,7 @@ autoscript(bd_t *bd, ulong addr) if (crc32(0, (char *)data, len) != crc) { printf("Bad header crc\n"); - return; + return 1; } data = addr + sizeof(image_header_t); @@ -75,13 +76,13 @@ autoscript(bd_t *bd, ulong addr) if (crc32(0, (char *)data, len) != SWAP32(hdr->ih_dcrc)) { printf("Bad data crc\n"); - return; + return 1; } if (hdr->ih_type != IH_TYPE_SCRIPT) { printf("Bad image type\n"); - return; + return 1; } /* get len of script and make sure cmd is null terminated */ @@ -94,7 +95,7 @@ autoscript(bd_t *bd, ulong addr) cmd = malloc (len + 1); if (!cmd) { - return; + return 1; } while (*len_ptr++); memcpy(cmd,(char *)len_ptr,len); @@ -108,15 +109,17 @@ autoscript(bd_t *bd, ulong addr) } } } - run_command(cmd, bd, 0); + rc = run_command(cmd, bd, 0); free(cmd); + + return rc; } #endif #if (CONFIG_COMMANDS & CFG_CMD_AUTOSCRIPT) -void +int do_autoscript (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong addr; @@ -131,9 +134,8 @@ do_autoscript (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) } printf("## Executing script at %08lx\n",addr); - - autoscript(bd,addr); + return autoscript(bd,addr); } #endif diff --git a/common/cmd_boot.c b/common/cmd_boot.c index 56fcb1c..1c2ab33 100644 --- a/common/cmd_boot.c +++ b/common/cmd_boot.c @@ -45,7 +45,7 @@ static int do_echo = 1; #if (CONFIG_COMMANDS & CFG_CMD_BDI) -void do_bdinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_bdinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { int i; @@ -65,16 +65,17 @@ void do_bdinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) printf ("DRAM:%02d.start = %08lX\n", i, bd->bi_dram[i].start); printf ("DRAM:%02d.size = %08lX\n", i, bd->bi_dram[i].size); } + return 0; } #endif /* CFG_CMD_BDI */ -void do_go (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_go (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong addr, rc; if (argc < 2) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } addr = simple_strtoul(argv[1], NULL, 16); @@ -88,10 +89,11 @@ void do_go (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) rc = ((ulong (*)(bd_t *, int, char *[]))addr) (bd, --argc, &argv[1]); printf ("## Application terminated, rc = 0x%lx\n", rc); + return 0; } #if (CONFIG_COMMANDS & CFG_CMD_LOADS) -void do_load_serial (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_load_serial (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong offset = 0; ulong addr; @@ -173,6 +175,7 @@ void do_load_serial (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[ } } #endif + return 0; } static ulong @@ -323,12 +326,13 @@ char his_pad_char; /* pad chars he needs */ char his_quote; /* quote chars he'll use */ -void do_load_serial_bin (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_load_serial_bin (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong offset = 0; ulong addr; int i; int loadb_baudrate = bd->bi_baudrate; + int rc = 0; if (argc >= 2) { offset = simple_strtoul(argv[1], NULL, 16); @@ -394,10 +398,11 @@ void do_load_serial_bin (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *a if (((s = getenv(bd, "autoscript")) != NULL) && (strcmp(s,"yes") == 0)) { printf("Running autoscript at addr 0x%08lX ...\n", load_addr); - autoscript (bd, load_addr); + rc = autoscript (bd, load_addr); } } #endif + return rc; } diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c index 820a136..e4e8778 100644 --- a/common/cmd_bootm.c +++ b/common/cmd_bootm.c @@ -43,7 +43,7 @@ static void *zalloc(void *, unsigned, unsigned); static void zfree(void *, void *, unsigned); #if (CONFIG_COMMANDS & CFG_CMD_IMI) -static void image_info (unsigned long addr); +static int image_info (unsigned long addr); #endif static void print_type (image_header_t *hdr); @@ -57,7 +57,7 @@ extern void boot_linux(cmd_tbl_t *cmdtp, ulong *len_ptr, int verify); -void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong iflag; ulong addr, ram_addr; @@ -84,7 +84,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (SWAP32(hdr->ih_magic) != IH_MAGIC) { printf ("Bad Magic Number\n"); - return; + return 1; } data = (ulong)&header; @@ -95,7 +95,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (crc32 (0, (char *)data, len) != checksum) { printf ("Bad Header Checksum\n"); - return; + return 1; } /************************************************************/ @@ -125,7 +125,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) printf (" Verifying Checksum ... "); if (crc32 (0, (char *)data, len) != SWAP32(hdr->ih_dcrc)) { printf ("Bad Data CRC\n"); - return; + return 1; } printf ("OK\n"); } @@ -134,7 +134,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (hdr->ih_arch != IH_CPU_ARM) { printf ("Unsupported Architecture\n"); - return; + return 1; } switch (hdr->ih_type) { @@ -150,7 +150,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) data += 4; break; default: printf ("Wrong Image Type for %s command\n", cmdtp->name); - return; + return 1; } /* @@ -178,7 +178,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (iflag) enable_interrupts(); printf ("Unimplemented compression type %d\n", hdr->ih_comp); - return; + return 1; } printf ("OK\n"); @@ -199,7 +199,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (iflag) enable_interrupts(); printf ("Can't boot image type %d\n", hdr->ih_type); - return; + return 1; } switch (hdr->ih_os) @@ -211,39 +211,43 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) break; } + printf ("\n## Control returned to monitor\n"); #ifdef DEBUG - printf ("\n## Control returned to monitor - resetting...\n"); + printf ("\nResetting Hardware ... \n"); do_reset (cmdtp, bd, flag, argc, argv); #endif + return 0; } #if (CONFIG_COMMANDS & CFG_CMD_BOOTD) -void do_bootd (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_bootd (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - run_command (getenv (bd, "bootcmd"), bd, flag); + return run_command (getenv (bd, "bootcmd"), bd, flag); } #endif #if (CONFIG_COMMANDS & CFG_CMD_IMI) -void do_iminfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_iminfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { int arg; ulong addr; + int rc = 0; if (argc < 2) { - image_info (load_addr); - return; + rc = image_info (load_addr); } - - for (arg=1; arg ih_magic) != IH_MAGIC) { printf (" Bad Magic Number\n"); - return; + return 1; } data = (ulong)&header; @@ -266,7 +270,7 @@ static void image_info (ulong addr) if (crc32 (0, (char *)data, len) != checksum) { printf (" Bad Header Checksum\n"); - return; + return 1; } /* for multi-file images we need the data part, too */ @@ -278,9 +282,10 @@ static void image_info (ulong addr) printf (" Verifying Checksum ... "); if (crc32 (0, (char *)data, len) != SWAP32(hdr->ih_dcrc)) { printf (" Bad Data CRC\n"); - return; + return 1; } printf ("OK\n"); + return 0; } #endif /* CFG_CMD_IMI */ diff --git a/common/cmd_cache.c b/common/cmd_cache.c index 949566a..3ea0d38 100644 --- a/common/cmd_cache.c +++ b/common/cmd_cache.c @@ -32,7 +32,7 @@ static int on_off (const char *); -void do_icache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_icache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { switch (argc) { case 2: /* on / off */ @@ -50,13 +50,13 @@ void do_icache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) case 1: /* get status */ printf ("Instruction Cache is %s\n", icache_status() ? "ON" : "OFF"); - return; - default: - printf ("Usage:\n%s\n", cmdtp->usage); + return 0; } + printf ("Usage:\n%s\n", cmdtp->usage); + return 1; } -void do_dcache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_dcache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { switch (argc) { case 2: /* on / off */ @@ -74,10 +74,10 @@ void do_dcache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) case 1: /* get status */ printf ("Data (writethrough) Cache is %s\n", dcache_status() ? "ON" : "OFF"); - return; - default: - printf ("Usage:\n%s\n", cmdtp->usage); + return 0; } + printf ("Usage:\n%s\n", cmdtp->usage); + return 1; } static int on_off (const char *s) diff --git a/common/cmd_eeprom.c b/common/cmd_eeprom.c index d3949c2..2feb3ab 100644 --- a/common/cmd_eeprom.c +++ b/common/cmd_eeprom.c @@ -38,12 +38,9 @@ extern void eeprom_write (unsigned offset, uchar *buffer, unsigned cnt); #if (CONFIG_COMMANDS & CFG_CMD_EEPROM) -void do_eeprom (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_eeprom (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { switch (argc) { - default: - printf ("Usage:\n%s\n", cmdtp->usage); - return; case 5: /* 4 args */ @@ -61,7 +58,7 @@ void do_eeprom (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) eeprom_read (off, (uchar *)addr, cnt); printf ("done\n"); - return; + return 0; } else if (strcmp(argv[1],"write") == 0) { ulong addr = simple_strtoul(argv[2], NULL, 16); @@ -77,14 +74,12 @@ void do_eeprom (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) eeprom_write(off, (uchar *)addr, cnt); printf ("done\n"); - return; + return 0; - } else { - printf ("Usage:\n%s\n", cmdtp->usage); } - - return; } + printf ("Usage:\n%s\n", cmdtp->usage); + return 1; } #endif /* CFG_CMD_EEPROM */ diff --git a/common/cmd_flash.c b/common/cmd_flash.c index 23274da..22ad2fc 100644 --- a/common/cmd_flash.c +++ b/common/cmd_flash.c @@ -92,7 +92,7 @@ abbrev_spec(char *str, flash_info_t **pinfo, int *psf, int *psl) return 1; } -void do_flinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_flinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong bank; @@ -102,20 +102,21 @@ void do_flinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) flash_print_info (&flash_info[bank]); } - return; + return 0; } bank = simple_strtoul(argv[1], NULL, 16); if ((bank < 1) || (bank > CFG_MAX_FLASH_BANKS)) { printf ("Only FLASH Banks # 1 ... # %d supported\n", CFG_MAX_FLASH_BANKS); - return; + return 1; } printf ("\nBank # %ld: ", bank); flash_print_info (&flash_info[bank-1]); + return 0; } -void do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { flash_info_t *info; ulong bank, addr_first, addr_last; @@ -123,7 +124,7 @@ void do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (argc < 2) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } if (strcmp(argv[1], "all") == 0) { @@ -133,32 +134,34 @@ void do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) n = flash_erase (info, 0, info->sector_count-1); if (n < 0) { flash_perror(n); - break; + return 1; } else printf("Done.\n"); } - return; + return 0; } if ((n = abbrev_spec(argv[1], &info, §_first, §_last)) != 0) { if (n < 0) { printf("Bad sector specification\n"); - return; + return 1; } printf ("Erase Flash Sectors %d-%d in Bank # %d:\n", sect_first, sect_last, (info-flash_info)+1); n = flash_erase(info, sect_first, sect_last); - if (n < 0) + if (n < 0) { flash_perror(n); + return 1; + } else printf("Done.\n"); - return; + return 0; } if (argc != 3) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } if (strcmp(argv[1], "bank") == 0) { @@ -166,16 +169,18 @@ void do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if ((bank < 1) || (bank > CFG_MAX_FLASH_BANKS)) { printf ("Only FLASH Banks # 1 ... # %d supported\n", CFG_MAX_FLASH_BANKS); - return; + return 1; } printf ("Erase Flash Bank # %ld:\n", bank); info = &flash_info[bank-1]; n = flash_erase (info, 0, info->sector_count-1); - if (n < 0) + if (n < 0) { flash_perror(n); + return 1; + } else printf("done.\n"); - return; + return 0; } addr_first = simple_strtoul(argv[1], NULL, 16); @@ -183,18 +188,21 @@ void do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (addr_first >= addr_last) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } printf ("Erase Flash from 0x%08lx to 0x%08lx... ", addr_first, addr_last); n = flash_sect_erase(addr_first, addr_last); - if (n < 0) + if (n < 0) { flash_perror(n); + return 1; + } else printf("done.\nErased %d sectors.\n", n); + return 0; } -void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { flash_info_t *info; ulong bank, addr_first, addr_last; @@ -202,7 +210,7 @@ void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (argc < 3) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } if (strcmp(argv[1], "off") == 0) @@ -211,7 +219,7 @@ void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) p = 1; else { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } if (strcmp(argv[2], "all") == 0) { @@ -227,13 +235,13 @@ void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) info->protect[i] = p; } } - return; + return 0; } if ((n = abbrev_spec(argv[2], &info, §_first, §_last)) != 0) { if (n < 0) { printf("Bad sector specification\n"); - return; + return 1; } printf("%sProtect Flash Sectors %d-%d in Bank # %d\n", p ? "" : "Un-", sect_first, sect_last, @@ -241,12 +249,12 @@ void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) for (i = sect_first; i <= sect_last; i++) { info->protect[i] = p; } - return; + return 0; } if (argc != 4) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } if (strcmp(argv[2], "bank") == 0) { @@ -254,7 +262,7 @@ void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if ((bank < 1) || (bank > CFG_MAX_FLASH_BANKS)) { printf ("Only FLASH Banks # 1 ... # %d supported\n", CFG_MAX_FLASH_BANKS); - return; + return 1; } printf ("%sProtect Flash Bank # %ld\n", p ? "" : "Un-", bank); @@ -262,12 +270,12 @@ void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (info->flash_id == FLASH_UNKNOWN) { printf ("missing or unknown FLASH type\n"); - return; + return 1; } for (i=0; isector_count; ++i) { info->protect[i] = p; } - return; + return 0; } addr_first = simple_strtoul(argv[2], NULL, 16); @@ -275,10 +283,10 @@ void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (addr_first >= addr_last) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } - flash_sect_protect (p, addr_first, addr_last); + return flash_sect_protect (p, addr_first, addr_last) ? 1 : 0; } int flash_sect_protect (int p, ulong addr_first, ulong addr_last) diff --git a/common/cmd_mem.c b/common/cmd_mem.c index bf6963f..bd75e88 100644 --- a/common/cmd_mem.c +++ b/common/cmd_mem.c @@ -33,7 +33,7 @@ #if (CONFIG_COMMANDS & CFG_CMD_MEMORY) -static void mod_mem(cmd_tbl_t *, int, int, int, char *[]); +static int mod_mem(cmd_tbl_t *, int, int, int, char *[]); /* Display values from last command. * Memory modify remembered values are different from display memory. @@ -51,7 +51,7 @@ static ulong base_address = 0; */ #define DISP_LINE_LEN 16 -void do_mem_md (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_md (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong addr, size, length; ulong i, nbytes, linebytes; @@ -66,7 +66,7 @@ void do_mem_md (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (argc < 2) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } if ((flag & CMD_FLAG_REPEAT) == 0) { @@ -134,28 +134,30 @@ void do_mem_md (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) dp_last_addr = addr; dp_last_length = length; dp_last_size = size; + + return 0; } -void do_mem_mm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_mm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - mod_mem (cmdtp, 1, flag, argc, argv); + return mod_mem (cmdtp, 1, flag, argc, argv); } -void do_mem_nm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_nm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - mod_mem (cmdtp, 0, flag, argc, argv); + return mod_mem (cmdtp, 0, flag, argc, argv); } -void do_mem_mw (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_mw (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong addr, size, writeval, count; if ((argc < 3) || (argc > 4)) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } /* Check for size specification. @@ -194,16 +196,18 @@ void do_mem_mw (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) *((uchar *)addr) = (uchar)writeval; addr += size; } + + return 0; } -void do_mem_cmp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_cmp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong size, addr1, addr2, count, ngood; if (argc != 4) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } /* Check for size specification. @@ -266,16 +270,18 @@ void do_mem_cmp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) printf("Total of %ld %s%s were the same\n", ngood, size == 4 ? "word" : size == 2 ? "halfword" : "byte", ngood == 1 ? "" : "s"); + + return 0; } -void do_mem_cp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_cp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong addr, size, dest, count; if (argc != 4) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } /* Check for size specification. @@ -303,12 +309,14 @@ void do_mem_cp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) printf ("Copy to Flash... "); rc = flash_write ((uchar *)addr, dest, count*size); - if (rc < 0) + if (rc < 0) { flash_perror(rc); + return 1; + } else printf("done.\n"); - return; + return 0; } while (count-- > 0) { @@ -321,10 +329,12 @@ void do_mem_cp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) addr += size; dest += size; } + + return 0; } -void do_mem_base (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_base (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { if (argc > 1) { /* Set new base address. @@ -334,10 +344,11 @@ void do_mem_base (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) /* Print the current base address. */ printf("Base Address: 0x%08lx\n", base_address); + return 0; } -void do_mem_loop (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_loop (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong addr, size, length, i, junk; volatile uint *longp; @@ -346,7 +357,7 @@ void do_mem_loop (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (argc < 3) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } /* Check for a size spefication. @@ -409,20 +420,21 @@ void do_mem_loop (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) while (i-- > 0) junk = *cp++; } + return 0; } /* Just a quickie to walk through some memory. */ uint baseval = 0; -void do_mem_mtest (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_mtest (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { int *memaddr; int memval; for (;;) { if (ctrlc()) { - return; + return 1; } memaddr = (uint *)CFG_MEMTEST_START; @@ -447,6 +459,7 @@ void do_mem_mtest (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) baseval++; } + return 0; } @@ -459,7 +472,7 @@ void do_mem_mtest (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) * nm{.b, .w, .l} {addr} */ -static void +static int mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char *argv[]) { ulong addr, size, i; @@ -468,7 +481,7 @@ mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char *argv[]) if (argc != 2) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } #ifdef CONFIG_BOOT_RETRY_TIME @@ -552,16 +565,18 @@ mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char *argv[]) mm_last_addr = addr; mm_last_size = size; + + return 0; } -void do_mem_crc (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_mem_crc (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { ulong addr, length; ulong crc; if (argc < 3) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } addr = simple_strtoul(argv[1], NULL, 16); @@ -573,6 +588,8 @@ void do_mem_crc (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) printf ("CRC32 for %08lx ... %08lx ==> %08lx\n", addr, addr + length -1, crc); + + return 0; } #endif /* CFG_CMD_MEMORY */ diff --git a/common/cmd_net.c b/common/cmd_net.c index 1b22505..26f3c90 100644 --- a/common/cmd_net.c +++ b/common/cmd_net.c @@ -35,29 +35,29 @@ # include # endif -extern void do_bootm (cmd_tbl_t *, bd_t *, int, int, char *[]); +extern int do_bootm (cmd_tbl_t *, bd_t *, int, int, char *[]); -static void netboot_common (int, cmd_tbl_t *, bd_t *, int , char *[]); +static int netboot_common (int, cmd_tbl_t *, bd_t *, int , char *[]); -void do_bootp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_bootp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - netboot_common (BOOTP, cmdtp, bd, argc, argv); + return netboot_common (BOOTP, cmdtp, bd, argc, argv); } -void do_tftpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_tftpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - netboot_common (TFTP, cmdtp, bd, argc, argv); + return netboot_common (TFTP, cmdtp, bd, argc, argv); } -void do_rarpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_rarpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - netboot_common (RARP, cmdtp, bd, argc, argv); + return netboot_common (RARP, cmdtp, bd, argc, argv); } #if (CONFIG_COMMANDS & CFG_CMD_DHCP) -void do_dhcp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_dhcp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - netboot_common(DHCP, cmdtp, bd, argc, argv); + return netboot_common(DHCP, cmdtp, bd, argc, argv); } #endif /* CFG_CMD_DHCP */ @@ -97,11 +97,12 @@ static void netboot_update_env(void) } } -static void +static int netboot_common (int proto, cmd_tbl_t *cmdtp, bd_t *bd, int argc, char *argv[]) { char *s; - + int rc = 0; + switch (argc) { case 1: break; @@ -123,11 +124,11 @@ netboot_common (int proto, cmd_tbl_t *cmdtp, bd_t *bd, int argc, char *argv[]) break; default: printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } if (NetLoop(bd, proto) == 0) - return; + return 0; /* NetLoop ok, update environment */ netboot_update_env(); @@ -141,16 +142,18 @@ netboot_common (int proto, cmd_tbl_t *cmdtp, bd_t *bd, int argc, char *argv[]) printf ("Automatic boot of image at addr 0x%08lX ...\n", load_addr); - do_bootm (cmdtp, bd, 0, 1, local_args); + rc = do_bootm (cmdtp, bd, 0, 1, local_args); } #ifdef CONFIG_AUTOSCRIPT - if (((s = getenv(Net_bd, "autoscript")) != NULL) && (strcmp(s,"yes") == 0)) { + if (rc == 0 && + ((s = getenv(Net_bd, "autoscript")) != NULL) && (strcmp(s,"yes") == 0)) { printf("Running autoscript at addr 0x%08lX ...\n", load_addr); - autoscript (bd, load_addr); + rc = autoscript (bd, load_addr); } #endif + return rc; } #endif /* CFG_CMD_NET */ diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c index a117b1a..bd96f56 100644 --- a/common/cmd_nvedit.c +++ b/common/cmd_nvedit.c @@ -180,7 +180,7 @@ static uchar *get_env_addr(bd_t *bd, int index) * Command interface: print one or all environment variables */ -void do_printenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_printenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { int i, j, k, nxt; @@ -194,13 +194,13 @@ void do_printenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (ctrlc()) { printf ("\n ** Abort\n"); - return; + return 1; } } printf("\nEnvironment size: %d/%d bytes\n", i, sizeof(bd->bi_env_data)); - return; + return 0; } for (i=1; ibi_env_data) - return; + return 1; name = argv[1]; @@ -274,7 +278,7 @@ void _do_setenv (bd_t *bd, int flag, int argc, char *argv[]) # endif /* CONFIG_OVERWRITE_ETHADDR_ONCE && CONFIG_ETHADDR */ ) ) { printf ("Can't overwrite \"%s\"\n", name); - return; + return 1; } #endif @@ -291,7 +295,7 @@ void _do_setenv (bd_t *bd, int flag, int argc, char *argv[]) if (i == N_BAUDRATES) { printf ("## Baudrate %d bps not supported\n", baudrate); - return; + return 1; } printf ("## Switch baudrate to %d bps and press ENTER ...\n", baudrate); @@ -325,7 +329,7 @@ void _do_setenv (bd_t *bd, int flag, int argc, char *argv[]) if ((argc < 3) || argv[2] == NULL) { /* Update CRC */ bd->bi_env_crc = crc32(0, bd->bi_env_data, sizeof(bd->bi_env_data)); - return; + return 0; } /* @@ -347,7 +351,7 @@ void _do_setenv (bd_t *bd, int flag, int argc, char *argv[]) } if (len > sizeof(bd->bi_env_data)) { printf ("## Error: environment overflow, \"%s\" deleted\n", name); - return; + return 1; } while ((*env = *name++) != '\0') env++; @@ -377,9 +381,9 @@ void _do_setenv (bd_t *bd, int flag, int argc, char *argv[]) bd->bi_enetaddr[i] = s ? simple_strtoul(s, &e, 16) : 0; if (s) s = (*e) ? e+1 : e; } - return; + return 0; } - + if (strcmp(argv[1],"ipaddr") == 0) { char *s = argv[2]; /* always use only one arg */ char *e; @@ -390,18 +394,22 @@ void _do_setenv (bd_t *bd, int flag, int argc, char *argv[]) bd->bi_ip_addr |= (val & 0xFF); if (s) s = (*e) ? e+1 : e; } - return; + return 0; } + if (strcmp(argv[1],"loadaddr") == 0) { load_addr = simple_strtoul(argv[2], NULL, 16); - return; + return 0; } + #if (CONFIG_COMMANDS & CFG_CMD_NET) if (strcmp(argv[1],"bootfile") == 0) { copy_filename (BootFile, argv[2], sizeof(BootFile)); - return; + return 0; } #endif /* CFG_CMD_NET */ + + return 0; } void setenv (bd_t * bd, char *varname, char *varvalue) @@ -410,15 +418,15 @@ void setenv (bd_t * bd, char *varname, char *varvalue) _do_setenv (bd, 0, 3, argv); } -void do_setenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, +int do_setenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char *argv[]) { if (argc < 2) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } - _do_setenv (bd, flag, argc, argv); + return _do_setenv (bd, flag, argc, argv); } /************************************************************************ @@ -426,7 +434,7 @@ void do_setenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, */ #if (CONFIG_COMMANDS & CFG_CMD_ASKENV) -void do_askenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, +int do_askenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char *argv[]) { extern char console_buffer[CFG_CBSIZE]; @@ -442,13 +450,13 @@ void do_askenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, if (argc < 2) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } /* Check the syntax */ switch (argc) { case 1: printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; case 2: /* askenv envname */ sprintf (message, "Please enter '%s':", argv[1]); @@ -478,16 +486,16 @@ void do_askenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, if (size >= CFG_CBSIZE) size = CFG_CBSIZE - 1; - + if (size <= 0) - return; - + return 1; + /* prompt for input */ len = readline (message); - + if (size < len) console_buffer[size] = '\0'; - + len = 2; if (console_buffer[0] != '\0') { local_args[2] = console_buffer; @@ -495,7 +503,7 @@ void do_askenv (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, } // Continue calling setenv code - _do_setenv (bd, flag, len, local_args); + return _do_setenv (bd, flag, len, local_args); } #endif /* CFG_CMD_ASKENV */ @@ -548,9 +556,9 @@ static int envmatch (bd_t *bd, uchar *s1, int i2) #if (CONFIG_COMMANDS & CFG_CMD_ENV) -void do_saveenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_saveenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - board_env_save(bd, bd->bi_env, sizeof(env_t)); + return (board_env_save(bd, bd->bi_env, sizeof(env_t))) ? 1 : 0; } #endif /* CFG_CMD_ENV */ diff --git a/common/cmd_pcmcia.c b/common/cmd_pcmcia.c index 46f01f2..d2647fd 100644 --- a/common/cmd_pcmcia.c +++ b/common/cmd_pcmcia.c @@ -93,12 +93,11 @@ const char *indent = "\t "; #if (CONFIG_COMMANDS & CFG_CMD_PCMCIA) -void do_pinit (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_pinit (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { - if (argc != 2) { printf ("Usage: pinit {on | off}\n"); - return; + return 1; } if (strcmp(argv[1],"on") == 0) { pcmcia_on (); @@ -106,10 +105,10 @@ void do_pinit (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) pcmcia_off (); } else { printf ("Usage: pinit {on | off}\n"); - return; + return 1; } - return; + return 0; } #endif /* CFG_CMD_PCMCIA */ diff --git a/common/cmd_reginfo.c b/common/cmd_reginfo.c deleted file mode 100644 index 62d50d3..0000000 --- a/common/cmd_reginfo.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * (C) Copyright 2000 - * Subodh Nijsure, SkyStream Networks, snijsure@skystream.com - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ - -#include -#include -#include -#if defined(CONFIG_8xx) -#include -#endif - -#if defined(CONFIG_8xx) && (CONFIG_COMMANDS & CFG_CMD_REGINFO) - -void do_reginfo(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) -{ - volatile immap_t *immap = (immap_t *)CFG_IMMR; - volatile memctl8xx_t *memctl = &immap->im_memctl; - volatile sysconf8xx_t *sysconf = &immap->im_siu_conf; - volatile sit8xx_t *timers = &immap->im_sit; - - /* Hopefully more PowerPC knowledgable people will add code to display - * other useful registers - */ - - printf("\nSystem Configuration registers\n"); - - printf("\tIMMR\t0x%08X\n", get_immr(0)); - - printf("\tSIUMCR\t0x%08X", sysconf->sc_siumcr); - printf("\tSYPCR\t0x%08X\n",sysconf->sc_sypcr); - - printf("\tSWT\t0x%08X", sysconf->sc_swt); - printf("\tSWSR\t0x%04X\n", sysconf->sc_swsr); - - printf("\tSIPEND\t0x%08X\tSIMASK\t0x%08X\n", - sysconf->sc_sipend, sysconf->sc_simask); - printf("\tSIEL\t0x%08X\tSIVEC\t0x%08X\n", - sysconf->sc_siel, sysconf->sc_sivec); - printf("\tTESR\t0x%08X\tSDCR\t0x%08X\n", - sysconf->sc_tesr, sysconf->sc_sdcr); - - printf("Memory Controller Registers\n"); - - printf("\tBR0\t0x%08X\tOR0\t0x%08X \n", memctl->memc_br0, memctl->memc_or0); - printf("\tBR1\t0x%08X\tOR1\t0x%08X \n", memctl->memc_br1, memctl->memc_or1); - printf("\tBR2\t0x%08X\tOR2\t0x%08X \n", memctl->memc_br2, memctl->memc_or2); - printf("\tBR3\t0x%08X\tOR3\t0x%08X \n", memctl->memc_br3, memctl->memc_or3); - printf("\tBR4\t0x%08X\tOR4\t0x%08X \n", memctl->memc_br4, memctl->memc_or4); - printf("\tBR5\t0x%08X\tOR5\t0x%08X \n", memctl->memc_br5, memctl->memc_or5); - printf("\tBR6\t0x%08X\tOR6\t0x%08X \n", memctl->memc_br6, memctl->memc_or6); - printf("\tBR7\t0x%08X\tOR7\t0x%08X \n", memctl->memc_br7, memctl->memc_or7); - printf("\n"); - - printf("\tmamr\t0x%08X\tmbmr\t0x%08X \n", - memctl->memc_mamr, memctl->memc_mbmr ); - printf("\tmstat\t0x%08X\tmptpr\t0x%08X \n", - memctl->memc_mstat, memctl->memc_mptpr ); - printf("\tmdr\t0x%08X \n", memctl->memc_mdr); - - printf("\nSystem Integration Timers\n"); - printf("\tTBSCR\t0x%08X\tRTCSC\t0x%08X \n", - timers->sit_tbscr, timers->sit_rtcsc); - printf("\tPISCR\t0x%08X \n", timers->sit_piscr); - - /* - * May be some CPM info here? - */ - -} - -#endif /* CONFIG_8xx && CFG_CMD_REGINFO */ diff --git a/common/command.c b/common/command.c index 145b12c..61e5889 100644 --- a/common/command.c +++ b/common/command.c @@ -78,15 +78,14 @@ " - echo args to console; \\c suppresses newline\n" \ ), -void -do_version (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_version (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { extern char version_string[]; printf ("\n%s\n", version_string); + return 0; } -void -do_echo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_echo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { int i, putnl = 1; @@ -106,14 +105,15 @@ do_echo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) if (putnl) putc('\n'); + + return 0; } /* * Use puts() instead of printf() to avoid printf buffer overflow * for long help messages */ -void -do_help (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) +int do_help (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) { int i; @@ -122,14 +122,14 @@ do_help (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) for (cmdtp=&cmd_tbl[0]; cmdtp->name; cmdtp++) { /* allow user abort */ if (ctrlc()) - return; + return 1; if (cmdtp->usage == NULL) continue; puts (cmdtp->usage); } - return; + return 0; } /* @@ -160,6 +160,7 @@ do_help (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]) ); } } + return 0; } /*************************************************************************** diff --git a/common/main.c b/common/main.c index 8195bb7..0a2c7f8 100644 --- a/common/main.c +++ b/common/main.c @@ -679,17 +679,20 @@ int run_command (const char *cmd, bd_t *bd, int flag) /****************************************************************************/ #if (CONFIG_COMMANDS & CFG_CMD_RUN) -void do_run (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char *argv[]) +int do_run (cmd_tbl_t * cmdtp, bd_t * bd, int flag, int argc, char *argv[]) { int i; + int rc = 0; if (argc < 2) { printf ("Usage:\n%s\n", cmdtp->usage); - return; + return 1; } - for (i=1; i diff --git a/fs/jffs2/compr_zlib.c b/fs/jffs2/compr_zlib.c index 0509058..aacfa7f 100644 --- a/fs/jffs2/compr_zlib.c +++ b/fs/jffs2/compr_zlib.c @@ -30,9 +30,6 @@ * other provisions required by the GPL. If you do not delete the * provisions above, a recipient may use your version of this file * under either the RHEPL or the GPL. - * - * $Id: compr_zlib.c,v 1.1 2002/03/14 16:44:04 mariusgroeger Exp $ - * */ #include diff --git a/fs/jffs2/jffs2_1pass.c b/fs/jffs2/jffs2_1pass.c index 42d6df8..ddc3e57 100644 --- a/fs/jffs2/jffs2_1pass.c +++ b/fs/jffs2/jffs2_1pass.c @@ -1,7 +1,6 @@ /* ------------------------------------------------------------------------- * Filename: jffs2.c - * Version: $Id: jffs2_1pass.c,v 1.1 2002/03/14 16:44:04 mariusgroeger Exp $ * Copyright: Copyright (C) 2001, Russ Dill * Author: Russ Dill * Description: Module to load kernel from jffs2 @@ -41,9 +40,6 @@ * other provisions required by the GPL. If you do not delete the * provisions above, a recipient may use your version of this file * under either the RHEPL or the GPL. - * - * $Id: jffs2_1pass.c,v 1.1 2002/03/14 16:44:04 mariusgroeger Exp $ - * */ /* Ok, so anyone who knows the jffs2 code will probably want to get a papar diff --git a/fs/jffs2/mini_inflate.c b/fs/jffs2/mini_inflate.c index 8ac512b..6834d7a 100644 --- a/fs/jffs2/mini_inflate.c +++ b/fs/jffs2/mini_inflate.c @@ -1,6 +1,5 @@ /*------------------------------------------------------------------------- * Filename: mini_inflate.c - * Version: $Id: mini_inflate.c,v 1.1 2002/03/14 16:44:04 mariusgroeger Exp $ * Copyright: Copyright (C) 2001, Russ Dill * Author: Russ Dill * Description: Mini inflate implementation (RFC 1951) diff --git a/include/armboot.h b/include/armboot.h index e9daab4..7b1e115 100644 --- a/include/armboot.h +++ b/include/armboot.h @@ -81,6 +81,15 @@ typedef struct bd_info { #define bi_env_data bi_env->data #define bi_env_crc bi_env->crc +/* arm/crc32.c */ +ulong crc32 (ulong, const unsigned char *, uint); +ulong crc32_no_comp (ulong crc, const unsigned char *, uint); + +/* + * Don't define some stuff private to armboot target code + */ +#ifndef HOST_TOOLS + /* board/.../env.c */ int board_env_getchar(bd_t * bd, int index, uchar *c); int board_env_save (bd_t * bd, env_t *data, int size); @@ -142,10 +151,6 @@ void panic (const char *fmt, ...); int sprintf (char * buf, const char *fmt, ...); int vsprintf (char *buf, const char *fmt, va_list args); -/* arm/crc32.c */ -ulong crc32 (ulong, const unsigned char *, uint); -ulong crc32_no_comp (ulong crc, const unsigned char *, uint); - void udelay (unsigned long); int ctrlc (void); @@ -153,7 +158,6 @@ int had_ctrlc (void); void clear_ctrlc (void); int disable_ctrlc (int); - int console_assign (int file, char *devname); /* */ @@ -236,5 +240,6 @@ int fgetc(int file); (((x) << 8) & 0x00ff0000) | \ (((x) << 24) & 0xff000000) ) +#endif /* HOST_TOOLS */ #endif /* _ARMBOOT_H_ */ diff --git a/include/cmd_autoscript.h b/include/cmd_autoscript.h index b61f2f9..3ffbac7 100644 --- a/include/cmd_autoscript.h +++ b/include/cmd_autoscript.h @@ -35,8 +35,8 @@ "A valid autoscr header must be present\n" \ ), -void autoscript (bd_t *bd, ulong addr); -void do_autoscript (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int autoscript (bd_t *bd, ulong addr); +int do_autoscript (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else diff --git a/include/cmd_boot.h b/include/cmd_boot.h index f90f171..d97bc3c 100644 --- a/include/cmd_boot.h +++ b/include/cmd_boot.h @@ -34,7 +34,7 @@ NULL \ ), -void do_bdinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_bdinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_BDINFO @@ -48,7 +48,7 @@ void do_bdinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); " passing 'arg' as arguments\n" \ ), -void do_go (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_go (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #if (CONFIG_COMMANDS & CFG_CMD_LOADS) #ifdef CFG_LOADS_BAUD_CHANGE @@ -68,7 +68,7 @@ void do_go (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); ), #endif /* CFG_LOADS_BAUD_CHANGE */ -void do_load_serial (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_load_serial (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else /* ! CFG_CMD_LOADS */ #define CMD_TBL_LOADS @@ -84,7 +84,7 @@ void do_load_serial (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[ " with offset 'off' and baudrate 'baud'\n" \ ), -void do_load_serial_bin (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_load_serial_bin (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_LOADB @@ -97,6 +97,6 @@ void do_load_serial_bin (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *a ), /* Implemented in $(CPU)/cpu.c */ -void do_reset (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_reset (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #endif /* _CMD_BOOT_H */ diff --git a/include/cmd_bootm.h b/include/cmd_bootm.h index 1f672db..4dfc2e3 100644 --- a/include/cmd_bootm.h +++ b/include/cmd_bootm.h @@ -27,7 +27,7 @@ #ifndef _CMD_BOOTM_H #define _CMD_BOOTM_H -void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #define CMD_TBL_BOOTM MK_CMD_TBL_ENTRY( \ "bootm", 5, CFG_MAXARGS, 1, do_bootm, \ @@ -38,7 +38,7 @@ void do_bootm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); ), #if (CONFIG_COMMANDS & CFG_CMD_BOOTD) -void do_bootd (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_bootd (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #define CMD_TBL_BOOTD MK_CMD_TBL_ENTRY( \ "bootd", 4, 1, 1, do_bootd, \ @@ -50,7 +50,7 @@ void do_bootd (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #endif #if (CONFIG_COMMANDS & CFG_CMD_IMI) -void do_iminfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_iminfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #define CMD_TBL_IMINFO MK_CMD_TBL_ENTRY( \ "iminfo", 3, CFG_MAXARGS, 1, do_iminfo, \ diff --git a/include/cmd_cache.h b/include/cmd_cache.h index d049da1..0270884 100644 --- a/include/cmd_cache.h +++ b/include/cmd_cache.h @@ -42,8 +42,8 @@ " - enable or disable data (writethrough) cache\n" \ ), -void do_icache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_dcache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_icache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_dcache (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_ICACHE #define CMD_TBL_DCACHE diff --git a/include/cmd_eeprom.h b/include/cmd_eeprom.h index 4134857..e8bf5bd 100644 --- a/include/cmd_eeprom.h +++ b/include/cmd_eeprom.h @@ -40,7 +40,7 @@ " - read/write `cnt' bytes at EEPROM offset `off'\n" \ ), -void do_eeprom (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_eeprom (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else diff --git a/include/cmd_flash.h b/include/cmd_flash.h index 51924e3..168d1c2 100644 --- a/include/cmd_flash.h +++ b/include/cmd_flash.h @@ -62,9 +62,9 @@ "protect off all\n - make all FLASH banks writable\n" \ ), -void do_flinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_flinfo (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_flerase(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_protect(cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_FLINFO #define CMD_TBL_FLERASE diff --git a/include/cmd_mem.h b/include/cmd_mem.h index 9317603..970dae9 100644 --- a/include/cmd_mem.h +++ b/include/cmd_mem.h @@ -85,16 +85,16 @@ "\n - simple SDRAM read/write test\n" \ ), -void do_mem_md (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_mm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_nm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_mw (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_cp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_cmp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_crc (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_base (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_loop (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); -void do_mem_mtest (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_md (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_mm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_nm (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_mw (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_cp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_cmp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_crc (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_base (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_loop (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_mem_mtest (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_MD diff --git a/include/cmd_net.h b/include/cmd_net.h index b08fdc3..cd4cb11 100644 --- a/include/cmd_net.h +++ b/include/cmd_net.h @@ -34,7 +34,7 @@ "[loadAddress] [bootfilename]\n" \ ), -void do_bootp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_bootp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #define CMD_TBL_TFTPB MK_CMD_TBL_ENTRY( \ "tftpboot", 4, 3, 1, do_tftpb, \ @@ -44,7 +44,7 @@ void do_bootp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); ), -void do_tftpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_tftpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #define CMD_TBL_RARPB MK_CMD_TBL_ENTRY( \ @@ -54,7 +54,7 @@ void do_tftpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); ), -void do_rarpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_rarpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #if (CONFIG_COMMANDS & CFG_CMD_DHCP) #define CMD_TBL_DHCP MK_CMD_TBL_ENTRY( \ @@ -64,7 +64,7 @@ void do_rarpb (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); ), -void do_dhcp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_dhcp (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_DHCP #endif /* CFG_CMD_DHCP */ diff --git a/include/cmd_nvedit.h b/include/cmd_nvedit.h index a970051..d6f3c6b 100644 --- a/include/cmd_nvedit.h +++ b/include/cmd_nvedit.h @@ -34,7 +34,7 @@ "printenv name ...\n" \ " - print value of environment variable 'name'\n" \ ), -void do_printenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_printenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #define CMD_TBL_SETENV MK_CMD_TBL_ENTRY( \ "setenv", 6, CFG_MAXARGS, 0, do_setenv, \ @@ -44,7 +44,7 @@ void do_printenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); "setenv name\n" \ " - delete environment variable 'name'\n" \ ), -void do_setenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_setenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #if ((CONFIG_COMMANDS & (CFG_CMD_ENV|CFG_CMD_FLASH)) == (CFG_CMD_ENV|CFG_CMD_FLASH)) #define CMD_TBL_SAVEENV MK_CMD_TBL_ENTRY( \ @@ -52,7 +52,7 @@ void do_setenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); "saveenv - save environment variables to persistent storage\n", \ NULL \ ), -void do_saveenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_saveenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_SAVEENV #endif /* CFG_CMD_ENV */ @@ -71,7 +71,7 @@ void do_saveenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); " - display 'message' string and get environment variable 'name'" \ "from stdin (max 'size' chars)\n" \ ), -void do_askenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_askenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_ASKENV #endif /* CFG_CMD_ASKENV */ @@ -83,7 +83,7 @@ void do_askenv (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); "var [...]\n" \ " - run the commands in the environment variable(s) 'var'\n" \ ), -void do_run (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_run (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_RUN #endif /* CFG_CMD_RUN */ diff --git a/include/cmd_pcmcia.h b/include/cmd_pcmcia.h index 3f733ea..54100e4 100644 --- a/include/cmd_pcmcia.h +++ b/include/cmd_pcmcia.h @@ -35,7 +35,7 @@ "pinit off - power off PCMCIA socket\n" \ ), -void do_pinit (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_pinit (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else #define CMD_TBL_PINIT #endif diff --git a/include/cmd_rtc.h b/include/cmd_rtc.h index e41d227..8f1724a 100644 --- a/include/cmd_rtc.h +++ b/include/cmd_rtc.h @@ -37,7 +37,7 @@ " - with argument: set the system date & time\n" \ ), -void do_date (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); +int do_date (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); #else diff --git a/include/command.h b/include/command.h index 8386e9a..8aca887 100644 --- a/include/command.h +++ b/include/command.h @@ -42,7 +42,7 @@ struct cmd_tbl_s { int maxargs; /* maximum number of arguments */ int repeatable; /* autorepeat allowed? */ /* Implementation function */ - void (*cmd)(struct cmd_tbl_s *, bd_t *, int, int, char *[]); + int (*cmd)(struct cmd_tbl_s *, bd_t *, int, int, char *[]); char *usage; /* Usage message (short) */ #ifdef CFG_LONGHELP char *help; /* Help message (long) */ @@ -72,7 +72,7 @@ cmd_tbl_t *find_cmd(const char *cmd); * void function (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[]); */ -typedef void command_t (cmd_tbl_t *, bd_t *, int, int, char *[]); +typedef int command_t (cmd_tbl_t *, bd_t *, int, int, char *[]); #endif /* __ASSEMBLY__ */ diff --git a/include/configs/config_impa7.h b/include/configs/config_impa7.h index 457399c..2a02c43 100644 --- a/include/configs/config_impa7.h +++ b/include/configs/config_impa7.h @@ -68,7 +68,7 @@ #define CONFIG_BOOTP_MASK (CONFIG_BOOTP_DEFAULT|CONFIG_BOOTP_BOOTFILESIZE) -#define CONFIG_COMMANDS (CONFIG_CMD_DFL) +#define CONFIG_COMMANDS (CONFIG_CMD_DFL | CFG_CMD_JFFS2) /* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */ #include @@ -168,4 +168,9 @@ struct bd_info_ext #define CFG_ENV_ADDR (PHYS_FLASH_1 + 0x1C000) /* Addr of Environment Sector */ #define CFG_ENV_SIZE 0x4000 /* Total Size of Environment Sector */ +/* Flash banks JFFS2 should use */ +#define CFG_JFFS2_FIRST_BANK 0 +#define CFG_JFFS2_FIRST_SECTOR 8 +#define CFG_JFFS2_NUM_BANKS 2 + #endif /* __CONFIG_H */ diff --git a/include/jffs2/compr_rubin.h b/include/jffs2/compr_rubin.h index 8616876..a654a5d 100644 --- a/include/jffs2/compr_rubin.h +++ b/include/jffs2/compr_rubin.h @@ -1,7 +1,6 @@ /* Rubin encoder/decoder header */ /* work started at : aug 3, 1994 */ /* last modification : aug 15, 1994 */ -/* $Id: compr_rubin.h,v 1.1 2002/03/14 16:44:03 mariusgroeger Exp $ */ #define RUBIN_REG_SIZE 16 #define UPPER_BIT_RUBIN (((long) 1)<<(RUBIN_REG_SIZE-1)) diff --git a/include/jffs2/jffs2.h b/include/jffs2/jffs2.h index 7a0054b..820c086 100644 --- a/include/jffs2/jffs2.h +++ b/include/jffs2/jffs2.h @@ -30,9 +30,6 @@ * other provisions required by the GPL. If you do not delete the * provisions above, a recipient may use your version of this file * under either the RHEPL or the GPL. - * - * $Id: jffs2.h,v 1.1 2002/03/14 16:44:03 mariusgroeger Exp $ - * */ #ifndef __LINUX_JFFS2_H__ diff --git a/include/jffs2/load_kernel.h b/include/jffs2/load_kernel.h index bd77966..0c9eb2d 100644 --- a/include/jffs2/load_kernel.h +++ b/include/jffs2/load_kernel.h @@ -2,7 +2,6 @@ #define load_kernel_h /*------------------------------------------------------------------------- * Filename: load_kernel.h - * Version: $Id: load_kernel.h,v 1.1 2002/03/14 16:44:03 mariusgroeger Exp $ * Copyright: Copyright (C) 2001, Russ Dill * Author: Russ Dill * Description: header for load kernel modules diff --git a/include/jffs2/mini_inflate.h b/include/jffs2/mini_inflate.h index 709fac8..8a826bd 100644 --- a/include/jffs2/mini_inflate.h +++ b/include/jffs2/mini_inflate.h @@ -1,6 +1,5 @@ /*------------------------------------------------------------------------- * Filename: mini_inflate.h - * Version: $Id: mini_inflate.h,v 1.1 2002/03/14 16:44:03 mariusgroeger Exp $ * Copyright: Copyright (C) 2001, Russ Dill * Author: Russ Dill * Description: Mini deflate implementation diff --git a/include/serial.h b/include/serial.h index efd635d..739a63e 100644 --- a/include/serial.h +++ b/include/serial.h @@ -1,6 +1,5 @@ /*------------------------------------------------------------------------- * Filename: serial.h - * Version: $Id: serial.h,v 1.1 2002/03/14 16:44:03 mariusgroeger Exp $ * Copyright: Copyright (C) 1999, Erik Mouw * Author: Erik Mouw * Description: Header file for serial.c @@ -29,12 +28,6 @@ * */ -#ident "$Id: serial.h,v 1.1 2002/03/14 16:44:03 mariusgroeger Exp $" - -#ifndef BLOB_SERIAL_H -#define BLOB_SERIAL_H - - #include "types.h" /* Function protos */ @@ -44,4 +37,3 @@ void serial_putc(const char c); void serial_getc(const char c); int serial_tstc(void); -#endif diff --git a/include/version.h b/include/version.h index 5ce702e..c541adf 100644 --- a/include/version.h +++ b/include/version.h @@ -25,6 +25,6 @@ #ifndef __VERSION_H__ #define __VERSION_H__ -#define ARMBOOT_VERSION "ARMboot 1.0" +#define ARMBOOT_VERSION "ARMboot 1.0.1" #endif /* __VERSION_H__ */ diff --git a/tools/Makefile b/tools/Makefile index 5e9e9c2..83cf654 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -41,7 +41,7 @@ TOOLSUBDIRS = # Use native tools and options # CPPFLAGS = -Wall -I../include -I.. -DTEXT_BASE=$(TEXT_BASE) -CFLAGS = $(CPPFLAGS) -O +CFLAGS = $(CPPFLAGS) -O -DHOST_TOOLS AFLAGS = -D__ASSEMBLY__ $(CPPFLAGS) CC = $(HOSTCC) MAKEDEPEND = makedepend