diff options
| -rw-r--r-- | drivers/media/video/bt8xx/bttv-driver.c | 1 | ||||
| -rw-r--r-- | drivers/media/video/bt8xx/bttv-i2c.c | 8 | ||||
| -rw-r--r-- | drivers/media/video/bt8xx/bttvp.h | 1 |
3 files changed, 8 insertions, 2 deletions
diff --git a/drivers/media/video/bt8xx/bttv-driver.c b/drivers/media/video/bt8xx/bttv-driver.c index 3182a406bdd1..ae08b077fd04 100644 --- a/drivers/media/video/bt8xx/bttv-driver.c +++ b/drivers/media/video/bt8xx/bttv-driver.c | |||
| @@ -4461,6 +4461,7 @@ static int __devinit bttv_probe(struct pci_dev *dev, | |||
| 4461 | request_modules(btv); | 4461 | request_modules(btv); |
| 4462 | } | 4462 | } |
| 4463 | 4463 | ||
| 4464 | init_bttv_i2c_ir(btv); | ||
| 4464 | bttv_input_init(btv); | 4465 | bttv_input_init(btv); |
| 4465 | 4466 | ||
| 4466 | /* everything is fine */ | 4467 | /* everything is fine */ |
diff --git a/drivers/media/video/bt8xx/bttv-i2c.c b/drivers/media/video/bt8xx/bttv-i2c.c index 63aa31a041e8..407fa61e4cda 100644 --- a/drivers/media/video/bt8xx/bttv-i2c.c +++ b/drivers/media/video/bt8xx/bttv-i2c.c | |||
| @@ -388,7 +388,12 @@ int __devinit init_bttv_i2c(struct bttv *btv) | |||
| 388 | if (0 == btv->i2c_rc && i2c_scan) | 388 | if (0 == btv->i2c_rc && i2c_scan) |
| 389 | do_i2c_scan(btv->c.v4l2_dev.name, &btv->i2c_client); | 389 | do_i2c_scan(btv->c.v4l2_dev.name, &btv->i2c_client); |
| 390 | 390 | ||
| 391 | /* Instantiate the IR receiver device, if present */ | 391 | return btv->i2c_rc; |
| 392 | } | ||
| 393 | |||
| 394 | /* Instantiate the I2C IR receiver device, if present */ | ||
| 395 | void __devinit init_bttv_i2c_ir(struct bttv *btv) | ||
| 396 | { | ||
| 392 | if (0 == btv->i2c_rc) { | 397 | if (0 == btv->i2c_rc) { |
| 393 | struct i2c_board_info info; | 398 | struct i2c_board_info info; |
| 394 | /* The external IR receiver is at i2c address 0x34 (0x35 for | 399 | /* The external IR receiver is at i2c address 0x34 (0x35 for |
| @@ -408,7 +413,6 @@ int __devinit init_bttv_i2c(struct bttv *btv) | |||
| 408 | strlcpy(info.type, "ir_video", I2C_NAME_SIZE); | 413 | strlcpy(info.type, "ir_video", I2C_NAME_SIZE); |
| 409 | i2c_new_probed_device(&btv->c.i2c_adap, &info, addr_list); | 414 | i2c_new_probed_device(&btv->c.i2c_adap, &info, addr_list); |
| 410 | } | 415 | } |
| 411 | return btv->i2c_rc; | ||
| 412 | } | 416 | } |
| 413 | 417 | ||
| 414 | int __devexit fini_bttv_i2c(struct bttv *btv) | 418 | int __devexit fini_bttv_i2c(struct bttv *btv) |
diff --git a/drivers/media/video/bt8xx/bttvp.h b/drivers/media/video/bt8xx/bttvp.h index a1d0e9c9f286..6cccc2a17eee 100644 --- a/drivers/media/video/bt8xx/bttvp.h +++ b/drivers/media/video/bt8xx/bttvp.h | |||
| @@ -279,6 +279,7 @@ extern unsigned int bttv_debug; | |||
| 279 | extern unsigned int bttv_gpio; | 279 | extern unsigned int bttv_gpio; |
| 280 | extern void bttv_gpio_tracking(struct bttv *btv, char *comment); | 280 | extern void bttv_gpio_tracking(struct bttv *btv, char *comment); |
| 281 | extern int init_bttv_i2c(struct bttv *btv); | 281 | extern int init_bttv_i2c(struct bttv *btv); |
| 282 | extern void init_bttv_i2c_ir(struct bttv *btv); | ||
| 282 | extern int fini_bttv_i2c(struct bttv *btv); | 283 | extern int fini_bttv_i2c(struct bttv *btv); |
| 283 | 284 | ||
| 284 | #define bttv_printk if (bttv_verbose) printk | 285 | #define bttv_printk if (bttv_verbose) printk |
