Linux Power Management development
 help / color / mirror / Atom feed
From: Faruque Ansari <faruque.ansari@oss.qualcomm.com>
To: Oleksij Rempel <o.rempel@pengutronix.de>
Cc: "Sebastian Reichel" <sre@kernel.org>,
	"Srinivas Kandagatla" <srinivas.kandagatla@linaro.org>,
	"Benson Leung" <bleung@chromium.org>,
	"Tzung-Bi Shih" <tzungbi@kernel.org>,
	"Daniel Lezcano" <daniel.lezcano@linaro.org>,
	kernel@pengutronix.de, linux-kernel@vger.kernel.org,
	"Liam Girdwood" <lgirdwood@gmail.com>,
	"Mark Brown" <broonie@kernel.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	"Zhang Rui" <rui.zhang@intel.com>,
	"Lukasz Luba" <lukasz.luba@arm.com>,
	linux-pm@vger.kernel.org, "Søren Andersen" <san@skov.dk>,
	"Guenter Roeck" <groeck@chromium.org>,
	"Matti Vaittinen" <mazziesaccount@gmail.com>,
	"Ahmad Fatoum" <a.fatoum@pengutronix.de>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	chrome-platform@lists.linux.dev,
	avaneesh.dwivedi@oss.qualcomm.com, umang.chheda@oss.qualcomm.com,
	faiyaz.mohammed@oss.qualcomm.com
Subject: Re: [PATCH v11 0/7] Introduction of PSCR Framework and Related Components
Date: Wed, 1 Jul 2026 18:26:37 +0530	[thread overview]
Message-ID: <4b5321e8-05c8-4f3f-bc22-d3776e008151@oss.qualcomm.com> (raw)
In-Reply-To: <akJaAesz35Ml3iW4@pengutronix.de>

Hi Oleksij,

On 29-Jun-26 5:11 PM, Oleksij Rempel wrote:
> Hi Faruque,
> 
> On Mon, Jun 29, 2026 at 04:44:18PM +0530, Faruque Ansari wrote:
>> On 29-Jun-26 4:40 PM, Faruque Ansari wrote:
>>> Hi Oleksij,
>>>
>>>>
>>>> Hello all,
>>>>
>>>> This patch series introduces the Power State Change Reasons Recording
>>>> (PSCRR) framework and its related components into the kernel. The PSCR
>>>> framework is designed for systems where traditional methods of storing
>>>> power state change reasons, like PMICs or watchdogs, are inadequate. It
>>>> provides a structured way to store reasons for system shutdowns and
>>>> reboots, such as under-voltage or software-triggered events, in
>>>> non-volatile hardware storage.
>>>>
>>>> These changes are critical for systems requiring detailed postmortem
>>>> analysis and where immediate power-down scenarios limit traditional
>>>> storage options. The framework also assists bootloaders and early-stage
>>>> system components in making informed recovery decisions.
>>>>
>>>>
>>>
>>> Just wanted to understand rational behind creating this new framework
>>> (PSCRR) for
>>> reboot reason recording and not considering extending the existing
>>> nvmem-reboot
>>> framework ? As, this framework already provides a way to represent nvmem
>>> cell in
>>> the DT and the driver as well can discover it. Would it be correct if
>>> nvmem-reboot
>>> driver itself is extended with the features which this framework provides ?
>>>
>>> or was there any other reason you decided to create a new framework ?
> 
> There are two main reasons:
> - nvmem-reboot - Tells the reboot target - What should system do after
>    reboot. This frameworks is collecting information - why we
>    rebooted/booted in the first place.
> - System may have more then one recorder or source of information. Non
>    of it provides full picture. This framework should provide easier
>    access to different providers. For example:
>    - SoC tells PoR
>    - PMIC tells PoR
>    - Watchdog tells nothing
>    - nvmem storage - tells under-voltage.
> 
>    All of them provide own opinion on what is happened. Evaluation or
>    prioritisation should not be done in the kernel
> 
> So far i struggled with DT, but may be i need to put it to the side for
> now to go forward?
> 
> Best Regards,
> Oleksij



