mbox

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

Message ID 20230308153200.682248-1-miquel.raynal@bootlin.com
State New
Headers show

Pull-request

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

Message

Miquel Raynal March 8, 2023, 3:31 p.m. UTC
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

Comments

Srinivas Kandagatla March 14, 2023, 11:28 a.m. UTC | #1
On 08/03/2023 15:31, Miquel Raynal wrote:
> 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.

Applied this series to nvmem tree.


thanks,
srini



> * 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
>