* Code cleanup:
  - remove trailing white space, trailing empty lines, C++ comments, etc.
  - split cmd_boot.c (separate cmd_bdinfo.c and cmd_load.c)

* Patches by Kenneth Johansson, 25 Jun 2003:
  - major rework of command structure
    (work done mostly by Michal Cendrowski and Joakim Kristiansen)
diff --git a/board/esd/ar405/Makefile b/board/esd/ar405/Makefile
index 39d2fec..f5bda55 100644
--- a/board/esd/ar405/Makefile
+++ b/board/esd/ar405/Makefile
@@ -28,7 +28,7 @@
 OBJS	= $(BOARD).o flash.o
 
 $(LIB):	$(OBJS) $(SOBJS)
-	$(AR) crv $@ $^
+	$(AR) crv $@ $(OBJS)
 
 clean:
 	rm -f $(SOBJS) $(OBJS)
diff --git a/board/esd/ar405/ar405.c b/board/esd/ar405/ar405.c
index f23b822..d0b06e6 100644
--- a/board/esd/ar405/ar405.c
+++ b/board/esd/ar405/ar405.c
@@ -25,8 +25,9 @@
 #include "ar405.h"
 #include <asm/processor.h>
 #include <command.h>
-#include <cmd_boot.h>
 
+/*cmd_boot.c*/
+extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
 
 /* ------------------------------------------------------------------------- */
 
diff --git a/board/esd/ar405/flash.c b/board/esd/ar405/flash.c
index 3a644f9..a651b6f 100644
--- a/board/esd/ar405/flash.c
+++ b/board/esd/ar405/flash.c
@@ -43,8 +43,8 @@
 {
 	unsigned long size_b0, size_b1;
 	int i;
-        uint pbcr;
-        unsigned long base_b0, base_b1;
+	uint pbcr;
+	unsigned long base_b0, base_b1;
 
 	/* Init: no FLASHes known */
 	for (i=0; i<CFG_MAX_FLASH_BANKS; ++i) {
@@ -66,27 +66,27 @@
 
 	/* Re-do sizing to get full correct info */
 
-        if (size_b1)
-          {
-            mtdcr(ebccfga, pb0cr);
-            pbcr = mfdcr(ebccfgd);
-            mtdcr(ebccfga, pb0cr);
-            base_b1 = -size_b1;
-            pbcr = (pbcr & 0x0001ffff) | base_b1 | (((size_b1/1024/1024)-1)<<17);
-            mtdcr(ebccfgd, pbcr);
-            /*          printf("pb1cr = %x\n", pbcr); */
-          }
+	if (size_b1)
+	  {
+	    mtdcr(ebccfga, pb0cr);
+	    pbcr = mfdcr(ebccfgd);
+	    mtdcr(ebccfga, pb0cr);
+	    base_b1 = -size_b1;
+	    pbcr = (pbcr & 0x0001ffff) | base_b1 | (((size_b1/1024/1024)-1)<<17);
+	    mtdcr(ebccfgd, pbcr);
+	    /*          printf("pb1cr = %x\n", pbcr); */
+	  }
 
-        if (size_b0)
-          {
-            mtdcr(ebccfga, pb1cr);
-            pbcr = mfdcr(ebccfgd);
-            mtdcr(ebccfga, pb1cr);
-            base_b0 = base_b1 - size_b0;
-            pbcr = (pbcr & 0x0001ffff) | base_b0 | (((size_b0/1024/1024)-1)<<17);
-            mtdcr(ebccfgd, pbcr);
-            /*            printf("pb0cr = %x\n", pbcr); */
-          }
+	if (size_b0)
+	  {
+	    mtdcr(ebccfga, pb1cr);
+	    pbcr = mfdcr(ebccfgd);
+	    mtdcr(ebccfga, pb1cr);
+	    base_b0 = base_b1 - size_b0;
+	    pbcr = (pbcr & 0x0001ffff) | base_b0 | (((size_b0/1024/1024)-1)<<17);
+	    mtdcr(ebccfgd, pbcr);
+	    /*            printf("pb0cr = %x\n", pbcr); */
+	  }
 
 	size_b0 = flash_get_size((vu_long *)base_b0, &flash_info[0]);
 
@@ -109,11 +109,11 @@
 				    base_b1+size_b1-monitor_flash_len,
 				    base_b1+size_b1-1,
 				    &flash_info[1]);
-                /* monitor protection OFF by default (one is enough) */
-                (void)flash_protect(FLAG_PROTECT_CLEAR,
-                                    base_b0+size_b0-monitor_flash_len,
-                                    base_b0+size_b0-1,
-                                    &flash_info[0]);
+		/* monitor protection OFF by default (one is enough) */
+		(void)flash_protect(FLAG_PROTECT_CLEAR,
+				    base_b0+size_b0-monitor_flash_len,
+				    base_b0+size_b0-1,
+				    &flash_info[0]);
 	} else {
 		flash_info[1].flash_id = FLASH_UNKNOWN;
 		flash_info[1].sector_count = -1;
diff --git a/board/esd/ar405/u-boot.lds b/board/esd/ar405/u-boot.lds
index 7b86a3d..3bb4304 100644
--- a/board/esd/ar405/u-boot.lds
+++ b/board/esd/ar405/u-boot.lds
@@ -129,6 +129,11 @@
   _edata  =  .;
   PROVIDE (edata = .);
 
+  __u_boot_cmd_start = .;
+  .u_boot_cmd : { *(.u_boot_cmd) }
+  __u_boot_cmd_end = .;
+
+
   __start___ex_table = .;
   __ex_table : { *(__ex_table) }
   __stop___ex_table = .;