projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
faea4d2
)
V4L/DVB (7534): ivtv: the upd* modules have to be probed to properly autodetect some...
author
Hans Verkuil
<hverkuil@xs4all.nl>
Mon, 7 Apr 2008 11:32:14 +0000
(08:32 -0300)
committer
Mauro Carvalho Chehab
<mchehab@infradead.org>
Thu, 24 Apr 2008 17:08:00 +0000
(14:08 -0300)
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/ivtv/ivtv-i2c.c
patch
|
blob
|
history
diff --git
a/drivers/media/video/ivtv/ivtv-i2c.c
b/drivers/media/video/ivtv/ivtv-i2c.c
index fa5ab1eb180005049db0412df19b8279303b7aec..9824eafee02131eb88b67045de9ce32de8f0e93e 100644
(file)
--- a/
drivers/media/video/ivtv/ivtv-i2c.c
+++ b/
drivers/media/video/ivtv/ivtv-i2c.c
@@
-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;
}