[U-Boot] [PATCH] nand_spl: nand_boot.c: Init nand_chip.options to 0
Scott Wood
scottwood at freescale.com
Wed May 4 19:30:29 CEST 2011
On Wed, 4 May 2011 11:44:44 +0200
Stefan Roese <sr at denx.de> wrote:
> Patch 65a9db7b [nand_spl: Fix large page nand_command()] broke
> nand booting on canyonlands. "options" has to be initialized to
> 0. If not, boards might have the NAND_BUSWIDTH_16 bit set,
> resulting in wrong offset calculation.
>
> Signed-off-by: Stefan Roese <sr at denx.de>
> Cc: Scott Wood <scottwood at freescale.com>
> Cc: Alex Waterman <awaterman at dawning.com>
> ---
> nand_spl/nand_boot.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/nand_spl/nand_boot.c b/nand_spl/nand_boot.c
> index cefeb91..62303aa 100644
> --- a/nand_spl/nand_boot.c
> +++ b/nand_spl/nand_boot.c
> @@ -232,6 +232,7 @@ void nand_boot(void)
> nand_info.priv = &nand_chip;
> nand_chip.IO_ADDR_R = nand_chip.IO_ADDR_W = (void __iomem *)CONFIG_SYS_NAND_BASE;
> nand_chip.dev_ready = NULL; /* preset to NULL */
> + nand_chip.options = 0;
> board_nand_init(&nand_chip);
>
> if (nand_chip.select_chip)
Maybe nand_chip should be made static so it goes in the BSS? This would
avoid any other such problems, without adding any extra code to zero things
out.
-Scott
More information about the U-Boot
mailing list