diff mbox series

pinctrl: mediatek: Fix missing of_node_put() in mtk_pctrl_init

Message ID 20220308071155.21114-1-linmq006@gmail.com
State Accepted
Commit dab4df9ca919f59e5b9dd84385eaf34d4f20dbb0
Headers show
Series pinctrl: mediatek: Fix missing of_node_put() in mtk_pctrl_init | expand

Commit Message

Miaoqian Lin March 8, 2022, 7:11 a.m. UTC
The device_node pointer is returned by of_parse_phandle()  with refcount
incremented. We should use of_node_put() on it when done.

Fixes: a6df410d420a ("pinctrl: mediatek: Add Pinctrl/GPIO driver for mt8135.")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
---
 drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

AngeloGioacchino Del Regno March 10, 2022, 4:06 p.m. UTC | #1
Il 08/03/22 08:11, Miaoqian Lin ha scritto:
> The device_node pointer is returned by of_parse_phandle()  with refcount
> incremented. We should use of_node_put() on it when done.
> 
> Fixes: a6df410d420a ("pinctrl: mediatek: Add Pinctrl/GPIO driver for mt8135.")
> Signed-off-by: Miaoqian Lin <linmq006@gmail.com>

Thanks!

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

> ---
>   drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
> index 5f7c421ab6e7..334cb85855a9 100644
> --- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
> +++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
> @@ -1038,6 +1038,7 @@ int mtk_pctrl_init(struct platform_device *pdev,
>   	node = of_parse_phandle(np, "mediatek,pctl-regmap", 0);
>   	if (node) {
>   		pctl->regmap1 = syscon_node_to_regmap(node);
> +		of_node_put(node);
>   		if (IS_ERR(pctl->regmap1))
>   			return PTR_ERR(pctl->regmap1);
>   	} else if (regmap) {
> @@ -1051,6 +1052,7 @@ int mtk_pctrl_init(struct platform_device *pdev,
>   	node = of_parse_phandle(np, "mediatek,pctl-regmap", 1);
>   	if (node) {
>   		pctl->regmap2 = syscon_node_to_regmap(node);
> +		of_node_put(node);
>   		if (IS_ERR(pctl->regmap2))
>   			return PTR_ERR(pctl->regmap2);
>   	}
>
Linus Walleij March 15, 2022, 12:21 a.m. UTC | #2
On Tue, Mar 8, 2022 at 8:12 AM Miaoqian Lin <linmq006@gmail.com> wrote:

> The device_node pointer is returned by of_parse_phandle()  with refcount
> incremented. We should use of_node_put() on it when done.
>
> Fixes: a6df410d420a ("pinctrl: mediatek: Add Pinctrl/GPIO driver for mt8135.")
> Signed-off-by: Miaoqian Lin <linmq006@gmail.com>

Patch applied.

Yours,
Linus Walleij
diff mbox series

Patch

diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
index 5f7c421ab6e7..334cb85855a9 100644
--- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
+++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
@@ -1038,6 +1038,7 @@  int mtk_pctrl_init(struct platform_device *pdev,
 	node = of_parse_phandle(np, "mediatek,pctl-regmap", 0);
 	if (node) {
 		pctl->regmap1 = syscon_node_to_regmap(node);
+		of_node_put(node);
 		if (IS_ERR(pctl->regmap1))
 			return PTR_ERR(pctl->regmap1);
 	} else if (regmap) {
@@ -1051,6 +1052,7 @@  int mtk_pctrl_init(struct platform_device *pdev,
 	node = of_parse_phandle(np, "mediatek,pctl-regmap", 1);
 	if (node) {
 		pctl->regmap2 = syscon_node_to_regmap(node);
+		of_node_put(node);
 		if (IS_ERR(pctl->regmap2))
 			return PTR_ERR(pctl->regmap2);
 	}