* 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/siemens/CCM/Makefile b/board/siemens/CCM/Makefile
index 548647a..ee2fc53 100644
--- a/board/siemens/CCM/Makefile
+++ b/board/siemens/CCM/Makefile
@@ -29,7 +29,7 @@
 	  ../../tqm8xx/load_sernum_ethaddr.o
 
 $(LIB):	.depend $(OBJS)
-	$(AR) crv $@ $^
+	$(AR) crv $@ $(OBJS)
 
 #########################################################################
 
diff --git a/board/siemens/CCM/fpga_ccm.c b/board/siemens/CCM/fpga_ccm.c
index 292387b..11b97bc 100644
--- a/board/siemens/CCM/fpga_ccm.c
+++ b/board/siemens/CCM/fpga_ccm.c
@@ -167,4 +167,3 @@
     }
     return 0;
 }
-
diff --git a/board/siemens/CCM/u-boot.lds b/board/siemens/CCM/u-boot.lds
index 4b0129f..86e587f 100644
--- a/board/siemens/CCM/u-boot.lds
+++ b/board/siemens/CCM/u-boot.lds
@@ -109,6 +109,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 = .;
@@ -131,4 +136,3 @@
   _end = . ;
   PROVIDE (end = .);
 }
-
diff --git a/board/siemens/CCM/u-boot.lds.debug b/board/siemens/CCM/u-boot.lds.debug
index 84c4248..4e67721 100644
--- a/board/siemens/CCM/u-boot.lds.debug
+++ b/board/siemens/CCM/u-boot.lds.debug
@@ -106,6 +106,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 = .;
@@ -128,4 +133,3 @@
   _end = . ;
   PROVIDE (end = .);
 }
-
diff --git a/board/siemens/IAD210/IAD210.c b/board/siemens/IAD210/IAD210.c
index 4897046..30adbfc 100644
--- a/board/siemens/IAD210/IAD210.c
+++ b/board/siemens/IAD210/IAD210.c
@@ -57,27 +57,27 @@
 	 *
 	 */
 		    0xFFFAF834, 0xFFE5B435, /* last */
-                                            _NOT_USED_,
+					    _NOT_USED_,
 	/*
 	 * Burst Read. (Offset 8 in UPMA RAM)
 	 */
 	0xFE2DB004, 0xF0AF7404, 0xF0AFFC00, 0xF0AFFC00,
 	0xF0AFFC00, 0xF0AAF800, 0xF1A5E447, /* last */
-                                            _NOT_USED_,
+					    _NOT_USED_,
 	_NOT_USED_, _NOT_USED_, _NOT_USED_, _NOT_USED_,
 	_NOT_USED_, _NOT_USED_, _NOT_USED_, _NOT_USED_,
 	/*
 	 * Single Write. (Offset 18 in UPMA RAM)
 	 */
 	0xFE29B300, 0xF1A27304, 0xFFA5F747,  /* last */
-                                            _NOT_USED_,
+					    _NOT_USED_,
 	_NOT_USED_, _NOT_USED_, _NOT_USED_, _NOT_USED_,
 	/*
 	 * Burst Write. (Offset 20 in UPMA RAM)
 	 */
 	0x1F0DFC04, 0xEEABBC00, 0x10A77C00, 0xF0AFFC00,
 	0xF1AAF804, 0xFFA5F447, /* last */
-			        _NOT_USED_, _NOT_USED_,
+				_NOT_USED_, _NOT_USED_,
 	_NOT_USED_, _NOT_USED_, _NOT_USED_, _NOT_USED_,
 	_NOT_USED_, _NOT_USED_, _NOT_USED_, _NOT_USED_,
 	/*
@@ -90,18 +90,17 @@
 	 * MRS sequence  (Offset 38 in UPMA RAM)
 	 */
 	0xFFAAB834, 0xFFA57434, 0xFFAFFC05, /* last */
-                                            _NOT_USED_,
+					    _NOT_USED_,
 	/*
 	 * Exception. (Offset 3c in UPMA RAM)
 	 */
 	0xFFAFFC04, 0xFFAFFC05, /* last */
-		                _NOT_USED_, _NOT_USED_,
+				_NOT_USED_, _NOT_USED_,
 };
 
 /* ------------------------------------------------------------------------- */
 
 
