Hi Srinivas,
On Tue, Sep 15, 2020 at 03:41:13PM +0300, Vadym Kochan wrote:
This series adds cells parser for the ONIE TLV attributes which are
stored on NVMEM device. It adds possibility to read the mac address (and
other info) by other drivers.
Because ONIE stores info in TLV format it should be parsed first and
then register the cells. Current NVMEM API allows to register cell
table with known cell's offset which is not guaranteed in case of TLV.
To make it properly handled the NVMEM parser object is introduced. The
parser needs to be registered before target NVMEM device is registered.
During the registration of NVMEM device the parser is called to parse
the device's cells and reister the cell table.
Vadym Kochan (3):
nvmem: core: introduce cells parser
nvmem: add ONIE nvmem cells parser
dt-bindings: nvmem: add description for ONIE cells parser
.../bindings/nvmem/onie,nvmem-cells.txt | 11 +
drivers/nvmem/Kconfig | 9 +
drivers/nvmem/Makefile | 3 +
drivers/nvmem/core.c | 80 ++++
drivers/nvmem/onie-cells.c | 370 ++++++++++++++++++
include/linux/nvmem-provider.h | 30 ++
6 files changed, 503 insertions(+)
create mode 100644 Documentation/devicetree/bindings/nvmem/onie,nvmem-cells.txt
create mode 100644 drivers/nvmem/onie-cells.c
--
2.17.1
This is a NO-NO as onie is not a real provider here, at24 is the actual nvmem provider in your case.
I sent a newer version than this one which actually registers nvmem provider
and does not require changes in the core.c
Thanks,
Vadym Kochan