forked from luck/tmp_suning_uos_patched
media: pci: saa7164: saa7164-dvb: convert to use i2c_new_client_device()
Use the newer API returning an ERRPTR and use the new helper to bail out. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
parent
0ace5b2e6e
commit
d442c2e99d
|
@ -116,8 +116,8 @@ static int si2157_attach(struct saa7164_port *port, struct i2c_adapter *adapter,
|
|||
|
||||
request_module(bi.type);
|
||||
|
||||
tuner = i2c_new_device(adapter, &bi);
|
||||
if (tuner == NULL || tuner->dev.driver == NULL)
|
||||
tuner = i2c_new_client_device(adapter, &bi);
|
||||
if (!i2c_client_has_driver(tuner))
|
||||
return -ENODEV;
|
||||
|
||||
if (!try_module_get(tuner->dev.driver->owner)) {
|
||||
|
@ -637,9 +637,8 @@ int saa7164_dvb_register(struct saa7164_port *port)
|
|||
info.addr = 0xc8 >> 1;
|
||||
info.platform_data = &si2168_config;
|
||||
request_module(info.type);
|
||||
client_demod = i2c_new_device(&dev->i2c_bus[2].i2c_adap,
|
||||
&info);
|
||||
if (!client_demod || !client_demod->dev.driver)
|
||||
client_demod = i2c_new_client_device(&dev->i2c_bus[2].i2c_adap, &info);
|
||||
if (!i2c_client_has_driver(client_demod))
|
||||
goto frontend_detach;
|
||||
|
||||
if (!try_module_get(client_demod->dev.driver->owner)) {
|
||||
|
@ -657,9 +656,8 @@ int saa7164_dvb_register(struct saa7164_port *port)
|
|||
info.addr = 0xc0 >> 1;
|
||||
info.platform_data = &si2157_config;
|
||||
request_module(info.type);
|
||||
client_tuner = i2c_new_device(&dev->i2c_bus[0].i2c_adap,
|
||||
&info);
|
||||
if (!client_tuner || !client_tuner->dev.driver) {
|
||||
client_tuner = i2c_new_client_device(&dev->i2c_bus[0].i2c_adap, &info);
|
||||
if (!i2c_client_has_driver(client_tuner)) {
|
||||
module_put(client_demod->dev.driver->owner);
|
||||
i2c_unregister_device(client_demod);
|
||||
goto frontend_detach;
|
||||
|
@ -682,9 +680,8 @@ int saa7164_dvb_register(struct saa7164_port *port)
|
|||
info.addr = 0xcc >> 1;
|
||||
info.platform_data = &si2168_config;
|
||||
request_module(info.type);
|
||||
client_demod = i2c_new_device(&dev->i2c_bus[2].i2c_adap,
|
||||
&info);
|
||||
if (!client_demod || !client_demod->dev.driver)
|
||||
client_demod = i2c_new_client_device(&dev->i2c_bus[2].i2c_adap, &info);
|
||||
if (!i2c_client_has_driver(client_demod))
|
||||
goto frontend_detach;
|
||||
|
||||
if (!try_module_get(client_demod->dev.driver->owner)) {
|
||||
|
@ -702,9 +699,8 @@ int saa7164_dvb_register(struct saa7164_port *port)
|
|||
info.addr = 0xc0 >> 1;
|
||||
info.platform_data = &si2157_config;
|
||||
request_module(info.type);
|
||||
client_tuner = i2c_new_device(&dev->i2c_bus[1].i2c_adap,
|
||||
&info);
|
||||
if (!client_tuner || !client_tuner->dev.driver) {
|
||||
client_tuner = i2c_new_client_device(&dev->i2c_bus[1].i2c_adap, &info);
|
||||
if (!i2c_client_has_driver(client_tuner)) {
|
||||
module_put(client_demod->dev.driver->owner);
|
||||
i2c_unregister_device(client_demod);
|
||||
goto frontend_detach;
|
||||
|
|
Loading…
Reference in New Issue
Block a user