[PATCH 00/13] nvmem: misc enhancements

Ahmad Fatoum a.fatoum at pengutronix.de
Fri Jun 18 20:45:03 PDT 2021


Series implements some of the new NVMEM bindings:

- New providers:
  - nvmem-cells (for MTD partitions)
  - nvmem-rmem (memory regions passed by previous boot stages)

- New consumers:
  - Network devices: Unlike Linux, we do that for all drivers
    in generic code. This is done postenvironment, so network drivers,
    board code and other (OTP) drivers are not overridden.
  - nvmem-reboot-mode: To go along with syscon-reboot-mode
  - nvmem command: This one only prints registered devices for now

And changes sandbox to make use of it.

Ahmad Fatoum (13):
  nvmem: bsec: remove unused, left-over, struct member
  nvmem: treat devices without nvmem_bus::write as read only
  nvmem: add support for new read-only memory (rmem) binding
  nvmem: add support for nvmem-cells binding
  sandbox: use nvmem on top of stickypage for reset reason
  power: reset: port Linux generic NVMEM reboot mode driver
  sandbox: use nvmem-reboot-mode instead of syscon-reboot-mode
  sandbox: dts: fix unit-address for state partition
  nvmem: add command to list nvmem devices
  sandbox: hostfile: move initcall to earlier postcore level
  of: of_net: sync of_get_mac_address with Linux for NVMEM support
  net: consult device tree for ethernet address in NVMEM as fall-back
  sandbox: ship sample environment

 .gitignore                                    |   1 +
 Makefile                                      |   2 +-
 arch/sandbox/Makefile                         |   8 ++
 arch/sandbox/board/env/init/state             |  13 ---
 arch/sandbox/board/hostfile.c                 |  21 +++--
 arch/sandbox/board/power.c                    |  33 +++----
 arch/sandbox/board/stickypage.bin             | Bin 0 -> 4097 bytes
 arch/sandbox/board/watchdog.c                 |  20 ++---
 arch/sandbox/configs/sandbox_defconfig        |   2 +-
 arch/sandbox/dts/sandbox.dts                  |  36 ++++++--
 .../sandbox/mach-sandbox/include/mach/linux.h |   1 +
 arch/sandbox/os/common.c                      |  83 ++++++++----------
 commands/Kconfig                              |   7 ++
 commands/Makefile                             |   1 +
 commands/nvmem.c                              |  24 +++++
 drivers/nvmem/Kconfig                         |   6 ++
 drivers/nvmem/Makefile                        |   4 +-
 drivers/nvmem/bsec.c                          |   1 -
 drivers/nvmem/core.c                          |  25 ++++--
 drivers/nvmem/partition.c                     |  40 +++++++++
 drivers/nvmem/rmem.c                          |  67 ++++++++++++++
 drivers/of/base.c                             |  21 ++++-
 drivers/of/of_net.c                           |  78 +++++++++++++---
 drivers/of/partition.c                        |   7 ++
 drivers/power/reset/Kconfig                   |  10 +++
 drivers/power/reset/Makefile                  |   1 +
 drivers/power/reset/nvmem-reboot-mode.c       |  83 ++++++++++++++++++
 fs/devfs-core.c                               |   2 +-
 include/driver.h                              |   3 +
 include/linux/nvmem-consumer.h                |   2 +
 include/linux/nvmem-provider.h                |   8 ++
 include/of_net.h                              |  21 ++++-
 net/eth.c                                     |  24 +++++
 33 files changed, 521 insertions(+), 134 deletions(-)
 delete mode 100644 arch/sandbox/board/env/init/state
 create mode 100644 arch/sandbox/board/stickypage.bin
 create mode 100644 commands/nvmem.c
 create mode 100644 drivers/nvmem/partition.c
 create mode 100644 drivers/nvmem/rmem.c
 create mode 100644 drivers/power/reset/nvmem-reboot-mode.c

-- 
2.29.2




More information about the barebox mailing list