diff options
Diffstat (limited to 'drivers/media/video/cx88/cx88-input.c')
-rw-r--r-- | drivers/media/video/cx88/cx88-input.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/media/video/cx88/cx88-input.c b/drivers/media/video/cx88/cx88-input.c index 83ebf7a3c054..57e1c024a547 100644 --- a/drivers/media/video/cx88/cx88-input.c +++ b/drivers/media/video/cx88/cx88-input.c | |||
@@ -196,18 +196,25 @@ int cx88_ir_init(struct cx88_core *core, struct pci_dev *pci) | |||
196 | case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1: | 196 | case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1: |
197 | case CX88_BOARD_HAUPPAUGE_HVR1100: | 197 | case CX88_BOARD_HAUPPAUGE_HVR1100: |
198 | case CX88_BOARD_HAUPPAUGE_HVR1300: | 198 | case CX88_BOARD_HAUPPAUGE_HVR1300: |
199 | case CX88_BOARD_HAUPPAUGE_HVR3000: | ||
199 | ir_codes = ir_codes_hauppauge_new; | 200 | ir_codes = ir_codes_hauppauge_new; |
200 | ir_type = IR_TYPE_RC5; | 201 | ir_type = IR_TYPE_RC5; |
201 | ir->sampling = 1; | 202 | ir->sampling = 1; |
202 | break; | 203 | break; |
203 | case CX88_BOARD_WINFAST_DTV2000H: | 204 | case CX88_BOARD_WINFAST_DTV2000H: |
204 | case CX88_BOARD_WINFAST2000XP_EXPERT: | ||
205 | ir_codes = ir_codes_winfast; | 205 | ir_codes = ir_codes_winfast; |
206 | ir->gpio_addr = MO_GP0_IO; | 206 | ir->gpio_addr = MO_GP0_IO; |
207 | ir->mask_keycode = 0x8f8; | 207 | ir->mask_keycode = 0x8f8; |
208 | ir->mask_keyup = 0x100; | 208 | ir->mask_keyup = 0x100; |
209 | ir->polling = 50; /* ms */ | 209 | ir->polling = 50; /* ms */ |
210 | break; | 210 | break; |
211 | case CX88_BOARD_WINFAST2000XP_EXPERT: | ||
212 | ir_codes = ir_codes_winfast; | ||
213 | ir->gpio_addr = MO_GP0_IO; | ||
214 | ir->mask_keycode = 0x8f8; | ||
215 | ir->mask_keyup = 0x100; | ||
216 | ir->polling = 1; /* ms */ | ||
217 | break; | ||
211 | case CX88_BOARD_IODATA_GVBCTV7E: | 218 | case CX88_BOARD_IODATA_GVBCTV7E: |
212 | ir_codes = ir_codes_iodata_bctv7e; | 219 | ir_codes = ir_codes_iodata_bctv7e; |
213 | ir->gpio_addr = MO_GP0_IO; | 220 | ir->gpio_addr = MO_GP0_IO; |
@@ -215,7 +222,7 @@ int cx88_ir_init(struct cx88_core *core, struct pci_dev *pci) | |||
215 | ir->mask_keydown = 0x02; | 222 | ir->mask_keydown = 0x02; |
216 | ir->polling = 5; /* ms */ | 223 | ir->polling = 5; /* ms */ |
217 | break; | 224 | break; |
218 | case CX88_BOARD_PROLINK_PLAYTVPVR: | 225 | case CX88_BOARD_PROLINK_PLAYTVPVR: |
219 | case CX88_BOARD_PIXELVIEW_PLAYTV_ULTRA_PRO: | 226 | case CX88_BOARD_PIXELVIEW_PLAYTV_ULTRA_PRO: |
220 | ir_codes = ir_codes_pixelview; | 227 | ir_codes = ir_codes_pixelview; |
221 | ir->gpio_addr = MO_GP1_IO; | 228 | ir->gpio_addr = MO_GP1_IO; |
@@ -419,6 +426,7 @@ void cx88_ir_irq(struct cx88_core *core) | |||
419 | case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1: | 426 | case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1: |
420 | case CX88_BOARD_HAUPPAUGE_HVR1100: | 427 | case CX88_BOARD_HAUPPAUGE_HVR1100: |
421 | case CX88_BOARD_HAUPPAUGE_HVR1300: | 428 | case CX88_BOARD_HAUPPAUGE_HVR1300: |
429 | case CX88_BOARD_HAUPPAUGE_HVR3000: | ||
422 | ircode = ir_decode_biphase(ir->samples, ir->scount, 5, 7); | 430 | ircode = ir_decode_biphase(ir->samples, ir->scount, 5, 7); |
423 | ir_dprintk("biphase decoded: %x\n", ircode); | 431 | ir_dprintk("biphase decoded: %x\n", ircode); |
424 | if ((ircode & 0xfffff000) != 0x3000) | 432 | if ((ircode & 0xfffff000) != 0x3000) |