mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 1/3] xtensa: ISS: Use register_sys_off_handler(SYS_OFF_MODE_RESTART)
@ 2026-03-02 19:35 Andrew Davis
  2026-03-02 19:35 ` [PATCH 2/3] xtensa: xt2000: " Andrew Davis
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Andrew Davis @ 2026-03-02 19:35 UTC (permalink / raw)
  To: Chris Zankel, Max Filippov; +Cc: linux-kernel, Andrew Davis

Function register_restart_handler() is deprecated. Using this new API
removes our need to keep and manage a struct notifier_block.

Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/xtensa/platforms/iss/setup.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/arch/xtensa/platforms/iss/setup.c b/arch/xtensa/platforms/iss/setup.c
index 0f1fe132691e2..21283acab1a89 100644
--- a/arch/xtensa/platforms/iss/setup.c
+++ b/arch/xtensa/platforms/iss/setup.c
@@ -32,8 +32,7 @@ static int iss_power_off(struct sys_off_data *unused)
 	return NOTIFY_DONE;
 }
 
-static int iss_restart(struct notifier_block *this,
-		       unsigned long event, void *ptr)
+static int iss_restart(struct sys_off_data *unused)
 {
 	/* Flush and reset the mmu, simulate a processor reset, and
 	 * jump to the reset vector. */
@@ -42,10 +41,6 @@ static int iss_restart(struct notifier_block *this,
 	return NOTIFY_DONE;
 }
 
-static struct notifier_block iss_restart_block = {
-	.notifier_call = iss_restart,
-};
-
 static int
 iss_panic_event(struct notifier_block *this, unsigned long event, void *ptr)
 {
@@ -84,7 +79,9 @@ void __init platform_setup(char **p_cmdline)
 	}
 
 	atomic_notifier_chain_register(&panic_notifier_list, &iss_panic_block);
-	register_restart_handler(&iss_restart_block);
+	register_sys_off_handler(SYS_OFF_MODE_RESTART,
+				 SYS_OFF_PRIO_PLATFORM,
+				 iss_restart, NULL);
 	register_sys_off_handler(SYS_OFF_MODE_POWER_OFF,
 				 SYS_OFF_PRIO_PLATFORM,
 				 iss_power_off, NULL);
-- 
2.39.2


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 2/3] xtensa: xt2000: Use register_sys_off_handler(SYS_OFF_MODE_RESTART)
  2026-03-02 19:35 [PATCH 1/3] xtensa: ISS: Use register_sys_off_handler(SYS_OFF_MODE_RESTART) Andrew Davis
@ 2026-03-02 19:35 ` Andrew Davis
  2026-03-02 19:35 ` [PATCH 3/3] xtensa: xtfpga: " Andrew Davis
  2026-03-03 20:26 ` [PATCH 1/3] xtensa: ISS: " Max Filippov
  2 siblings, 0 replies; 4+ messages in thread
From: Andrew Davis @ 2026-03-02 19:35 UTC (permalink / raw)
  To: Chris Zankel, Max Filippov; +Cc: linux-kernel, Andrew Davis

Function register_restart_handler() is deprecated. Using this new API
removes our need to keep and manage a struct notifier_block.

Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/xtensa/platforms/xt2000/setup.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/arch/xtensa/platforms/xt2000/setup.c b/arch/xtensa/platforms/xt2000/setup.c
index 258e01a51fd88..eda4c15c68264 100644
--- a/arch/xtensa/platforms/xt2000/setup.c
+++ b/arch/xtensa/platforms/xt2000/setup.c
@@ -50,8 +50,7 @@ static int xt2000_power_off(struct sys_off_data *unused)
 	return NOTIFY_DONE;
 }
 
