u-boot/arch/powerpc/cpu/ppc4xx
Dirk Eibach f73002bc01 ppc: Fix ppc4xx CONFIG_SYS_GENERIC_BOARD
I realized that with v2014.10 u-boot is not starting up on
ppc4xx boards with CONFIG_SYS_GENERIC_BOARD set.

I bisected it down to this:
d54d7eb support blackfin board initialization in generic board_f

With
d29437a ppc: Make ppc4xx ready for CONFIG_SYS_GENERIC_BOARD
I set gd to a defined value for ppc4xx in cpu_init_f().
I did not realize that the gd struct has also to be memset()
to zero at this point.

But at least commit d54d7eb assumes it is:
@@ -516,11 +528,13 @@ static int reserve_malloc(void)
 /* (permanently) allocate a Board Info struct */
 static int reserve_board(void)
 {
-	gd->start_addr_sp -= sizeof(bd_t);
-	gd->bd = (bd_t *)map_sysmem(gd->start_addr_sp, sizeof(bd_t));
-	memset(gd->bd, '\0', sizeof(bd_t));
-	debug("Reserving %zu Bytes for Board Info at: %08lx\n",
-			sizeof(bd_t), gd->start_addr_sp);
+	if (!gd->bd) {
+		gd->start_addr_sp -= sizeof(bd_t);
+		gd->bd = (bd_t *)map_sysmem(gd->start_addr_sp, sizeof(bd_t));
+		memset(gd->bd, '\0', sizeof(bd_t));
+		debug("Reserving %zu Bytes for Board Info at: %08lx\n",
+		      sizeof(bd_t), gd->start_addr_sp);
+	}
 	return 0;
 }
 #endif

This might also be an issue on other architectures, so maintainers should
check.

Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Signed-off-by: Stefan Roese <sr@denx.de>
2014-11-05 10:23:50 +01:00
..
4xx_ibm_ddr2_autocalib.c ppc4xx: Remove 4xx NAND booting support 2014-03-07 10:59:06 -05:00
4xx_pci.c Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
4xx_pcie.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
4xx_uart.c SPDX: fix IBM-pibs license identifier 2013-09-20 10:30:54 -04:00
40x_spd_sdram.c Coding Style cleanup: remove trailing white space 2013-10-14 16:06:53 -04:00
44x_spd_ddr.c Coding Style cleanup: remove trailing white space 2013-10-14 16:06:53 -04:00
44x_spd_ddr2.c ppc4xx: Remove 4xx NAND booting support 2014-03-07 10:59:06 -05:00
bedbug_405.c Make sure that argv[] argument pointers are not modified. 2010-07-04 23:55:42 +02:00
cache.S Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
cmd_chip_config.c Merge branch 'master' of git://git.denx.de/u-boot-i2c 2013-07-24 09:50:24 -04:00
cmd_ecctest.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
config.mk powerpc: remove redundant CPU definition 2014-07-30 14:42:03 -04:00
cpu.c powerpc: ppc4xx: remove board support for bluestone 2014-10-10 09:44:43 -04:00
cpu_init.c ppc: Fix ppc4xx CONFIG_SYS_GENERIC_BOARD 2014-11-05 10:23:50 +01:00
dcr.S Remove obsolete _LINUX_CONFIG_H macro 2014-01-24 16:59:07 -05:00
denali_data_eye.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
denali_spd_ddr2.c Merge branch 'master' of git://git.denx.de/u-boot-i2c 2013-07-24 09:50:24 -04:00
ecc.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
ecc.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
fdt.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
gpio.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
interrupts.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
Kconfig kconfig: add CONFIG_SUPPORT_SPL 2014-10-27 17:54:10 -04:00
kgdb.S Remove obsolete _LINUX_CONFIG_H macro 2014-01-24 16:59:07 -05:00
Makefile ppc4xx: Remove 4xx NAND booting support 2014-03-07 10:59:06 -05:00
miiphy.c SPDX: fix IBM-pibs license identifier 2013-09-20 10:30:54 -04:00
reginfo.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
resetvec.S Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
sdram.c Coding Style cleanup: remove trailing white space 2013-10-14 16:06:53 -04:00
sdram.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
speed.c powerpc: ppc4xx: remove board support for bluestone 2014-10-10 09:44:43 -04:00
spl_boot.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
start.S powerpc: ppc4xx: remove board support for bluestone 2014-10-10 09:44:43 -04:00
tlb.c Coding Style cleanup: remove trailing white space 2013-10-14 16:06:53 -04:00
traps.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
u-boot-spl.lds Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
u-boot.lds Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
uic.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
usb.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
usb_ohci.c usb: create common header virtual root hub descriptors 2014-03-10 18:53:36 +01:00
usb_ohci.h Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
xilinx_irq.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00