On Thu, Oct 07, 2021 at 02:21:29PM +0300, Mika Westerberg wrote: > Hi all, > > Based on discussion on the patch I sent some time ago here: > > http://lists.infradead.org/pipermail/linux-mtd/2021-June/086867.html > > it turns out that the preferred way to deal with the SPI flash controller > drivers is through SPI MEM which is part of Linux SPI subsystem. > > This series does that for the intel-spi driver. This also renames the > driver to follow the convention used in the SPI subsystem. The first patch > improves the write protection handling to be slightly more safer. The > following two patches do the conversion itself. Note the Intel SPI flash > controller only allows commands such as read, write and so on and it > internally uses whatever addressing etc. it figured from the SFDP on the > flash device. > > Previous version of the patch series can be found here: > > https://lore.kernel.org/linux-mtd/20210930100719.2176-1-mika.westerberg@xxxxxxxxxxxxxxx/ > > Changes from the previous version: > > * Arrange dependencies in Kconfig entries the same way in both glue > drivers. > * Added empty lines between different subsystem includes. > * dev_err() to single line > * Return intel_spi_sw_cycle() directly in intel_spi_erase(). > * Drop redundant elses. > * Fixed typo in the commit message of the patch 3/3. FWIW, Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > Mika Westerberg (3): > mtd: spi-nor: intel-spi: Disable write protection only if asked > mtd: spi-nor: intel-spi: Convert to SPI MEM > Documentation / MTD: Rename the intel-spi driver > > Documentation/driver-api/mtd/index.rst | 2 +- > .../mtd/{intel-spi.rst => spi-intel.rst} | 8 +- > drivers/mfd/lpc_ich.c | 59 ++- > drivers/mtd/spi-nor/controllers/Kconfig | 36 -- > drivers/mtd/spi-nor/controllers/Makefile | 3 - > drivers/mtd/spi-nor/controllers/intel-spi.h | 21 -- > drivers/spi/Kconfig | 39 ++ > drivers/spi/Makefile | 3 + > .../intel-spi-pci.c => spi/spi-intel-pci.c} | 49 ++- > .../spi-intel-platform.c} | 21 +- > .../intel-spi.c => spi/spi-intel.c} | 345 ++++++++++-------- > drivers/spi/spi-intel.h | 19 + > include/linux/mfd/lpc_ich.h | 2 +- > .../x86/{intel-spi.h => spi-intel.h} | 12 +- > 14 files changed, 355 insertions(+), 264 deletions(-) > rename Documentation/driver-api/mtd/{intel-spi.rst => spi-intel.rst} (94%) > delete mode 100644 drivers/mtd/spi-nor/controllers/intel-spi.h > rename drivers/{mtd/spi-nor/controllers/intel-spi-pci.c => spi/spi-intel-pci.c} (84%) > rename drivers/{mtd/spi-nor/controllers/intel-spi-platform.c => spi/spi-intel-platform.c} (65%) > rename drivers/{mtd/spi-nor/controllers/intel-spi.c => spi/spi-intel.c} (78%) > create mode 100644 drivers/spi/spi-intel.h > rename include/linux/platform_data/x86/{intel-spi.h => spi-intel.h} (64%) > > -- > 2.33.0 > -- With Best Regards, Andy Shevchenko