media: v4l2-core: v4l2-i2c: convert to new API with ERRPTR

Use the new APIs instead of the deprecated ones.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
Wolfram Sang 2019-12-16 16:51:43 +01:00 committed by Mauro Carvalho Chehab
parent e18976eeca
commit 2e1b100cdc

View File

@ -74,10 +74,10 @@ struct v4l2_subdev
/* Create the i2c client */ /* Create the i2c client */
if (info->addr == 0 && probe_addrs) if (info->addr == 0 && probe_addrs)
client = i2c_new_probed_device(adapter, info, probe_addrs, client = i2c_new_scanned_device(adapter, info, probe_addrs,
NULL); NULL);
else else
client = i2c_new_device(adapter, info); client = i2c_new_client_device(adapter, info);
/* /*
* Note: by loading the module first we are certain that c->driver * Note: by loading the module first we are certain that c->driver
@ -88,7 +88,7 @@ struct v4l2_subdev
* want to use the i2c device, so explicitly loading the module * want to use the i2c device, so explicitly loading the module
* is the best alternative. * is the best alternative.
*/ */
if (!client || !client->dev.driver) if (!i2c_client_has_driver(client))
goto error; goto error;
/* Lock the module so we can safely get the v4l2_subdev pointer */ /* Lock the module so we can safely get the v4l2_subdev pointer */
@ -110,7 +110,7 @@ error:
* If we have a client but no subdev, then something went wrong and * If we have a client but no subdev, then something went wrong and
* we must unregister the client. * we must unregister the client.
*/ */
if (client && !sd) if (!IS_ERR(client) && !sd)
i2c_unregister_device(client); i2c_unregister_device(client);
return sd; return sd;
} }