]> git.itanic.dy.fi Git - linux-stable/commitdiff
gpio: mockup: remove gpio debugfs when remove device
authorWei Yongjun <weiyongjun1@huawei.com>
Mon, 22 Aug 2022 04:10:25 +0000 (04:10 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 20 Sep 2022 10:43:47 +0000 (12:43 +0200)
[ Upstream commit 303e6da99429510b1e4edf833afe90ac8542e747 ]

GPIO mockup debugfs is created in gpio_mockup_probe() but
forgot to remove when remove device. This patch add a devm
managed callback for removing them.

Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpio/gpio-mockup.c

index 8943cea92764204e8c037b759009ea6d33edf7a5..a2e505a7545cde534182d08befa46c350f1310b0 100644 (file)
@@ -373,6 +373,13 @@ static void gpio_mockup_debugfs_setup(struct device *dev,
        }
 }
 
+static void gpio_mockup_debugfs_cleanup(void *data)
+{
+       struct gpio_mockup_chip *chip = data;
+
+       debugfs_remove_recursive(chip->dbg_dir);
+}
+
 static void gpio_mockup_dispose_mappings(void *data)
 {
        struct gpio_mockup_chip *chip = data;
@@ -455,7 +462,7 @@ static int gpio_mockup_probe(struct platform_device *pdev)
 
        gpio_mockup_debugfs_setup(dev, chip);
 
-       return 0;
+       return devm_add_action_or_reset(dev, gpio_mockup_debugfs_cleanup, chip);
 }
 
 static const struct of_device_id gpio_mockup_of_match[] = {