Messages in this thread Patch in this message | | | From | Liang He <> | Subject | [PATCH] arch: powerpc: platforms: 85xx: Add missing of_node_put in sgy_cts1000.c | Date | Wed, 15 Jun 2022 20:07:17 +0800 |
| |
Signed-off-by: Liang He <windhl@126.com> --- arch/powerpc/platforms/85xx/sgy_cts1000.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/arch/powerpc/platforms/85xx/sgy_cts1000.c b/arch/powerpc/platforms/85xx/sgy_cts1000.c index 98ae64075193..2a45b30852b2 100644 --- a/arch/powerpc/platforms/85xx/sgy_cts1000.c +++ b/arch/powerpc/platforms/85xx/sgy_cts1000.c @@ -85,17 +85,24 @@ static int gpio_halt_probe(struct platform_device *pdev) /* Technically we could just read the first one, but punish * DT writers for invalid form. */ if (of_gpio_count(halt_node) != 1) + { + of_node_put(halt_node); return -EINVAL; + } /* Get the gpio number relative to the dynamic base. */ gpio = of_get_gpio_flags(halt_node, 0, &flags); if (!gpio_is_valid(gpio)) + { + of_node_put(halt_node); return -EINVAL; + } err = gpio_request(gpio, "gpio-halt"); if (err) { printk(KERN_ERR "gpio-halt: error requesting GPIO %d.\n", gpio); + of_node_put(halt_node); halt_node = NULL; return err; } @@ -112,6 +119,7 @@ static int gpio_halt_probe(struct platform_device *pdev) printk(KERN_ERR "gpio-halt: error requesting IRQ %d for " "GPIO %d.\n", irq, gpio); gpio_free(gpio); + of_node_put(halt_node); halt_node = NULL; return err; } @@ -123,6 +131,8 @@ static int gpio_halt_probe(struct platform_device *pdev) printk(KERN_INFO "gpio-halt: registered GPIO %d (%d trigger, %d" " irq).\n", gpio, trigger, irq); + of_node_put(halt_node); + return 0; } -- 2.25.1
| |