The just parsed endpoint fwnode has to be put after use.
Currently this is done only in error handling path. Fix that by putting node
unconditionally after use.

Fixes: 01b8444828fc ("media: v4l2: i2c: ov7670: Implement OF mbus 
configuration")

Signed-off-by: Jacopo Mondi <jacopo+rene...@jmondi.org>
---
 drivers/media/i2c/ov7670.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/media/i2c/ov7670.c b/drivers/media/i2c/ov7670.c
index 3474ef83..31bf577 100644
--- a/drivers/media/i2c/ov7670.c
+++ b/drivers/media/i2c/ov7670.c
@@ -1744,14 +1744,12 @@ static int ov7670_parse_dt(struct device *dev,
                return -EINVAL;

        ret = v4l2_fwnode_endpoint_parse(ep, &bus_cfg);
-       if (ret) {
-               fwnode_handle_put(ep);
+       fwnode_handle_put(ep);
+       if (ret)
                return ret;
-       }

        if (bus_cfg.bus_type != V4L2_MBUS_PARALLEL) {
                dev_err(dev, "Unsupported media bus type\n");
-               fwnode_handle_put(ep);
                return ret;
        }
        info->mbus_config = bus_cfg.bus.parallel.flags;
--
2.7.4

Reply via email to