diff --git a/board/a3000/Makefile b/board/a3000/Makefile
index 02e2b4b..5fde362 100644
--- a/board/a3000/Makefile
+++ b/board/a3000/Makefile
@@ -28,7 +28,7 @@
 OBJS 	= $(BOARD).o flash.o
 
 $(LIB):	.depend $(OBJS)
-	$(AR) crv $@ $^
+	$(AR) crv $@ $(OBJS)
 
 #########################################################################
 
diff --git a/board/a3000/README b/board/a3000/README
index 417969f..f0e92c5 100644
--- a/board/a3000/README
+++ b/board/a3000/README
@@ -15,4 +15,3 @@
 U-Boot, at the address of 0xFFFE0000.
 
 There is a National ns83815 10/100M ethernet controller on-board.
-
diff --git a/board/a3000/flash.c b/board/a3000/flash.c
index cbfd1d1..13a5ca5 100644
--- a/board/a3000/flash.c
+++ b/board/a3000/flash.c
@@ -71,7 +71,7 @@
 	int i;
 
 	/* Init: no FLASHes known */
-	for (i=0; i<CFG_MAX_FLASH_BANKS; ++i) 
+	for (i=0; i<CFG_MAX_FLASH_BANKS; ++i)
 	{
 		flash_info[i].flash_id = FLASH_UNKNOWN;
 
@@ -81,7 +81,7 @@
 */
 		size_b[i] = flash_get_size((vu_char *) 0xff800000 , &flash_info[i]);
 
-		if (flash_info[i].flash_id == FLASH_UNKNOWN) 
+		if (flash_info[i].flash_id == FLASH_UNKNOWN)
 		{
 			printf ("## Unknown FLASH on Bank %d: "
 				"ID 0x%lx, Size = 0x%08lx = %ld MB\n",
@@ -119,7 +119,7 @@
 
 	size = 0;
 	DEBUGF("## Final Flash bank sizes: ");
-	for (i=0; i<CFG_MAX_FLASH_BANKS; ++i) 
+	for (i=0; i<CFG_MAX_FLASH_BANKS; ++i)
 	{
 		DEBUGF("%08lx ", size_b[i]);
 		size += size_b[i];
@@ -174,16 +174,16 @@
 	}
 
 	switch (info->flash_id & FLASH_TYPEMASK) {
-	case FLASH_28F320J3A:	
+	case FLASH_28F320J3A:
 			printf ("28F320J3A (32Mbit = 128K x 32)\n");
 			break;
-	case FLASH_28F640J3A:	
+	case FLASH_28F640J3A:
 			printf ("28F640J3A (64Mbit = 128K x 64)\n");
 			break;
-	case FLASH_28F128J3A:	
+	case FLASH_28F128J3A:
 			printf ("28F128J3A (128Mbit = 128K x 128)\n");
 			break;
-	default:		
+	default:
 			printf ("Unknown Chip Type\n");
 			break;
 	}
diff --git a/board/a3000/u-boot.lds b/board/a3000/u-boot.lds
index 627a53b..6bd865e 100644
--- a/board/a3000/u-boot.lds
+++ b/board/a3000/u-boot.lds
@@ -102,6 +102,10 @@
   _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 = .;
@@ -125,4 +129,3 @@
   _end = . ;
   PROVIDE (end = .);
 }
-
