From: lorenzo.pieralisi@arm.com (Lorenzo Pieralisi)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 3/6] ARM: PSCI: Register with kernel restart handler
Date: Tue, 19 Apr 2016 16:47:44 +0100 [thread overview]
Message-ID: <20160419154744.GA897@red-moon> (raw)
In-Reply-To: <1460688157-6551-4-git-send-email-linux@roeck-us.net>
On Thu, Apr 14, 2016 at 07:42:34PM -0700, Guenter Roeck wrote:
> Register with kernel restart handler instead of setting arm_pm_restart
> directly. This enables support for replacing the PSCI restart handler
> with a different handler if necessary for a specific board.
>
> Select a priority of 129 to indicate a higher than default priority, but
> keep it as low as possible since PSCI reset is known to fail on some
> boards.
I do not think you should play with notifiers priorities to paper over
FW bugs, if PSCI SYSTEM_RESET is broken FW is not PSCI0.2+ compliant
so it should not even be advertised as such in the DT.
This means that this priority kludge must disappear soon, what priority
to assign to the PSCI reset handler remains to be seen.
Are you sending this patch series via arm-soc ? If so:
Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
> Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
> ---
> v2: Rebased to v4.6-rc3, added Reviewed/by/Acked-by/Tested-by tags
> Variable name change: np -> nb
>
> drivers/firmware/psci.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
> index 11bfee8b79a9..a0f71480f145 100644
> --- a/drivers/firmware/psci.c
> +++ b/drivers/firmware/psci.c
> @@ -231,11 +231,18 @@ static int get_set_conduit_method(struct device_node *np)
> return 0;
> }
>
> -static void psci_sys_reset(enum reboot_mode reboot_mode, const char *cmd)
> +static int psci_sys_reset(struct notifier_block *nb, unsigned long action,
> + void *data)
> {
> invoke_psci_fn(PSCI_0_2_FN_SYSTEM_RESET, 0, 0, 0);
> + return NOTIFY_DONE;
> }
>
> +static struct notifier_block psci_sys_reset_nb = {
> + .notifier_call = psci_sys_reset,
> + .priority = 129,
> +};
> +
> static void psci_sys_poweroff(void)
> {
> invoke_psci_fn(PSCI_0_2_FN_SYSTEM_OFF, 0, 0, 0);
> @@ -461,7 +468,7 @@ static void __init psci_0_2_set_functions(void)
>
> psci_ops.migrate_info_type = psci_migrate_info_type;
>
> - arm_pm_restart = psci_sys_reset;
> + register_restart_handler(&psci_sys_reset_nb);
>
> pm_power_off = psci_sys_poweroff;
> }
> --
> 2.5.0
>
next prev parent reply other threads:[~2016-04-19 15:47 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-15 2:42 [PATCH v2 0/6] ARM/ARM64: Drop arm_pm_restart Guenter Roeck
2016-04-15 2:42 ` [PATCH v2 1/6] ARM: prima2: Register with kernel restart handler Guenter Roeck
2016-04-15 2:42 ` [PATCH v2 2/6] ARM: xen: " Guenter Roeck
2016-04-15 18:22 ` Stefano Stabellini
2016-04-15 19:35 ` Guenter Roeck
2016-04-15 21:10 ` Stefano Stabellini
2016-04-15 2:42 ` [PATCH v2 3/6] ARM: PSCI: " Guenter Roeck
2016-04-19 15:47 ` Lorenzo Pieralisi [this message]
2016-04-15 2:42 ` [PATCH v2 4/6] ARM: " Guenter Roeck
2016-04-15 2:42 ` [PATCH v2 5/6] ARM64: Remove arm_pm_restart Guenter Roeck
2016-04-15 2:42 ` [PATCH v2 6/6] ARM: " Guenter Roeck
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=20160419154744.GA897@red-moon \
--to=lorenzo.pieralisi@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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;
as well as URLs for NNTP newsgroup(s).