Use scoped for_each_compatible_node_scoped() loop when iterating over
device nodes to make code a bit simpler.

Signed-off-by: Krzysztof Kozlowski <[email protected]>

---

Depends on the first patch and on:
https://lore.kernel.org/all/[email protected]/
---
 drivers/media/platform/samsung/exynos4-is/fimc-is.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/media/platform/samsung/exynos4-is/fimc-is.c 
b/drivers/media/platform/samsung/exynos4-is/fimc-is.c
index 14d84cc96831..b7d9bfedd590 100644
--- a/drivers/media/platform/samsung/exynos4-is/fimc-is.c
+++ b/drivers/media/platform/samsung/exynos4-is/fimc-is.c
@@ -200,21 +200,19 @@ static int fimc_is_parse_sensor_config(struct fimc_is 
*is, unsigned int index,
 
 static int fimc_is_register_subdevs(struct fimc_is *is)
 {
-       struct device_node *i2c_bus;
        int ret, index = 0;
 
        ret = fimc_isp_subdev_create(&is->isp);
        if (ret < 0)
                return ret;
 
-       for_each_compatible_node(i2c_bus, NULL, "samsung,exynos4212-i2c-isp") {
+       for_each_compatible_node_scoped(i2c_bus, NULL, 
"samsung,exynos4212-i2c-isp") {
                for_each_available_child_of_node_scoped(i2c_bus, child) {
                        ret = fimc_is_parse_sensor_config(is, index, child);
 
-                       if (ret < 0 || index >= FIMC_IS_SENSORS_NUM) {
-                               of_node_put(i2c_bus);
+                       if (ret < 0 || index >= FIMC_IS_SENSORS_NUM)
                                return ret;
-                       }
+
                        index++;
                }
        }

-- 
2.51.0


Reply via email to