mbox series

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

Message ID 20211207140254.87681-1-tudor.ambarus@microchip.com (mailing list archive)
Headers show
Series mtd: spi-nor: Clean params init | expand

Message

Tudor Ambarus Dec. 7, 2021, 2:02 p.m. UTC
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(-)

Comments

Tudor Ambarus Dec. 7, 2021, 3:07 p.m. UTC | #1
On Tue, 7 Dec 2021 16:02:40 +0200, Tudor Ambarus wrote:
> 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)
> 
> [...]

Applied to spi-nor/next, thanks!

[01/14] mtd: spi-nor: Fix mtd size for s3an flashes
        https://git.kernel.org/mtd/c/f656b419d41a
[02/14] mtd: spi-nor: core: Don't use mtd_info in the NOR's probe sequence of calls
        https://git.kernel.org/mtd/c/eb726c322020
[03/14] mtd: spi-nor: Introduce spi_nor_set_mtd_info()
        https://git.kernel.org/mtd/c/ff67592cbdfc
[04/14] mtd: spi-nor: core: Call spi_nor_post_sfdp_fixups() only when SFDP is defined
        https://git.kernel.org/mtd/c/5273cc6df984
[05/14] mtd: spi-nor: core: Introduce flash_info mfr_flags
        https://git.kernel.org/mtd/c/7683b39d6030
[06/14] mtd: spi-nor: Rework the flash_info flags
        https://git.kernel.org/mtd/c/ec1c0e996035
[07/14] mtd: spi-nor: Introduce spi_nor_init_flags()
        https://git.kernel.org/mtd/c/5429300db98c
[08/14] mtd: spi-nor: Introduce spi_nor_init_fixup_flags()
        https://git.kernel.org/mtd/c/a1ede1cce493
[09/14] mtd: spi-nor: core: Init all flash parameters based on SFDP where possible
        https://git.kernel.org/mtd/c/5dabf5770f7d
[10/14] mtd: spi-nor: core: Move spi_nor_set_addr_width() in spi_nor_setup()
        https://git.kernel.org/mtd/c/b7ed1a3731a9
[11/14] mtd: spi-nor: winbond: w25q256jvm: Init flash based on SFDP
        https://git.kernel.org/mtd/c/1c513c986b0a
[12/14] mtd: spi-nor: spansion: s25fl256s0: Skip SFDP parsing
        https://git.kernel.org/mtd/c/5eefc2dc0319
[13/14] mtd: spi-nor: gigadevice: gd25q256: Init flash based on SFDP
        https://git.kernel.org/mtd/c/047275f7de18
[14/14] mtd: spi-nor: issi: is25lp256: Init flash based on SFDP
        https://git.kernel.org/mtd/c/22bfe94528d7

Best regards,