Thank You for sharing your rational behind and idea behind this 
framework !
IMO it would be better to have a single framework to represent 
all the reboot reasons of a system and not just the reboot 
reasons caused because of errors
Ex capturing reboot reasons like ota, bootloader,recovery etc ... 
currently nvmem reboot driver does not expose a sysfs/ABI which 
user app can use to infer reboot reason ...
Also, it would be extend this framework to also support firmware 
triggered reboot reasons  ...
Do you have any plan to extend this framework to support 
userspace triggered reboot reasons as well like bootloader, 
recovery, ota etc ?
And also extend the framework to support vendor specific reboot 
reasons which can be triggered by firmware  ?

We can co-work to extend this framework  ?

On representating nvmem cell to the framework  - if not DT what 
is your plan to represent it ?
How would framework discover the nvmem cell if its not DT based ?

Thanks,
Faruque Ansari

  reply	other threads:[~2026-07-01 12:57 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-18 12:02 [PATCH v11 0/7] Introduction of PSCR Framework and Related Components Oleksij Rempel
2025-06-18 12:02 ` [PATCH v11 1/7] power: Extend power_on_reason.h for upcoming PSCRR framework Oleksij Rempel
2025-06-18 12:02 ` [PATCH v11 2/7] reboot: hw_protection_trigger: use standardized numeric shutdown/reboot reasons instead of strings Oleksij Rempel
2025-06-18 12:02 ` [PATCH v11 3/7] power: reset: Introduce PSCR Recording Framework for Non-Volatile Storage Oleksij Rempel
2025-07-16 12:43   ` Greg KH
2025-06-18 12:02 ` [PATCH v11 4/7] nvmem: provide consumer access to cell size metrics Oleksij Rempel
2025-06-18 12:02 ` [PATCH v11 5/7] nvmem: add support for device and sysfs-based cell lookups Oleksij Rempel
2025-07-16 12:48   ` Greg KH
2025-06-18 12:02 ` [PATCH v11 6/7] power: reset: add PSCR NVMEM Driver for Recording Power State Change Reasons Oleksij Rempel
2025-06-20 15:56   ` Francesco Valla
2025-07-16 12:51   ` Greg KH
2026-06-25 11:52   ` Faruque Ansari
2025-06-18 12:02 ` [PATCH v11 7/7] Documentation: Add sysfs documentation for PSCRR reboot reason tracking Oleksij Rempel
2025-07-14 10:17 ` [PATCH v11 0/7] Introduction of PSCR Framework and Related Components Oleksij Rempel
2025-07-16 12:34   ` Greg Kroah-Hartman
2025-10-02 12:00 ` RFC: Selecting an NVMEM cell for Power State Change Reason (PSCR) recording Oleksij Rempel
2025-10-02 16:07   ` Kees Cook
2026-03-10  9:29     ` [PR 174] dt-bindings: chosen: Add "power-state-change-reason" nvmem property Oleksij Rempel
     [not found] ` <3309e88e-e189-42ea-b74e-346aec1b4b5f@oss.qualcomm.com>
2026-06-29 11:14   ` [PATCH v11 0/7] Introduction of PSCR Framework and Related Components Faruque Ansari
2026-06-29 11:41     ` Oleksij Rempel
2026-07-01 12:56       ` Faruque Ansari [this message]
2026-07-02  4:21         ` Oleksij Rempel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4b5321e8-05c8-4f3f-bc22-d3776e008151@oss.qualcomm.com \
    --to=faruque.ansari@oss.qualcomm.com \
    --cc=a.fatoum@pengutronix.de \
    --cc=akpm@linux-foundation.org \
    --cc=avaneesh.dwivedi@oss.qualcomm.com \
    --cc=bleung@chromium.org \
    --cc=broonie@kernel.org \
    --cc=chrome-platform@lists.linux.dev \
    --cc=daniel.lezcano@linaro.org \
    --cc=faiyaz.mohammed@oss.qualcomm.com \
    --cc=groeck@chromium.org \
    --cc=kernel@pengutronix.de \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=lukasz.luba@arm.com \
    --cc=mazziesaccount@gmail.com \
    --cc=o.rempel@pengutronix.de \
    --cc=rafael@kernel.org \
    --cc=rui.zhang@intel.com \
    --cc=san@skov.dk \
    --cc=sre@kernel.org \
    --cc=srinivas.kandagatla@linaro.org \
    --cc=tzungbi@kernel.org \
    --cc=umang.chheda@oss.qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox