[PATCH v2 0/4] power: reset: add NVMEM recorder provider for PSCRR

Faruque Ansari <[email protected]>
Newsgroups org.kernel.vger.linux-watchdog,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pm
Message-ID <[email protected]>
The PSCRR framework[1] currently does not provide a recorder provider
capable of persisting power state change reasons across power cycles.

This series extends the PSCRR framework[1] with support for an
NVMEM-cell recorder provider, integrating PSCRR-recorded power state
change reasons with the NVMEM subsystem.

The recorder writes the power state change reason into a small NVMEM cell
(e.g. a PMIC SDAM byte or RTC scratch register) before shutdown or reset,
so the cause survives a power cycle and is available via
/sys/kernel/pscrr/ on the next boot.

Only the NVMEM-cell provider is included here. The PMIC hardware-register
provider will be submitted as a separate series.

Change in v2:
	- Add reviewers to To/Cc list.
	- Update patch 1/4:
	   * Rename DT node from pscr-reason to reboot-reason.
	   * Update DT binding example to use fixed-layout NVMEM layout.
	   * Add reboot_reason_persist NVMEM cell under fixed-layout.
	   * Update Qualcomm DTS example accordingly.
	- update patch 2/4 based on Uwe Kleine-König feedback:
	   * Remove unnecessary #include <linux/mod_devicetable.h>
	-v1-link: [2]

[1] https://lore.kernel.org/lkml/[email protected]/
[2] https://lore.kernel.org/all/[email protected]/

Signed-off-by: Faruque Ansari <[email protected]>
---
Faruque Ansari (4):
      dt-bindings: power: reset: add PSCRR NVMEM recorder binding
      power: reset: add PSCRR NVMEM recorder
      nvmem: provide consumer access to cell size metrics
      arm64: dts: qcom: lemans: Add PSCRR NVMEM recorder node

 .../bindings/power/reset/pscrr-nvmem.yaml          |  59 ++++++++
 MAINTAINERS                                        |   1 +
 arch/arm64/boot/dts/qcom/lemans-pmics.dtsi         |  16 +++
 drivers/nvmem/core.c                               |  29 ++++
 drivers/power/reset/pscrr/Kconfig                  |  14 ++
 drivers/power/reset/pscrr/Makefile                 |   1 +
 drivers/power/reset/pscrr/pscrr-nvmem.c            | 154 +++++++++++++++++++++
 include/linux/nvmem-consumer.h                     |   7 +
 8 files changed, 281 insertions(+)
---
base-commit: be461b2185ea3ff6d9c92deedcee0a62a57e1332
change-id: 20260806-pscrr-provider-b9f8f451701e

Best regards,
--  
Faruque Ansari <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.