Re: [PATCH 1/8] reboot-mode: parse up to 3 magic cells per mode

Simon Glass <[email protected]>
Newsgroups org.u-boot-project.lists.u-boot
Message-ID <CAFLszThSHebH8gxG8Gk6pwC4u4zRGUrRAJyX=63LrBDBg-wvfA@mail.gmail.com>
On 2026-08-11T05:18:35, Balaji Selvanathan
<[email protected]> wrote:
> reboot-mode: parse up to 3 magic cells per mode
>
> The reboot-mode framework currently stores a single u32 magic value per
> mode and parses exactly one cell from each "mode-*" device tree property.
> That is sufficient for the existing backing-store users (nvmem, gpio,
> rtc), but a PSCI SYSTEM_RESET2 vendor reset is described by up to three
> 32-bit cells: <reset_type[, cookie_hi[, cookie_lo]]>, matching the
> reboot-mode binding for the psci "reboot-mode" subnode.
>
> Restructure struct reboot_mode_mode to hold an array of up to
> REBOOT_MODE_MAX_MAGIC (3) cells plus a cell count, and make
> dm_reboot_mode_pre_probe() length-aware so it reads 1 to 3 cells from
> each property. dm_reboot_mode_update() now matches the backing-store
> value against magic[0].
>
> Existing single-cell modes (e.g. nvmem "mode-bootloader = <0x02>") parse
> to magic[0] = 0x02, count = 1 and keep matching exactly as before, so
> there is no functional change for current users.
>
> Signed-off-by: Balaji Selvanathan <[email protected]>
>
> drivers/reboot-mode/reboot-mode-uclass.c | 28 ++++++++++++++++++++++------
>  include/reboot-mode/reboot-mode.h        |  8 +++++++-
>  2 files changed, 29 insertions(+), 7 deletions(-)

Reviewed-by: Simon Glass <[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.