All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jagan Teki <jteki@openedev.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v7 00/87] mtd: Add SPI-NOR core support
Date: Tue, 22 Mar 2016 13:07:19 +0530	[thread overview]
Message-ID: <1458632239-22468-1-git-send-email-jteki@openedev.com> (raw)

Some of the SPI device drivers at drivers/spi not a real
spi controllers, Unlike normal/generic SPI controllers they
operates only with SPI-NOR flash devices. these were technically
termed as SPI-NOR controllers, Ex: drivers/spi/fsl_qspi.c

The problem with these were resides at drivers/spi is entire
SPI layer becomes SPI-NOR flash oriented which is absolutely
a wrong indication where SPI layer getting effected more with
flash operations - So this SPI-NOR core will resolve this issue
by separating all SPI-NOR flash operations from spi layer and
creats a generic layer called SPI-NOR core which can be used to
interact SPI-NOR to SPI driver interface layer and the SPI-NOR
controller driver. The idea is taken from Linux spi-nor framework.

Before SPI-NOR:

-----------------------
        cmd/sf.c
-----------------------
        spi_flash.c
-----------------------
        sf_probe.c
-----------------------
        spi-uclass
-----------------------
        spi drivers
-----------------------
        SPI NOR chip
-----------------------

After SPI-NOR:

------------------------------
        cmd/sf.c
------------------------------
        spi-nor.c
-------------------------------
m25p80.c        spi nor drivers
-------------------------------
spi-uclass      SPI NOR chip
-------------------------------
spi drivers
-------------------------------
SPI NOR chip
-------------------------------

SPI-NOR with MTD:

------------------------------
        cmd/sf.c
------------------------------
        MTD core
------------------------------
        spi-nor.c
-------------------------------
m25p80.c        spi nor drivers
-------------------------------
spi-uclass      SPI NOR chip
-------------------------------
spi drivers
-------------------------------
SPI NOR chip
-------------------------------

drivers/mtd/spi-nor/spi-nor.c: spi-nor core
drivers/mtd/spi-nor/m25p80.c: mtd uclass driver
which is an interface layer b/w spi-nor core drivers/spi
drivers/mtd/spi-nor/fsl_qspi.c: spi-nor controller driver(mtd uclass)

Changes for v7:
- Rebase to latest
- Fixed git bisectable issues, with buildman.
- Fixed spi-nor compilation issues
- newly designed changes.

Changes for v6:
- Fixed git bisectable issues, with buildman.
- Fixed spi-nor compilation issues
- newly designed changes.

Changes for v5:
- newly designed changes

Testing:
$ git clone git://git.denx.de/u-boot-spi.git
$ cd u-boot-spi
$ git checkout -b spi-nor-test origin/spi-nor-test

Alison Wang (1):
  defconfig: ls1021atwr_sdcard_qspi: Enable CONFIG_MTD

