u-boot-brain/drivers/mtd/nand
Brian Norris 27ce9e4290 mtd: nand: force NAND_CMD_READID onto 8-bit bus
As per following Sections in ONFI Spec, NAND_CMD_READID should use only
lower 8-bit for transfering command, address and data even on x16 NAND device.

*Section: Target Initialization"
"The Read ID and Read Parameter Page commands only use the lower 8-bits of the
 data bus. The host shall not issue commands that use a word data width on x16
 devices until the host determines the device supports a 16-bit data bus width
 in the parameter page."

*Section: Bus Width Requirements*
"When the host supports a 16-bit bus width, only data is transferred at the
 16-bit width. All address and command line transfers shall use only the lower
 8-bits of the data bus. During command transfers, the host may place any value
 on the upper 8-bits of the data bus. During address transfers, the host shall
 set the upper 8-bits of the data bus to 00h."

Thus porting  following commit from linux-kernel to ensure that column address
is not altered to align to x16 bus when issuing NAND_CMD_READID command.

    commit 3dad2344e92c6e1aeae42df1c4824f307c51bcc7
    mtd: nand: force NAND_CMD_READID onto 8-bit bus
    Author: Brian Norris <computersforpeace@gmail.com> (preserving authorship)

    The NAND command helpers tend to automatically shift the column address
    for x16 bus devices, since most commands expect a word address, not a
    byte address. The Read ID command, however, expects an 8-bit address
    (i.e., 0x00, 0x20, or 0x40 should not be translated to 0x00, 0x10, or
    0x20).

    This fixes the column address for a few drivers which imitate the
    nand_base defaults.

Signed-off-by: Pekon Gupta <pekon@ti.com>
2014-06-06 17:46:03 -04:00
..
am335x_spl_bch.c mtd: nand: force NAND_CMD_READID onto 8-bit bus 2014-06-06 17:46:03 -04:00
atmel_nand_ecc.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
atmel_nand.c mtd: nand: force NAND_CMD_READID onto 8-bit bus 2014-06-06 17:46:03 -04:00
bfin_nand.c mtd: resync with Linux-3.7.1 2013-05-31 17:12:03 -05:00
davinci_nand.c NAND: DaVinci: allow forced disable of subpage writes 2014-04-17 17:24:38 -04:00
docg4_spl.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
docg4.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
fsl_elbc_nand.c mtd/fsl_elbc: take NAND_ECC_SOFT_BCH config option into account 2013-10-24 09:36:05 -07:00
fsl_elbc_spl.c Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
fsl_ifc_nand.c driver/ifc:Change accessor function to take care of endianness 2014-02-03 08:38:51 -08:00
fsl_ifc_spl.c driver/ifc: define nand_spl_load_image() for SPL 2014-04-22 17:58:50 -07:00
fsl_upm.c Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
fsmc_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
jz4740_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
kb9202_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
kirkwood_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
kmeter1_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
Makefile mtd: Build nand_util.o for CONFIG_ENV_IS_IN_NAND in SPL 2014-04-17 14:39:54 -04:00
mpc5121_nfc.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxc_nand_spl.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxc_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxc_nand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxs_nand.c mxs_nand: Fix ECC strength for NAND flash with OOB size of 224 2013-09-11 09:33:36 +02:00
nand_base.c mtd: nand: force NAND_CMD_READID onto 8-bit bus 2014-06-06 17:46:03 -04:00
nand_bbt.c mtd: resync with Linux-3.7.1 2013-05-31 17:12:03 -05:00
nand_bch.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_ecc.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_ids.c Coding Style cleanup: remove trailing empty lines 2013-10-14 16:06:54 -04:00
nand_plat.c mtd: nand_plat: add simple GPIO framework DEV_READY option 2010-07-08 16:52:12 -05:00
nand_spl_load.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_spl_simple.c mtd: nand: force NAND_CMD_READID onto 8-bit bus 2014-06-06 17:46:03 -04:00
nand_util.c nand_util.c: Use '%zd' for length in nand_unlock debug print 2013-12-17 17:44:36 -06:00
nand.c nand: Introduce CONFIG_SYS_NAND_SELF_INIT 2012-01-26 16:09:06 -06:00
ndfc.c ppc4xx: Remove 4xx NAND booting support 2014-03-07 10:59:06 -05:00
nomadik.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
omap_elm.c mtd: nand: omap: fix error-codes returned from omap-elm driver 2014-06-06 17:46:00 -04:00
omap_gpmc.c mtd: nand: omap: fix error-codes returned from omap-elm driver 2014-06-06 17:46:00 -04:00
s3c2410_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
tegra_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
tegra_nand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00