lkml.org 
[lkml]   [2016]   [Feb]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[RFC 0/3] Proposed extensions for NVMEM
Date
Hello,

This RFC introduces two new drivers to NVMEM subsytem. First driver,
'nvmem-blob', serves the purpose of exposing data, embedded in DTB,
via NVMEM consumer API. Second, 'nvmem-composite', allows the user to
combin a number of NVMEM cells (or parts of them) into a single
continuos "blob" of data presented to the rest of the system as a
regular NVMEM device.

The intent of this RFC is to solicit feedback about the approach,
binding or if these features should be accepted upstream in general.

I originally proposed this extentions as a part of Barebox project (Barebox
borrows a lot of concepts from Linux kernel and adopting NVMEM
subsystem was being discussed), in order to facilitate usage of NVMEM
to initialize source of MAC address for a paticular Ethernet adapter
(Barebox would read that value and fixup DT blob with appropriate
value as a part of booting Linux). However the drivers should be
generic enough to not be tied to that case.

Please bear in mind the the code included is a very rough draft and a
lot of error checking/handling code in is was stubbed out.

Any feedback is welcome.

Thank you,
Andrey Smirnov

Andrey Smirnov (3):
nvmem: Add 'of_nvmem_cell_from_device_node()'
nvmem: Add 'nvmem-blob' driver
nvmem: Add 'nvmem-composite' driver

Documentation/devicetree/bindings/nvmem/blob.txt | 35 ++++
.../devicetree/bindings/nvmem/composite.txt | 44 ++++
drivers/nvmem/Makefile | 2 +
drivers/nvmem/blob.c | 132 ++++++++++++
drivers/nvmem/composite.c | 228 +++++++++++++++++++++
drivers/nvmem/core.c | 44 ++--
include/linux/nvmem-consumer.h | 7 +
7 files changed, 479 insertions(+), 13 deletions(-)
create mode 100644 Documentation/devicetree/bindings/nvmem/blob.txt
create mode 100644 Documentation/devicetree/bindings/nvmem/composite.txt
create mode 100644 drivers/nvmem/blob.c
create mode 100644 drivers/nvmem/composite.c

--
2.5.0

\
 
 \ /
  Last update: 2016-02-22 21:21    [W:0.049 / U:0.088 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site