All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH 00/34] mtd: spi-nor: Move manufacturer/SFDP code out of the core
@ 2018-12-07  9:26 Boris Brezillon
  2018-12-07  9:26 ` [RFC PATCH 01/34] mtd: spi-nor: Add a new hook to let part specific code tweak the config Boris Brezillon
                   ` (33 more replies)
  0 siblings, 34 replies; 44+ messages in thread
From: Boris Brezillon @ 2018-12-07  9:26 UTC (permalink / raw)
  To: Tudor Ambarus, Marek Vasut
  Cc: Vignesh R, Yogesh Narayan Gaur, Miquel Raynal, David Woodhouse,
	Brian Norris, Boris Brezillon, Richard Weinberger, linux-mtd

Hello,

This patch series is an attempt at getting all manufacturer specific
quirks/code out of the core to make the core logic more readable and
thus ease maintainance.

This is just a preliminary version, and I'm pretty sure a lot of things
can be improved (Tudor already pointed some of them which I'll try to
address).

This series is split in 2:
- preparation patches (patches 1 to 11)
- the actual migration to one file per manufacturer + one file for the
  SFDP parsing logic

Feel free to comment on the approach.

Regards,

Boris

Boris Brezillon (34):
  mtd: spi-nor: Add a new hook to let part specific code tweak the
    config
  mtd: spi-nor: Add a post SFDP fixup hook for gd25q256
  mtd: spi-nor: Create a ->set_4byte() method
  mtd: spi-nor: Add spansion_fixups()
  mtd: spi-nor: Rework the SPI NOR lock/unlock logic
  mtd: spi-nor: Rework the ->quad_enable() selection logic
  mtd: spi-nor: Add a new flag to clear SW protection bits during init
  mtd: spi-nor: Add a ->convert_addr() method
  mtd: spi-nor: Add a flag to skip spi_nor_setup()
  mtd: spi-nor: Add the SPI_NOR_XSR_RDY flag
  mtd: spi-nor: Move S3AN fixups to the manufacturer fixups path
  mtd: spi-nor: Prepare things for core / manufacturer code split
  mtd: spi-nor: Add the concept of SPI NOR manufacturer driver
  mtd: spi-nor: Stop prefixing generic functions with a manufacturer
    name
  mtd: spi-nor: Expose some functions to manufacturer drivers
  mtd: spi-nor: Move Atmel bits out of core.c
  mtd: spi-nor: Move Eon bits out of core.c
  mtd: spi-nor: Move ESMT bits out of core.c
  mtd: spi-nor: Move Everspin bits out of core.c
  mtd: spi-nor: Move Fujitsu bits out of spi-nor-core.c
  mtd: spi-nor: Move GigaDevice bits out of core.c
  mtd: spi-nor: Move Intel bits out of core.c
  mtd: spi-nor: Move ISSI bits out of core.c
  mtd: spi-nor: Move Macronix bits out of core.c
  mtd: spi-nor: Move Micron/ST bits out of core.c
  mtd: spi-nor: Move Spansion bits out of core.c
  mtd: spi-nor: Move SST bits out of core.c
  mtd: spi-nor: Move Winbond bits out of core.c
  mtd: spi-nor: Move Catalyst bits out of core.c
  mtd: spi-nor: Move Xilinx bits out of core.c
  mtd: spi-nor: Move XMC bits out of core.c
  mtd: spi-nor: Get rid of the now empty spi_nor_ids[] table
  mtd: spi-nor: Move SFDP parsing code out of core.c
  mtd: spi-nor: Add sfdp fixups hooks

 drivers/mtd/spi-nor/Kconfig                   |  108 +-
 drivers/mtd/spi-nor/Makefile                  |   30 +-
 drivers/mtd/spi-nor/atmel.c                   |   47 +
 drivers/mtd/spi-nor/catalyst.c                |   39 +
 drivers/mtd/spi-nor/controllers/Kconfig       |  107 +
 drivers/mtd/spi-nor/controllers/Makefile      |   12 +
 .../spi-nor/{ => controllers}/aspeed-smc.c    |    0
 .../spi-nor/{ => controllers}/atmel-quadspi.c |    0
 .../{ => controllers}/cadence-quadspi.c       |    0
 .../spi-nor/{ => controllers}/fsl-quadspi.c   |    0
 .../mtd/spi-nor/{ => controllers}/hisi-sfc.c  |    0
 .../spi-nor/{ => controllers}/intel-spi-pci.c |    0
 .../{ => controllers}/intel-spi-platform.c    |    0
 .../mtd/spi-nor/{ => controllers}/intel-spi.c |    0
 .../mtd/spi-nor/{ => controllers}/intel-spi.h |    0
 .../spi-nor/{ => controllers}/mtk-quadspi.c   |    0
 .../mtd/spi-nor/{ => controllers}/nxp-spifi.c |    0
 .../spi-nor/{ => controllers}/stm32-quadspi.c |    0
 drivers/mtd/spi-nor/core.c                    | 2290 ++++++++++
 drivers/mtd/spi-nor/eon.c                     |   28 +
 drivers/mtd/spi-nor/esmt.c                    |   31 +
 drivers/mtd/spi-nor/everspin.c                |   39 +
 drivers/mtd/spi-nor/fujitsu.c                 |   20 +
 drivers/mtd/spi-nor/gigadevice.c              |   74 +
 drivers/mtd/spi-nor/intel.c                   |   35 +
 drivers/mtd/spi-nor/internals.h               |  382 ++
 drivers/mtd/spi-nor/issi.c                    |   67 +
 drivers/mtd/spi-nor/macronix.c                |  105 +
 drivers/mtd/spi-nor/micron-st.c               |  121 +
 drivers/mtd/spi-nor/sfdp.c                    |  912 ++++
 drivers/mtd/spi-nor/spansion.c                |  137 +
 drivers/mtd/spi-nor/spi-nor.c                 | 3880 -----------------
 drivers/mtd/spi-nor/sst.c                     |  132 +
 drivers/mtd/spi-nor/winbond.c                 |  116 +
 drivers/mtd/spi-nor/xilinx.c                  |   97 +
 drivers/mtd/spi-nor/xmc.c                     |   29 +
 include/linux/mtd/spi-nor.h                   |   50 +-
 37 files changed, 4878 insertions(+), 4010 deletions(-)
 create mode 100644 drivers/mtd/spi-nor/atmel.c
 create mode 100644 drivers/mtd/spi-nor/catalyst.c
 create mode 100644 drivers/mtd/spi-nor/controllers/Kconfig
 create mode 100644 drivers/mtd/spi-nor/controllers/Makefile
 rename drivers/mtd/spi-nor/{ => controllers}/aspeed-smc.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/atmel-quadspi.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/cadence-quadspi.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/fsl-quadspi.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/hisi-sfc.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/intel-spi-pci.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/intel-spi-platform.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/intel-spi.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/intel-spi.h (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/mtk-quadspi.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/nxp-spifi.c (100%)
 rename drivers/mtd/spi-nor/{ => controllers}/stm32-quadspi.c (100%)
 create mode 100644 drivers/mtd/spi-nor/core.c
 create mode 100644 drivers/mtd/spi-nor/eon.c
 create mode 100644 drivers/mtd/spi-nor/esmt.c
 create mode 100644 drivers/mtd/spi-nor/everspin.c
 create mode 100644 drivers/mtd/spi-nor/fujitsu.c
 create mode 100644 drivers/mtd/spi-nor/gigadevice.c
 create mode 100644 drivers/mtd/spi-nor/intel.c
 create mode 100644 drivers/mtd/spi-nor/internals.h
 create mode 100644 drivers/mtd/spi-nor/issi.c
 create mode 100644 drivers/mtd/spi-nor/macronix.c
 create mode 100644 drivers/mtd/spi-nor/micron-st.c
 create mode 100644 drivers/mtd/spi-nor/sfdp.c
 create mode 100644 drivers/mtd/spi-nor/spansion.c
 delete mode 100644 drivers/mtd/spi-nor/spi-nor.c
 create mode 100644 drivers/mtd/spi-nor/sst.c
 create mode 100644 drivers/mtd/spi-nor/winbond.c
 create mode 100644 drivers/mtd/spi-nor/xilinx.c
 create mode 100644 drivers/mtd/spi-nor/xmc.c

-- 
2.17.1

^ permalink raw reply	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2018-12-10 11:28 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-07  9:26 [RFC PATCH 00/34] mtd: spi-nor: Move manufacturer/SFDP code out of the core Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 01/34] mtd: spi-nor: Add a new hook to let part specific code tweak the config Boris Brezillon
2018-12-07 16:29   ` Sverdlin, Alexander (Nokia - DE/Ulm)
2018-12-10  9:06     ` Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 02/34] mtd: spi-nor: Add a post SFDP fixup hook for gd25q256 Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 03/34] mtd: spi-nor: Create a ->set_4byte() method Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 04/34] mtd: spi-nor: Add spansion_fixups() Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 05/34] mtd: spi-nor: Rework the SPI NOR lock/unlock logic Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 06/34] mtd: spi-nor: Rework the ->quad_enable() selection logic Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 07/34] mtd: spi-nor: Add a new flag to clear SW protection bits during init Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 08/34] mtd: spi-nor: Add a ->convert_addr() method Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 09/34] mtd: spi-nor: Add a flag to skip spi_nor_setup() Boris Brezillon
2018-12-10  8:30   ` Vignesh R
2018-12-10  8:37     ` Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 10/34] mtd: spi-nor: Add the SPI_NOR_XSR_RDY flag Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 11/34] mtd: spi-nor: Move S3AN fixups to the manufacturer fixups path Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 12/34] mtd: spi-nor: Prepare things for core / manufacturer code split Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 13/34] mtd: spi-nor: Add the concept of SPI NOR manufacturer driver Boris Brezillon
2018-12-10  8:20   ` Vignesh R
2018-12-10  8:35     ` Boris Brezillon
2018-12-10 11:28       ` Vignesh R
2018-12-07  9:26 ` [RFC PATCH 14/34] mtd: spi-nor: Stop prefixing generic functions with a manufacturer name Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 15/34] mtd: spi-nor: Expose some functions to manufacturer drivers Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 16/34] mtd: spi-nor: Move Atmel bits out of core.c Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 17/34] mtd: spi-nor: Move Eon " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 18/34] mtd: spi-nor: Move ESMT " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 19/34] mtd: spi-nor: Move Everspin " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 20/34] mtd: spi-nor: Move Fujitsu bits out of spi-nor-core.c Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 21/34] mtd: spi-nor: Move GigaDevice bits out of core.c Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 22/34] mtd: spi-nor: Move Intel " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 23/34] mtd: spi-nor: Move ISSI " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 24/34] mtd: spi-nor: Move Macronix " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 25/34] mtd: spi-nor: Move Micron/ST " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 26/34] mtd: spi-nor: Move Spansion " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 27/34] mtd: spi-nor: Move SST " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 28/34] mtd: spi-nor: Move Winbond " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 29/34] mtd: spi-nor: Move Catalyst " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 30/34] mtd: spi-nor: Move Xilinx " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 31/34] mtd: spi-nor: Move XMC " Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 32/34] mtd: spi-nor: Get rid of the now empty spi_nor_ids[] table Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 33/34] mtd: spi-nor: Move SFDP parsing code out of core.c Boris Brezillon
2018-12-07  9:26 ` [RFC PATCH 34/34] mtd: spi-nor: Add sfdp fixups hooks Boris Brezillon
2018-12-07 16:29   ` Sverdlin, Alexander (Nokia - DE/Ulm)
2018-12-10  9:12     ` Boris Brezillon

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.