On 12/12/23 18:04, Alexander Dahl wrote: > Hei hei, > > for some downstream boards with SAMA5D27 SiP SoCs with raw NAND flash I > added the necessary nodes to sama5d2.dtsi with just one little > guesswork: the clocks. Motivation was to fix reading from raw nand > flash which failed on some of those boards, while others worked fine. > So I suppose the timings for the external interface were set to too slow > values. (IIRC I took them from the sama5d2_ptc_ek_nandflash board code > back in 2019.) > > The solution was basically to switch from the old non-DM driver with > hardcoded timings for the external memory interface to the new DM based > driver introduced earlier this year, which sets the timings based on > ONFI parameters read from the flash chip. > > Works for me, but I have no boards with that SoC _and_ a raw NAND flash > at hand, which are supported by upstream U-Boot. The only matching > upstream config is sama5d2_ptc_ek_nandflash_defconfig but because we > don't have that board, I did not touch it. > > (When that driver was added with 6a8dfd57220d ("nand: atmel: Add DM > based NAND driver") the author claims in the commit message it was > tested on SAMA5D3, but none of the sama5d3 configs actually uses it.) > > Some more changes to the board dts are necessary, but porting from Linux > is straightforward. The necessary changes to the defconfig should look > like this: > > # CONFIG_I2C is not set > CONFIG_LED=y > CONFIG_LED_GPIO=y > +CONFIG_ATMEL_EBI=y > +CONFIG_MFD_ATMEL_SMC=y > # CONFIG_MMC is not set > CONFIG_MTD=y > -CONFIG_NAND_ATMEL=y > -CONFIG_ATMEL_NAND_HW_PMECC=y > -CONFIG_PMECC_CAP=8 > +CONFIG_DM_MTD=y > +CONFIG_DM_NAND_ATMEL=y > CONFIG_SYS_NAND_ONFI_DETECTION=y > CONFIG_PHY_SMSC=y > CONFIG_MACB=y > > Hope the changes are acceptable nevertheless. The last patch has a > trivial fix for the new atmel raw nand driver which I came up with while > working on this. > > Greets > Alex > > Cc: Eugen Hristev <eugen.hris...@collabora.com> > Cc: Dario Binacchi <dario.binac...@amarulasolutions.com> > Cc: Michael Trimarchi <mich...@amarulasolutions.com> > Cc: Wenyou Yang <wenyou.y...@microchip.com> > Cc: Balamanikandan Gunasundar <balamanikandan.gunasun...@microchip.com> > > Alexander Dahl (4): > ARM: dts: at91: sama5d2: Move sfr node > ARM: dts: at91: sama5d2: Port ebi/nand nodes from linux > ARM: dts: at91: sama5d2: Align more node names with Linux > mtd: nand: raw: atmel: Remove duplicate definitions > > arch/arm/dts/sama5d2.dtsi | 74 ++++++++++++++++++++++++++---- > drivers/mtd/nand/raw/atmel/pmecc.c | 3 -- > 2 files changed, 65 insertions(+), 12 deletions(-) > > > base-commit: 2f0282922b2c458eea7f85c500a948a587437b63
Applied series to u-boot-at91/master, thanks !