-
 long int initdram (int board_type)
 {
     volatile immap_t     *immap  = (immap_t *)CFG_IMMR;
diff --git a/board/siemens/IAD210/Makefile b/board/siemens/IAD210/Makefile
index 0982e7c..87a6893 100644
--- a/board/siemens/IAD210/Makefile
+++ b/board/siemens/IAD210/Makefile
@@ -28,7 +28,7 @@
 OBJS	= $(BOARD).o flash.o atm.o
 
 $(LIB):	.depend $(OBJS)
-	$(AR) crv $@ $^
+	$(AR) crv $@ $(OBJS)
 
 #########################################################################
 
diff --git a/board/siemens/IAD210/flash.c b/board/siemens/IAD210/flash.c
index 1ed5262..110858d 100644
--- a/board/siemens/IAD210/flash.c
+++ b/board/siemens/IAD210/flash.c
@@ -140,7 +140,7 @@
   }
 
   printf ("  Size: %ld MB in %d Sectors\n",
-          info->size >> 20, info->sector_count);
+	  info->size >> 20, info->sector_count);
 
   printf ("  Sector Start Addresses:");
   for (i=0; i<info->sector_count; ++i) {
@@ -149,7 +149,7 @@
     printf (" %08lX%s",
 			info->start[i],
 			info->protect[i] ? " (RO)" : "     "
-            );
+	    );
   }
   printf ("\n");
 }
diff --git a/board/siemens/IAD210/u-boot.lds b/board/siemens/IAD210/u-boot.lds
index 15366d5..d2f2848 100644
--- a/board/siemens/IAD210/u-boot.lds
+++ b/board/siemens/IAD210/u-boot.lds
@@ -107,6 +107,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 = .;
diff --git a/board/siemens/SCM/Makefile b/board/siemens/SCM/Makefile
index b7e26ff..af646e4 100644
--- a/board/siemens/SCM/Makefile
+++ b/board/siemens/SCM/Makefile
@@ -30,7 +30,7 @@
 
 
 $(LIB):	.depend $(OBJS)
-	$(AR) crv $@ $^
+	$(AR) crv $@ $(OBJS)
 
 #########################################################################
 
diff --git a/board/siemens/SCM/scm.c b/board/siemens/SCM/scm.c
index aa6181d..9467b1f 100644
--- a/board/siemens/SCM/scm.c
+++ b/board/siemens/SCM/scm.c
@@ -97,20 +97,20 @@
 	/* PB20 */ {   1,   1,   1,   0,   0,   0   }, /* TDM_D2 L1RSYNC */
 	/* PB19 */ {   1,   0,   0,   0,   0,   0   }, /* UID */
 	/* PB18 */ {   0,   1,   0,   0,   0,   0   },
-        /* PB17 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RX_DV */
-        /* PB16 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RX_ER */
-        /* PB15 */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TX_ER */
-        /* PB14 */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TX_EN */
-        /* PB13 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII COL */
-        /* PB12 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII CRS */
-        /* PB11 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[3] */
-        /* PB10 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[2] */
-        /* PB9  */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[1] */
-        /* PB8  */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[0] */
-        /* PB7  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[3] */
-        /* PB6  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[2] */
-        /* PB5  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[1] */
-        /* PB4  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[0] */
+	/* PB17 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RX_DV */
+	/* PB16 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RX_ER */
+	/* PB15 */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TX_ER */
+	/* PB14 */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TX_EN */
+	/* PB13 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII COL */
+	/* PB12 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII CRS */
+	/* PB11 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[3] */
+	/* PB10 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[2] */
+	/* PB9  */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[1] */
+	/* PB8  */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RxD[0] */
+	/* PB7  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[3] */
+	/* PB6  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[2] */
+	/* PB5  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[1] */
+	/* PB4  */ {   1,   1,   0,   1,   0,   0   }, /* FCC3 MII TxD[0] */
 	/* PB3  */ {   0,   0,   0,   0,   0,   0   }, /* pin doesn't exist */
 	/* PB2  */ {   0,   0,   0,   0,   0,   0   }, /* pin doesn't exist */
 	/* PB1  */ {   0,   0,   0,   0,   0,   0   }, /* pin doesn't exist */
@@ -133,8 +133,8 @@
 	/* PC20 */ {   1,   1,   0,   0,   0,   0   }, /* FCC1 MII RX_CLK */
 	/* PC19 */ {   0,   1,   0,   0,   0,   0   },
 	/* PC18 */ {   0,   1,   0,   0,   0,   0   },
-        /* PC17 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RX_CLK */
-        /* PC16 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII TX_CLK */
+	/* PC17 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII RX_CLK */
+	/* PC16 */ {   1,   1,   0,   0,   0,   0   }, /* FCC3 MII TX_CLK */
 	/* PC15 */ {   0,   0,   0,   1,   0,   0   },
 	/* PC14 */ {   0,   1,   0,   0,   0,   0   },
 	/* PC13 */ {   0,   0,   0,   1,   0,   0   }, /* RES_PHY_L */
