Hello Linus,
This is the MTD PR for v6.7-rc1.
Thanks,
Miquèl
The following changes since commit ce9ecca0238b140b88f43859b211c9fdfd8e5b70:
Linux 6.6-rc2 (2023-09-17 14:40:24 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/mtd/for-6.7
for you to fetch changes up to 6d55d31e927eec68ba6db344688044ed253223e9:
Merge tag 'nand/for-6.7' into mtd/next (2023-11-04 11:50:34 +0100)
----------------------------------------------------------------
The main load of changes is related to Uwe's work converting platform
remove callbacks to return void. Comes next (in number of changes) Kees'
additional structures annotations to improve the sanitizers. The usual
amount of cleanups apply.
About the more substancial contribution, one main function of the
partitions core could return an error which was not checked, this is now
fixed. On the bindings side, fixed partitions can now have a compression
property. Finally, an erroneous situation is now always avoided in the
MAP RAM driver.
* CFI
A several years old byte swap has been fixed.
* NAND
The subsystem has, as usual, seen a bit of cleanup being done this
cycle, typically return values of platform_get_irq() and
devm_kasprintf(). There is also a better ECC check in the Arasan
driver. This comes with smaller misc changes.
In the SPI-NAND world there is now support for Foresee F35SQA002G,
Winbond W25N and XTX XT26 chips.
* SPI NOR
For SPI NOR we cleaned the flash info entries in order to have
them slimmer and self explanatory. In order to make the entries
as slim as possible, we introduced sane default values so that
the actual flash entries don't need to specify them. We now use
a flexible macro to specify the flash ID instead of the previous
INFOx() macros that had hardcoded ID lengths.
Instead of:
- { "w25q512nwm", INFO(0xef8020, 0, 64 * 1024, 0)
- OTP_INFO(256, 3, 0x1000, 0x1000) },
We now use:
+ .id = SNOR_ID(0xef, 0x80, 0x20),
+ .name = "w25q512nwm",
+ .otp = SNOR_OTP(256, 3, 0x1000, 0x1000),
We also removed some flash entries: the very old Catalyst
SPI EEPROMs that were introduced once with the SPI-NOR subsystem,
and a Fujitsu MRAM. Both should use the at25 EEPROM driver.
The latter even has device tree bindings for the at25 driver.
We made sure that the conversion didn't introduce any unwanted
changes by comparing the .rodata segment before and after the
conversion. The patches landed in linux-next immediately after
v6.6-rc2, we haven't seen any regressions yet.
Apart of the autumn cleaning we introduced a new flash entry,
at25ff321a, and added block protection support for mt25qu512a.
----------------------------------------------------------------
Amit Kumar Mahapatra (1):
mtd: rawnand: arasan: Include ECC syndrome along with in-band data while checking for ECC failure
Andy Shevchenko (1):
mtd: rawnand: Remove unused of_gpio.h inclusion
Arseniy Krasnov (1):
mtd: rawnand: remove 'nand_exit_status_op()' prototype
Bruce Suen (1):
mtd: spinand: Add support for XTX XT26xxxDxxxxx
Christophe JAILLET (1):
mtd: rawnand: rockchip: Use struct_size()
Denis Arefev (1):
mtd: lpddr_cmds: Add literal suffix
Kees Cook (11):
mtd: Annotate struct lpddr_private with __counted_by
mtd: cfi: Annotate struct cfi_private with __counted_by
mtd: rawnand: atmel: Annotate struct atmel_nand with __counted_by
mtd: rawnand: denali: Annotate struct denali_chip with __counted_by
mtd: rawnand: ingenic: Annotate struct ingenic_nfc with __counted_by
mtd: rawnand: marvell: Annotate struct marvell_nand_chip with __counted_by
mtd: rawnand: meson: Annotate struct meson_nfc_nand_chip with __counted_by
mtd: rawnand: renesas: Annotate struct rnand_chip with __counted_by
mtd: rawnand: sunxi: Annotate struct sunxi_nand_chip with __counted_by
mtd: rawnand: Annotate struct mtk_nfc_nand_chip with __counted_by
mtd: rawnand: cadence: Annotate struct cdns_nand_chip with __counted_by
Linus Walleij (1):
mtd: cfi_cmdset_0001: Byte swap OTP info
Mamta Shukla (2):
mtd: spi-nor: micron-st: enable lock/unlock for mt25qu512a
mtd: spi-nor: micron-st: use SFDP table for mt25qu512a
Martin Kurbanov (1):
mtd: spinand: add support for FORESEE F35SQA002G
Michael Walle (41):
mtd: spi-nor: remove catalyst 'flashes'
mtd: spi-nor: remove Fujitsu MB85RS1MT support
mtd: spi-nor: xilinx: use SPI_NOR_ID() in S3AN_INFO()
mtd: spi-nor: xilinx: remove addr_nbytes from S3AN_INFO()
mtd: spi-nor: convert .n_sectors to .size
mtd: spi-nor: default page_size to 256 bytes
mtd: spi-nor: store .n_banks in struct spi_nor_flash_parameter
mtd: spi-nor: default .n_banks to 1
mtd: spi-nor: push 4k SE handling into spi_nor_select_uniform_erase()
mtd: spi-nor: make sector_size optional
mtd: spi-nor: drop .parse_sfdp
mtd: spi-nor: introduce (temporary) INFO0()
mtd: spi-nor: move the .id and .id_len into an own structure
mtd: spi-nor: rename .otp_org to .otp and make it a pointer
mtd: spi-nor: add SNOR_ID() and SNOR_OTP()
mtd: spi-nor: remove or move flash_info comments
mtd: spi-nor: atmel: convert flash_info to new format
mtd: spi-nor: eon: convert flash_info to new format
mtd: spi-nor: esmt: convert flash_info to new format
mtd: spi-nor: everspin: convert flash_info to new format
mtd: spi-nor: gigadevice: convert flash_info to new format
mtd: spi-nor: intel: convert flash_info to new format
mtd: spi-nor: issi: convert flash_info to new format
mtd: spi-nor: macronix: convert flash_info to new format
mtd: spi-nor: micron-st: convert flash_info to new format
mtd: spi-nor: spansion: convert flash_info to new format
mtd: spi-nor: sst: convert flash_info to new format
mtd: spi-nor: winbond: convert flash_info to new format
mtd: spi-nor: xilinx: use new macros in S3AN_INFO()
mtd: spi-nor: xmc: convert flash_info to new format
mtd: spi-nor: atmel: sort flash_info database
mtd: spi-nor: eon: sort flash_info database
mtd: spi-nor: gigadevice: sort flash_info database
mtd: spi-nor: issi: sort flash_info database
mtd: spi-nor: macronix: sort flash_info database
mtd: spi-nor: micron-st: sort flash_info database
mtd: spi-nor: spansion: sort flash_info database
mtd: spi-nor: sst: sort flash_info database
mtd: spi-nor: winbond: sort flash_info entries
mtd: spi-nor: atmel: drop duplicate entry
mtd: spi-nor: core: get rid of the INFOx() macros
Miquel Raynal (2):
Merge tag 'spi-nor/for-6.7' into mtd/next
Merge tag 'nand/for-6.7' into mtd/next
Nicolas Ferre (1):
mtd: spi-nor: atmel: add at25ff321a entry
Rafał Miłecki (1):
mtd: mtdpart: check for subpartitions parsing result
Rob Herring (1):
mtd: Use device_get_match_data()
Shivamurthy Shastri (1):
mtd: map_ram: prevent use of point and unpoint when NO_XIP is set
Simon Glass (1):
dt-bindings: mtd: fixed-partitions: Add compression property
Sridharan S N (1):
mtd: spinand: winbond: add support for serial NAND flash
Uwe Kleine-König (18):
mtd: bcm47xxsflash: Convert to platform remove callback returning void
mtd: docg3: Convert to platform remove callback returning void
mtd: phram: Convert to platform remove callback returning void
mtd: powernv_flash: Convert to platform remove callback returning void
mtd: spear_smi: Convert to platform remove callback returning void
mtd: st_spi_fsm: Convert to platform remove callback returning void
mtd: hyperbus: hbmc-am654: Convert to platform remove callback returning void
mtd: hyperbus: rpc-if: Convert to platform remove callback returning void
mtd: lpddr2_nvm: Convert to platform remove callback returning void
mtd: maps: lantiq-flash: Convert to platform remove callback returning void
mtd: maps: physmap-core: Convert to platform remove callback returning void
mtd: maps: plat-ram: Convert to platform remove callback returning void
mtd: maps: pxa2xx-flash: Convert to platform remove callback returning void
mtd: maps: sa1100-flash: Convert to platform remove callback returning void
mtd: maps: sun_uflash: Convert to platform remove callback returning void
mtd: spi-nor: hisi-sfc: Convert to platform remove callback returning void
mtd: spi-nor: nxp-spifi: Convert to platform remove callback returning void
mtd: rawnand: sh_flctl: Convert to module_platform_driver()
Yi Yang (4):
mtd: rawnand: tegra: add missing check for platform_get_irq()
mtd: rawnand: omap2: Fix check 0 for platform_get_irq()
mtd: rawnand: intel: check return value of devm_kasprintf()
mtd: rawnand: meson: check return value of devm_kasprintf()
ZhaoLong Wang (1):
mtd: Add WARN_ON_ONCE() to mtd_read() to check the return value
Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml | 19 +++++
drivers/mtd/chips/cfi_cmdset_0001.c | 20 ++++-
drivers/mtd/chips/map_ram.c | 8 +-
drivers/mtd/devices/bcm47xxsflash.c | 6 +-
drivers/mtd/devices/docg3.c | 5 +-
drivers/mtd/devices/phram.c | 6 +-
drivers/mtd/devices/powernv_flash.c | 6 +-
drivers/mtd/devices/spear_smi.c | 6 +-
drivers/mtd/devices/st_spi_fsm.c | 6 +-
drivers/mtd/hyperbus/hbmc-am654.c | 6 +-
drivers/mtd/hyperbus/rpc-if.c | 6 +-
drivers/mtd/lpddr/lpddr2_nvm.c | 6 +-
drivers/mtd/lpddr/lpddr_cmds.c | 2 +-
drivers/mtd/maps/lantiq-flash.c | 6 +-
drivers/mtd/maps/physmap-core.c | 15 ++--
drivers/mtd/maps/plat-ram.c | 8 +-
drivers/mtd/maps/pxa2xx-flash.c | 5 +-
drivers/mtd/maps/sa1100-flash.c | 6 +-
drivers/mtd/maps/sun_uflash.c | 6 +-
drivers/mtd/mtdcore.c | 2 +
drivers/mtd/mtdpart.c | 6 +-
drivers/mtd/nand/raw/arasan-nand-controller.c | 2 +-
drivers/mtd/nand/raw/atmel/nand-controller.c | 2 +-
drivers/mtd/nand/raw/cadence-nand-controller.c | 14 ++--
drivers/mtd/nand/raw/denali.h | 2 +-
drivers/mtd/nand/raw/ingenic/ingenic_nand_drv.c | 2 +-
drivers/mtd/nand/raw/intel-nand-controller.c | 10 +++
drivers/mtd/nand/raw/internals.h | 1 -
drivers/mtd/nand/raw/marvell_nand.c | 2 +-
drivers/mtd/nand/raw/meson_nand.c | 5 +-
drivers/mtd/nand/raw/mtk_nand.c | 2 +-
drivers/mtd/nand/raw/nand_base.c | 1 -
drivers/mtd/nand/raw/omap2.c | 8 +-
drivers/mtd/nand/raw/renesas-nand-controller.c | 2 +-
drivers/mtd/nand/raw/rockchip-nand-controller.c | 5 +-
drivers/mtd/nand/raw/sh_flctl.c | 3 +-
drivers/mtd/nand/raw/sunxi_nand.c | 2 +-
drivers/mtd/nand/raw/tegra_nand.c | 4 +
drivers/mtd/nand/raw/vf610_nfc.c | 10 +--
drivers/mtd/nand/raw/xway_nand.c | 1 -
drivers/mtd/nand/spi/Makefile | 2 +-
drivers/mtd/nand/spi/core.c | 1 +
drivers/mtd/nand/spi/foresee.c | 95 ++++++++++++++++++++++
drivers/mtd/nand/spi/winbond.c | 45 +++++++++++
drivers/mtd/nand/spi/xtx.c | 134 +++++++++++++++++++++++++++++++
drivers/mtd/spi-nor/Makefile | 2 -
drivers/mtd/spi-nor/atmel.c | 121 ++++++++++++++++++----------
drivers/mtd/spi-nor/catalyst.c | 24 ------
drivers/mtd/spi-nor/controllers/hisi-sfc.c | 5 +-
drivers/mtd/spi-nor/controllers/nxp-spifi.c | 6 +-
drivers/mtd/spi-nor/core.c | 63 ++++++---------
drivers/mtd/spi-nor/core.h | 140 +++++++++++++++-----------------
drivers/mtd/spi-nor/eon.c | 74 ++++++++++++-----
drivers/mtd/spi-nor/esmt.c | 29 ++++---
drivers/mtd/spi-nor/everspin.c | 28 +++++--
drivers/mtd/spi-nor/fujitsu.c | 21 -----
drivers/mtd/spi-nor/gigadevice.c | 82 +++++++++++--------
drivers/mtd/spi-nor/intel.c | 23 ++++--
drivers/mtd/spi-nor/issi.c | 118 +++++++++++++++++----------
drivers/mtd/spi-nor/macronix.c | 220 ++++++++++++++++++++++++++++++++++----------------
drivers/mtd/spi-nor/micron-st.c | 423 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------
drivers/mtd/spi-nor/spansion.c | 392 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------
drivers/mtd/spi-nor/sst.c | 164 ++++++++++++++++++++++++--------------
drivers/mtd/spi-nor/swp.c | 13 ++-
drivers/mtd/spi-nor/sysfs.c | 6 +-
drivers/mtd/spi-nor/winbond.c | 288 ++++++++++++++++++++++++++++++++++++++++++------------------------
drivers/mtd/spi-nor/xilinx.c | 32 +++-----
drivers/mtd/spi-nor/xmc.c | 19 +++--
include/linux/mtd/cfi.h | 2 +-
include/linux/mtd/qinfo.h | 2 +-
include/linux/mtd/spinand.h | 1 +
71 files changed, 1820 insertions(+), 989 deletions(-)
create mode 100644 drivers/mtd/nand/spi/foresee.c
delete mode 100644 drivers/mtd/spi-nor/catalyst.c
delete mode 100644 drivers/mtd/spi-nor/fujitsu.c
The pull request you sent on Sat, 4 Nov 2023 12:07:18 +0100:
> git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/mtd/for-6.7
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/b1dfbda8636b54cde21f9f5d352fd25c4deff584
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html