diff options
Diffstat (limited to 'drivers/media/video/cx23885/cx23885-i2c.c')
-rw-r--r-- | drivers/media/video/cx23885/cx23885-i2c.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/drivers/media/video/cx23885/cx23885-i2c.c b/drivers/media/video/cx23885/cx23885-i2c.c index 1a391486e551..ed3d8f55029b 100644 --- a/drivers/media/video/cx23885/cx23885-i2c.c +++ b/drivers/media/video/cx23885/cx23885-i2c.c | |||
@@ -364,17 +364,10 @@ int cx23885_i2c_register(struct cx23885_i2c *bus) | |||
364 | 364 | ||
365 | memset(&info, 0, sizeof(struct i2c_board_info)); | 365 | memset(&info, 0, sizeof(struct i2c_board_info)); |
366 | strlcpy(info.type, "ir_video", I2C_NAME_SIZE); | 366 | strlcpy(info.type, "ir_video", I2C_NAME_SIZE); |
367 | /* | 367 | /* Use quick read command for probe, some IR chips don't |
368 | * We can't call i2c_new_probed_device() because it uses | 368 | * support writes */ |
369 | * quick writes for probing and the IR receiver device only | 369 | i2c_new_probed_device(&bus->i2c_adap, &info, addr_list, |
370 | * replies to reads. | 370 | i2c_probe_func_quick_read); |
371 | */ | ||
372 | if (i2c_smbus_xfer(&bus->i2c_adap, addr_list[0], 0, | ||
373 | I2C_SMBUS_READ, 0, I2C_SMBUS_QUICK, | ||
374 | NULL) >= 0) { | ||
375 | info.addr = addr_list[0]; | ||
376 | i2c_new_device(&bus->i2c_adap, &info); | ||
377 | } | ||
378 | } | 371 | } |
379 | 372 | ||
380 | return bus->i2c_rc; | 373 | return bus->i2c_rc; |