]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
[media] ov7670: call v4l2_async_register_subdev
authorHans Verkuil <hans.verkuil@cisco.com>
Tue, 16 Aug 2016 18:55:58 +0000 (15:55 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Mon, 10 Apr 2017 10:52:31 +0000 (07:52 -0300)
Add v4l2-async support for this driver.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/ov7670.c

index 56cfb5ca9c953a5ae813c36daff25a3463cea61f..9af8d3b8f848a866f250121c2144fe591884d566 100644 (file)
@@ -1636,10 +1636,9 @@ static int ov7670_probe(struct i2c_client *client,
                        V4L2_EXPOSURE_AUTO);
        sd->ctrl_handler = &info->hdl;
        if (info->hdl.error) {
-               int err = info->hdl.error;
+               ret = info->hdl.error;
 
-               v4l2_ctrl_handler_free(&info->hdl);
-               return err;
+               goto hdl_free;
        }
        /*
         * We have checked empirically that hw allows to read back the gain
@@ -1651,7 +1650,15 @@ static int ov7670_probe(struct i2c_client *client,
        v4l2_ctrl_cluster(2, &info->saturation);
        v4l2_ctrl_handler_setup(&info->hdl);
 
+       ret = v4l2_async_register_subdev(&info->sd);
+       if (ret < 0)
+               goto hdl_free;
+
        return 0;
+
+hdl_free:
+       v4l2_ctrl_handler_free(&info->hdl);
+       return ret;
 }