diff --git a/CHANGELOG b/CHANGELOG
index 2b19e87ff6a03c020b4518d1cdacd1fae6f71d7c..7291bd932107188541d25d12da941e5ff84c0390 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,12 @@
 Changes since U-Boot 1.1.1:
 ======================================================================
 
+* Patch by Philippe Robin, 01 Jul 2004:
+  Add initialization for Integrator and versatile board files.
+
+* Patch by Hinko Kocevar, 01 Jun 2004:
+  Fix VFD FB allocation, add LCD FB allocation on ARM
+
 * Patch by Martin Krause, 30 Jun 2004:
   Add support for TQM5200 board
 
diff --git a/board/integratorap/integratorap.c b/board/integratorap/integratorap.c
index 84a4c707821a3fa8a04000aeaaa04effec73660d..3ab74f06b816b9b5ba69a0ed495405edae797670 100644
--- a/board/integratorap/integratorap.c
+++ b/board/integratorap/integratorap.c
@@ -73,6 +73,8 @@ int board_init (void)
 	/* adress of boot parameters */
 	gd->bd->bi_boot_params = 0x00000100;
 
+	gd->flags = 0;
+
 	icache_enable ();
 
 	flash__init ();
diff --git a/board/integratorcp/integratorcp.c b/board/integratorcp/integratorcp.c
index 6071d815986ab66d66156f1d3b21da0a00f4ab0d..8da869c486da7950e2d7f3ced44f54f5ea6c68df 100644
--- a/board/integratorcp/integratorcp.c
+++ b/board/integratorcp/integratorcp.c
@@ -69,6 +69,8 @@ int board_init (void)
 	/* adress of boot parameters */
 	gd->bd->bi_boot_params = 0x00000100;
 
+	gd->flags = 0;
+
 	icache_enable ();
 
 	flash__init ();
diff --git a/board/versatile/versatile.c b/board/versatile/versatile.c
index 626d5276b5222798b885188119c374e520a839d6..17701dc9ca2da4e7d6a1ac75ea38bea130d9c646 100644
--- a/board/versatile/versatile.c
+++ b/board/versatile/versatile.c
@@ -79,6 +79,8 @@ int board_init (void)
 	/* adress of boot parameters */
 	gd->bd->bi_boot_params = 0x00000100;
 
+	gd->flags = 0;
+
 	icache_enable ();
 
 	flash__init ();
diff --git a/lib_arm/board.c b/lib_arm/board.c
index 7673d063f5c96a56dda0437cca809840a1e66d5a..9cffb4ec24c18ff82afdc9dcbef45b554a05ee28 100644
--- a/lib_arm/board.c
+++ b/lib_arm/board.c
@@ -211,7 +211,7 @@ void start_armboot (void)
 	ulong size;
 	init_fnc_t **init_fnc_ptr;
 	char *s;
-#if defined(CONFIG_VFD)
+#if defined(CONFIG_VFD) || defined(CONFIG_LCD)
 	unsigned long addr;
 #endif
 
@@ -243,12 +243,22 @@ void start_armboot (void)
 	/*
 	 * reserve memory for VFD display (always full pages)
 	 */
-	/* armboot_end is defined in the board-specific linker script */
-	addr = (_bss_start + (PAGE_SIZE - 1)) & ~(PAGE_SIZE - 1);
+	/* bss_end is defined in the board-specific linker script */
+	addr = (_bss_end + (PAGE_SIZE - 1)) & ~(PAGE_SIZE - 1);
 	size = vfd_setmem (addr);
 	gd->fb_base = addr;
 #endif /* CONFIG_VFD */
 
+#ifdef CONFIG_LCD
+	/*
+	 * reserve memory for LCD display (always full pages)
+	 */
+	/* bss_end is defined in the board-specific linker script */
+	addr = (_bss_end + (PAGE_SIZE - 1)) & ~(PAGE_SIZE - 1);
+	size = lcd_setmem (addr);
+	gd->fb_base = addr;
+#endif /* CONFIG_LCD */
+
 	/* armboot_start is defined in the board-specific linker script */
 	mem_malloc_init (_armboot_start - CFG_MALLOC_LEN);