[PATCH v6 00/14] mtd: spi-nor: Clean params init

Tudor Ambarus tudor.ambarus at microchip.com
Tue Dec 7 06:02:40 PST 2021


Clean spi_nor_scan() and the flash parameters initialization code. 
Reworked how the flags are handled for the flash_info entries.
Tested all the flashes from patch set.

Changes in v6:
patch 2/14: drop Fixes tag
patch 6/14: fix alignment of flash declarations in micron-st,
            spansion, and sst drivers
patch 9/14:
- fix missing variable in if condition in spi_nor_init_params_deprecated()
- call spi_nor_no_sfdp_init_params() if(nor->info->no_sfdp_flags & SPI_NOR_SKIP_SFDP)
- remove redundant !(nor->info->no_sfdp_flags & SPI_NOR_SKIP_SFDP) check
in spi_nor_init_params_deprecated()
- update description of spi_nor_init_params() with spi_nor_no_sfdp_init_params()
- add Pratyush's R-b tag
patches 11, 12, 13, 14: dump jedec_id, manufacturer partname and sfdp (including
sfdp sha1sum)

Changes in v5:
- new patch 0001-mtd-spi-nor-Fix-mtd-size-for-s3an-flashes.patch
- update comment from
  '[PATCH v4 02/13] mtd: spi-nor: Introduce spi_nor_set_mtd_info()',
  s/'No mtd_info fields are used up to this point.'/
    'No mtd_info fields should be used up to this point.'
- collect R-b tags

Changes in v4:
- new patch:
  "mtd: spi-nor: core: Don't use mtd_info in the NOR's probe sequence of calls"
- move spi_nor_post_sfdp_fixups() in drivers/mtd/spi-nor/sfdp.c 
- Reworked flash_info flags. nor->info->flags are split in new flash_info
  members: parse_sfdp, flags, no_sfdp_flags, fixup_flags and mfr_flags.
- remove roll-back mechanism for flashes that use PARSE_SFDP.
- dropped R-b tags where the new version of the patch modified how things
  are handled
- v4 changes log in each commit after ---

Changes in v3:
- move late_init() in struct spi_nor_fixups and update patches accordingly.     
R-b tags were dropped.
- new patch "mtd: spi-nor: sst: Get rid of SST_WRITE flash_info flag"
moves manufacturer specific flag out of the core.
- update methods description to make it clear who sets when
- introduce flash_info flag masks to make it clear when one should be set.
- rework "parse SFDP first idea".


Tudor Ambarus (14):
  mtd: spi-nor: Fix mtd size for s3an flashes
  mtd: spi-nor: core: Don't use mtd_info in the NOR's probe sequence of
    calls
  mtd: spi-nor: Introduce spi_nor_set_mtd_info()
  mtd: spi-nor: core: Call spi_nor_post_sfdp_fixups() only when SFDP is
    defined
  mtd: spi-nor: core: Introduce flash_info mfr_flags
  mtd: spi-nor: Rework the flash_info flags
  mtd: spi-nor: Introduce spi_nor_init_flags()
  mtd: spi-nor: Introduce spi_nor_init_fixup_flags()
  mtd: spi-nor: core: Init all flash parameters based on SFDP where
    possible
  mtd: spi-nor: core: Move spi_nor_set_addr_width() in spi_nor_setup()
  mtd: spi-nor: winbond: w25q256jvm: Init flash based on SFDP
  mtd: spi-nor: spansion: s25fl256s0: Skip SFDP parsing
  mtd: spi-nor: gigadevice: gd25q256: Init flash based on SFDP
  mtd: spi-nor: issi: is25lp256: Init flash based on SFDP

 drivers/mtd/spi-nor/atmel.c      |  71 +++--
 drivers/mtd/spi-nor/catalyst.c   |  15 +-
 drivers/mtd/spi-nor/core.c       | 503 +++++++++++++++++--------------
 drivers/mtd/spi-nor/core.h       | 206 ++++++++-----
 drivers/mtd/spi-nor/eon.c        |  33 +-
 drivers/mtd/spi-nor/esmt.c       |  15 +-
 drivers/mtd/spi-nor/everspin.c   |  12 +-
 drivers/mtd/spi-nor/fujitsu.c    |   3 +-
 drivers/mtd/spi-nor/gigadevice.c |  57 ++--
 drivers/mtd/spi-nor/intel.c      |  12 +-
 drivers/mtd/spi-nor/issi.c       |  60 ++--
 drivers/mtd/spi-nor/macronix.c   | 105 ++++---
 drivers/mtd/spi-nor/micron-st.c  | 210 +++++++------
 drivers/mtd/spi-nor/otp.c        |   2 +-
 drivers/mtd/spi-nor/sfdp.c       |  20 ++
 drivers/mtd/spi-nor/spansion.c   | 158 +++++-----
 drivers/mtd/spi-nor/sst.c        |  88 ++++--
 drivers/mtd/spi-nor/swp.c        |   2 +-
 drivers/mtd/spi-nor/winbond.c    | 161 +++++-----
 drivers/mtd/spi-nor/xilinx.c     |   2 +-
 drivers/mtd/spi-nor/xmc.c        |  10 +-
 21 files changed, 986 insertions(+), 759 deletions(-)

-- 
2.25.1




More information about the linux-mtd mailing list