From 0d761d6139c9dacbbda9f2e095577b084685603f Mon Sep 17 00:00:00 2001 From: Dmitry Osipenko <dmitry.osipenko@collabora.com> Date: Tue, 2 Nov 2021 14:49:51 +0300 Subject: [PATCH] powerpc/85xx: Use register_platform_power_off() Utilize new register_platform_power_off() API that allows to register multiple power-off handlers and deprecates global pm_power_off callback. Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> --- arch/powerpc/platforms/85xx/corenet_generic.c | 3 ++- arch/powerpc/platforms/85xx/sgy_cts1000.c | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/arch/powerpc/platforms/85xx/corenet_generic.c b/arch/powerpc/platforms/85xx/corenet_generic.c index 17ae75d62518a..499ea16275e53 100644 --- a/arch/powerpc/platforms/85xx/corenet_generic.c +++ b/arch/powerpc/platforms/85xx/corenet_generic.c @@ -9,6 +9,7 @@ #include <linux/kernel.h> #include <linux/pci.h> +#include <linux/reboot.h> #include <linux/kdev_t.h> #include <linux/delay.h> #include <linux/interrupt.h> @@ -161,7 +162,7 @@ static int __init corenet_generic_probe(void) ppc_md.get_irq = ehv_pic_get_irq; ppc_md.restart = fsl_hv_restart; - pm_power_off = fsl_hv_halt; + register_platform_power_off(fsl_hv_halt); ppc_md.halt = fsl_hv_halt; #ifdef CONFIG_SMP /* diff --git a/arch/powerpc/platforms/85xx/sgy_cts1000.c b/arch/powerpc/platforms/85xx/sgy_cts1000.c index 98ae640751934..e7043150ce56f 100644 --- a/arch/powerpc/platforms/85xx/sgy_cts1000.c +++ b/arch/powerpc/platforms/85xx/sgy_cts1000.c @@ -118,7 +118,7 @@ static int gpio_halt_probe(struct platform_device *pdev) /* Register our halt function */ ppc_md.halt = gpio_halt_cb; - pm_power_off = gpio_halt_cb; + register_platform_power_off(gpio_halt_cb); printk(KERN_INFO "gpio-halt: registered GPIO %d (%d trigger, %d" " irq).\n", gpio, trigger, irq); @@ -132,10 +132,11 @@ static int gpio_halt_remove(struct platform_device *pdev) int gpio = of_get_gpio(halt_node, 0); int irq = irq_of_parse_and_map(halt_node, 0); + unregister_platform_power_off(gpio_halt_cb); + free_irq(irq, halt_node); ppc_md.halt = NULL; - pm_power_off = NULL; gpio_free(gpio); -- GitLab