]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
mtd: nand: raw: atmel: Respect tAR, tCLR in read setup timing
authorAlexander Sverdlin <alexander.sverdlin@siemens.com>
Sat, 13 Sep 2025 15:08:29 +0000 (11:08 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 19 Sep 2025 14:29:57 +0000 (16:29 +0200)
commit2bae1bf3d9fb0d8dbee8807ea799aaa807eee188
tree05f1268fad463f3e3ff084cafe943cdae2043d2b
parent03582bfbff8059b77a5fe20a2205bca53ad28972
mtd: nand: raw: atmel: Respect tAR, tCLR in read setup timing

[ Upstream commit fd779eac2d659668be4d3dbdac0710afd5d6db12 ]

Having setup time 0 violates tAR, tCLR of some chips, for instance
TOSHIBA TC58NVG2S3ETAI0 cannot be detected successfully (first ID byte
being read duplicated, i.e. 98 98 dc 90 15 76 14 03 instead of
98 dc 90 15 76 ...).

Atmel Application Notes postulated 1 cycle NRD_SETUP without explanation
[1], but it looks more appropriate to just calculate setup time properly.

Link: https://ww1.microchip.com/downloads/aemDocuments/documents/MPU32/ApplicationNotes/ApplicationNotes/doc6255.pdf
Cc: stable@vger.kernel.org
Fixes: f9ce2eddf176 ("mtd: nand: atmel: Add ->setup_data_interface() hooks")
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
Tested-by: Alexander Dahl <ada@thorsis.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mtd/nand/raw/atmel/nand-controller.c