mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-28 13:22:57 +00:00
pinctrl: madera: Add missing call to pinctrl_unregister_mappings
pinctrl_register_mappings is called in the pdata case, however a call to pinctrl_unregister_mappings is missing causing the mappings to be leaked on driver unbind. Add the missing call to correct this issue. Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20200228154214.13916-1-ckeepax@opensource.cirrus.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
aafd56fc79
commit
3567ee83c4
1 changed files with 13 additions and 0 deletions
|
@ -1073,13 +1073,26 @@ static int madera_pin_probe(struct platform_device *pdev)
|
|||
return ret;
|
||||
}
|
||||
|
||||
platform_set_drvdata(pdev, priv);
|
||||
|
||||
dev_dbg(priv->dev, "pinctrl probed ok\n");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int madera_pin_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct madera_pin_private *priv = platform_get_drvdata(pdev);
|
||||
|
||||
if (priv->madera->pdata.gpio_configs)
|
||||
pinctrl_unregister_mappings(priv->madera->pdata.gpio_configs);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct platform_driver madera_pin_driver = {
|
||||
.probe = madera_pin_probe,
|
||||
.remove = madera_pin_remove,
|
||||
.driver = {
|
||||
.name = "madera-pinctrl",
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue