Fixed the case where v4l2_async_unregister_subdev()
is called unnecessarily in the error handling path
in probe function.

Signed-off-by: Rajmohan Mani <rajmohan.m...@intel.com>
---
 drivers/media/i2c/dw9714.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/media/i2c/dw9714.c b/drivers/media/i2c/dw9714.c
index 91fae01..3dc2100 100644
--- a/drivers/media/i2c/dw9714.c
+++ b/drivers/media/i2c/dw9714.c
@@ -169,7 +169,8 @@ static int dw9714_probe(struct i2c_client *client)
        return 0;
 
 err_cleanup:
-       dw9714_subdev_cleanup(dw9714_dev);
+       v4l2_ctrl_handler_free(&dw9714_dev->ctrls_vcm);
+       media_entity_cleanup(&dw9714_dev->sd.entity);
        dev_err(&client->dev, "Probe failed: %d\n", rval);
        return rval;
 }
-- 
2.7.4

Reply via email to