diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-11-20 09:23:54 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-11-20 09:55:10 -0500 |
commit | 20ae9742eba1bbd1f9d6658d1a1a72bc77fc741d (patch) | |
tree | be6ea87314c634a9ec3164ec0d6f7700abbc6546 /drivers/media/video/em28xx | |
parent | de72405f6fc1aaedc0412f88cf681ed33519c49a (diff) |
[media] em28xx: Add IR support for em2884
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/em28xx')
-rw-r--r-- | drivers/media/video/em28xx/em28xx-input.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/media/video/em28xx/em28xx-input.c b/drivers/media/video/em28xx/em28xx-input.c index 679da4804281..2630b265b0e8 100644 --- a/drivers/media/video/em28xx/em28xx-input.c +++ b/drivers/media/video/em28xx/em28xx-input.c | |||
@@ -306,7 +306,8 @@ static void em28xx_ir_handle_key(struct em28xx_IR *ir) | |||
306 | poll_result.rc_data[0], | 306 | poll_result.rc_data[0], |
307 | poll_result.toggle_bit); | 307 | poll_result.toggle_bit); |
308 | 308 | ||
309 | if (ir->dev->chip_id == CHIP_ID_EM2874) | 309 | if (ir->dev->chip_id == CHIP_ID_EM2874 || |
310 | ir->dev->chip_id == CHIP_ID_EM2884) | ||
310 | /* The em2874 clears the readcount field every time the | 311 | /* The em2874 clears the readcount field every time the |
311 | register is read. The em2860/2880 datasheet says that it | 312 | register is read. The em2860/2880 datasheet says that it |
312 | is supposed to clear the readcount, but it doesn't. So with | 313 | is supposed to clear the readcount, but it doesn't. So with |
@@ -371,13 +372,15 @@ int em28xx_ir_change_protocol(struct rc_dev *rc_dev, u64 rc_type) | |||
371 | case CHIP_ID_EM2883: | 372 | case CHIP_ID_EM2883: |
372 | ir->get_key = default_polling_getkey; | 373 | ir->get_key = default_polling_getkey; |
373 | break; | 374 | break; |
375 | case CHIP_ID_EM2884: | ||
374 | case CHIP_ID_EM2874: | 376 | case CHIP_ID_EM2874: |
375 | case CHIP_ID_EM28174: | 377 | case CHIP_ID_EM28174: |
376 | ir->get_key = em2874_polling_getkey; | 378 | ir->get_key = em2874_polling_getkey; |
377 | em28xx_write_regs(dev, EM2874_R50_IR_CONFIG, &ir_config, 1); | 379 | em28xx_write_regs(dev, EM2874_R50_IR_CONFIG, &ir_config, 1); |
378 | break; | 380 | break; |
379 | default: | 381 | default: |
380 | printk("Unrecognized em28xx chip id: IR not supported\n"); | 382 | printk("Unrecognized em28xx chip id 0x%02x: IR not supported\n", |
383 | dev->chip_id); | ||
381 | rc = -EINVAL; | 384 | rc = -EINVAL; |
382 | } | 385 | } |
383 | 386 | ||