Jagan Teki (86):
  mtd: Add m25p80 driver
  mtd: Add Kconfig entry for MTD_M25P80
  mtd: Add SPI-NOR core support
  doc: device-tree-bindings: jedec,spi-nor
  mtd: spi-nor: Add Kconfig entry for MTD_SPI_NOR
  mtd: spi-nor: Add kconfig for MTD_SPI_NOR_USE_4K_SECTORS
  mtd: spi-nor: Add MTD support
  mtd: spi-nor: Add spi_nor support in m25p80
  mtd: spi-nor: Add dm spi-nor probing
  mtd: spi-nor: Add spi_flash_probe for mtd-dm-spi-nor
  mtd: spi-nor: Add spi_flash_free for mtd-dm-spi-nor
  mtd: spi-nor: m25p80: Add spi_nor support for non-dm
  sf: Rename erase_size to erasesize
  sf: Use erasesize instead of sector_size
  sf: Use uint64_t for flash->size
  spi_flash: Use mtd_info operation for SPI-NOR
  spi_flash: Use spi_flash_t instead of struct spi_flash
  mtd: spi-nor: Move spi_read_then_write to spi layer
  spi: Rename spi_read_then_write to spi_write_then_read
  mtd: spi-nor: Rename SPI_FLASH_BAR to SPI_NOR_BAR
  mtd: spi-nor: Add Kconfig entry for SPI_NOR_BAR
  mtd: spi-nor: Copy spl files from drivers/mtd/spi
  mtd: spi-nor: spl: Follow ascending order of include headers
  mtd: spi-nor: fsl_espi_spl: Use mtd_info
  mtd: spi-nor: fsl_espi_spl: Use writebufsize instead of page_size
  mtd: spi-nor: spi_spl_load: Use mtd_info
  spl: Add CONFIG_SPL_SPI_NOR_SUPPORT
  mtd: spi-nor: Add flash vendor Kconfig entries
  arm: zynq: Kconfig: Select MTD uclass
  arm: zynq: Kconfig: Drop DM_SPI_FLASH
  mtd: spi-nor: Copy sf_dataflash
  mtd: dataflash: Remove unneeded spi data
  mtd: dataflash: Move flash id detection into jedec_probe
  mtd: dataflash: Fix add_dataflash return logic
  mtd: dataflash: Add UCLASS_MTD support
  mtd: dataflash: Use spi_write_then_read
  mtd: dataflash: Drop sf_internal.h
  mtd: dataflash: Minor cleanups
  mtd: Rename sf_dataflash.c to mtd_dataflash.c
  mtd: spi-nor: Add Kconfig entry for mtd_dataflash
  mtd: dataflash: Add MTD_DATAFLASH_WRITE_VERIFY
  mtd: spi-nor: Add kconfig MTD_DATAFLASH_WRITE_VERIFY
  configs: ls1021aqds: Drop DM_SPI_FLASH and DATAFLASH
  defconfig: ls1021aqds_qspi: Enable SPI-NOR
  defconfig: ls1021aqds_qspi: Enable CONFIG_MTD_DATAFLASH
  mtd: spi-nor: Copy sandbox
  mtd: spi-nor: sandbox: Use spi-nor header
  mtd: spi-nor: sandbox: Fix ID exctract from spi_nor_info
  mtd: spi-nor: Add SPI_NOR_SANDBOX
  test/dm: Makefile: Use CONFIG_DM_MTD_SPI_NOR
  test/dm: spi: Use CONFIG_DM_MTD_SPI_NOR
  configs: sandbox: Enable SPI-NOR sandbox driver
  test/dm: spi: Use m25p80 as driver name
  dts: sandbox: Use jedec,spi-nor compatible string
  x86: Drop using spi_flash_dm_ops
  spi_flash: Use spi_flash_t
  defconfig: zynq_zc770_xm013: Enable ZYNQ_QSPI
  configs: Drop CONFIG_SPI_FLASH_MTD
  config: Enable SPI-NOR framework
  spi-nor: Use CONFIG_MTD_SPI_NOR
  configs: Use CONFIG_SPI_NOR_BAR
  configs: spi-nor: Add new flash vendor configs
  mtd: spi-nor: Add CONFIG_SPI_NOR_MISC
  configs: Use CONFIG_SPI_NOR_MISC
  powerpc/mpc85xx: Use spi.h instead of spi_flash.h
  sf: Drop entire spi-flash framework
  uclass: Drop UCLASS_SPI_FLASH
  spi: Drop mode_rx
  spi: Drop SPI_RX_FAST
  MAINTAINERS: Add myself as SPI NOR maintainer
  configs: CONFIG_MTD_SPI_NOR_USE_4K_SECTORS
  dts: spi-nor: Use jedec,spi-nor compatible string
  dts: spi-nor: Use spi-nor as node name
  mtd: spi-nor: Add erase ops
  mtd: spi-nor: Not required to memset dummy byte
  mtd: spi-nor: Move opcode handling in m25p80
  mtd: spi-nor: Rename spi_nor_addr to m25p_addr2cmd
  mtd: spi-nor: Add addr_width
  mtd: spi-nor: Add m25p_cmdsz
  mtd: spi-nor: read_dummy refers to dummy cycles not bytes
  mtd: spi-nor: Use to instead of offset in write
  mtd: spi-nor: offset with addr
  mtd: m25p80: Rename cmd with opcode
  armv8/ls1043a: move CONFIG_MTD to defconfig
  defconfig: ls1021aqds_sdcard_qspi: Enable MTD
  defconfig: ls1021aqds_sdcard_qspi: Enable MTD_DATAFLASH

 MAINTAINERS                                        |   11 +-
 Makefile                                           |    2 +-
 arch/Kconfig                                       |    4 +-
 arch/arm/Kconfig                                   |   13 +-
 arch/arm/dts/am437x-sk-evm.dts                     |    2 +-
 arch/arm/dts/armada-388-clearfog.dts               |    2 +-
 arch/arm/dts/armada-388-gp.dts                     |    2 +-
 arch/arm/dts/armada-xp-gp.dts                      |    2 +-
 arch/arm/dts/armada-xp-maxbcm.dts                  |    2 +-
 arch/arm/dts/armada-xp-synology-ds414.dts          |    2 +-
 arch/arm/dts/armada-xp-theadorable.dts             |    2 +-
 arch/arm/dts/dra7-evm.dts                          |    2 +-
 arch/arm/dts/dra72-evm.dts                         |    2 +-
 arch/arm/dts/exynos5250-snow.dts                   |    2 +-
 arch/arm/dts/exynos5250-spring.dts                 |    2 +-
 arch/arm/dts/exynos5420-peach-pit.dts              |    2 +-
 arch/arm/dts/fsl-ls1043a-qds.dtsi                  |    8 +-
 arch/arm/dts/fsl-ls1043a-rdb.dts                   |    2 +-
 arch/arm/dts/fsl-ls2080a-qds.dts                   |    6 +-
 arch/arm/dts/fsl-ls2080a-rdb.dts                   |    2 +-
 arch/arm/dts/ls1021a-qds.dtsi                      |    2 +-
 arch/arm/dts/ls1021a-twr.dtsi                      |    4 +-
 arch/arm/dts/rk3288-veyron.dtsi                    |    2 +-
 arch/arm/dts/socfpga_cyclone5_sockit.dts           |    2 +-
 arch/arm/dts/socfpga_cyclone5_sr1500.dts           |    2 +-
 arch/arm/dts/stv0991.dts                           |    2 +-
 arch/arm/dts/tegra30-beaver.dts                    |    2 +-
 arch/arm/dts/zynq-zc770-xm010.dts                  |    2 +-
 arch/arm/mach-rockchip/Kconfig                     |    2 +-
 arch/arm/mach-rockchip/rk3288-board-spl.c          |    2 +-
 arch/arm/mach-tegra/Kconfig                        |    2 +-
 arch/sandbox/dts/test.dts                          |    2 +-
 arch/x86/dts/bayleybay.dts                         |    4 +-
 arch/x86/dts/broadwell_som-6896.dts                |    4 +-
 arch/x86/dts/chromebook_link.dts                   |    4 +-
 arch/x86/dts/chromebox_panther.dts                 |    4 +-
 arch/x86/dts/cougarcanyon2.dts                     |    4 +-
 arch/x86/dts/crownbay.dts                          |    4 +-
 arch/x86/dts/galileo.dts                           |    4 +-
 arch/x86/dts/minnowmax.dts                         |    4 +-
 arch/x86/lib/mrccache.c                            |    9 +-
 board/Arcturus/ucp1020/cmd_arc.c                   |    2 +-
 board/Arcturus/ucp1020/ucp1020.c                   |    2 +-
 board/Synology/ds414/cmd_syno.c                    |    2 +-
 board/buffalo/lsxl/lsxl.c                          |    2 +-
 board/congatec/cgtqmx6eval/cgtqmx6eval.c           |    2 +-
 board/davinci/da8xxevm/da850evm.c                  |    4 +-
 board/davinci/ea20/ea20.c                          |    2 +-
 board/renesas/sh7752evb/sh7752evb.c                |    4 +-
 board/renesas/sh7753evb/sh7753evb.c                |    4 +-
 board/renesas/sh7757lcr/sh7757lcr.c                |    6 +-
 board/siemens/taurus/taurus.c                      |    2 +-
 cmd/sf.c                                           |   38 +-
 common/env_sf.c                                    |    6 +-
 common/splash_source.c                             |    4 +-
 configs/B4420QDS_NAND_defconfig                    |    5 +-
 configs/B4420QDS_SPIFLASH_defconfig                |    5 +-
 configs/B4420QDS_defconfig                         |    5 +-
 configs/B4860QDS_NAND_defconfig                    |    5 +-
 configs/B4860QDS_SECURE_BOOT_defconfig             |    5 +-
 configs/B4860QDS_SPIFLASH_defconfig                |    5 +-
 configs/B4860QDS_SRIO_PCIE_BOOT_defconfig          |    5 +-
 configs/B4860QDS_defconfig                         |    5 +-
 configs/BSC9131RDB_NAND_SYSCLK100_defconfig        |    5 +-
 configs/BSC9131RDB_NAND_defconfig                  |    5 +-
 configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig    |    5 +-
 configs/BSC9131RDB_SPIFLASH_defconfig              |    5 +-
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig |    5 +-
 configs/BSC9132QDS_NAND_DDRCLK100_defconfig        |    5 +-
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig |    5 +-
 configs/BSC9132QDS_NAND_DDRCLK133_defconfig        |    5 +-
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig  |    5 +-
 configs/BSC9132QDS_NOR_DDRCLK100_defconfig         |    5 +-
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig  |    5 +-
 configs/BSC9132QDS_NOR_DDRCLK133_defconfig         |    5 +-
 .../BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |    5 +-
 configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig      |    5 +-
 .../BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |    5 +-
 configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig      |    5 +-
 .../BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |    5 +-
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig    |    5 +-
 .../BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |    5 +-
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig    |    5 +-
 configs/C29XPCIE_NAND_defconfig                    |    7 +-
 configs/C29XPCIE_NOR_SECBOOT_defconfig             |    7 +-
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig        |    7 +-
 configs/C29XPCIE_SPIFLASH_defconfig                |    7 +-
 configs/C29XPCIE_defconfig                         |    7 +-
 configs/M52277EVB_defconfig                        |    5 +-
 configs/M52277EVB_stmicro_defconfig                |    5 +-
 configs/M54418TWR_defconfig                        |    5 +-
 configs/M54418TWR_nand_mii_defconfig               |    5 +-
 configs/M54418TWR_nand_rmii_defconfig              |    5 +-
 configs/M54418TWR_nand_rmii_lowfreq_defconfig      |    5 +-
 configs/M54418TWR_serial_mii_defconfig             |    5 +-
 configs/M54418TWR_serial_rmii_defconfig            |    5 +-
 configs/M54451EVB_defconfig                        |    5 +-
 configs/M54451EVB_stmicro_defconfig                |    5 +-
 configs/M54455EVB_a66_defconfig                    |    5 +-
 configs/M54455EVB_defconfig                        |    5 +-
 configs/M54455EVB_i66_defconfig                    |    5 +-
 configs/M54455EVB_intel_defconfig                  |    5 +-
 configs/M54455EVB_stm33_defconfig                  |    5 +-
 configs/MPC8536DS_36BIT_defconfig                  |    5 +-
 configs/MPC8536DS_SDCARD_defconfig                 |    5 +-
 configs/MPC8536DS_SPIFLASH_defconfig               |    5 +-
 configs/MPC8536DS_defconfig                        |    5 +-
 configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig   |    5 +-
 configs/P1010RDB-PA_36BIT_NAND_defconfig           |    5 +-
 configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig    |    5 +-
 configs/P1010RDB-PA_36BIT_NOR_defconfig            |    5 +-
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig         |    5 +-
 .../P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |    5 +-
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig       |    5 +-
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig         |    5 +-
 configs/P1010RDB-PA_NAND_defconfig                 |    5 +-
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig          |    5 +-
 configs/P1010RDB-PA_NOR_defconfig                  |    5 +-
 configs/P1010RDB-PA_SDCARD_defconfig               |    5 +-
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig     |    5 +-
 configs/P1010RDB-PA_SPIFLASH_defconfig             |    5 +-
 configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig   |    5 +-
 configs/P1010RDB-PB_36BIT_NAND_defconfig           |    5 +-
 configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig    |    5 +-
 configs/P1010RDB-PB_36BIT_NOR_defconfig            |    5 +-
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig         |    5 +-
 .../P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |    5 +-
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig       |    5 +-
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig         |    5 +-
 configs/P1010RDB-PB_NAND_defconfig                 |    5 +-
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig          |    5 +-
 configs/P1010RDB-PB_NOR_defconfig                  |    5 +-
 configs/P1010RDB-PB_SDCARD_defconfig               |    5 +-
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig     |    5 +-
 configs/P1010RDB-PB_SPIFLASH_defconfig             |    5 +-
 configs/P1020RDB-PC_36BIT_NAND_defconfig           |    5 +-
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig         |    5 +-
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig       |    5 +-
 configs/P1020RDB-PC_36BIT_defconfig                |    5 +-
 configs/P1020RDB-PC_NAND_defconfig                 |    5 +-
 configs/P1020RDB-PC_SDCARD_defconfig               |    5 +-
 configs/P1020RDB-PC_SPIFLASH_defconfig             |    5 +-
 configs/P1020RDB-PC_defconfig                      |    5 +-
 configs/P1020RDB-PD_NAND_defconfig                 |    5 +-
 configs/P1020RDB-PD_SDCARD_defconfig               |    5 +-
 configs/P1020RDB-PD_SPIFLASH_defconfig             |    5 +-
 configs/P1020RDB-PD_defconfig                      |    5 +-
 configs/P1021RDB-PC_36BIT_NAND_defconfig           |    5 +-
 configs/P1021RDB-PC_36BIT_SDCARD_defconfig         |    5 +-
 configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig       |    5 +-
 configs/P1021RDB-PC_36BIT_defconfig                |    5 +-
 configs/P1021RDB-PC_NAND_defconfig                 |    5 +-
 configs/P1021RDB-PC_SDCARD_defconfig               |    5 +-
 configs/P1021RDB-PC_SPIFLASH_defconfig             |    5 +-
 configs/P1021RDB-PC_defconfig                      |    5 +-
 configs/P1022DS_36BIT_NAND_defconfig               |    5 +-
 configs/P1022DS_36BIT_SDCARD_defconfig             |    5 +-
 configs/P1022DS_36BIT_SPIFLASH_defconfig           |    5 +-
 configs/P1022DS_36BIT_defconfig                    |    5 +-
 configs/P1022DS_NAND_defconfig                     |    5 +-
 configs/P1022DS_SDCARD_defconfig                   |    5 +-
 configs/P1022DS_SPIFLASH_defconfig                 |    5 +-
 configs/P1022DS_defconfig                          |    5 +-
 configs/P1024RDB_36BIT_defconfig                   |    5 +-
 configs/P1024RDB_NAND_defconfig                    |    5 +-
 configs/P1024RDB_SDCARD_defconfig                  |    5 +-
 configs/P1024RDB_SPIFLASH_defconfig                |    5 +-
 configs/P1024RDB_defconfig                         |    5 +-
 configs/P1025RDB_36BIT_defconfig                   |    5 +-
 configs/P1025RDB_NAND_defconfig                    |    5 +-
 configs/P1025RDB_SDCARD_defconfig                  |    5 +-
 configs/P1025RDB_SPIFLASH_defconfig                |    5 +-
 configs/P1025RDB_defconfig                         |    5 +-
 configs/P2020RDB-PC_36BIT_NAND_defconfig           |    5 +-
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig         |    5 +-
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig       |    5 +-
 configs/P2020RDB-PC_36BIT_defconfig                |    5 +-
 configs/P2020RDB-PC_NAND_defconfig                 |    5 +-
 configs/P2020RDB-PC_SDCARD_defconfig               |    5 +-
 configs/P2020RDB-PC_SPIFLASH_defconfig             |    5 +-
 configs/P2020RDB-PC_defconfig                      |    5 +-
 configs/P2041RDB_NAND_defconfig                    |    5 +-
 configs/P2041RDB_SDCARD_defconfig                  |    5 +-
 configs/P2041RDB_SECURE_BOOT_defconfig             |    5 +-
 configs/P2041RDB_SPIFLASH_defconfig                |    5 +-
 configs/P2041RDB_SRIO_PCIE_BOOT_defconfig          |    5 +-
 configs/P2041RDB_defconfig                         |    5 +-
 configs/P3041DS_NAND_SECURE_BOOT_defconfig         |    5 +-
 configs/P3041DS_NAND_defconfig                     |    5 +-
 configs/P3041DS_SDCARD_defconfig                   |    5 +-
 configs/P3041DS_SECURE_BOOT_defconfig              |    5 +-
 configs/P3041DS_SPIFLASH_defconfig                 |    5 +-
 configs/P3041DS_SRIO_PCIE_BOOT_defconfig           |    5 +-
 configs/P3041DS_defconfig                          |    5 +-
 configs/P4080DS_SDCARD_defconfig                   |    5 +-
 configs/P4080DS_SECURE_BOOT_defconfig              |    5 +-
 configs/P4080DS_SPIFLASH_defconfig                 |    5 +-
 configs/P4080DS_SRIO_PCIE_BOOT_defconfig           |    5 +-
 configs/P4080DS_defconfig                          |    5 +-
 configs/P5020DS_NAND_SECURE_BOOT_defconfig         |    5 +-
 configs/P5020DS_NAND_defconfig                     |    5 +-
 configs/P5020DS_SDCARD_defconfig                   |    5 +-
 configs/P5020DS_SECURE_BOOT_defconfig              |    5 +-
 configs/P5020DS_SPIFLASH_defconfig                 |    5 +-
 configs/P5020DS_SRIO_PCIE_BOOT_defconfig           |    5 +-
 configs/P5020DS_defconfig                          |    5 +-
 configs/P5040DS_NAND_SECURE_BOOT_defconfig         |    5 +-
 configs/P5040DS_NAND_defconfig                     |    5 +-
 configs/P5040DS_SDCARD_defconfig                   |    5 +-
 configs/P5040DS_SECURE_BOOT_defconfig              |    5 +-
 configs/P5040DS_SPIFLASH_defconfig                 |    5 +-
 configs/P5040DS_defconfig                          |    5 +-
 configs/T1023RDB_NAND_defconfig                    |    5 +-
 configs/T1023RDB_SDCARD_defconfig                  |    5 +-
 configs/T1023RDB_SECURE_BOOT_defconfig             |    5 +-
 configs/T1023RDB_SPIFLASH_defconfig                |    5 +-
 configs/T1023RDB_defconfig                         |    5 +-
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig        |    9 +-
 configs/T1024QDS_DDR4_defconfig                    |    9 +-
 configs/T1024QDS_NAND_defconfig                    |    9 +-
 configs/T1024QDS_SDCARD_defconfig                  |    9 +-
 configs/T1024QDS_SECURE_BOOT_defconfig             |    9 +-
 configs/T1024QDS_SPIFLASH_defconfig                |    9 +-
 configs/T1024QDS_defconfig                         |    9 +-
 configs/T1024RDB_NAND_defconfig                    |    5 +-
 configs/T1024RDB_SDCARD_defconfig                  |    5 +-
 configs/T1024RDB_SECURE_BOOT_defconfig             |    5 +-
 configs/T1024RDB_SPIFLASH_defconfig                |    5 +-
 configs/T1024RDB_defconfig                         |    5 +-
 configs/T1040D4RDB_NAND_defconfig                  |    5 +-
 configs/T1040D4RDB_SDCARD_defconfig                |    5 +-
 configs/T1040D4RDB_SECURE_BOOT_defconfig           |    5 +-
 configs/T1040D4RDB_SPIFLASH_defconfig              |    5 +-
 configs/T1040D4RDB_defconfig                       |    5 +-
 configs/T1040QDS_DDR4_defconfig                    |    9 +-
 configs/T1040QDS_SECURE_BOOT_defconfig             |    9 +-
 configs/T1040QDS_defconfig                         |    9 +-
 configs/T1040RDB_NAND_defconfig                    |    5 +-
 configs/T1040RDB_SDCARD_defconfig                  |    5 +-
 configs/T1040RDB_SECURE_BOOT_defconfig             |    5 +-
 configs/T1040RDB_SPIFLASH_defconfig                |    5 +-
 configs/T1040RDB_defconfig                         |    5 +-
 configs/T1042D4RDB_NAND_defconfig                  |    5 +-
 configs/T1042D4RDB_SDCARD_defconfig                |    5 +-
 configs/T1042D4RDB_SECURE_BOOT_defconfig           |    5 +-
 configs/T1042D4RDB_SPIFLASH_defconfig              |    5 +-
 configs/T1042D4RDB_defconfig                       |    5 +-
 configs/T1042RDB_PI_NAND_defconfig                 |    5 +-
 configs/T1042RDB_PI_SDCARD_defconfig               |    5 +-
 configs/T1042RDB_PI_SPIFLASH_defconfig             |    5 +-
 configs/T1042RDB_PI_defconfig                      |    5 +-
 configs/T1042RDB_SECURE_BOOT_defconfig             |    5 +-
 configs/T1042RDB_defconfig                         |    5 +-
 configs/T2080QDS_NAND_defconfig                    |    9 +-
 configs/T2080QDS_SDCARD_defconfig                  |    9 +-
 configs/T2080QDS_SECURE_BOOT_defconfig             |    9 +-
 configs/T2080QDS_SPIFLASH_defconfig                |    9 +-
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig          |    9 +-
 configs/T2080QDS_defconfig                         |    9 +-
 configs/T2080RDB_NAND_defconfig                    |    5 +-
 configs/T2080RDB_SDCARD_defconfig                  |    5 +-
 configs/T2080RDB_SECURE_BOOT_defconfig             |    5 +-
 configs/T2080RDB_SPIFLASH_defconfig                |    5 +-
 configs/T2080RDB_SRIO_PCIE_BOOT_defconfig          |    5 +-
 configs/T2080RDB_defconfig                         |    5 +-
 configs/T2081QDS_NAND_defconfig                    |    9 +-
 configs/T2081QDS_SDCARD_defconfig                  |    9 +-
 configs/T2081QDS_SPIFLASH_defconfig                |    9 +-
 configs/T2081QDS_SRIO_PCIE_BOOT_defconfig          |    9 +-
 configs/T2081QDS_defconfig                         |    9 +-
 configs/T4160QDS_NAND_defconfig                    |    5 +-
 configs/T4160QDS_SDCARD_defconfig                  |    5 +-
 configs/T4160QDS_SECURE_BOOT_defconfig             |    5 +-
 configs/T4160QDS_defconfig                         |    5 +-
 configs/T4160RDB_defconfig                         |    5 +-
 configs/T4240QDS_NAND_defconfig                    |    5 +-
 configs/T4240QDS_SDCARD_defconfig                  |    5 +-
 configs/T4240QDS_SECURE_BOOT_defconfig             |    5 +-
 configs/T4240QDS_SRIO_PCIE_BOOT_defconfig          |    5 +-
 configs/T4240QDS_defconfig                         |    5 +-
 configs/T4240RDB_SDCARD_defconfig                  |    5 +-
 configs/T4240RDB_defconfig                         |    5 +-
 configs/UCP1020_SPIFLASH_defconfig                 |    9 +-
 configs/UCP1020_defconfig                          |    9 +-
 configs/alt_defconfig                              |    7 +-
 configs/am335x_boneblack_defconfig                 |    5 +-
 configs/am335x_boneblack_vboot_defconfig           |    5 +-
 configs/am335x_evm_defconfig                       |    5 +-
 configs/am335x_evm_nor_defconfig                   |    5 +-
 configs/am335x_evm_norboot_defconfig               |    5 +-
 configs/am335x_evm_spiboot_defconfig               |    5 +-
 configs/am335x_evm_usbspl_defconfig                |    5 +-
 configs/am335x_gp_evm_defconfig                    |    5 +-
 configs/am437x_gp_evm_defconfig                    |    5 +-
 configs/am437x_sk_evm_defconfig                    |    9 +-
 configs/am43xx_evm_defconfig                       |    7 +-
 configs/am43xx_evm_ethboot_defconfig               |    5 +-
 configs/am43xx_evm_qspiboot_defconfig              |    5 +-
 configs/am43xx_evm_usbhost_boot_defconfig          |    5 +-
 configs/am57xx_evm_defconfig                       |    5 +-
 configs/aristainetos2_defconfig                    |    5 +-
 configs/aristainetos2b_defconfig                   |    5 +-
 configs/aristainetos_defconfig                     |    5 +-
 configs/at91sam9n12ek_mmc_defconfig                |    5 +-
 configs/at91sam9n12ek_nandflash_defconfig          |    5 +-
 configs/at91sam9n12ek_spiflash_defconfig           |    5 +-
 configs/at91sam9x5ek_dataflash_defconfig           |    5 +-
 configs/at91sam9x5ek_mmc_defconfig                 |    5 +-
 configs/at91sam9x5ek_nandflash_defconfig           |    5 +-
 configs/at91sam9x5ek_spiflash_defconfig            |    5 +-
 configs/atngw100_defconfig                         |    5 +-
 configs/atngw100mkii_defconfig                     |    5 +-
 configs/axm_defconfig                              |    5 +-
 configs/bayleybay_defconfig                        |    9 +-
 configs/beaver_defconfig                           |    5 +-
 configs/bf518f-ezbrd_defconfig                     |    7 +-
 configs/bf525-ucr2_defconfig                       |    5 +-
 configs/bf526-ezbrd_defconfig                      |    5 +-
 configs/bf527-ad7160-eval_defconfig                |    5 +-
 configs/bf527-ezkit-v2_defconfig                   |    5 +-
 configs/bf527-ezkit_defconfig                      |    5 +-
 configs/bf527-sdp_defconfig                        |   16 +-
 configs/bf537-minotaur_defconfig                   |    5 +-
 configs/bf537-pnav_defconfig                       |    5 +-
 configs/bf537-srv1_defconfig                       |    5 +-
 configs/bf537-stamp_defconfig                      |   16 +-
 configs/bf548-ezkit_defconfig                      |    5 +-
 configs/bf561-acvilon_defconfig                    |    5 +-
 configs/bf609-ezkit_defconfig                      |   16 +-
 configs/bg0900_defconfig                           |    7 +-
 configs/birdland_bav335a_defconfig                 |    5 +-
 configs/birdland_bav335b_defconfig                 |    5 +-
 configs/blackstamp_defconfig                       |    5 +-
 configs/blackvme_defconfig                         |    5 +-
 configs/br4_defconfig                              |    5 +-
 configs/cardhu_defconfig                           |    5 +-
 configs/cgtqmx6eval_defconfig                      |    2 +
 configs/chromebook_jerry_defconfig                 |    2 +
 configs/chromebook_link_defconfig                  |    9 +-
 configs/chromebook_samus_defconfig                 |    9 +-
 configs/chromebox_panther_defconfig                |    9 +-
 configs/clearfog_defconfig                         |    3 +-
 configs/cm_fx6_defconfig                           |   17 +-
 configs/cm_t43_defconfig                           |   20 +-
 configs/conga-qeval20-qa3-e3845_defconfig          |   11 +-
 .../controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |    5 +-
 configs/controlcenterd_36BIT_SDCARD_defconfig      |    5 +-
 configs/coreboot-x86_defconfig                     |    9 +-
 configs/cougarcanyon2_defconfig                    |    5 +-
 configs/crownbay_defconfig                         |   11 +-
 configs/d2net_v2_defconfig                         |    5 +-
 configs/da850_am18xxevm_defconfig                  |    7 +-
 configs/da850evm_defconfig                         |    7 +-
 configs/da850evm_direct_nor_defconfig              |    7 +-
 configs/dalmore_defconfig                          |    5 +-
 configs/db-88f6820-gp_defconfig                    |    7 +-
 configs/db-mv784mp-gp_defconfig                    |    7 +-
 configs/dra72_evm_defconfig                        |    9 +-
 configs/dra74_evm_defconfig                        |    9 +-
 configs/dra7xx_evm_defconfig                       |    8 +-
 configs/dra7xx_evm_qspiboot_defconfig              |    6 +-
 configs/dra7xx_evm_uart3_defconfig                 |    6 +-
 configs/draco_defconfig                            |    5 +-
 configs/dreamplug_defconfig                        |    5 +-
 configs/ds414_defconfig                            |    7 +-
 configs/e2220-1170_defconfig                       |    5 +-
 configs/ea20_defconfig                             |    5 +-
 configs/ethernut5_defconfig                        |    5 +-
 configs/firefly-rk3288_defconfig                   |    2 +
 configs/galileo_defconfig                          |    9 +-
 configs/gose_defconfig                             |    7 +-
 configs/gplugd_defconfig                           |    7 +-
 configs/inetspace_v2_defconfig                     |    5 +-
 configs/ip04_defconfig                             |    7 +-
 configs/jetson-tk1_defconfig                       |    5 +-
 configs/k2e_evm_defconfig                          |    5 +-
 configs/k2g_evm_defconfig                          |    5 +-
 configs/k2hk_evm_defconfig                         |    5 +-
 configs/k2l_evm_defconfig                          |    5 +-
 configs/km_kirkwood_128m16_defconfig               |    5 +-
 configs/km_kirkwood_defconfig                      |    5 +-
 configs/km_kirkwood_pci_defconfig                  |    5 +-
 configs/kmcoge4_defconfig                          |    7 +-
 configs/kmcoge5un_defconfig                        |    5 +-
 configs/kmlion1_defconfig                          |    7 +-
 configs/kmnusa_defconfig                           |    5 +-
 configs/kmsugp1_defconfig                          |    5 +-
 configs/kmsuv31_defconfig                          |    5 +-
 configs/koelsch_defconfig                          |    7 +-
 configs/kylin-rk3036_defconfig                     |    2 +
 configs/lager_defconfig                            |    7 +-
 configs/legoev3_defconfig                          |    5 +-
 configs/ls1021aqds_qspi_defconfig                  |    7 +-
 configs/ls1021aqds_sdcard_qspi_defconfig           |    7 +-
 configs/ls1021atwr_qspi_defconfig                  |    8 +-
 configs/ls1021atwr_sdcard_qspi_defconfig           |    8 +-
 configs/ls1043aqds_defconfig                       |    4 +-
 configs/ls1043aqds_lpuart_defconfig                |    4 +-
 configs/ls1043aqds_nand_defconfig                  |    4 +-
 configs/ls1043aqds_nor_ddr3_defconfig              |    4 +-
 configs/ls1043aqds_qspi_defconfig                  |    4 +-
 configs/ls1043aqds_sdcard_ifc_defconfig            |    4 +-
 configs/ls1043aqds_sdcard_qspi_defconfig           |    4 +-
 configs/ls1043ardb_SECURE_BOOT_defconfig           |    4 +-
 configs/ls1043ardb_defconfig                       |    4 +-
 configs/ls1043ardb_nand_defconfig                  |    4 +-
 configs/ls1043ardb_sdcard_defconfig                |    4 +-
 configs/ls2080aqds_defconfig                       |    2 +-
 configs/ls2080ardb_defconfig                       |    2 +-
 configs/ls2085aqds_defconfig                       |    2 +-
 configs/ls2085ardb_defconfig                       |    2 +-
 configs/lschlv2_defconfig                          |    5 +-
 configs/lsxhl_defconfig                            |    5 +-
 configs/m28evk_defconfig                           |    5 +-
 configs/ma5d4evk_defconfig                         |    3 +-
 configs/marsboard_defconfig                        |    5 +-
 configs/maxbcm_defconfig                           |   11 +-
 configs/mgcoge3un_defconfig                        |    5 +-
 configs/minnowmax_defconfig                        |   11 +-
 configs/mx28evk_auart_console_defconfig            |    5 +-
 configs/mx28evk_defconfig                          |    5 +-
 configs/mx28evk_nand_defconfig                     |    5 +-
 configs/mx28evk_spi_defconfig                      |    5 +-
 configs/mx6dlsabreauto_defconfig                   |    5 +-
 configs/mx6dlsabresd_defconfig                     |    5 +-
 configs/mx6qpsabreauto_defconfig                   |    5 +-
 configs/mx6qsabreauto_defconfig                    |    5 +-
 configs/mx6qsabrelite_defconfig                    |    5 +-
 configs/mx6qsabresd_defconfig                      |    5 +-
 configs/mx6sabresd_spl_defconfig                   |    5 +-
 configs/mx6slevk_defconfig                         |    5 +-
 configs/mx6slevk_spinor_defconfig                  |    5 +-
 configs/mx6slevk_spl_defconfig                     |    5 +-
 configs/mx6sxsabreauto_defconfig                   |    7 +-
 configs/mx6sxsabresd_defconfig                     |    5 +-
 configs/mx6sxsabresd_spl_defconfig                 |    3 +-
 configs/net2big_v2_defconfig                       |    5 +-
 configs/netspace_lite_v2_defconfig                 |    5 +-
 configs/netspace_max_v2_defconfig                  |    5 +-
 configs/netspace_mini_v2_defconfig                 |    5 +-
 configs/netspace_v2_defconfig                      |    5 +-
 configs/nitrogen6dl2g_defconfig                    |    5 +-
 configs/nitrogen6dl_defconfig                      |    5 +-
 configs/nitrogen6q2g_defconfig                     |    5 +-
 configs/nitrogen6q_defconfig                       |    5 +-
 configs/nitrogen6s1g_defconfig                     |    5 +-
 configs/nitrogen6s_defconfig                       |    5 +-
 configs/nyan-big_defconfig                         |    5 +-
 configs/omapl138_lcdk_defconfig                    |    7 +-
 configs/ot1200_defconfig                           |   11 +-
 configs/ot1200_spl_defconfig                       |   11 +-
 configs/p2371-0000_defconfig                       |    5 +-
 configs/p2371-2180_defconfig                       |    5 +-
 configs/p2571_defconfig                            |    5 +-
 configs/pcm051_rev1_defconfig                      |    5 +-
 configs/pcm051_rev3_defconfig                      |    5 +-
 configs/peach-pi_defconfig                         |    7 +-
 configs/peach-pit_defconfig                        |    7 +-
 configs/porter_defconfig                           |    7 +-
 configs/portl2_defconfig                           |    5 +-
 configs/pr1_defconfig                              |    5 +-
 configs/pxm2_defconfig                             |    5 +-
 configs/qemu-x86_defconfig                         |    9 +-
 configs/rastaban_defconfig                         |    5 +-
 configs/riotboard_defconfig                        |    5 +-
 configs/rock2_defconfig                            |    2 +
 configs/rut_defconfig                              |    5 +-
 configs/sama5d2_xplained_mmc_defconfig             |    3 +-
 configs/sama5d2_xplained_spiflash_defconfig        |    3 +-
 configs/sama5d3xek_mmc_defconfig                   |    5 +-
 configs/sama5d3xek_nandflash_defconfig             |    5 +-
 configs/sama5d3xek_spiflash_defconfig              |    5 +-
 configs/sama5d4_xplained_mmc_defconfig             |    5 +-
 configs/sama5d4_xplained_nandflash_defconfig       |    5 +-
 configs/sama5d4_xplained_spiflash_defconfig        |    5 +-
 configs/sama5d4ek_mmc_defconfig                    |    5 +-
 configs/sama5d4ek_nandflash_defconfig              |    5 +-
 configs/sama5d4ek_spiflash_defconfig               |    5 +-
 configs/sandbox_defconfig                          |   19 +-
 configs/sh7752evb_defconfig                        |    7 +-
 configs/sh7753evb_defconfig                        |    7 +-
 configs/sh7757lcr_defconfig                        |    5 +-
 configs/silk_defconfig                             |    7 +-
 configs/smdk5250_defconfig                         |    7 +-
 configs/smdk5420_defconfig                         |    7 +-
 configs/snow_defconfig                             |    7 +-
 configs/socfpga_arria5_defconfig                   |    9 +-
 configs/socfpga_cyclone5_defconfig                 |    9 +-
 configs/socfpga_de0_nano_soc_defconfig             |    3 +
 configs/socfpga_mcvevk_defconfig                   |    2 +
 configs/socfpga_sockit_defconfig                   |    9 +-
 configs/socfpga_socrates_defconfig                 |    7 +-
 configs/socfpga_sr1500_defconfig                   |    7 +-
 configs/spring_defconfig                           |    7 +-
 configs/stout_defconfig                            |    7 +-
 configs/stv0991_defconfig                          |    4 +-
 configs/taurus_defconfig                           |    5 +-
 configs/tec-ng_defconfig                           |    5 +-
 configs/theadorable_debug_defconfig                |    7 +-
 configs/theadorable_defconfig                      |    7 +-
 configs/thuban_defconfig                           |    5 +-
 configs/tqma6q_mba6_mmc_defconfig                  |    5 +-
 configs/tqma6q_mba6_spi_defconfig                  |    5 +-
 configs/tqma6s_mba6_mmc_defconfig                  |    5 +-
 configs/tqma6s_mba6_spi_defconfig                  |    5 +-
 configs/trimslice_defconfig                        |    5 +-
 configs/tseries_spi_defconfig                      |    7 +-
 configs/venice2_defconfig                          |    5 +-
 configs/vf610twr_defconfig                         |    3 +-
 configs/vf610twr_nand_defconfig                    |    3 +-
 configs/vinco_defconfig                            |    3 +-
 configs/zynq_microzed_defconfig                    |    9 +-
 configs/zynq_zc702_defconfig                       |   11 +-
 configs/zynq_zc706_defconfig                       |   11 +-
 configs/zynq_zc770_xm010_defconfig                 |   13 +-
 configs/zynq_zc770_xm013_defconfig                 |    6 +-
 configs/zynq_zed_defconfig                         |   11 +-
 configs/zynq_zybo_defconfig                        |    5 +-
 doc/SPI/README.ti_qspi_dra_test                    |    2 +-
 doc/device-tree-bindings/mtd/jedec,spi-nor.txt     |   78 ++
 doc/mtd/spi-nor.txt                                |   81 ++
 drivers/Makefile                                   |    2 +-
 drivers/dfu/dfu_sf.c                               |   12 +-
 drivers/mtd/Kconfig                                |    2 +-
 drivers/mtd/spi-nor/Kconfig                        |  127 +++
 drivers/mtd/spi-nor/Makefile                       |   20 +
 drivers/mtd/{spi => spi-nor}/fsl_espi_spl.c        |   12 +-
 drivers/mtd/spi-nor/m25p80.c                       |  401 +++++++
 .../sf_dataflash.c => spi-nor/mtd_dataflash.c}     |  429 ++++---
 drivers/mtd/{spi => spi-nor}/sandbox.c             |   51 +-
 drivers/mtd/spi-nor/spi-nor-ids.c                  |  283 +++++
 drivers/mtd/spi-nor/spi-nor-probe.c                |   58 +
 drivers/mtd/spi-nor/spi-nor.c                      | 1095 ++++++++++++++++++
 drivers/mtd/{spi => spi-nor}/spi_spl_load.c        |    7 +-
 drivers/mtd/spi/Kconfig                            |  131 ---
 drivers/mtd/spi/Makefile                           |   18 -
 drivers/mtd/spi/sf-uclass.c                        |  103 --
 drivers/mtd/spi/sf.c                               |   58 -
 drivers/mtd/spi/sf_internal.h                      |  243 ----
 drivers/mtd/spi/sf_mtd.c                           |  104 --
 drivers/mtd/spi/sf_params.c                        |  146 ---
 drivers/mtd/spi/sf_probe.c                         |  179 ---
 drivers/mtd/spi/spi_flash.c                        | 1194 --------------------
 drivers/net/fm/fm.c                                |    2 +-
 drivers/net/phy/cortina.c                          |    2 +-
 drivers/spi/fsl_qspi.c                             |   18 +-
 drivers/spi/ich.c                                  |    6 +-
 drivers/spi/spi-uclass.c                           |   35 +-
 drivers/spi/spi.c                                  |   30 +
 drivers/spi/ti_qspi.c                              |    6 +-
 examples/standalone/Makefile                       |    2 +-
 include/configs/MPC8536DS.h                        |    2 +-
 include/configs/P1010RDB.h                         |    3 +-
 include/configs/P1022DS.h                          |    3 +-
 include/configs/T102xQDS.h                         |    5 +-
 include/configs/T102xRDB.h                         |    5 +-
 include/configs/T104xRDB.h                         |    5 +-
 include/configs/T208xQDS.h                         |    7 +-
 include/configs/T208xRDB.h                         |    7 +-
 include/configs/UCP1020.h                          |    4 +-
 include/configs/am335x_evm.h                       |    3 +-
 include/configs/am43xx_evm.h                       |    2 +-
 include/configs/aristainetos-common.h              |    1 -
 include/configs/at91sam9n12ek.h                    |    3 +-
 include/configs/at91sam9x5ek.h                     |    3 +-
 include/configs/bav335x.h                          |    3 +-
 include/configs/bfin_adi_common.h                  |    2 +-
 include/configs/cgtqmx6eval.h                      |    8 +-
 include/configs/chromebook_jerry.h                 |    5 +-
 include/configs/clearfog.h                         |    5 +-
 include/configs/cm_fx6.h                           |    3 +-
 include/configs/cm_t43.h                           |    3 +-
 include/configs/da850evm.h                         |    6 +-
 include/configs/db-88f6820-gp.h                    |    3 +-
 include/configs/db-mv784mp-gp.h                    |    3 +-
 include/configs/dra7xx_evm.h                       |    5 +-
 include/configs/dreamplug.h                        |    2 +-
 include/configs/ds414.h                            |    3 +-
 include/configs/exynos5-common.h                   |    2 +-
 include/configs/gw_ventana.h                       |   13 +-
 include/configs/km/kmp204x-common.h                |    2 +-
 include/configs/ls1021aqds.h                       |    2 -
 include/configs/ls1021atwr.h                       |    1 -
 include/configs/ls1043a_common.h                   |    7 +-
 include/configs/ls1043aqds.h                       |    2 +-
 include/configs/ls2080aqds.h                       |    3 +-
 include/configs/ls2080ardb.h                       |    5 +-
 include/configs/lsxl.h                             |    2 +-
 include/configs/ma5d4evk.h                         |    3 +-
 include/configs/maxbcm.h                           |    3 +-
 include/configs/mx6ul_14x14_evk.h                  |    7 +-
 include/configs/mx7dsabresd.h                      |    7 +-
 include/configs/omapl138_lcdk.h                    |    3 +-
 include/configs/ot1200.h                           |    3 +-
 include/configs/p1_p2_rdb_pc.h                     |    5 +-
 include/configs/pcm051.h                           |    3 +-
 include/configs/pcm052.h                           |    3 +-
 include/configs/rk3036_common.h                    |    3 +-
 include/configs/rk3288_common.h                    |    1 -
 include/configs/sama5d2_xplained.h                 |    5 +-
 include/configs/sama5d3xek.h                       |    3 +-
 include/configs/sama5d4_xplained.h                 |    3 +-
 include/configs/sama5d4ek.h                        |    3 +-
 include/configs/siemens-am33x-common.h             |    3 +-
 include/configs/socfpga_common.h                   |    8 +-
 include/configs/taurus.h                           |    3 +-
 include/configs/tegra-common-usb-gadget.h          |    2 +-
 include/configs/theadorable.h                      |    3 +-
 include/configs/ti_armv7_keystone2.h               |    3 +-
 include/configs/tseries.h                          |    3 +-
 include/configs/vinco.h                            |    2 +-
 include/configs/zynq-common.h                      |    5 +-
 include/dfu.h                                      |    2 +-
 include/dm/uclass-id.h                             |    1 -
 include/linux/err.h                                |    5 +
 include/linux/mtd/spi-nor.h                        |  257 +++++
 include/spi.h                                      |   33 +-
 include/spi_flash.h                                |  230 +---
 test/dm/Makefile                                   |    2 +-
 test/dm/spi.c                                      |    8 +-
 620 files changed, 4604 insertions(+), 3955 deletions(-)
 create mode 100644 doc/device-tree-bindings/mtd/jedec,spi-nor.txt
 create mode 100644 doc/mtd/spi-nor.txt
 create mode 100644 drivers/mtd/spi-nor/Kconfig
 create mode 100644 drivers/mtd/spi-nor/Makefile
 rename drivers/mtd/{spi => spi-nor}/fsl_espi_spl.c (92%)
 create mode 100644 drivers/mtd/spi-nor/m25p80.c
 rename drivers/mtd/{spi/sf_dataflash.c => spi-nor/mtd_dataflash.c} (61%)
 rename drivers/mtd/{spi => spi-nor}/sandbox.c (95%)
 create mode 100644 drivers/mtd/spi-nor/spi-nor-ids.c
 create mode 100644 drivers/mtd/spi-nor/spi-nor-probe.c
 create mode 100644 drivers/mtd/spi-nor/spi-nor.c
 rename drivers/mtd/{spi => spi-nor}/spi_spl_load.c (94%)
 delete mode 100644 drivers/mtd/spi/Kconfig
 delete mode 100644 drivers/mtd/spi/Makefile
 delete mode 100644 drivers/mtd/spi/sf-uclass.c
 delete mode 100644 drivers/mtd/spi/sf.c
 delete mode 100644 drivers/mtd/spi/sf_internal.h
 delete mode 100644 drivers/mtd/spi/sf_mtd.c
 delete mode 100644 drivers/mtd/spi/sf_params.c
 delete mode 100644 drivers/mtd/spi/sf_probe.c
 delete mode 100644 drivers/mtd/spi/spi_flash.c
 create mode 100644 include/linux/mtd/spi-nor.h

-- 
1.9.1

             reply	other threads:[~2016-03-22  7:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-22  7:37 Jagan Teki [this message]
2016-03-22  7:47 ` [U-Boot] [PATCH v7 00/87] mtd: Add SPI-NOR core support Jagan Teki
2016-03-22  7:49   ` Jagan Teki
2016-03-22 10:14     ` Jagan Teki
2016-03-22 14:55     ` Tom Rini
2016-03-28 11:32       ` Jagan Teki
2016-03-28 13:31         ` Tom Rini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1458632239-22468-1-git-send-email-jteki@openedev.com \
    --to=jteki@openedev.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.