summaryrefslogtreecommitdiffstats
path: root/drivers/extcon/extcon.c
diff options
context:
space:
mode:
authorPeter Chen <peter.chen@nxp.com>2016-07-01 11:41:55 +0200
committerChanwoo Choi <cw00.choi@samsung.com>2016-07-02 06:24:25 +0200
commit5d5c4c139dd766dff903ba35d72fb3ec90022e91 (patch)
tree473ad5944481afcb5c40372b6d0e517f35e1910e /drivers/extcon/extcon.c
parentextcon: link devres into core module (diff)
downloadlinux-5d5c4c139dd766dff903ba35d72fb3ec90022e91.tar.xz
linux-5d5c4c139dd766dff903ba35d72fb3ec90022e91.zip
extcon: add missing of_node_put after calling of_parse_phandle
of_node_put needs to be called when the device node which is got from of_parse_phandle has finished using. Signed-off-by: Peter Chen <peter.chen@nxp.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Diffstat (limited to 'drivers/extcon/extcon.c')
-rw-r--r--drivers/extcon/extcon.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c
index 862334e69cf1..8682efc0f57b 100644
--- a/drivers/extcon/extcon.c
+++ b/drivers/extcon/extcon.c
@@ -861,10 +861,12 @@ struct extcon_dev *extcon_get_edev_by_phandle(struct device *dev, int index)
list_for_each_entry(edev, &extcon_dev_list, entry) {
if (edev->dev.parent && edev->dev.parent->of_node == node) {
mutex_unlock(&extcon_dev_list_lock);
+ of_node_put(node);
return edev;
}
}
mutex_unlock(&extcon_dev_list_lock);
+ of_node_put(node);
return ERR_PTR(-EPROBE_DEFER);
}