[PATCH v3 00/20] [PATCH v3 00/20] nvmem: Layouts support

From: Miquel Raynal
Date: Wed Mar 08 2023 - 10:32:12 EST


Hello,

This is a fully featured series with hopefully all what is needed for
upstream acceptance, ie:
* A bit of OF cleanup
* Full nvmem layout support merging Michael's and my patches
* Only the fixes not applying to this series have been kept "un merged"
* Support for SL28 VPD and ONIE TLV table layouts
* Layouts can be compiled as modules

A linux-0day branch for kernel test robot has been pushed to get wider
testing.

In order for this series to work out-of-the-box it requires to be
applied on top of Michael Walle's mtd fixes series. There is an
immutable tag on the mtd repository available:

----------------------------------------------------------------
The following changes since commit fe15c26ee26efa11741a7b632e9f23b01aca4cc6:

Linux 6.3-rc1 (2023-03-05 14:52:03 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/mtd/core-fixes-before-nvmem-layouts-for-6.4

for you to fetch changes up to 281f7a6c1a33fffcde32001bacbb4f672140fbf9:

mtd: core: prepare mtd_otp_nvmem_add() to handle -EPROBE_DEFER (2023-03-08 14:31:49 +0100)
----------------------------------------------------------------

So to summarize:
* Rob's feedback is welcome on the remaining un-acked OF patche
* Greg's and Srinivas feedback is welcome on the nvmem patches
* If everybody agrees I expect the full series to be applied rather
early by Srinivas on top of the -rc he wants.
* Once time for the final PR I expect Greg to merge the immutable tag
above with Michael's patches before taking this series in.

Thanks,
Miquèl

Changes in v3:
* Rebased on top of nvmem-next and handled a few conflicts.
* Minor changes in the OF commit logs.
* Fixed a missing header reported by kernel test robot.
* Mention immutable tag.
* Collected more tags.
* Fix of/module.c license.

Changes in v2:
* Included all initial core nvmem changes.
* Merged all the relevant fixes.
* Updated the commit logs of the Fixes tag when relevant.
* Followed Rob advises to migrate the module related helpers into
of/module.c and get the useless helpers out of of_device.c
* Added my Signed-off-by when relevant.
* Collected tags.

Colin Ian King (1):
dt-bindings: nvmem: Fix spelling mistake "platforn" -> "platform"

Michael Walle (8):
nvmem: core: introduce NVMEM layouts
nvmem: core: add per-cell post processing
nvmem: core: allow to modify a cell before adding it
nvmem: imx-ocotp: replace global post processing with layouts
nvmem: cell: drop global cell_post_process
nvmem: core: provide own priv pointer in post process callback
nvmem: layouts: sl28vpd: Add new layout driver
MAINTAINERS: add myself as sl28vpd nvmem layout driver

Miquel Raynal (11):
of: Fix modalias string generation
of: Update of_device_get_modalias()
of: Rename of_modalias_node()
of: Move of_modalias() to module.c
of: Move the request module helper logic to module.c
usb: ulpi: Use of_request_module()
of: device: Kill of_device_request_module()
nvmem: core: handle the absence of expected layouts
nvmem: core: request layout modules loading
nvmem: layouts: onie-tlv: Add new layout driver
MAINTAINERS: Add myself as ONIE tlv NVMEM layout maintainer

.../nvmem/layouts/onie,tlv-layout.yaml | 2 +-
Documentation/driver-api/nvmem.rst | 15 +
MAINTAINERS | 12 +
drivers/acpi/bus.c | 7 +-
drivers/gpu/drm/drm_mipi_dsi.c | 2 +-
drivers/hsi/hsi_core.c | 2 +-
drivers/i2c/busses/i2c-powermac.c | 2 +-
drivers/i2c/i2c-core-of.c | 2 +-
drivers/nvmem/Kconfig | 4 +
drivers/nvmem/Makefile | 1 +
drivers/nvmem/core.c | 160 ++++++++++-
drivers/nvmem/imx-ocotp.c | 30 +-
drivers/nvmem/layouts/Kconfig | 23 ++
drivers/nvmem/layouts/Makefile | 7 +
drivers/nvmem/layouts/onie-tlv.c | 257 ++++++++++++++++++
drivers/nvmem/layouts/sl28vpd.c | 165 +++++++++++
drivers/of/Makefile | 2 +-
drivers/of/base.c | 18 +-
drivers/of/device.c | 75 +----
drivers/of/module.c | 74 +++++
drivers/spi/spi.c | 4 +-
drivers/usb/common/ulpi.c | 2 +-
include/linux/nvmem-consumer.h | 7 +
include/linux/nvmem-provider.h | 66 ++++-
include/linux/of.h | 18 +-
include/linux/of_device.h | 6 -
26 files changed, 851 insertions(+), 112 deletions(-)
create mode 100644 drivers/nvmem/layouts/Kconfig
create mode 100644 drivers/nvmem/layouts/Makefile
create mode 100644 drivers/nvmem/layouts/onie-tlv.c
create mode 100644 drivers/nvmem/layouts/sl28vpd.c
create mode 100644 drivers/of/module.c

--
2.34.1