Enable spi-nor framework for zynq microzed board, the zynq_qspi controller at spi still there for testing once the framework is mature will drop.
test log: ======== Zynq> spinor spinor - SPI-NOR Sub-system Usage: spinor list - show list of spinor devices spinor info - show current spinor device info spinor dev [devnum] - show or set current spinor device spinor erase offset len - erase 'len' bytes from 'offset' spinor write addr to len - write 'len' bytes to 'to' from 'addr' spinor read addr from len - read 'len' bytes from 'from' to 'addr' spinor protect lock/unlock sector len - protect/unprotect 'len' bytes starting at address 'sector' Zynq> spinor list flash@0: 0 spi-nor@e000d000: 1 Zynq> spinor dev 0 switch to dev #0, OK spinor0 is current device Zynq> spinor info bus: flash@0: 0 device: s25fl128s_64k page size: 256 B erase size: 64 KiB size: 16 MiB Zynq> spinor erase 0xE00000 0x100000 SPI-NOR: 1048576 bytes @ 0xe00000 Erased: OK Zynq> mw.b 0x100 0xcc 0x100000 Zynq> spinor write 0x100 0xE00000 0x100000 device 0 offset 0xe00000, size 0x100000 SPI-NOR: 1048576 bytes @ 0xe00000 Written: OK Zynq> spinor read 0x3000000 0xE00000 0x100000 device 0 offset 0xe00000, size 0x100000 SPI-NOR: 1048576 bytes @ 0xe00000 Read: OK Zynq> cmp.b 0x3000000 0x100 0x100000 Total of 1048576 byte(s) were the same Zynq> spinor dev 1 switch to dev #1, OK spinor1 is current device Zynq> spinor info bus: spi-nor@e000d000: 1 device: s25fl128s_64k page size: 256 B erase size: 64 KiB size: 16 MiB Zynq> spinor erase 0xE00000 0x100000 SPI-NOR: 1048576 bytes @ 0xe00000 Erased: OK Zynq> mw.b 0x100 0xbb 0x100000 Zynq> spinor write 0x100 0xE00000 0x100000 device 0 offset 0xe00000, size 0x100000 SPI-NOR: 1048576 bytes @ 0xe00000 Written: OK Zynq> spinor read 0x3000000 0xE00000 0x100000 device 0 offset 0xe00000, size 0x100000 SPI-NOR: 1048576 bytes @ 0xe00000 Read: OK Zynq> cmp.b 0x3000000 0x100 0x100000 Total of 1048576 byte(s) were the same Signed-off-by: Jagan Teki <ja...@amarulasolutions.com> --- arch/arm/dts/zynq-microzed.dts | 12 +++++++++++- configs/zynq_microzed_defconfig | 17 ++++++++++------- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/arch/arm/dts/zynq-microzed.dts b/arch/arm/dts/zynq-microzed.dts index 2d07b92..ff973dd 100644 --- a/arch/arm/dts/zynq-microzed.dts +++ b/arch/arm/dts/zynq-microzed.dts @@ -14,7 +14,6 @@ aliases { serial0 = &uart1; - spi0 = &qspi; mmc0 = &sdhci0; }; @@ -41,6 +40,17 @@ &qspi { u-boot,dm-pre-reloc; status = "okay"; + + s25fl128s_64k: flash@0 { + #address-cells = <1>; + #size-cells = <1>; + reg = <0>; + compatible = "jedec,spi-nor"; + }; +}; + +&qspinor { + status = "okay"; }; &uart1 { diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig index a713314..56908fe 100644 --- a/configs/zynq_microzed_defconfig +++ b/configs/zynq_microzed_defconfig @@ -19,7 +19,7 @@ CONFIG_CMD_FPGA_LOADMK=y CONFIG_CMD_FPGA_LOADP=y CONFIG_CMD_GPIO=y CONFIG_CMD_MMC=y -CONFIG_CMD_SF=y +CONFIG_CMD_SPINOR=y CONFIG_CMD_USB=y # CONFIG_CMD_SETEXPR is not set CONFIG_CMD_TFTPPUT=y @@ -32,7 +32,7 @@ CONFIG_CMD_EXT4=y CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y -CONFIG_ENV_IS_IN_SPI_FLASH=y +CONFIG_ENV_IS_IN_SPI_NOR=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_DFU_MMC=y @@ -40,14 +40,17 @@ CONFIG_DFU_RAM=y CONFIG_FPGA_XILINX=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y -CONFIG_SPI_FLASH=y -CONFIG_SPI_FLASH_BAR=y -CONFIG_SPI_FLASH_SPANSION=y -CONFIG_SPI_FLASH_STMICRO=y -CONFIG_SPI_FLASH_WINBOND=y CONFIG_ZYNQ_GEM=y CONFIG_ZYNQ_SERIAL=y CONFIG_ZYNQ_QSPI=y +CONFIG_MTD=y +CONFIG_MTD_SPI_NOR=y +CONFIG_MTD_M25P80=y +CONFIG_MTD_ZYNQ_QSPI=y +CONFIG_SPI_NOR_STMICRO=y +CONFIG_SPI_NOR_SPANSION=y +CONFIG_SPI_NOR_WINBOND=y +CONFIG_SPI_NOR_MACRONIX=y CONFIG_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_ULPI_VIEWPORT=y -- 2.7.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot