[U-Boot] [PATCH v2 2/2] mtd: nand: mxc_nand: Fix is_16bit_nand()

Eric Bénard eric at eukrea.com
Wed Feb 27 12:11:04 CET 2013


Hi Fabio,

Le Tue, 26 Feb 2013 15:35:20 -0300,
Fabio Estevam <fabio.estevam at freescale.com> a écrit :

> Currently is_16bit_nand() is a per SoC function and it decides the bus nand 
> width by reading some boot related registers.
> 
> This method works when NAND is the boot medium, but does not work if another
> boot medium is used. For example: booting from a SD card and then using NAND
> to store the environment variables, would lead to the following error:
> 
> NAND bus width 16 instead 8 bit
> No NAND device found!!!
> 0 MiB
> 
> Use CONFIG_SYS_NAND_BUSWIDTH_16BIT symbol to decide the bus width.
> 
> If it is defined in the board file, then consider 16-bit NAND bus-width, 
> otherwise assume 8-bit NAND is used.
> 
> This also aligns with Documentation/devicetree/bindings/mtd/nand.txt, which
> states:
> 
> nand-bus-width : 8 or 16 bus width if not present 82
> 
are you sure that your patch won't break current boards booting on nand
flash (and so which can use the current functions to detect the nand
width) ?

Eric


More information about the U-Boot mailing list