[PATCH v2 0/5] Expose RPi4's bootloader configuration

From: Nicolas Saenz Julienne
Date: Fri Dec 18 2020 - 10:44:35 EST


Soon to be released versions of RPi4's firmware will take of care
passing their bootloader's configuration[1] to the OS by copying it into
memory and creating a reserved memory node in the board's DT. By
modeling this reserved memory node as an nvmem device using
'nvmem-rmem', which this series introduces, user-space applications will
be able to query this information through nvmem's sysfs interface.

An alternative approach, less nice IMO, would be to create a
platform-specific 'soc' driver.

Regards,
Nicolas

[1] https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2711_bootloader_config.md

---

Changes since v1:
- Avoid the reserved-memory indirection by integrating the nvmem driver
into the reserved memory node.

Nicolas Saenz Julienne (5):
dt-bindings: nvmem: Add bindings for rmem driver
nvmem: Add driver to expose reserved memory as nvmem
ARM: dts: bcm2711: Add reserved memory template to hold firmware
configuration
arm64: defconfig: Enable nvmem's rmem driver
ARM: multi_v7_defconfig: Enable nvmem's rmem driver

.../devicetree/bindings/nvmem/rmem.yaml | 49 ++++++++++
arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 17 ++++
arch/arm/configs/multi_v7_defconfig | 1 +
arch/arm64/configs/defconfig | 1 +
drivers/nvmem/Kconfig | 8 ++
drivers/nvmem/Makefile | 2 +
drivers/nvmem/rmem.c | 97 +++++++++++++++++++
drivers/of/platform.c | 1 +
8 files changed, 176 insertions(+)
create mode 100644 Documentation/devicetree/bindings/nvmem/rmem.yaml
create mode 100644 drivers/nvmem/rmem.c

--
2.29.2