V4L/DVB (7534): ivtv: the upd* modules have to be probed to properly autodetect some cards
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
faea4d2ab2
commit
b38bf410fe
1 changed files with 9 additions and 3 deletions
|
@ -177,10 +177,16 @@ int ivtv_i2c_register(struct ivtv *itv, unsigned idx)
|
|||
}
|
||||
|
||||
if (id != I2C_DRIVERID_TUNER) {
|
||||
c = i2c_new_device(&itv->i2c_adap, &info);
|
||||
if (c->driver == NULL)
|
||||
if (id == I2C_DRIVERID_UPD64031A ||
|
||||
id == I2C_DRIVERID_UPD64083) {
|
||||
unsigned short addrs[2] = { info.addr, I2C_CLIENT_END };
|
||||
|
||||
c = i2c_new_probed_device(&itv->i2c_adap, &info, addrs);
|
||||
} else
|
||||
c = i2c_new_device(&itv->i2c_adap, &info);
|
||||
if (c && c->driver == NULL)
|
||||
i2c_unregister_device(c);
|
||||
else
|
||||
else if (c)
|
||||
itv->i2c_clients[i] = c;
|
||||
return itv->i2c_clients[i] ? 0 : -ENODEV;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue