Re: [PATCH v2] schemas: chosen: Add reset-reason property
Quentin Schulz <[email protected]>
| Newsgroups | org.kernel.vger.devicetree-spec |
|---|---|
| Message-ID | <[email protected]> |
Hi Alexander, On 6/5/26 10:59 AM, A. Sverdlin wrote: > From: Alexander Sverdlin <[email protected]> > > Bootloaders such as U-Boot and barebox can populate the /chosen node with > a reset-reason string property indicating the cause of the most recent > system reset. > > Define a standardized set of generic reset reason values that bootloaders > map their platform-specific reset sources to: > > unknown - reset source could not be determined > cold - power-on reset > warm - warm restart without full power cycle > watchdog - watchdog timer expiration > wakeup - wake from suspend/sleep > jtag - JTAG/debug initiated reset > thermal - thermal shutdown/overtemperature > external - external reset pin/signal > brownout - supply voltage drop > software - explicit software-initiated reset > safety - hardware fault detection (e.g. error signaling module, > fault collection and control unit) > security - security subsystem (e.g. secure enclave violation) > pmic - PMIC-initiated reset > > Mapping of platform-specific reset sources to generic values: > > Generic AM6x i.MX9 barebox > ------- ---- ----- ------- > unknown UNKNOWN - unknown > cold POR por POR > warm RST (SW warm) - RST > watchdog WDOG wdog WDG > wakeup - - WKE > jtag JTAG jtag JTAG > thermal THERMAL tempsense THERM > external PIN - EXT > brownout - - BROWNOUT > software - sw - > safety ESM fccu - > security SMS/DMSC ele - > pmic - pmic - > > Note: barebox already populates this property but uses abbreviated > uppercase values (common/reset_source.c). These will need to be adapted > to match the standardized lowercase values defined here. > > The list can be extended in the future as needed. > We'll want to eventually extend it and match what barebox does by adding more information (e.g. which IP triggered the reset, possibly IP-specific information such as which reset in the IP triggered the reset, thinking about the watchdog IP in Rockchip SoCs with multiple sources for a watchdog event to kick in). Considering the DT people weren't too happy last time I didn't provide the whole picture, I would like to avoid being involved in upsetting them again, so please provide the full discussion we had in the RFC so they know this is only the beginning of reset-related properties we're eventually planning to add to the DT bindings. Maybe they'll suggest something that works better for them based on that feedback. I still believe this is a partial implementation and stopping half-way to something that would be useful (Barebox for sure didn't implement new properties for nothing ;) ). Cheers, Quentin