From: Benjamin Bara <bbara93@gmail.com>
To: dmitry.osipenko@collabora.com
Cc: bbara93@gmail.com, benjamin.bara@skidata.com, broonie@kernel.org,
jneanne@baylibre.com, jonathanh@nvidia.com, lee@kernel.org,
lgirdwood@gmail.com, linux-kernel@vger.kernel.org,
linux-omap@vger.kernel.org, linux-tegra@vger.kernel.org,
peng.fan@oss.nxp.com, rafael.j.wysocki@intel.com,
thierry.reding@gmail.com, tony@atomide.com, treding@nvidia.com
Subject: Re: [PATCH v2 3/6] soc/tegra: pmc: Specify restart mode
Date: Thu, 17 Aug 2023 10:48:12 +0200 [thread overview]
Message-ID: <20230817084812.323742-1-bbara93@gmail.com> (raw)
In-Reply-To: <76da3727-a4da-ac70-aa8e-b362b9114061@collabora.com>
Hi Dmitry,
thanks for your feedback!
On Tue, 15 Aug 2023 at 00:38, Dmitry Osipenko <dmitry.osipenko@collabora.com> wrote:
> On 8/9/23 22:24, Benjamin Bara wrote:
> > From: Benjamin Bara <benjamin.bara@skidata.com>
> >
> > The current restart handler registration does not specify whether the
> > restart is a cold or a warm one. Now, as do_kernel_restart() knows about
> > the type, the priorization is implicitly done (cold restarts are
> > executed first) and the reboot_mode kernel parameter (which is currently
> > mostly ignored) can be respected.
> >
> > Acked-by: Thierry Reding <treding@nvidia.com>
> > Signed-off-by: Benjamin Bara <benjamin.bara@skidata.com>
> > ---
> > v2:
> > - improve commit message
> > ---
> > drivers/soc/tegra/pmc.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c
> > index 162f52456f65..4f42febb9b0f 100644
> > --- a/drivers/soc/tegra/pmc.c
> > +++ b/drivers/soc/tegra/pmc.c
> > @@ -2962,7 +2962,7 @@ static int tegra_pmc_probe(struct platform_device *pdev)
> > }
> >
> > err = devm_register_sys_off_handler(&pdev->dev,
> > - SYS_OFF_MODE_RESTART,
> > + SYS_OFF_MODE_RESTART_WARM,
> > SYS_OFF_PRIO_LOW,
> > tegra_pmc_restart_handler, NULL);
> > if (err) {
> >
>
> You have tegra-pmc restart handler that uses low priority. And then
> you're adding cold/warm handlers to tps65219 and pca9450 drivers with a
> default priorities.
Exactly, but I guess it makes sense to also use the handler with default
priority for the pmc reboot. The reason I kept it low prio was because
there is a comment that PMC should be last resort, but the reason
applies to any other soft restart handler too. I will adapt in the next
version.
> Hence this cold/warm separation of handlers doesn't do any practical
> difference in yours case because tegra-pmc will never be used as it
> did before your changes?
The change is e.g. relevant for platforms without PMIC-based soft reset,
e.g. when the tps6586x is in use. AFAIK, there is no possibility to
actually do a soft reboot, as the hard reboot will always be executed
first. This also happens if I set the kernel parameter "reboot_mode"
(also available via SysFS) to "soft" and a soft restart handler is
registered.
> Previously you wanted to make tps6586x driver to skip the warm reboot,
> but you're not touching tps6586x in this patchset.
True, there might also be other affected patches which are currently not
in linux-next yet. Will adapt the tps6586x too and depend on the whole
series in the next version.
> There is no real problem that is solved by these patches?
I think another problem is if the user sets the "reboot_mode" to "cold",
but there is no cold handler registered (as it was the case for me with
the pca9450), a warning should indicate that. AFAIK, there is no
possibility in user-space to find out if a cold restart handler is
registered, there is just this knob which can be switched to "cold". I
can also add a SysFS entry with "supported_modes" and check if the new
"mode" is supported on a store.
My other idea was to add a flags field to the notifier_block which
indicates (in case of a reboot notifier) the supported reboot_modes of
the registered handler, but I guess other notifier_block users won't
really benefit from an additional field, therefore I decided to add a
second list instead.
Best regards
Benjamin
next prev parent reply other threads:[~2023-08-17 8:49 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-09 19:24 [PATCH v2 0/6] regulator: pca9450: register restart handlers Benjamin Bara
2023-08-09 19:24 ` [PATCH v2 1/6] kernel/reboot: distinguish between cold and warm Benjamin Bara
2023-08-09 19:24 ` [PATCH v2 2/6] mfd: rk8xx: Specify restart mode Benjamin Bara
2023-08-18 16:06 ` Lee Jones
2023-08-09 19:24 ` [PATCH v2 3/6] soc/tegra: pmc: " Benjamin Bara
2023-08-14 22:38 ` Dmitry Osipenko
2023-08-17 8:48 ` Benjamin Bara [this message]
2023-08-09 19:24 ` [PATCH v2 4/6] mfd: tps65219: " Benjamin Bara
2023-08-18 16:10 ` Lee Jones
2023-08-09 19:24 ` [PATCH v2 5/6] kernel/reboot: remove generic " Benjamin Bara
2023-08-09 19:24 ` [PATCH v2 6/6] regulator: pca9450: register restart handlers Benjamin Bara
2023-08-18 16:12 ` [PATCH v2 0/6] " Lee Jones
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=20230817084812.323742-1-bbara93@gmail.com \
--to=bbara93@gmail.com \
--cc=benjamin.bara@skidata.com \
--cc=broonie@kernel.org \
--cc=dmitry.osipenko@collabora.com \
--cc=jneanne@baylibre.com \
--cc=jonathanh@nvidia.com \
--cc=lee@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=peng.fan@oss.nxp.com \
--cc=rafael.j.wysocki@intel.com \
--cc=thierry.reding@gmail.com \
--cc=tony@atomide.com \
--cc=treding@nvidia.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.