u-boot/drivers/mtd/nand/raw
Alexander Dahl 344e2f2cd4 mtd: nand: raw: atmel: Fix pulse read timing for certain NAND flashes
From reading the S34ML02G1 and the SAM9X60 datasheets again, it seems
like we have to wait tREA after rising RE# before sampling the data.
Thus pulse time must be at least tREA.

Without this fix we got PMECC errors when reading, after switching to
ONFI timing mode 3 on SAM9X60 SoC with S34ML02G1 raw NAND flash chip.

The approach to set timings used before worked on sam9g20 and sama5d2
with the same flash (S34ML02G1), probably because those have a slower
mck clock rate and thus the resolution of the timings setup is not as
tight as with sam9x60.

The approach to fix the issue was carried over from at91bootstrap, and
has been successfully tested in at91bootstrap, U-Boot and Linux.

Link: https://github.com/linux4sam/at91bootstrap/issues/174
Cc: Li Bin <bin.li@microchip.com>
Signed-off-by: Alexander Dahl <ada@thorsis.com>
2025-02-12 10:49:56 +02:00
..
atmel mtd: nand: raw: atmel: Fix pulse read timing for certain NAND flashes 2025-02-12 10:49:56 +02:00
brcmnand mtd: rawnand: brcmnand: update log level messages 2024-11-26 21:14:44 +01:00
am335x_spl_bch.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
arasan_nfc.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
atmel_nand_ecc.h
atmel_nand.c drivers: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
cortina_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
cortina_nand.h mtd: rawnand: cortina_nand: Add Cortina CAxxxx SoC support 2021-01-18 15:14:34 -05:00
davinci_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
denali_dt.c dm: Rename DM_GET_DRIVER() to DM_DRIVER_GET() 2021-01-05 12:26:35 -07:00
denali_spl.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
denali.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
denali.h mtd: nand: raw: denali: Wait for reset completion status 2020-07-11 21:30:21 +09:00
fsl_elbc_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
fsl_elbc_spl.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
fsl_ifc_nand.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
fsl_ifc_spl.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
Kconfig mtd: nand: brcmnand: remove device specific nand driver files 2024-11-26 21:14:44 +01:00
kirkwood_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
kmeter1_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
lpc32xx_nand_mlc.c drivers: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
lpc32xx_nand_slc.c drivers: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
Makefile global: Rename SPL_TPL_ to PHASE_ 2024-10-11 11:44:48 -06:00
meson_nand.c mtd: rawnand: meson: read/write access for boot ROM pages 2024-08-28 16:05:45 +02:00
mt7621_nand_spl.c spl: nand: Set bl_len to page size 2023-11-16 12:43:48 -05:00
mt7621_nand.c mtd: nand: Rename nand_get_flash_type() into nand_detect() 2022-08-22 11:15:15 +02:00
mt7621_nand.h nand: raw: add support for MediaTek MT7621 SoC 2022-07-13 23:03:37 +02:00
mxc_nand_spl.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mxc_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mxc_nand.h arm: Remove unused mx27 code 2022-12-05 16:07:13 -05:00
mxic_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mxs_nand_dt.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
mxs_nand_spl.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mxs_nand.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
nand_amd.c mtd: nand: Move AMD/Spansion specific init/detection logic in nand_amd.c 2022-07-22 13:29:06 +02:00
nand_base.c drivers: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
nand_bbt.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
nand_bch.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
nand_ecc.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
nand_hynix.c mtd: nand: Move Hynix specific init/detection logic in nand_hynix.c 2022-07-22 13:29:06 +02:00
nand_ids.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
nand_macronix.c mtd: rawnand: macronix: OTP access for MX30LFxG18AC 2024-06-17 09:43:45 +02:00
nand_micron.c mtd: nand: Move Micron specific init logic in nand_micron.c 2022-07-22 13:29:06 +02:00
nand_samsung.c mtd: nand: samsung: Retrieve ECC requirements from extended 2022-08-22 11:15:24 +02:00
nand_spl_load.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
nand_spl_loaders.c nand: spl_loaders: Only read enough pages to load the image 2023-11-16 12:43:48 -05:00
nand_spl_simple.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
nand_timings.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
nand_toshiba.c mtd: nand: toshiba: Retrieve ECC requirements from extended ID 2022-07-22 13:29:06 +02:00
nand_util.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
octeontx_bch_regs.h mtd: nand: Add NAND controller driver for OcteonTX 2020-10-14 07:55:56 +02:00
octeontx_bch.c nand: raw: octeontx: Make list static 2023-04-16 12:30:46 +02:00
octeontx_bch.h doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
octeontx_nand.c treewide: use linux/time.h for time conversion defines 2023-11-16 18:59:58 -05:00
omap_elm.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
omap_elm.h drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
omap_gpmc.c drivers: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
pxa3xx_nand.c Prepare v2024.07-rc5 2024-06-24 13:34:52 -06:00
pxa3xx_nand.h
rockchip_nfc.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
sand_nand.c drivers: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
stm32_fmc2_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
sunxi_nand_spl.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
sunxi_nand.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
tegra_nand.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
tegra_nand.h
vf610_nfc.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
zynq_nand.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00