[PATCH v3 0/3] mtd: Add support for reading MTD devices via the nvmem API

From: Alban Bedel
Date: Sat Mar 24 2018 - 19:25:54 EST


Hi all,

this series add support for reading MTD devices via the nvmem API, this
is mostly needed on embedded devices where things like MAC address and
calibration data is often stored in a partition on the main flash device.

Adding support for the nvmem API to the MTD core is trivial, however there
is a clash in the OF binding used by both subsystems. The current nvmem
binding expect nvmem cell to be subnode of the nvmem device, without any
compatible string. But MTD devices used a similar scheme for partition in
the past, so a subnode from an MTD device could be a partition using the
old binding or an nvmem cell.

To avoid this problem we update the nvmem cell binding to use a 'nvmem-cells'
subnode with compatible string to hold the list of nvmem cells. This new
binding make sure that any kind of device can be used as nvmem provider.

Alban Bedel (3):
nvmem: Update the OF binding to use a subnode for the cells list
doc: bindings: Add bindings documentation for mtd nvmem
mtd: Add support for reading MTD devices via the nvmem API

.../devicetree/bindings/nvmem/mtd-nvmem.txt | 27 ++++++++++
Documentation/devicetree/bindings/nvmem/nvmem.txt | 55 +++++++++++++-------
drivers/mtd/Kconfig | 1 +
drivers/mtd/mtdcore.c | 59 ++++++++++++++++++++++
drivers/nvmem/core.c | 10 ++++
include/linux/mtd/mtd.h | 2 +
6 files changed, 137 insertions(+), 17 deletions(-)
create mode 100644 Documentation/devicetree/bindings/nvmem/mtd-nvmem.txt

--
2.7.4