]> www.infradead.org Git - users/hch/misc.git/commitdiff
gpio: zynq: Fix wakeup source leaks on device unbind
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Sun, 6 Apr 2025 20:22:45 +0000 (22:22 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 8 Apr 2025 08:56:38 +0000 (10:56 +0200)
Device can be unbound, so driver must also release memory for the wakeup
source.

Cc: stable@vger.kernel.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20250406202245.53854-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpio-zynq.c

index be81fa2b17abc614c45b1c5a9b4677d281c5217a..3dae63f3ea217780818ccb991ccba13ab18775db 100644 (file)
@@ -1011,6 +1011,7 @@ static void zynq_gpio_remove(struct platform_device *pdev)
        ret = pm_runtime_get_sync(&pdev->dev);
        if (ret < 0)
                dev_warn(&pdev->dev, "pm_runtime_get_sync() Failed\n");
+       device_init_wakeup(&pdev->dev, 0);
        gpiochip_remove(&gpio->chip);
        device_set_wakeup_capable(&pdev->dev, 0);
        pm_runtime_disable(&pdev->dev);