[PATCH v2 0/3] mtd: rawnand: sunxi: fix H6/H616 controller timings
James Hilliard <[email protected]> Fri, 17 Jul 2026 11:33:56 -0600
| Newsgroups | gmane.linux.kernel.stable,gmane.linux.drivers.mtd,gmane.linux.ports.arm.kernel,gmane.linux.kernel |
|---|---|
| Message-ID | <20260717-submit-sunxi-nand-h6-h616-timings-v2-0-225515107640@gmail.com> |
The sunxi NAND timing solver currently applies the original A10 NDFC timing characteristics to every supported controller. The H6/H616 NDFC uses two internal cycles for several setup and hold intervals and has different delay-field encodings, so the resulting clock and timing register values do not match the hardware. Prepare for per-controller timing data in two behaviorally focused patches, then add and select the H616 characteristics in the final fix. Legacy controllers retain their existing setup-cycle behavior and delay encodings. Tested on an H616 board with Toshiba TC58NVG1S3H NAND. Signed-off-by: James Hilliard <[email protected]> --- Changes v1 -> v2: - Split legacy timing setup from the H616 fix (suggested by Miquel) - Move tADL/tWHR encodings to a separate patch (suggested by Miquel) - Keep the timing lookup helper unchanged (suggested by Miquel) - Drop the minimum-period helper (suggested by Miquel) - Align H616 timing-data and capability names (suggested by Miquel) - Add Cc: stable to all three patches (suggested by Miquel) --- James Hilliard (3): mtd: rawnand: sunxi: group controller delay tables mtd: rawnand: sunxi: describe tADL and tWHR delays mtd: rawnand: sunxi: fix H6/H616 controller timings drivers/mtd/nand/raw/sunxi_nand.c | 119 +++++++++++++++++++++++++++----------- 1 file changed, 86 insertions(+), 33 deletions(-) --- base-commit: 6f5156d7a31a8c3b0f34af4675c9299c8f877cbe change-id: 20260717-submit-sunxi-nand-h6-h616-timings-794a2994267d Best regards, -- James Hilliard <[email protected]>