aboutsummaryrefslogtreecommitdiff
path: root/drivers/pinctrl
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2015-02-02 11:29:07 +0000
committerMark Brown <broonie@kernel.org>2015-02-02 11:29:07 +0000
commit692d96aa22dea8bb80018c6a76556ad6afd464a6 (patch)
treee8dd55655fa001e53058c5264d541f8b3d3c1a7b /drivers/pinctrl
parent1874098820e8269fe88d67bc08c908134dd87102 (diff)
parent4227cffc1f9e4a9241071354476c225705b614c8 (diff)
Merge tag 'v3.10.67' into linux-linaro-lsk
This is the 3.10.67 stable release
Diffstat (limited to 'drivers/pinctrl')
-rw-r--r--drivers/pinctrl/core.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c
index bb7ee9cb00b1..9c9fc69a01b3 100644
--- a/drivers/pinctrl/core.c
+++ b/drivers/pinctrl/core.c
@@ -1693,14 +1693,15 @@ void pinctrl_unregister(struct pinctrl_dev *pctldev)
if (pctldev == NULL)
return;
- mutex_lock(&pinctrldev_list_mutex);
mutex_lock(&pctldev->mutex);
-
pinctrl_remove_device_debugfs(pctldev);
+ mutex_unlock(&pctldev->mutex);
if (!IS_ERR(pctldev->p))
pinctrl_put(pctldev->p);
+ mutex_lock(&pinctrldev_list_mutex);
+ mutex_lock(&pctldev->mutex);
/* TODO: check that no pinmuxes are still active? */
list_del(&pctldev->node);
/* Destroy descriptor tree */