@@ -360,7 +360,7 @@
     ulong start =  memctl->memc_ ## brX & 0xFFFF8000;	\
     ulong sizem = ~memctl->memc_ ## orX | 0x00007FFF;	\
     printf ("\n"					\
-    	    #brX " 0x%08x  " #orX " 0x%08x "		\
+	    #brX " 0x%08x  " #orX " 0x%08x "		\
 	    "==> 0x%08lx ... 0x%08lx = %ld MB\n",	\
 	memctl->memc_ ## brX, memctl->memc_ ## orX,	\
 	start, start+sizem, (sizem+1)>>20);		\
diff --git a/board/siemens/SCM/u-boot.lds b/board/siemens/SCM/u-boot.lds
index 9d56f13..ce6c454 100644
--- a/board/siemens/SCM/u-boot.lds
+++ b/board/siemens/SCM/u-boot.lds
@@ -94,6 +94,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 = .;
@@ -116,4 +121,3 @@
   _end = . ;
   PROVIDE (end = .);
 }
-
diff --git a/board/siemens/common/fpga.c b/board/siemens/common/fpga.c
index a17de5a..7edeb0a 100644
--- a/board/siemens/common/fpga.c
+++ b/board/siemens/common/fpga.c
@@ -26,8 +26,6 @@
 #include <command.h>
 #include <linux/ctype.h>
 #include <common.h>
-#include <cmd_boot.h>
-#include <cmd_bsp.h>
 
 #include "fpga.h"
 
@@ -146,7 +144,7 @@
 
     if (hdr.ih_magic != IH_MAGIC) {
 	strcpy (msg, "Bad Image Magic Number");
-        goto failure;
+	goto failure;
     }
 
     len  = sizeof(image_header_t);
@@ -293,6 +291,14 @@
     return 1;
 }
 
+cmd_tbl_t U_BOOT_CMD(fpga) = MK_CMD_ENTRY(
+	"fpga",	4,	1,	do_fpga,
+	"fpga    - access FPGA(s)\n",
+	"fpga status [name] - print FPGA status\n"
+	"fpga reset  [name] - reset FPGA\n"
+	"fpga load [name] addr - load FPGA configuration data\n"
+);
+
 #endif	/* CONFIG_COMMANDS & CFG_CMD_BSP */
 
 /* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */
diff --git a/board/siemens/pcu_e/Makefile b/board/siemens/pcu_e/Makefile
index 35b8428..7a2014d 100644
--- a/board/siemens/pcu_e/Makefile
+++ b/board/siemens/pcu_e/Makefile
@@ -28,7 +28,7 @@
 OBJS	= $(BOARD).o flash.o
 
 $(LIB):	.depend $(OBJS)
-	$(AR) crv $@ $^
+	$(AR) crv $@ $(OBJS)
 
 #########################################################################
 
diff --git a/board/siemens/pcu_e/pcu_e.c b/board/siemens/pcu_e/pcu_e.c
index 6c0b5eb..a8d73cc 100644
--- a/board/siemens/pcu_e/pcu_e.c
+++ b/board/siemens/pcu_e/pcu_e.c
@@ -53,9 +53,9 @@
 	/*
 	 * SDRAM Initialization (offset 5 in UPM RAM)
 	 *
-         * This is no UPM entry point. The following definition uses
-         * the remaining space to establish an initialization
-         * sequence, which is executed by a RUN command.
+	 * This is no UPM entry point. The following definition uses
+	 * the remaining space to establish an initialization
+	 * sequence, which is executed by a RUN command.
 	 *
 	 */
 		    0x1ffddc35, 0xefceac34, 0x1f3d5c35, /* last */
@@ -433,6 +433,12 @@
 	printf ("Usage:\n%s\n", cmdtp->usage);
 	return 1;
 }
+cmd_tbl_t U_BOOT_CMD(puma) = MK_CMD_ENTRY(
+	"puma",	4,	1,	do_puma,
+	"puma    - access PUMA FPGA\n",
+	"status - print PUMA status\n"
+	"puma load addr len - load PUMA configuration data\n"
+);
 
 #endif	/* CFG_CMD_BSP */
 
diff --git a/board/siemens/pcu_e/u-boot.lds b/board/siemens/pcu_e/u-boot.lds
index 3764878..fffa79e 100644
--- a/board/siemens/pcu_e/u-boot.lds
+++ b/board/siemens/pcu_e/u-boot.lds
@@ -98,6 +98,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 = .;
@@ -120,4 +125,3 @@
   _end = . ;
   PROVIDE (end = .);
 }
-
diff --git a/board/siemens/pcu_e/u-boot.lds.debug b/board/siemens/pcu_e/u-boot.lds.debug
index 9183016..153286b 100644
--- a/board/siemens/pcu_e/u-boot.lds.debug
+++ b/board/siemens/pcu_e/u-boot.lds.debug
@@ -107,6 +107,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 = .;
@@ -129,4 +134,3 @@
   _end = . ;
   PROVIDE (end = .);
 }
-