mirror of https://gitee.com/openkylin/linux.git
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:
parent
e18976eeca
commit
2e1b100cdc
|
@ -74,10 +74,10 @@ struct v4l2_subdev
|
|||
|
||||
/* Create the i2c client */
|
||||
if (info->addr == 0 && probe_addrs)
|
||||
client = i2c_new_probed_device(adapter, info, probe_addrs,
|
||||
NULL);
|
||||
client = i2c_new_scanned_device(adapter, info, probe_addrs,
|
||||
NULL);
|
||||
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
|
||||
|
@ -88,7 +88,7 @@ struct v4l2_subdev
|
|||
* want to use the i2c device, so explicitly loading the module
|
||||
* is the best alternative.
|
||||
*/
|
||||
if (!client || !client->dev.driver)
|
||||
if (!i2c_client_has_driver(client))
|
||||
goto error;
|
||||
|
||||
/* Lock the module so we can safely get the v4l2_subdev pointer */
|
||||
|
@ -110,7 +110,7 @@ struct v4l2_subdev
|
|||
* If we have a client but no subdev, then something went wrong and
|
||||
* we must unregister the client.
|
||||
*/
|
||||
if (client && !sd)
|
||||
if (!IS_ERR(client) && !sd)
|
||||
i2c_unregister_device(client);
|
||||
return sd;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue