[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220615135659.3967956-1-windhl@126.com>
Date: Wed, 15 Jun 2022 21:56:59 +0800
From: Liang He <windhl@....com>
To: krzysztof.kozlowski@...aro.org, alim.akhtar@...sung.com
Cc: linux-arm-kernel@...ts.infradead.org,
linux-samsung-soc@...r.kernel.org, linux-kernel@...r.kernel.org,
windhl@....com
Subject: [PATCH v2] soc: samsung: Add missing of_node_put in exynos-pmu.c
In exynos_get_pmu_regmap(), of_find_matching_node() will return a
node pointer with refcount incremented. We should use of_node_put()
for that node pointer. We need a similar code logic in the function
syscon_regmap_lookup_by_compatible().
Signed-off-by: Liang He <windhl@....com>
---
changelog:
v2: (1) use formal name; (2) add a blank line advised by Krzysztof
v1: fix the missing of_node_put() problem
drivers/soc/samsung/exynos-pmu.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/drivers/soc/samsung/exynos-pmu.c b/drivers/soc/samsung/exynos-pmu.c
index 732c86ce2be8..ad0a94d1d88d 100644
--- a/drivers/soc/samsung/exynos-pmu.c
+++ b/drivers/soc/samsung/exynos-pmu.c
@@ -108,9 +108,14 @@ struct regmap *exynos_get_pmu_regmap(void)
{
struct device_node *np = of_find_matching_node(NULL,
exynos_pmu_of_device_ids);
- if (np)
- return syscon_node_to_regmap(np);
- return ERR_PTR(-ENODEV);
+ struct regmap *regmap;
+
+ if (!np)
+ return ERR_PTR(-ENODEV);
+
+ regmap = syscon_node_to_regmap(np);
+ of_node_put(np);
+ return regmap;
}
EXPORT_SYMBOL_GPL(exynos_get_pmu_regmap);
--
2.25.1
Powered by blists - more mailing lists