Re: [RFC PATCH 2/4] power: reset: reboot-mode: Wire reboot_mode enum to magic

From: Pavan Kondeti
Date: Wed Jul 26 2023 - 01:10:59 EST


On Tue, Jul 25, 2023 at 02:04:28PM -0700, Elliot Berman wrote:
>
>
> On 7/25/2023 3:03 AM, Mukesh Ojha wrote:
> >
> >
> > On 7/25/2023 4:00 AM, Elliot Berman wrote:
> > > Allow the reboot mode type to be wired to magic.
> > >
> > > Signed-off-by: Elliot Berman <quic_eberman@xxxxxxxxxxx>
> > > ---
> > >   drivers/power/reset/reboot-mode.c | 30 ++++++++++++++++++++++++++----
> > >   1 file changed, 26 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/drivers/power/reset/reboot-mode.c
> > > b/drivers/power/reset/reboot-mode.c
> > > index a646aefa041b..4ea97ccbaf51 100644
> > > --- a/drivers/power/reset/reboot-mode.c
> > > +++ b/drivers/power/reset/reboot-mode.c
> > > @@ -22,12 +22,8 @@ struct mode_info {
> > >   static bool get_reboot_mode_magic(struct reboot_mode_driver *reboot,
> > >                         const char *cmd, unsigned int *magic)
> > >   {
> > > -    const char *normal = "normal";
> > >       struct mode_info *info;
> > > -    if (!cmd)
> > > -        cmd = normal;
> > > -
> > >       list_for_each_entry(info, &reboot->head, list) {
> > >           if (!strcmp(info->mode, cmd)) {
> > >               *magic = info->magic;
> > > @@ -45,6 +41,32 @@ static int reboot_mode_notify(struct
> > > notifier_block *this,
> > >       unsigned int magic;
> > >       reboot = container_of(this, struct reboot_mode_driver,
> > > reboot_notifier);
> > > +
> > > +    if (!cmd) {
> > > +        switch (mode) {
> >
> > IIUC, mode will be filled up with reboot_mode during restart
> > notifier and not reboot notifiers ?
> >
>

I went through the patch in isolation and came to the same conclusion on
why you are using mode directly here. Now that it is clarified, why
not use reboot_mode directly instead of introducing restart notifiers
here?

Also you might want to clarify that we are using reboot_mode as fallback
to wire the magic.

Thanks,
Pavan