[U-Boot] [PATCH] ppc4xx: Add Sequoia RAM-booting target

Detlev Zundel dzu at denx.de
Thu May 7 14:25:28 CEST 2009


Hi Stefan,

> This patch adds another build target for the AMCC Sequoia PPC440EPx
> eval board. This RAM-booting version is targeted for boards without
> NOR FLASH (NAND booting) which need a possibility to initially
> program their NAND FLASH. Using a JTAG debugger (e.g. BDI2000/3000)
> configured to setup the SDRAM, this debugger can load this RAM-
> booting image to the target address in SDRAM (in this case 0x1000000)
> and start it there. Then U-Boot's standard NAND commands can be
> used to program the NAND FLASH (e.g. "nand write ...").
>
> Here the commands to load and start this image from the BDI2000:
>
> 440EPX>load 0x1000000 /tftpboot/sequoia/u-boot.bin
> 440EPX>go 0x1000000
>
> Please note that this image automatically scans for an already
> initialized SDRAM TLB (detected by EPN=0). This TLB will not be
> cleared. So your debugger should configure the SDRAM TLB correctly
> (as done in the standard Sequoia BDI init script).
>
> Signed-off-by: Stefan Roese <sr at denx.de>
> ---
>  Makefile                          |   11 +++
>  board/amcc/sequoia/init.S         |    7 ++
>  board/amcc/sequoia/sdram.c        |    3 +-
>  board/amcc/sequoia/sequoia.c      |   12 +++-
>  board/amcc/sequoia/u-boot-ram.lds |  126 +++++++++++++++++++++++++++++++++++++
>  cpu/ppc4xx/start.S                |   33 ++++++++--
>  include/configs/amcc-common.h     |   11 +++
>  include/configs/sequoia.h         |   30 +++++++--
>  8 files changed, 215 insertions(+), 18 deletions(-)
>  create mode 100644 board/amcc/sequoia/u-boot-ram.lds
>

[...]

> diff --git a/board/amcc/sequoia/sequoia.c b/board/amcc/sequoia/sequoia.c
> index e824b8f..8b23823 100644
> --- a/board/amcc/sequoia/sequoia.c
> +++ b/board/amcc/sequoia/sequoia.c
> @@ -33,7 +33,9 @@
>  
>  DECLARE_GLOBAL_DATA_PTR;
>  
> +#if !defined(CONFIG_SYS_NO_FLASH)
>  extern flash_info_t flash_info[CONFIG_SYS_MAX_FLASH_BANKS]; /* info for FLASH chips */
> +#endif
>  
>  extern void __ft_board_setup(void *blob, bd_t *bd);
>  ulong flash_get_size(ulong base, int banknum);
> @@ -122,9 +124,9 @@ int board_early_init_f(void)
>  
>  int misc_init_r(void)
>  {
> -	uint pbcr;
> -	int size_val = 0;
> -	u32 reg;
> +	__attribute__((unused)) uint pbcr;
> +	__attribute__((unused)) int size_val = 0;
> +	__attribute__((unused)) u32 reg;

Am I correct to assume that this should shut up warnings for the ifdef
case?  If so, it still seems to be a somewhat rude way to do it.  How
long will it take the gcc maintainers to produce a "warning: unused
variable is used" warning? ;)

Cheers
  Detlev


-- 
Wenn ein Kopf und ein Buch zusammenstossen und es klingt hohl; ist
denn das allemal im Buche?
                               - Lichtenberg
--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de


More information about the U-Boot mailing list