diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-07-05 02:46:08 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-07-05 02:46:08 -0400 |
commit | 285eba57db7bd7d7c3c5929fb8621fdcaaea1b00 (patch) | |
tree | a9e7f0563cef296b24c53b20dbb388ec5c210172 /drivers/media/video/cx88/cx88-i2c.c | |
parent | 1c14e6cecb1811543b1016f27e5d308fbea8c08a (diff) | |
parent | 815c4163b6c8ebf8152f42b0a5fd015cfdcedc78 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts:
include/linux/serial_sci.h
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/media/video/cx88/cx88-i2c.c')
-rw-r--r-- | drivers/media/video/cx88/cx88-i2c.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/media/video/cx88/cx88-i2c.c b/drivers/media/video/cx88/cx88-i2c.c index ee1ca39db06a..fb39f1184558 100644 --- a/drivers/media/video/cx88/cx88-i2c.c +++ b/drivers/media/video/cx88/cx88-i2c.c | |||
@@ -188,10 +188,24 @@ int cx88_i2c_init(struct cx88_core *core, struct pci_dev *pci) | |||
188 | 0x18, 0x6b, 0x71, | 188 | 0x18, 0x6b, 0x71, |
189 | I2C_CLIENT_END | 189 | I2C_CLIENT_END |
190 | }; | 190 | }; |
191 | const unsigned short *addrp; | ||
191 | 192 | ||
192 | memset(&info, 0, sizeof(struct i2c_board_info)); | 193 | memset(&info, 0, sizeof(struct i2c_board_info)); |
193 | strlcpy(info.type, "ir_video", I2C_NAME_SIZE); | 194 | strlcpy(info.type, "ir_video", I2C_NAME_SIZE); |
194 | i2c_new_probed_device(&core->i2c_adap, &info, addr_list); | 195 | /* |
196 | * We can't call i2c_new_probed_device() because it uses | ||
197 | * quick writes for probing and at least some R receiver | ||
198 | * devices only reply to reads. | ||
199 | */ | ||
200 | for (addrp = addr_list; *addrp != I2C_CLIENT_END; addrp++) { | ||
201 | if (i2c_smbus_xfer(&core->i2c_adap, *addrp, 0, | ||
202 | I2C_SMBUS_READ, 0, | ||
203 | I2C_SMBUS_QUICK, NULL) >= 0) { | ||
204 | info.addr = *addrp; | ||
205 | i2c_new_device(&core->i2c_adap, &info); | ||
206 | break; | ||
207 | } | ||
208 | } | ||
195 | } | 209 | } |
196 | return core->i2c_rc; | 210 | return core->i2c_rc; |
197 | } | 211 | } |