diff --git a/CHANGELOG b/CHANGELOG
index 62dfd9c..efd8663 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
 Changes since U-Boot 1.1.1:
 ======================================================================
 
+* Patches by Richard Woodruff, 10 Jun 2004:
+  - fix problems with examples/stubs.c for GCC >= 3.4
+  - fix problems with gd initialization
+
 * Patch by Curt Brune, 17 May 2004:
   - Add support for Samsung S3C4510B CPU (ARM7tdmi based SoC)
   - Add support for ESPD-Inc. EVB4510 Board
diff --git a/examples/stubs.c b/examples/stubs.c
index 6f563ed..324a953 100644
--- a/examples/stubs.c
+++ b/examples/stubs.c
@@ -1,5 +1,9 @@
 #include <exports.h>
 
+#ifndef GCC_VERSION
+#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
+#endif /* GCC_VERSION */
+
 #if defined(CONFIG_I386)
 /*
  * x86 does not have a dedicated register to store the pointer to
@@ -117,7 +121,10 @@
  * implementation. On the other hand, asm() statements with
  * arguments can be used only inside the functions (gcc limitation)
  */
-static void __attribute__((unused)) dummy(void)
+#if GCC_VERSION < 3004
+static
+#endif /* GCC_VERSION */
+void __attribute__((unused)) dummy(void)
 {
 #include <_exports.h>
 }
diff --git a/include/configs/HMI10.h b/include/configs/HMI10.h
index 62ca616..ca926a7 100644
--- a/include/configs/HMI10.h
+++ b/include/configs/HMI10.h
@@ -131,6 +131,7 @@
 				CFG_CMD_BMP	| \
 				CFG_CMD_DATE	| \
 				CFG_CMD_DHCP	| \
+				CFG_CMD_FAT	| \
 				CFG_CMD_I2C	| \
 				CFG_CMD_IDE	)
 #else
@@ -138,6 +139,7 @@
 				CFG_CMD_ASKENV	| \
 				CFG_CMD_DATE	| \
 				CFG_CMD_DHCP	| \
+				CFG_CMD_FAT	| \
 				CFG_CMD_I2C	| \
 				CFG_CMD_IDE	)
 #endif
diff --git a/lib_arm/board.c b/lib_arm/board.c
index e97e158..7673d06 100644
--- a/lib_arm/board.c
+++ b/lib_arm/board.c
@@ -217,6 +217,9 @@
 
 	/* Pointer is writable since we allocated a register for it */
 	gd = (gd_t*)(_armboot_start - CFG_MALLOC_LEN - sizeof(gd_t));
+	/* compiler optimization barrier needed for GCC >= 3.4 */
+	__asm__ __volatile__("": : :"memory");
+
 	memset ((void*)gd, 0, sizeof (gd_t));
 	gd->bd = (bd_t*)((char*)gd - sizeof(bd_t));
 	memset (gd->bd, 0, sizeof (bd_t));
diff --git a/lib_i386/board.c b/lib_i386/board.c
index b26d3d5..a180814 100644
--- a/lib_i386/board.c
+++ b/lib_i386/board.c
@@ -244,6 +244,8 @@
 	show_boot_progress(0x21);
 
 	gd = global_data = &gd_data;
+	/* compiler optimization barrier needed for GCC >= 3.4 */
+	__asm__ __volatile__("": : :"memory");
 
 	memset (gd, 0, sizeof (gd_t));
 	gd->bd = &bd_data;
diff --git a/lib_m68k/board.c b/lib_m68k/board.c
index 06b3bd5..7e586fe 100644
--- a/lib_m68k/board.c
+++ b/lib_m68k/board.c
@@ -257,6 +257,8 @@
 
 	/* Pointer is writable since we allocated a register for it */
 	gd = (gd_t *) (CFG_INIT_RAM_ADDR + CFG_GBL_DATA_OFFSET);
+	/* compiler optimization barrier needed for GCC >= 3.4 */
+	__asm__ __volatile__("": : :"memory");
 
 	/* Clear initial global data */
 	memset ((void *) gd, 0, sizeof (gd_t));
diff --git a/lib_mips/board.c b/lib_mips/board.c
index 7f5fa80..12df61f 100644
--- a/lib_mips/board.c
+++ b/lib_mips/board.c
@@ -193,6 +193,9 @@
 	/* Pointer is writable since we allocated a register for it.
 	 */
 	gd = &gd_data;
+	/* compiler optimization barrier needed for GCC >= 3.4 */
+	__asm__ __volatile__("": : :"memory");
+
 	memset ((void *)gd, 0, sizeof (gd_t));
 
 	for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) {
diff --git a/lib_nios/board.c b/lib_nios/board.c
index 30044f7..e6cda52 100644
--- a/lib_nios/board.c
+++ b/lib_nios/board.c
@@ -117,6 +117,9 @@
 	 * Nios treats CFG_GBL_DATA_OFFSET as an address.
 	 */
 	gd = (gd_t *)CFG_GBL_DATA_OFFSET;
+	/* compiler optimization barrier needed for GCC >= 3.4 */
+	__asm__ __volatile__("": : :"memory");
+
 	memset( gd, 0, CFG_GBL_DATA_SIZE );
 
 	gd->bd = (bd_t *)(gd+1);	/* At end of global data */
diff --git a/lib_ppc/board.c b/lib_ppc/board.c
index c9e38df..7560a42 100644
--- a/lib_ppc/board.c
+++ b/lib_ppc/board.c
@@ -353,6 +353,8 @@
 
 	/* Pointer is writable since we allocated a register for it */
 	gd = (gd_t *) (CFG_INIT_RAM_ADDR + CFG_GBL_DATA_OFFSET);
+	/* compiler optimization barrier needed for GCC >= 3.4 */
+	__asm__ __volatile__("": : :"memory");
 
 #if !(defined(CONFIG_8260) || defined(CONFIG_MPC8560))
 	/* Clear initial global data */