-static int xt2000_restart(struct notifier_block *this,
-			  unsigned long event, void *ptr)
+static int xt2000_restart(struct sys_off_data *unused)
 {
 	/* Flush and reset the mmu, simulate a processor reset, and
 	 * jump to the reset vector. */
@@ -60,10 +59,6 @@ static int xt2000_restart(struct notifier_block *this,
 	return NOTIFY_DONE;
 }
 
-static struct notifier_block xt2000_restart_block = {
-	.notifier_call = xt2000_restart,
-};
-
 void __init platform_setup(char** cmdline)
 {
 	led_print (0, "LINUX   ");
@@ -140,7 +135,9 @@ static int __init xt2000_setup_devinit(void)
 	platform_device_register(&xt2000_serial8250_device);
 	platform_device_register(&xt2000_sonic_device);
 	mod_timer(&heartbeat_timer, jiffies + HZ / 2);
-	register_restart_handler(&xt2000_restart_block);
+	register_sys_off_handler(SYS_OFF_MODE_RESTART,
+				 SYS_OFF_PRIO_PLATFORM,
+				 xt2000_restart, NULL);
 	register_sys_off_handler(SYS_OFF_MODE_POWER_OFF,
 				 SYS_OFF_PRIO_DEFAULT,
 				 xt2000_power_off, NULL);
-- 
2.39.2


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 3/3] xtensa: xtfpga: Use register_sys_off_handler(SYS_OFF_MODE_RESTART)
  2026-03-02 19:35 [PATCH 1/3] xtensa: ISS: Use register_sys_off_handler(SYS_OFF_MODE_RESTART) Andrew Davis
  2026-03-02 19:35 ` [PATCH 2/3] xtensa: xt2000: " Andrew Davis
@ 2026-03-02 19:35 ` Andrew Davis
  2026-03-03 20:26 ` [PATCH 1/3] xtensa: ISS: " Max Filippov
  2 siblings, 0 replies; 4+ messages in thread
From: Andrew Davis @ 2026-03-02 19:35 UTC (permalink / raw)
  To: Chris Zankel, Max Filippov; +Cc: linux-kernel, Andrew Davis

Function register_restart_handler() is deprecated. Using this new API
removes our need to keep and manage a struct notifier_block.

Signed-off-by: Andrew Davis <afd@ti.com>
---
 arch/xtensa/platforms/xtfpga/setup.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/arch/xtensa/platforms/xtfpga/setup.c b/arch/xtensa/platforms/xtfpga/setup.c
index a2432f0817101..67d7f37f1802e 100644
--- a/arch/xtensa/platforms/xtfpga/setup.c
+++ b/arch/xtensa/platforms/xtfpga/setup.c
@@ -42,8 +42,7 @@ static int xtfpga_power_off(struct sys_off_data *unused)
 	return NOTIFY_DONE;
 }
 
-static int xtfpga_restart(struct notifier_block *this,
-			  unsigned long event, void *ptr)
+static int xtfpga_restart(struct sys_off_data *unused)
 {
 	/* Try software reset first. */
 	WRITE_ONCE(*(u32 *)XTFPGA_SWRST_VADDR, 0xdead);
@@ -56,10 +55,6 @@ static int xtfpga_restart(struct notifier_block *this,
 	return NOTIFY_DONE;
 }
 
-static struct notifier_block xtfpga_restart_block = {
-	.notifier_call = xtfpga_restart,
-};
-
 #ifdef CONFIG_XTENSA_CALIBRATE_CCOUNT
 
 void __init platform_calibrate_ccount(void)
@@ -71,7 +66,9 @@ void __init platform_calibrate_ccount(void)
 
 static void __init xtfpga_register_handlers(void)
 {
-	register_restart_handler(&xtfpga_restart_block);
+	register_sys_off_handler(SYS_OFF_MODE_RESTART,
+				 SYS_OFF_PRIO_PLATFORM,
+				 xtfpga_restart, NULL);
 	register_sys_off_handler(SYS_OFF_MODE_POWER_OFF,
 				 SYS_OFF_PRIO_DEFAULT,
 				 xtfpga_power_off, NULL);
-- 
2.39.2


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/3] xtensa: ISS: Use register_sys_off_handler(SYS_OFF_MODE_RESTART)
  2026-03-02 19:35 [PATCH 1/3] xtensa: ISS: Use register_sys_off_handler(SYS_OFF_MODE_RESTART) Andrew Davis
  2026-03-02 19:35 ` [PATCH 2/3] xtensa: xt2000: " Andrew Davis
  2026-03-02 19:35 ` [PATCH 3/3] xtensa: xtfpga: " Andrew Davis
@ 2026-03-03 20:26 ` Max Filippov
  2 siblings, 0 replies; 4+ messages in thread
From: Max Filippov @ 2026-03-03 20:26 UTC (permalink / raw)
  To: Andrew Davis; +Cc: Chris Zankel, linux-kernel

On Mon, Mar 2, 2026 at 11:35 AM Andrew Davis <afd@ti.com> wrote:
>
> Function register_restart_handler() is deprecated. Using this new API
> removes our need to keep and manage a struct notifier_block.
>
> Signed-off-by: Andrew Davis <afd@ti.com>
> ---
>  arch/xtensa/platforms/iss/setup.c | 11 ++++-------
>  1 file changed, 4 insertions(+), 7 deletions(-)

Thanks. Applied the whole series to my xtensa tree.

-- Max

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-03-03 20:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-03-02 19:35 [PATCH 1/3] xtensa: ISS: Use register_sys_off_handler(SYS_OFF_MODE_RESTART) Andrew Davis
2026-03-02 19:35 ` [PATCH 2/3] xtensa: xt2000: " Andrew Davis
2026-03-02 19:35 ` [PATCH 3/3] xtensa: xtfpga: " Andrew Davis
2026-03-03 20:26 ` [PATCH 1/3] xtensa: ISS: " Max Filippov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®