From 2956532625cf8414ad3efb37598ba34db08d67ec Mon Sep 17 00:00:00 2001 From: John Rigby Date: Mon, 20 Dec 2010 18:27:51 -0700 Subject: Move DECLARE_GLOBAL_DATA_PTR to file scope It can be optimised out by the compiler otherwise resulting in obscure errors like a board not booting. This has been documented in README since 2006 when these were first fixed up for GCC 4.x. Signed-off-by: John Rigby Fix some additional places. Signed-off-by: Wolfgang Denk Acked-By: Albert ARIBAUD --- arch/arm/cpu/armv7/mx5/speed.c | 6 ++++-- arch/blackfin/cpu/serial.c | 3 ++- arch/m68k/cpu/mcf52x2/cpu.c | 3 +-- arch/m68k/cpu/mcf547x_8x/speed.c | 4 ++-- arch/sh/lib/board.c | 7 ++----- 5 files changed, 11 insertions(+), 12 deletions(-) (limited to 'arch') diff --git a/arch/arm/cpu/armv7/mx5/speed.c b/arch/arm/cpu/armv7/mx5/speed.c index a444def..2187e8e 100644 --- a/arch/arm/cpu/armv7/mx5/speed.c +++ b/arch/arm/cpu/armv7/mx5/speed.c @@ -28,10 +28,12 @@ #include #include +#ifdef CONFIG_FSL_ESDHC +DECLARE_GLOBAL_DATA_PTR; +#endif + int get_clocks(void) { - DECLARE_GLOBAL_DATA_PTR; - #ifdef CONFIG_FSL_ESDHC gd->sdhc_clk = mxc_get_clock(MXC_IPG_PERCLK); #endif diff --git a/arch/blackfin/cpu/serial.c b/arch/blackfin/cpu/serial.c index 901cb97..650202e 100644 --- a/arch/blackfin/cpu/serial.c +++ b/arch/blackfin/cpu/serial.c @@ -42,6 +42,8 @@ #include #include +DECLARE_GLOBAL_DATA_PTR; + #ifdef CONFIG_UART_CONSOLE #include "serial.h" @@ -95,7 +97,6 @@ void serial_set_baud(uint32_t baud) */ void serial_setbrg(void) { - DECLARE_GLOBAL_DATA_PTR; serial_set_baud(gd->baudrate); } diff --git a/arch/m68k/cpu/mcf52x2/cpu.c b/arch/m68k/cpu/mcf52x2/cpu.c index 9fb717c..fb60462 100644 --- a/arch/m68k/cpu/mcf52x2/cpu.c +++ b/arch/m68k/cpu/mcf52x2/cpu.c @@ -74,8 +74,7 @@ int watchdog_disable(void) { volatile wdog_t *wdt = (volatile wdog_t *)(MMAP_WDOG); - wdt->sr = 0x5555; /* reset watchdog counteDECLARE_GLOBAL_DATA_PTR; -r */ + wdt->sr = 0x5555; /* reset watchdog counter */ wdt->sr = 0xAAAA; wdt->cr = 0; /* disable watchdog timer */ diff --git a/arch/m68k/cpu/mcf547x_8x/speed.c b/arch/m68k/cpu/mcf547x_8x/speed.c index 2cee488..31130b5 100644 --- a/arch/m68k/cpu/mcf547x_8x/speed.c +++ b/arch/m68k/cpu/mcf547x_8x/speed.c @@ -30,13 +30,13 @@ #include +DECLARE_GLOBAL_DATA_PTR; + /* * get_clocks() fills in gd->cpu_clock and gd->bus_clk */ int get_clocks(void) { - DECLARE_GLOBAL_DATA_PTR; - gd->bus_clk = CONFIG_SYS_CLK; gd->cpu_clk = (gd->bus_clk * 2); diff --git a/arch/sh/lib/board.c b/arch/sh/lib/board.c index fe53ab4..3d201b2 100644 --- a/arch/sh/lib/board.c +++ b/arch/sh/lib/board.c @@ -32,6 +32,8 @@ #include #endif +DECLARE_GLOBAL_DATA_PTR; + extern int cpu_init(void); extern int board_init(void); extern int dram_init(void); @@ -43,8 +45,6 @@ unsigned long monitor_flash_len = CONFIG_SYS_MONITOR_LEN; static int sh_flash_init(void) { - DECLARE_GLOBAL_DATA_PTR; - gd->bd->bi_flashsize = flash_init(); printf("FLASH: %ldMB\n", gd->bd->bi_flashsize / (1024*1024)); @@ -99,7 +99,6 @@ static int sh_mem_env_init(void) #if defined(CONFIG_CMD_NET) static int sh_net_init(void) { - DECLARE_GLOBAL_DATA_PTR; gd->bd->bi_ip_addr = getenv_IPaddr("ipaddr"); return 0; } @@ -139,8 +138,6 @@ init_fnc_t *init_sequence[] = void sh_generic_init(void) { - DECLARE_GLOBAL_DATA_PTR; - bd_t *bd; init_fnc_t **init_fnc_ptr; -- cgit v1.1