All of lore.kernel.org
 help / color / mirror / Atom feed
* Getting IR to work on a hvr-1250 tuner.
@ 2011-06-08  3:10 Dark Shadow
  2011-06-08 10:19 ` Andy Walls
  0 siblings, 1 reply; 13+ messages in thread
From: Dark Shadow @ 2011-06-08  3:10 UTC (permalink / raw)
  To: linux-media

I have a capture card that was sold as a Hauppauge HVR-1250 (according
to the box) that I am trying to use but I am having trouble getting
all it's features at once. When I leave it auto detected by the module
I have working TV in MythTV even though it thinks it is a 1270 but IR
isn't setup.

dmesg outputs
#modprobe cx23885 enable_885_ir=1
[    7.592714] cx23885 driver version 0.0.2 loaded
[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
WinTV-HVR1270 [card=18,autodetected]
[    7.728163] IR JVC protocol handler initialized
[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5, serial# 6429897
[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155, type 54)
[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
(eeprom 0x88)
[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx 40)
[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has no
IR transmitter
[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
[    7.738991] cx23885[0]: cx23885 based dvb card
[    7.961122] IR Sony protocol handler initialized
[    7.977301] tda18271 1-0060: creating new instance
[    7.979325] TDA18271HD/C2 detected @ 1-0060
[    8.209663] DVB: registering new adapter (cx23885[0])
[    8.209668] DVB: registering adapter 0 frontend 0 (LG Electronics
LGDT3305 VSB/QAM Frontend)...
[    8.210095] cx23885_dev_checkrevision() Hardware revision = 0xd0
[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
latency: 0, mmio: 0xf7c00000
[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X


When I force it to be a 1250 no video works but IR seems to show up
(with the exception that it never seems to receive signals from the
remote)

#modprobe cx23885 enable_885_ir=1 card=3
[38647.660740] cx23885 driver version 0.0.2 loaded
[38647.660779] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[38647.661009] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
WinTV-HVR1250 [card=3,insmod option]
[38647.787427] tveeprom 0-0050: Hauppauge model 22111, rev C2F5, serial# 6429897
[38647.787431] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
[38647.787434] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155, type 54)
[38647.787437] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
(eeprom 0x88)
[38647.787439] tveeprom 0-0050: audio processor is CX23888 (idx 40)
[38647.787442] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
[38647.787444] tveeprom 0-0050: has no radio, has IR receiver, has no
IR transmitter
[38647.787447] cx23885[0]: hauppauge eeprom: model=22111
[38647.824508] cx25840 2-0044: cx23888 A/V decoder found @ 0x88 (cx23885[0])
[38648.457502] cx25840 2-0044: loaded v4l-cx23885-avcore-01.fw
firmware (16382 bytes)
[38648.465061] cx23885_dvb_register() allocating 1 frontend(s)
[38648.465064] cx23885[0]: cx23885 based dvb card
[38648.492632] cx23885[0]: frontend initialization failed
[38648.492637] cx23885_dvb_register() dvb_register failed err = -22
[38648.492640] cx23885_dev_setup() Failed to register dvb on VID_C
[38648.492644] cx23885_dev_checkrevision() Hardware revision = 0xd0
[38648.492650] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
latency: 0, mmio: 0xf7c00000
[38648.492660] cx23885 0000:07:00.0: setting latency timer to 64
[38648.492740] cx23885 0000:07:00.0: irq 48 for MSI/MSI-X
[38648.539598] Registered IR keymap rc-hauppauge
[38648.539775] input: cx23885 IR (Hauppauge WinTV-HVR1250) as
/devices/pci0000:00/0000:00:1c.1/0000:07:00.0/rc/rc0/input4
[38648.539852] rc0: cx23885 IR (Hauppauge WinTV-HVR1250) as
/devices/pci0000:00/0000:00:1c.1/0000:07:00.0/rc/rc0
[38648.539926] rc rc0: lirc_dev: driver ir-lirc-codec (cx23885)
registered at minor = 0


My setup commands for it's settings when using card=3

(I have read this is needed for this remote although according to the
Internet my grey remote is supposed to need a "hauppauge=1" parameter
but it doesn't exist (modinfo) in my version of the module from kernel
3.0-rc1
#modprobe ir-kbd-i2c

#ir-keytable -a /etc/rc_maps.cfg
Old keytable cleared
Wrote 136 keycode(s) to driver
Protocols changed to RC-5

#lsinput
/dev/input/event4
   bustype : BUS_PCI
   vendor  : 0x70
   product : 0x2211
   version : 1
   name    : "cx23885 IR (Hauppauge WinTV-HVR1"
   phys    : "pci-0000:07:00.0/ir0"
   bits ev : EV_SYN EV_KEY EV_MSC EV_REP

#lspci -v (plus a little -n)
07:00.0 0400: 14f1:8880 (rev 04)
	Subsystem: 0070:2211

07:00.0 Multimedia video controller: Conexant Systems, Inc. Hauppauge
Inc. HDPVR-1250 model 1196 (rev 04)
	Subsystem: Hauppauge computer works Inc. Device 2211
	Flags: bus master, fast devsel, latency 0, IRQ 48
	Memory at f7c00000 (64-bit, non-prefetchable) [size=2M]
	Capabilities: [40] Express Endpoint, MSI 00
	Capabilities: [80] Power Management version 3
	Capabilities: [90] Vital Product Data <?>
	Capabilities: [a0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable+
	Capabilities: [100] Advanced Error Reporting <?>
	Capabilities: [200] Virtual Channel <?>
	Kernel driver in use: cx23885
	Kernel modules: cx23885


I have heard this should show up as a normal keyboard to the system
but no button presses cause anything to happen to the system and
trying lirc with devinput (with devinput lircd.conf) and then opening
irw doesn't show any button presses either

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Getting IR to work on a hvr-1250 tuner.
  2011-06-08  3:10 Getting IR to work on a hvr-1250 tuner Dark Shadow
@ 2011-06-08 10:19 ` Andy Walls
  2011-06-08 19:18   ` Dark Shadow
  0 siblings, 1 reply; 13+ messages in thread
From: Andy Walls @ 2011-06-08 10:19 UTC (permalink / raw)
  To: Dark Shadow, linux-media

Dark Shadow <shadowofdarkness@gmail.com> wrote:

>I have a capture card that was sold as a Hauppauge HVR-1250 (according
>to the box) that I am trying to use but I am having trouble getting
>all it's features at once. When I leave it auto detected by the module
>I have working TV in MythTV even though it thinks it is a 1270 but IR
>isn't setup.
>
>dmesg outputs
>#modprobe cx23885 enable_885_ir=1
>[    7.592714] cx23885 driver version 0.0.2 loaded
>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low)
>-> IRQ 17
>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
>WinTV-HVR1270 [card=18,autodetected]
>[    7.728163] IR JVC protocol handler initialized
>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>serial# 6429897
>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155,
>type 54)
>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
>(eeprom 0x88)
>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx 40)
>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has no
>IR transmitter
>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>[    7.738991] cx23885[0]: cx23885 based dvb card
>[    7.961122] IR Sony protocol handler initialized
>[    7.977301] tda18271 1-0060: creating new instance
>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>[    8.209663] DVB: registering new adapter (cx23885[0])
>[    8.209668] DVB: registering adapter 0 frontend 0 (LG Electronics
>LGDT3305 VSB/QAM Frontend)...
>[    8.210095] cx23885_dev_checkrevision() Hardware revision = 0xd0
>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
>latency: 0, mmio: 0xf7c00000
>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>
>
>When I force it to be a 1250 no video works but IR seems to show up
>(with the exception that it never seems to receive signals from the
>remote)
>
>#modprobe cx23885 enable_885_ir=1 card=3
>[38647.660740] cx23885 driver version 0.0.2 loaded
>[38647.660779] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low)
>-> IRQ 17
>[38647.661009] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
>WinTV-HVR1250 [card=3,insmod option]
>[38647.787427] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>serial# 6429897
>[38647.787431] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>[38647.787434] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155,
>type 54)
>[38647.787437] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
>(eeprom 0x88)
>[38647.787439] tveeprom 0-0050: audio processor is CX23888 (idx 40)
>[38647.787442] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
>[38647.787444] tveeprom 0-0050: has no radio, has IR receiver, has no
>IR transmitter
>[38647.787447] cx23885[0]: hauppauge eeprom: model=22111
>[38647.824508] cx25840 2-0044: cx23888 A/V decoder found @ 0x88
>(cx23885[0])
>[38648.457502] cx25840 2-0044: loaded v4l-cx23885-avcore-01.fw
>firmware (16382 bytes)
>[38648.465061] cx23885_dvb_register() allocating 1 frontend(s)
>[38648.465064] cx23885[0]: cx23885 based dvb card
>[38648.492632] cx23885[0]: frontend initialization failed
>[38648.492637] cx23885_dvb_register() dvb_register failed err = -22
>[38648.492640] cx23885_dev_setup() Failed to register dvb on VID_C
>[38648.492644] cx23885_dev_checkrevision() Hardware revision = 0xd0
>[38648.492650] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
>latency: 0, mmio: 0xf7c00000
>[38648.492660] cx23885 0000:07:00.0: setting latency timer to 64
>[38648.492740] cx23885 0000:07:00.0: irq 48 for MSI/MSI-X
>[38648.539598] Registered IR keymap rc-hauppauge
>[38648.539775] input: cx23885 IR (Hauppauge WinTV-HVR1250) as
>/devices/pci0000:00/0000:00:1c.1/0000:07:00.0/rc/rc0/input4
>[38648.539852] rc0: cx23885 IR (Hauppauge WinTV-HVR1250) as
>/devices/pci0000:00/0000:00:1c.1/0000:07:00.0/rc/rc0
>[38648.539926] rc rc0: lirc_dev: driver ir-lirc-codec (cx23885)
>registered at minor = 0
>
>
>My setup commands for it's settings when using card=3
>
>(I have read this is needed for this remote although according to the
>Internet my grey remote is supposed to need a "hauppauge=1" parameter
>but it doesn't exist (modinfo) in my version of the module from kernel
>3.0-rc1
>#modprobe ir-kbd-i2c
>
>#ir-keytable -a /etc/rc_maps.cfg
>Old keytable cleared
>Wrote 136 keycode(s) to driver
>Protocols changed to RC-5
>
>#lsinput
>/dev/input/event4
>   bustype : BUS_PCI
>   vendor  : 0x70
>   product : 0x2211
>   version : 1
>   name    : "cx23885 IR (Hauppauge WinTV-HVR1"
>   phys    : "pci-0000:07:00.0/ir0"
>   bits ev : EV_SYN EV_KEY EV_MSC EV_REP
>
>#lspci -v (plus a little -n)
>07:00.0 0400: 14f1:8880 (rev 04)
>	Subsystem: 0070:2211
>
>07:00.0 Multimedia video controller: Conexant Systems, Inc. Hauppauge
>Inc. HDPVR-1250 model 1196 (rev 04)
>	Subsystem: Hauppauge computer works Inc. Device 2211
>	Flags: bus master, fast devsel, latency 0, IRQ 48
>	Memory at f7c00000 (64-bit, non-prefetchable) [size=2M]
>	Capabilities: [40] Express Endpoint, MSI 00
>	Capabilities: [80] Power Management version 3
>	Capabilities: [90] Vital Product Data <?>
>	Capabilities: [a0] Message Signalled Interrupts: Mask- 64bit+
>Queue=0/0 Enable+
>	Capabilities: [100] Advanced Error Reporting <?>
>	Capabilities: [200] Virtual Channel <?>
>	Kernel driver in use: cx23885
>	Kernel modules: cx23885
>
>
>I have heard this should show up as a normal keyboard to the system
>but no button presses cause anything to happen to the system and
>trying lirc with devinput (with devinput lircd.conf) and then opening
>irw doesn't show any button presses either
>--
>To unsubscribe from this list: send the line "unsubscribe linux-media"
>in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at  http://vger.kernel.org/majordomo-info.html

Don't force your card to a 1250, if the driver detects it is a 1270 with a CX23888 chip.  No need to use the enable_885_ir parameter with a CX23888 chip, either.  It only applies for two board models with actual CX23885 chips.

Use of IR with the CX23888 chip should be realtively trouble free, *if* the 1270's IR has been enabled in the driver code.  It likely has not been.  I don't have the source code in front of me at the moment to check.

It shouldn't be hard for anyone to patch a few files in the cx23885 driver to add it.  Patches are welcome...

Regards,
Andy  

 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Getting IR to work on a hvr-1250 tuner.
  2011-06-08 10:19 ` Andy Walls
@ 2011-06-08 19:18   ` Dark Shadow
  2011-06-09  0:24     ` [PATCH] cx23885: Add IR Rx support for HVR-1270 boards Andy Walls
  0 siblings, 1 reply; 13+ messages in thread
From: Dark Shadow @ 2011-06-08 19:18 UTC (permalink / raw)
  To: Andy Walls; +Cc: linux-media

On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net> wrote:
> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>
>>I have a capture card that was sold as a Hauppauge HVR-1250 (according
>>to the box) that I am trying to use but I am having trouble getting
>>all it's features at once. When I leave it auto detected by the module
>>I have working TV in MythTV even though it thinks it is a 1270 but IR
>>isn't setup.
>>
>>dmesg outputs
>>#modprobe cx23885 enable_885_ir=1
>>[    7.592714] cx23885 driver version 0.0.2 loaded
>>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low)
>>-> IRQ 17
>>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
>>WinTV-HVR1270 [card=18,autodetected]
>>[    7.728163] IR JVC protocol handler initialized
>>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>serial# 6429897
>>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155,
>>type 54)
>>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
>>(eeprom 0x88)
>>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx 40)
>>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
>>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has no
>>IR transmitter
>>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>>[    7.738991] cx23885[0]: cx23885 based dvb card
>>[    7.961122] IR Sony protocol handler initialized
>>[    7.977301] tda18271 1-0060: creating new instance
>>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>>[    8.209663] DVB: registering new adapter (cx23885[0])
>>[    8.209668] DVB: registering adapter 0 frontend 0 (LG Electronics
>>LGDT3305 VSB/QAM Frontend)...
>>[    8.210095] cx23885_dev_checkrevision() Hardware revision = 0xd0
>>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
>>latency: 0, mmio: 0xf7c00000
>>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>
>>
>>When I force it to be a 1250 no video works but IR seems to show up
>>(with the exception that it never seems to receive signals from the
>>remote)
>>
>>#modprobe cx23885 enable_885_ir=1 card=3
>>[38647.660740] cx23885 driver version 0.0.2 loaded
>>[38647.660779] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low)
>>-> IRQ 17
>>[38647.661009] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
>>WinTV-HVR1250 [card=3,insmod option]
>>[38647.787427] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>serial# 6429897
>>[38647.787431] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>[38647.787434] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155,
>>type 54)
>>[38647.787437] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
>>(eeprom 0x88)
>>[38647.787439] tveeprom 0-0050: audio processor is CX23888 (idx 40)
>>[38647.787442] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
>>[38647.787444] tveeprom 0-0050: has no radio, has IR receiver, has no
>>IR transmitter
>>[38647.787447] cx23885[0]: hauppauge eeprom: model=22111
>>[38647.824508] cx25840 2-0044: cx23888 A/V decoder found @ 0x88
>>(cx23885[0])
>>[38648.457502] cx25840 2-0044: loaded v4l-cx23885-avcore-01.fw
>>firmware (16382 bytes)
>>[38648.465061] cx23885_dvb_register() allocating 1 frontend(s)
>>[38648.465064] cx23885[0]: cx23885 based dvb card
>>[38648.492632] cx23885[0]: frontend initialization failed
>>[38648.492637] cx23885_dvb_register() dvb_register failed err = -22
>>[38648.492640] cx23885_dev_setup() Failed to register dvb on VID_C
>>[38648.492644] cx23885_dev_checkrevision() Hardware revision = 0xd0
>>[38648.492650] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
>>latency: 0, mmio: 0xf7c00000
>>[38648.492660] cx23885 0000:07:00.0: setting latency timer to 64
>>[38648.492740] cx23885 0000:07:00.0: irq 48 for MSI/MSI-X
>>[38648.539598] Registered IR keymap rc-hauppauge
>>[38648.539775] input: cx23885 IR (Hauppauge WinTV-HVR1250) as
>>/devices/pci0000:00/0000:00:1c.1/0000:07:00.0/rc/rc0/input4
>>[38648.539852] rc0: cx23885 IR (Hauppauge WinTV-HVR1250) as
>>/devices/pci0000:00/0000:00:1c.1/0000:07:00.0/rc/rc0
>>[38648.539926] rc rc0: lirc_dev: driver ir-lirc-codec (cx23885)
>>registered at minor = 0
>>
>>
>>My setup commands for it's settings when using card=3
>>
>>(I have read this is needed for this remote although according to the
>>Internet my grey remote is supposed to need a "hauppauge=1" parameter
>>but it doesn't exist (modinfo) in my version of the module from kernel
>>3.0-rc1
>>#modprobe ir-kbd-i2c
>>
>>#ir-keytable -a /etc/rc_maps.cfg
>>Old keytable cleared
>>Wrote 136 keycode(s) to driver
>>Protocols changed to RC-5
>>
>>#lsinput
>>/dev/input/event4
>>   bustype : BUS_PCI
>>   vendor  : 0x70
>>   product : 0x2211
>>   version : 1
>>   name    : "cx23885 IR (Hauppauge WinTV-HVR1"
>>   phys    : "pci-0000:07:00.0/ir0"
>>   bits ev : EV_SYN EV_KEY EV_MSC EV_REP
>>
>>#lspci -v (plus a little -n)
>>07:00.0 0400: 14f1:8880 (rev 04)
>>       Subsystem: 0070:2211
>>
>>07:00.0 Multimedia video controller: Conexant Systems, Inc. Hauppauge
>>Inc. HDPVR-1250 model 1196 (rev 04)
>>       Subsystem: Hauppauge computer works Inc. Device 2211
>>       Flags: bus master, fast devsel, latency 0, IRQ 48
>>       Memory at f7c00000 (64-bit, non-prefetchable) [size=2M]
>>       Capabilities: [40] Express Endpoint, MSI 00
>>       Capabilities: [80] Power Management version 3
>>       Capabilities: [90] Vital Product Data <?>
>>       Capabilities: [a0] Message Signalled Interrupts: Mask- 64bit+
>>Queue=0/0 Enable+
>>       Capabilities: [100] Advanced Error Reporting <?>
>>       Capabilities: [200] Virtual Channel <?>
>>       Kernel driver in use: cx23885
>>       Kernel modules: cx23885
>>
>>
>>I have heard this should show up as a normal keyboard to the system
>>but no button presses cause anything to happen to the system and
>>trying lirc with devinput (with devinput lircd.conf) and then opening
>>irw doesn't show any button presses either
>>--
>>To unsubscribe from this list: send the line "unsubscribe linux-media"
>>in
>>the body of a message to majordomo@vger.kernel.org
>>More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
> Don't force your card to a 1250, if the driver detects it is a 1270 with a CX23888 chip.  No need to use the enable_885_ir parameter with a CX23888 chip, either.  It only applies for two board models with actual CX23885 chips.
>
> Use of IR with the CX23888 chip should be realtively trouble free, *if* the 1270's IR has been enabled in the driver code.  It likely has not been.  I don't have the source code in front of me at the moment to check.
>
> It shouldn't be hard for anyone to patch a few files in the cx23885 driver to add it.  Patches are welcome...
>
> Regards,
> Andy
>
>
>

Under auto detect without the enable_885_ir there is no difference so
I can only hope someone will add support for it.

As a side problem until then do you know if it would it be possible to
use the Hauppauge remote that came with this card with a or Pinnacle
PCTV Pro IR Receiver It is serial port and uses Lirc "pinsys" driver
but I hate the remote that came with it. So far it works with it's
normal remote but changing lircd.conf to a hauppauge one doesn't allow
me to use a better remote.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-08 19:18   ` Dark Shadow
@ 2011-06-09  0:24     ` Andy Walls
  2011-06-09  0:35       ` Andy Walls
  2011-06-09  1:25       ` Dark Shadow
  0 siblings, 2 replies; 13+ messages in thread
From: Andy Walls @ 2011-06-09  0:24 UTC (permalink / raw)
  To: Dark Shadow; +Cc: linux-media

On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net> wrote:
> > Dark Shadow <shadowofdarkness@gmail.com> wrote:
> >
> >>I have a capture card that was sold as a Hauppauge HVR-1250 (according
> >>to the box) that I am trying to use but I am having trouble getting
> >>all it's features at once. When I leave it auto detected by the module
> >>I have working TV in MythTV even though it thinks it is a 1270 but IR
> >>isn't setup.
> >>
> >>dmesg outputs
> >>#modprobe cx23885 enable_885_ir=1
> >>[    7.592714] cx23885 driver version 0.0.2 loaded
> >>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low)
> >>-> IRQ 17
> >>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
> >>WinTV-HVR1270 [card=18,autodetected]
> >>[    7.728163] IR JVC protocol handler initialized
> >>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
> >>serial# 6429897
> >>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
> >>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155,
> >>type 54)
> >>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
> >>(eeprom 0x88)
> >>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx 40)
> >>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
> >>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has no
> >>IR transmitter
> >>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
> >>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
> >>[    7.738991] cx23885[0]: cx23885 based dvb card
> >>[    7.961122] IR Sony protocol handler initialized
> >>[    7.977301] tda18271 1-0060: creating new instance
> >>[    7.979325] TDA18271HD/C2 detected @ 1-0060
> >>[    8.209663] DVB: registering new adapter (cx23885[0])
> >>[    8.209668] DVB: registering adapter 0 frontend 0 (LG Electronics
> >>LGDT3305 VSB/QAM Frontend)...
> >>[    8.210095] cx23885_dev_checkrevision() Hardware revision = 0xd0
> >>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
> >>latency: 0, mmio: 0xf7c00000
> >>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
> >>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X

> >>#ir-keytable -a /etc/rc_maps.cfg
> >>Old keytable cleared
> >>Wrote 136 keycode(s) to driver
> >>Protocols changed to RC-5

> >>I have heard this should show up as a normal keyboard to the system
> >>but no button presses cause anything to happen to the system and
> >>trying lirc with devinput (with devinput lircd.conf) and then opening
> >>irw doesn't show any button presses either


> > Don't force your card to a 1250, if the driver detects it is a 1270
> with a CX23888 chip.  No need to use the enable_885_ir parameter with
> a CX23888 chip, either.  It only applies for two board models with
> actual CX23885 chips.
> >
> > Use of IR with the CX23888 chip should be realtively trouble free,
> *if* the 1270's IR has been enabled in the driver code.  It likely has
> not been.  I don't have the source code in front of me at the moment
> to check.
> >
> > It shouldn't be hard for anyone to patch a few files in the cx23885
> driver to add it.  Patches are welcome...
> >

> Under auto detect without the enable_885_ir there is no difference so
> I can only hope someone will add support for it.

I wasn't kidding when I said the patch is sholdn't be hard for anyone.
It is really, really simple cut-and-paste job.  In fact here is an
*untested* patch.

Regards,
Andy

cx23885: Add IR Rx support for HVR-1270 boards

Signed-off-by: Andy Walls <awalls@md.metrocast.net>


diff --git a/drivers/media/video/cx23885/cx23885-cards.c b/drivers/media/video/cx23885/cx23885-cards.c
index ea88722..5635588 100644
--- a/drivers/media/video/cx23885/cx23885-cards.c
+++ b/drivers/media/video/cx23885/cx23885-cards.c
@@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
 	case CX23885_BOARD_HAUPPAUGE_HVR1800:
 	case CX23885_BOARD_HAUPPAUGE_HVR1200:
 	case CX23885_BOARD_HAUPPAUGE_HVR1400:
-	case CX23885_BOARD_HAUPPAUGE_HVR1270:
 	case CX23885_BOARD_HAUPPAUGE_HVR1275:
 	case CX23885_BOARD_HAUPPAUGE_HVR1255:
 	case CX23885_BOARD_HAUPPAUGE_HVR1210:
 		/* FIXME: Implement me */
 		break;
+	case CX23885_BOARD_HAUPPAUGE_HVR1270:
+		ret = cx23888_ir_probe(dev);
+		if (ret)
+			break;
+		dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
+		v4l2_subdev_call(dev->sd_cx25840, core, s_io_pin_config,
+				 ir_rx_pin_cfg_count, ir_rx_pin_cfg);
+		break;
 	case CX23885_BOARD_HAUPPAUGE_HVR1850:
 	case CX23885_BOARD_HAUPPAUGE_HVR1290:
 		ret = cx23888_ir_probe(dev);
@@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
 void cx23885_ir_fini(struct cx23885_dev *dev)
 {
 	switch (dev->board) {
+	case CX23885_BOARD_HAUPPAUGE_HVR1270:
 	case CX23885_BOARD_HAUPPAUGE_HVR1850:
 	case CX23885_BOARD_HAUPPAUGE_HVR1290:
 		cx23885_irq_remove(dev, PCI_MSK_IR);
@@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int tdi, int read_tdo)
 void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
 {
 	switch (dev->board) {
+	case CX23885_BOARD_HAUPPAUGE_HVR1270:
 	case CX23885_BOARD_HAUPPAUGE_HVR1850:
 	case CX23885_BOARD_HAUPPAUGE_HVR1290:
 		if (dev->sd_ir)
@@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
 	case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
 	case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
 	case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
+	case CX23885_BOARD_HAUPPAUGE_HVR1270:
 	case CX23885_BOARD_HAUPPAUGE_HVR1850:
 	case CX23885_BOARD_MYGICA_X8506:
 	case CX23885_BOARD_MAGICPRO_PROHDTVE2:
diff --git a/drivers/media/video/cx23885/cx23885-input.c b/drivers/media/video/cx23885/cx23885-input.c
index e97cafd..bc28d2c 100644
--- a/drivers/media/video/cx23885/cx23885-input.c
+++ b/drivers/media/video/cx23885/cx23885-input.c
@@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct cx23885_dev *dev, u32 events)
 		return;
 
 	switch (dev->board) {
+	case CX23885_BOARD_HAUPPAUGE_HVR1270:
 	case CX23885_BOARD_HAUPPAUGE_HVR1850:
 	case CX23885_BOARD_HAUPPAUGE_HVR1290:
 	case CX23885_BOARD_TEVII_S470:
@@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct cx23885_dev *dev)
 
 	v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
 	switch (dev->board) {
+	case CX23885_BOARD_HAUPPAUGE_HVR1270:
 	case CX23885_BOARD_HAUPPAUGE_HVR1850:
 	case CX23885_BOARD_HAUPPAUGE_HVR1290:
 	case CX23885_BOARD_HAUPPAUGE_HVR1250:
@@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
 		return -ENODEV;
 
 	switch (dev->board) {
+	case CX23885_BOARD_HAUPPAUGE_HVR1270:
 	case CX23885_BOARD_HAUPPAUGE_HVR1850:
 	case CX23885_BOARD_HAUPPAUGE_HVR1290:
 	case CX23885_BOARD_HAUPPAUGE_HVR1250:





^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  0:24     ` [PATCH] cx23885: Add IR Rx support for HVR-1270 boards Andy Walls
@ 2011-06-09  0:35       ` Andy Walls
  2011-06-09  1:25       ` Dark Shadow
  1 sibling, 0 replies; 13+ messages in thread
From: Andy Walls @ 2011-06-09  0:35 UTC (permalink / raw)
  To: Dark Shadow; +Cc: linux-media

On Wed, 2011-06-08 at 20:24 -0400, Andy Walls wrote:
> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
> > On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net> wrote:
> > > Dark Shadow <shadowofdarkness@gmail.com> wrote:

> > > It shouldn't be hard for anyone to patch a few files in the cx23885
> > driver to add it.  Patches are welcome...


> I wasn't kidding when I said the patch is sholdn't be hard for anyone.
                                         ^^^^^^^^^^^
                                          shouldn't
   
> It is really, really simple cut-and-paste job.  In fact here is an
       ^
       a

> *untested* patch.


Good grief, I need to wear my glasses when I type emails. :P

-Andy



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  0:24     ` [PATCH] cx23885: Add IR Rx support for HVR-1270 boards Andy Walls
  2011-06-09  0:35       ` Andy Walls
@ 2011-06-09  1:25       ` Dark Shadow
  2011-06-09  1:34         ` Andy Walls
  1 sibling, 1 reply; 13+ messages in thread
From: Dark Shadow @ 2011-06-09  1:25 UTC (permalink / raw)
  To: Andy Walls; +Cc: linux-media

On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls <awalls@md.metrocast.net> wrote:
> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net> wrote:
>> > Dark Shadow <shadowofdarkness@gmail.com> wrote:
>> >
>> >>I have a capture card that was sold as a Hauppauge HVR-1250 (according
>> >>to the box) that I am trying to use but I am having trouble getting
>> >>all it's features at once. When I leave it auto detected by the module
>> >>I have working TV in MythTV even though it thinks it is a 1270 but IR
>> >>isn't setup.
>> >>
>> >>dmesg outputs
>> >>#modprobe cx23885 enable_885_ir=1
>> >>[    7.592714] cx23885 driver version 0.0.2 loaded
>> >>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level, low)
>> >>-> IRQ 17
>> >>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board: Hauppauge
>> >>WinTV-HVR1270 [card=18,autodetected]
>> >>[    7.728163] IR JVC protocol handler initialized
>> >>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>> >>serial# 6429897
>> >>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>> >>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155,
>> >>type 54)
>> >>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital
>> >>(eeprom 0x88)
>> >>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx 40)
>> >>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
>> >>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has no
>> >>IR transmitter
>> >>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>> >>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>> >>[    7.738991] cx23885[0]: cx23885 based dvb card
>> >>[    7.961122] IR Sony protocol handler initialized
>> >>[    7.977301] tda18271 1-0060: creating new instance
>> >>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>> >>[    8.209663] DVB: registering new adapter (cx23885[0])
>> >>[    8.209668] DVB: registering adapter 0 frontend 0 (LG Electronics
>> >>LGDT3305 VSB/QAM Frontend)...
>> >>[    8.210095] cx23885_dev_checkrevision() Hardware revision = 0xd0
>> >>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq: 17,
>> >>latency: 0, mmio: 0xf7c00000
>> >>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>> >>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>
>> >>#ir-keytable -a /etc/rc_maps.cfg
>> >>Old keytable cleared
>> >>Wrote 136 keycode(s) to driver
>> >>Protocols changed to RC-5
>
>> >>I have heard this should show up as a normal keyboard to the system
>> >>but no button presses cause anything to happen to the system and
>> >>trying lirc with devinput (with devinput lircd.conf) and then opening
>> >>irw doesn't show any button presses either
>
>
>> > Don't force your card to a 1250, if the driver detects it is a 1270
>> with a CX23888 chip.  No need to use the enable_885_ir parameter with
>> a CX23888 chip, either.  It only applies for two board models with
>> actual CX23885 chips.
>> >
>> > Use of IR with the CX23888 chip should be realtively trouble free,
>> *if* the 1270's IR has been enabled in the driver code.  It likely has
>> not been.  I don't have the source code in front of me at the moment
>> to check.
>> >
>> > It shouldn't be hard for anyone to patch a few files in the cx23885
>> driver to add it.  Patches are welcome...
>> >
>
>> Under auto detect without the enable_885_ir there is no difference so
>> I can only hope someone will add support for it.
>
> I wasn't kidding when I said the patch is sholdn't be hard for anyone.
> It is really, really simple cut-and-paste job.  In fact here is an
> *untested* patch.
>
> Regards,
> Andy
>
> cx23885: Add IR Rx support for HVR-1270 boards
>
> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>
>
> diff --git a/drivers/media/video/cx23885/cx23885-cards.c b/drivers/media/video/cx23885/cx23885-cards.c
> index ea88722..5635588 100644
> --- a/drivers/media/video/cx23885/cx23885-cards.c
> +++ b/drivers/media/video/cx23885/cx23885-cards.c
> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>                /* FIXME: Implement me */
>                break;
> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
> +               ret = cx23888_ir_probe(dev);
> +               if (ret)
> +                       break;
> +               dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
> +               v4l2_subdev_call(dev->sd_cx25840, core, s_io_pin_config,
> +                                ir_rx_pin_cfg_count, ir_rx_pin_cfg);
> +               break;
>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>                ret = cx23888_ir_probe(dev);
> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>  void cx23885_ir_fini(struct cx23885_dev *dev)
>  {
>        switch (dev->board) {
> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>                cx23885_irq_remove(dev, PCI_MSK_IR);
> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int tdi, int read_tdo)
>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>  {
>        switch (dev->board) {
> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>                if (dev->sd_ir)
> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>        case CX23885_BOARD_MYGICA_X8506:
>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
> diff --git a/drivers/media/video/cx23885/cx23885-input.c b/drivers/media/video/cx23885/cx23885-input.c
> index e97cafd..bc28d2c 100644
> --- a/drivers/media/video/cx23885/cx23885-input.c
> +++ b/drivers/media/video/cx23885/cx23885-input.c
> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct cx23885_dev *dev, u32 events)
>                return;
>
>        switch (dev->board) {
> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>        case CX23885_BOARD_TEVII_S470:
> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct cx23885_dev *dev)
>
>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
>        switch (dev->board) {
> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
>                return -ENODEV;
>
>        switch (dev->board) {
> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>
>
>
>
>

Thank you I just tested those changes and they work (in getting the IR
to work to the same level as forcing the card model and not cause
problems for the video)

I still can't use the remote any more then forcing the card model but
I have a guess on that. According to everything I have read the
ir-kbd-i2c module is needed but it never auto loads on my system so I
am thinking it is just not updated to know about this card and may
only need the same type of changes as the cx23885 module. (I am
guessing since I can't even program a Hello World) Is there any chance
you would be able to see if any easy changes could be done to it.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  1:25       ` Dark Shadow
@ 2011-06-09  1:34         ` Andy Walls
  2011-06-09  2:31           ` Dark Shadow
  0 siblings, 1 reply; 13+ messages in thread
From: Andy Walls @ 2011-06-09  1:34 UTC (permalink / raw)
  To: Dark Shadow; +Cc: linux-media

Dark Shadow <shadowofdarkness@gmail.com> wrote:

>On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls <awalls@md.metrocast.net>
>wrote:
>> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net>
>wrote:
>>> > Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>> >
>>> >>I have a capture card that was sold as a Hauppauge HVR-1250
>(according
>>> >>to the box) that I am trying to use but I am having trouble
>getting
>>> >>all it's features at once. When I leave it auto detected by the
>module
>>> >>I have working TV in MythTV even though it thinks it is a 1270 but
>IR
>>> >>isn't setup.
>>> >>
>>> >>dmesg outputs
>>> >>#modprobe cx23885 enable_885_ir=1
>>> >>[    7.592714] cx23885 driver version 0.0.2 loaded
>>> >>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level,
>low)
>>> >>-> IRQ 17
>>> >>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board:
>Hauppauge
>>> >>WinTV-HVR1270 [card=18,autodetected]
>>> >>[    7.728163] IR JVC protocol handler initialized
>>> >>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>> >>serial# 6429897
>>> >>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>> >>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx
>155,
>>> >>type 54)
>>> >>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB
>Digital
>>> >>(eeprom 0x88)
>>> >>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx
>40)
>>> >>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx
>34)
>>> >>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has
>no
>>> >>IR transmitter
>>> >>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>> >>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>>> >>[    7.738991] cx23885[0]: cx23885 based dvb card
>>> >>[    7.961122] IR Sony protocol handler initialized
>>> >>[    7.977301] tda18271 1-0060: creating new instance
>>> >>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>>> >>[    8.209663] DVB: registering new adapter (cx23885[0])
>>> >>[    8.209668] DVB: registering adapter 0 frontend 0 (LG
>Electronics
>>> >>LGDT3305 VSB/QAM Frontend)...
>>> >>[    8.210095] cx23885_dev_checkrevision() Hardware revision =
>0xd0
>>> >>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq:
>17,
>>> >>latency: 0, mmio: 0xf7c00000
>>> >>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>>> >>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>
>>> >>#ir-keytable -a /etc/rc_maps.cfg
>>> >>Old keytable cleared
>>> >>Wrote 136 keycode(s) to driver
>>> >>Protocols changed to RC-5
>>
>>> >>I have heard this should show up as a normal keyboard to the
>system
>>> >>but no button presses cause anything to happen to the system and
>>> >>trying lirc with devinput (with devinput lircd.conf) and then
>opening
>>> >>irw doesn't show any button presses either
>>
>>
>>> > Don't force your card to a 1250, if the driver detects it is a
>1270
>>> with a CX23888 chip.  No need to use the enable_885_ir parameter
>with
>>> a CX23888 chip, either.  It only applies for two board models with
>>> actual CX23885 chips.
>>> >
>>> > Use of IR with the CX23888 chip should be realtively trouble free,
>>> *if* the 1270's IR has been enabled in the driver code.  It likely
>has
>>> not been.  I don't have the source code in front of me at the moment
>>> to check.
>>> >
>>> > It shouldn't be hard for anyone to patch a few files in the
>cx23885
>>> driver to add it.  Patches are welcome...
>>> >
>>
>>> Under auto detect without the enable_885_ir there is no difference
>so
>>> I can only hope someone will add support for it.
>>
>> I wasn't kidding when I said the patch is sholdn't be hard for
>anyone.
>> It is really, really simple cut-and-paste job.  In fact here is an
>> *untested* patch.
>>
>> Regards,
>> Andy
>>
>> cx23885: Add IR Rx support for HVR-1270 boards
>>
>> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>>
>>
>> diff --git a/drivers/media/video/cx23885/cx23885-cards.c
>b/drivers/media/video/cx23885/cx23885-cards.c
>> index ea88722..5635588 100644
>> --- a/drivers/media/video/cx23885/cx23885-cards.c
>> +++ b/drivers/media/video/cx23885/cx23885-cards.c
>> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
>> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>>                /* FIXME: Implement me */
>>                break;
>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>> +               ret = cx23888_ir_probe(dev);
>> +               if (ret)
>> +                       break;
>> +               dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
>> +               v4l2_subdev_call(dev->sd_cx25840, core,
>s_io_pin_config,
>> +                                ir_rx_pin_cfg_count, ir_rx_pin_cfg);
>> +               break;
>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>                ret = cx23888_ir_probe(dev);
>> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>  void cx23885_ir_fini(struct cx23885_dev *dev)
>>  {
>>        switch (dev->board) {
>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>                cx23885_irq_remove(dev, PCI_MSK_IR);
>> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int
>tdi, int read_tdo)
>>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>>  {
>>        switch (dev->board) {
>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>                if (dev->sd_ir)
>> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev
>*dev)
>>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>        case CX23885_BOARD_MYGICA_X8506:
>>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
>> diff --git a/drivers/media/video/cx23885/cx23885-input.c
>b/drivers/media/video/cx23885/cx23885-input.c
>> index e97cafd..bc28d2c 100644
>> --- a/drivers/media/video/cx23885/cx23885-input.c
>> +++ b/drivers/media/video/cx23885/cx23885-input.c
>> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct
>cx23885_dev *dev, u32 events)
>>                return;
>>
>>        switch (dev->board) {
>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>        case CX23885_BOARD_TEVII_S470:
>> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct
>cx23885_dev *dev)
>>
>>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
>>        switch (dev->board) {
>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
>>                return -ENODEV;
>>
>>        switch (dev->board) {
>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>
>>
>>
>>
>>
>
>Thank you I just tested those changes and they work (in getting the IR
>to work to the same level as forcing the card model and not cause
>problems for the video)
>
>I still can't use the remote any more then forcing the card model but
>I have a guess on that. According to everything I have read the
>ir-kbd-i2c module is needed but it never auto loads on my system so I
>am thinking it is just not updated to know about this card and may
>only need the same type of changes as the cx23885 module. (I am
>guessing since I can't even program a Hello World) Is there any chance
>you would be able to see if any easy changes could be done to it.

You don't need ir-kbd-i2c for this ir unit.  If you don't have the right keymap loaded, the remote won't work though.

The cx23885 module has a parameter called ir_888_debug (or something similar).  Set it to a value of around 7 or so.  The cx23885 module will log pulse and space measurments to dmesg or var/log/messages.  That way you can at least verify pulses are being processed.

If pulses are not being processed, check that the cable is firmly plugged into the card and that you have fresh batteries in the remote.

I don't have a 1270 of my own, so I can't help too much.

Andy

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  1:34         ` Andy Walls
@ 2011-06-09  2:31           ` Dark Shadow
  2011-06-09  3:17             ` Dark Shadow
  0 siblings, 1 reply; 13+ messages in thread
From: Dark Shadow @ 2011-06-09  2:31 UTC (permalink / raw)
  To: Andy Walls; +Cc: linux-media

On Wed, Jun 8, 2011 at 7:34 PM, Andy Walls <awalls@md.metrocast.net> wrote:
> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>
>>On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls <awalls@md.metrocast.net>
>>wrote:
>>> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>>>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net>
>>wrote:
>>>> > Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>> >
>>>> >>I have a capture card that was sold as a Hauppauge HVR-1250
>>(according
>>>> >>to the box) that I am trying to use but I am having trouble
>>getting
>>>> >>all it's features at once. When I leave it auto detected by the
>>module
>>>> >>I have working TV in MythTV even though it thinks it is a 1270 but
>>IR
>>>> >>isn't setup.
>>>> >>
>>>> >>dmesg outputs
>>>> >>#modprobe cx23885 enable_885_ir=1
>>>> >>[    7.592714] cx23885 driver version 0.0.2 loaded
>>>> >>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level,
>>low)
>>>> >>-> IRQ 17
>>>> >>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board:
>>Hauppauge
>>>> >>WinTV-HVR1270 [card=18,autodetected]
>>>> >>[    7.728163] IR JVC protocol handler initialized
>>>> >>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>>> >>serial# 6429897
>>>> >>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>>> >>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx
>>155,
>>>> >>type 54)
>>>> >>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB
>>Digital
>>>> >>(eeprom 0x88)
>>>> >>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx
>>40)
>>>> >>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx
>>34)
>>>> >>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has
>>no
>>>> >>IR transmitter
>>>> >>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>>> >>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>>>> >>[    7.738991] cx23885[0]: cx23885 based dvb card
>>>> >>[    7.961122] IR Sony protocol handler initialized
>>>> >>[    7.977301] tda18271 1-0060: creating new instance
>>>> >>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>>>> >>[    8.209663] DVB: registering new adapter (cx23885[0])
>>>> >>[    8.209668] DVB: registering adapter 0 frontend 0 (LG
>>Electronics
>>>> >>LGDT3305 VSB/QAM Frontend)...
>>>> >>[    8.210095] cx23885_dev_checkrevision() Hardware revision =
>>0xd0
>>>> >>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq:
>>17,
>>>> >>latency: 0, mmio: 0xf7c00000
>>>> >>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>>>> >>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>>
>>>> >>#ir-keytable -a /etc/rc_maps.cfg
>>>> >>Old keytable cleared
>>>> >>Wrote 136 keycode(s) to driver
>>>> >>Protocols changed to RC-5
>>>
>>>> >>I have heard this should show up as a normal keyboard to the
>>system
>>>> >>but no button presses cause anything to happen to the system and
>>>> >>trying lirc with devinput (with devinput lircd.conf) and then
>>opening
>>>> >>irw doesn't show any button presses either
>>>
>>>
>>>> > Don't force your card to a 1250, if the driver detects it is a
>>1270
>>>> with a CX23888 chip.  No need to use the enable_885_ir parameter
>>with
>>>> a CX23888 chip, either.  It only applies for two board models with
>>>> actual CX23885 chips.
>>>> >
>>>> > Use of IR with the CX23888 chip should be realtively trouble free,
>>>> *if* the 1270's IR has been enabled in the driver code.  It likely
>>has
>>>> not been.  I don't have the source code in front of me at the moment
>>>> to check.
>>>> >
>>>> > It shouldn't be hard for anyone to patch a few files in the
>>cx23885
>>>> driver to add it.  Patches are welcome...
>>>> >
>>>
>>>> Under auto detect without the enable_885_ir there is no difference
>>so
>>>> I can only hope someone will add support for it.
>>>
>>> I wasn't kidding when I said the patch is sholdn't be hard for
>>anyone.
>>> It is really, really simple cut-and-paste job.  In fact here is an
>>> *untested* patch.
>>>
>>> Regards,
>>> Andy
>>>
>>> cx23885: Add IR Rx support for HVR-1270 boards
>>>
>>> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>>>
>>>
>>> diff --git a/drivers/media/video/cx23885/cx23885-cards.c
>>b/drivers/media/video/cx23885/cx23885-cards.c
>>> index ea88722..5635588 100644
>>> --- a/drivers/media/video/cx23885/cx23885-cards.c
>>> +++ b/drivers/media/video/cx23885/cx23885-cards.c
>>> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
>>> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>>>                /* FIXME: Implement me */
>>>                break;
>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>> +               ret = cx23888_ir_probe(dev);
>>> +               if (ret)
>>> +                       break;
>>> +               dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
>>> +               v4l2_subdev_call(dev->sd_cx25840, core,
>>s_io_pin_config,
>>> +                                ir_rx_pin_cfg_count, ir_rx_pin_cfg);
>>> +               break;
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>                ret = cx23888_ir_probe(dev);
>>> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>  void cx23885_ir_fini(struct cx23885_dev *dev)
>>>  {
>>>        switch (dev->board) {
>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>                cx23885_irq_remove(dev, PCI_MSK_IR);
>>> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int
>>tdi, int read_tdo)
>>>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>>>  {
>>>        switch (dev->board) {
>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>                if (dev->sd_ir)
>>> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev
>>*dev)
>>>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>>>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>>>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>        case CX23885_BOARD_MYGICA_X8506:
>>>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
>>> diff --git a/drivers/media/video/cx23885/cx23885-input.c
>>b/drivers/media/video/cx23885/cx23885-input.c
>>> index e97cafd..bc28d2c 100644
>>> --- a/drivers/media/video/cx23885/cx23885-input.c
>>> +++ b/drivers/media/video/cx23885/cx23885-input.c
>>> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct
>>cx23885_dev *dev, u32 events)
>>>                return;
>>>
>>>        switch (dev->board) {
>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>        case CX23885_BOARD_TEVII_S470:
>>> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct
>>cx23885_dev *dev)
>>>
>>>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
>>>        switch (dev->board) {
>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
>>>                return -ENODEV;
>>>
>>>        switch (dev->board) {
>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>
>>>
>>>
>>>
>>>
>>
>>Thank you I just tested those changes and they work (in getting the IR
>>to work to the same level as forcing the card model and not cause
>>problems for the video)
>>
>>I still can't use the remote any more then forcing the card model but
>>I have a guess on that. According to everything I have read the
>>ir-kbd-i2c module is needed but it never auto loads on my system so I
>>am thinking it is just not updated to know about this card and may
>>only need the same type of changes as the cx23885 module. (I am
>>guessing since I can't even program a Hello World) Is there any chance
>>you would be able to see if any easy changes could be done to it.
>
> You don't need ir-kbd-i2c for this ir unit.  If you don't have the right keymap loaded, the remote won't work though.
>
> The cx23885 module has a parameter called ir_888_debug (or something similar).  Set it to a value of around 7 or so.  The cx23885 module will log pulse and space measurments to dmesg or var/log/messages.  That way you can at least verify pulses are being processed.
>
> If pulses are not being processed, check that the cable is firmly plugged into the card and that you have fresh batteries in the remote.
>
> I don't have a 1270 of my own, so I can't help too much.
>
> Andy
>



I have been unable to get any debug output but on two occasions I got
the down arrow to work on the XBMC menu but both times were followed
by the system locking up and I can't reproduce it anymore.

Do I need the parameter to enable ir or not? I have tried it both ways.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  2:31           ` Dark Shadow
@ 2011-06-09  3:17             ` Dark Shadow
  2011-06-09  3:27               ` Dark Shadow
  0 siblings, 1 reply; 13+ messages in thread
From: Dark Shadow @ 2011-06-09  3:17 UTC (permalink / raw)
  To: Andy Walls; +Cc: linux-media

On Wed, Jun 8, 2011 at 8:31 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
> On Wed, Jun 8, 2011 at 7:34 PM, Andy Walls <awalls@md.metrocast.net> wrote:
>> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>
>>>On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls <awalls@md.metrocast.net>
>>>wrote:
>>>> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>>>>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net>
>>>wrote:
>>>>> > Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>> >
>>>>> >>I have a capture card that was sold as a Hauppauge HVR-1250
>>>(according
>>>>> >>to the box) that I am trying to use but I am having trouble
>>>getting
>>>>> >>all it's features at once. When I leave it auto detected by the
>>>module
>>>>> >>I have working TV in MythTV even though it thinks it is a 1270 but
>>>IR
>>>>> >>isn't setup.
>>>>> >>
>>>>> >>dmesg outputs
>>>>> >>#modprobe cx23885 enable_885_ir=1
>>>>> >>[    7.592714] cx23885 driver version 0.0.2 loaded
>>>>> >>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level,
>>>low)
>>>>> >>-> IRQ 17
>>>>> >>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board:
>>>Hauppauge
>>>>> >>WinTV-HVR1270 [card=18,autodetected]
>>>>> >>[    7.728163] IR JVC protocol handler initialized
>>>>> >>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>>>> >>serial# 6429897
>>>>> >>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>>>> >>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx
>>>155,
>>>>> >>type 54)
>>>>> >>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB
>>>Digital
>>>>> >>(eeprom 0x88)
>>>>> >>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx
>>>40)
>>>>> >>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx
>>>34)
>>>>> >>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has
>>>no
>>>>> >>IR transmitter
>>>>> >>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>>>> >>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>>>>> >>[    7.738991] cx23885[0]: cx23885 based dvb card
>>>>> >>[    7.961122] IR Sony protocol handler initialized
>>>>> >>[    7.977301] tda18271 1-0060: creating new instance
>>>>> >>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>>>>> >>[    8.209663] DVB: registering new adapter (cx23885[0])
>>>>> >>[    8.209668] DVB: registering adapter 0 frontend 0 (LG
>>>Electronics
>>>>> >>LGDT3305 VSB/QAM Frontend)...
>>>>> >>[    8.210095] cx23885_dev_checkrevision() Hardware revision =
>>>0xd0
>>>>> >>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq:
>>>17,
>>>>> >>latency: 0, mmio: 0xf7c00000
>>>>> >>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>>>>> >>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>>>
>>>>> >>#ir-keytable -a /etc/rc_maps.cfg
>>>>> >>Old keytable cleared
>>>>> >>Wrote 136 keycode(s) to driver
>>>>> >>Protocols changed to RC-5
>>>>
>>>>> >>I have heard this should show up as a normal keyboard to the
>>>system
>>>>> >>but no button presses cause anything to happen to the system and
>>>>> >>trying lirc with devinput (with devinput lircd.conf) and then
>>>opening
>>>>> >>irw doesn't show any button presses either
>>>>
>>>>
>>>>> > Don't force your card to a 1250, if the driver detects it is a
>>>1270
>>>>> with a CX23888 chip.  No need to use the enable_885_ir parameter
>>>with
>>>>> a CX23888 chip, either.  It only applies for two board models with
>>>>> actual CX23885 chips.
>>>>> >
>>>>> > Use of IR with the CX23888 chip should be realtively trouble free,
>>>>> *if* the 1270's IR has been enabled in the driver code.  It likely
>>>has
>>>>> not been.  I don't have the source code in front of me at the moment
>>>>> to check.
>>>>> >
>>>>> > It shouldn't be hard for anyone to patch a few files in the
>>>cx23885
>>>>> driver to add it.  Patches are welcome...
>>>>> >
>>>>
>>>>> Under auto detect without the enable_885_ir there is no difference
>>>so
>>>>> I can only hope someone will add support for it.
>>>>
>>>> I wasn't kidding when I said the patch is sholdn't be hard for
>>>anyone.
>>>> It is really, really simple cut-and-paste job.  In fact here is an
>>>> *untested* patch.
>>>>
>>>> Regards,
>>>> Andy
>>>>
>>>> cx23885: Add IR Rx support for HVR-1270 boards
>>>>
>>>> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>>>>
>>>>
>>>> diff --git a/drivers/media/video/cx23885/cx23885-cards.c
>>>b/drivers/media/video/cx23885/cx23885-cards.c
>>>> index ea88722..5635588 100644
>>>> --- a/drivers/media/video/cx23885/cx23885-cards.c
>>>> +++ b/drivers/media/video/cx23885/cx23885-cards.c
>>>> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
>>>> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>>>>                /* FIXME: Implement me */
>>>>                break;
>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>> +               ret = cx23888_ir_probe(dev);
>>>> +               if (ret)
>>>> +                       break;
>>>> +               dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
>>>> +               v4l2_subdev_call(dev->sd_cx25840, core,
>>>s_io_pin_config,
>>>> +                                ir_rx_pin_cfg_count, ir_rx_pin_cfg);
>>>> +               break;
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>                ret = cx23888_ir_probe(dev);
>>>> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>  void cx23885_ir_fini(struct cx23885_dev *dev)
>>>>  {
>>>>        switch (dev->board) {
>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>                cx23885_irq_remove(dev, PCI_MSK_IR);
>>>> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int
>>>tdi, int read_tdo)
>>>>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>>>>  {
>>>>        switch (dev->board) {
>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>                if (dev->sd_ir)
>>>> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev
>>>*dev)
>>>>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>>>>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>>>>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>        case CX23885_BOARD_MYGICA_X8506:
>>>>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
>>>> diff --git a/drivers/media/video/cx23885/cx23885-input.c
>>>b/drivers/media/video/cx23885/cx23885-input.c
>>>> index e97cafd..bc28d2c 100644
>>>> --- a/drivers/media/video/cx23885/cx23885-input.c
>>>> +++ b/drivers/media/video/cx23885/cx23885-input.c
>>>> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct
>>>cx23885_dev *dev, u32 events)
>>>>                return;
>>>>
>>>>        switch (dev->board) {
>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>        case CX23885_BOARD_TEVII_S470:
>>>> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct
>>>cx23885_dev *dev)
>>>>
>>>>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
>>>>        switch (dev->board) {
>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
>>>>                return -ENODEV;
>>>>
>>>>        switch (dev->board) {
>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>Thank you I just tested those changes and they work (in getting the IR
>>>to work to the same level as forcing the card model and not cause
>>>problems for the video)
>>>
>>>I still can't use the remote any more then forcing the card model but
>>>I have a guess on that. According to everything I have read the
>>>ir-kbd-i2c module is needed but it never auto loads on my system so I
>>>am thinking it is just not updated to know about this card and may
>>>only need the same type of changes as the cx23885 module. (I am
>>>guessing since I can't even program a Hello World) Is there any chance
>>>you would be able to see if any easy changes could be done to it.
>>
>> You don't need ir-kbd-i2c for this ir unit.  If you don't have the right keymap loaded, the remote won't work though.
>>
>> The cx23885 module has a parameter called ir_888_debug (or something similar).  Set it to a value of around 7 or so.  The cx23885 module will log pulse and space measurments to dmesg or var/log/messages.  That way you can at least verify pulses are being processed.
>>
>> If pulses are not being processed, check that the cable is firmly plugged into the card and that you have fresh batteries in the remote.
>>
>> I don't have a 1270 of my own, so I can't help too much.
>>
>> Andy
>>
>
>
>
> I have been unable to get any debug output but on two occasions I got
> the down arrow to work on the XBMC menu but both times were followed
> by the system locking up and I can't reproduce it anymore.
>
> Do I need the parameter to enable ir or not? I have tried it both ways.
>

After a couple more 1 button freezes the computer. I had one occasion
that for about 20 seconds the remote was working perfect (play/pause,
arrows, volume) then it just stopped working for no reason (but
luckily didn't crash the computer) This was with no module parameters.

So it can work but is extremely flaky.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  3:17             ` Dark Shadow
@ 2011-06-09  3:27               ` Dark Shadow
  2011-06-09  4:12                 ` Dark Shadow
  0 siblings, 1 reply; 13+ messages in thread
From: Dark Shadow @ 2011-06-09  3:27 UTC (permalink / raw)
  To: Andy Walls; +Cc: linux-media

On Wed, Jun 8, 2011 at 9:17 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
> On Wed, Jun 8, 2011 at 8:31 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
>> On Wed, Jun 8, 2011 at 7:34 PM, Andy Walls <awalls@md.metrocast.net> wrote:
>>> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>
>>>>On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls <awalls@md.metrocast.net>
>>>>wrote:
>>>>> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>>>>>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net>
>>>>wrote:
>>>>>> > Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>>> >
>>>>>> >>I have a capture card that was sold as a Hauppauge HVR-1250
>>>>(according
>>>>>> >>to the box) that I am trying to use but I am having trouble
>>>>getting
>>>>>> >>all it's features at once. When I leave it auto detected by the
>>>>module
>>>>>> >>I have working TV in MythTV even though it thinks it is a 1270 but
>>>>IR
>>>>>> >>isn't setup.
>>>>>> >>
>>>>>> >>dmesg outputs
>>>>>> >>#modprobe cx23885 enable_885_ir=1
>>>>>> >>[    7.592714] cx23885 driver version 0.0.2 loaded
>>>>>> >>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level,
>>>>low)
>>>>>> >>-> IRQ 17
>>>>>> >>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board:
>>>>Hauppauge
>>>>>> >>WinTV-HVR1270 [card=18,autodetected]
>>>>>> >>[    7.728163] IR JVC protocol handler initialized
>>>>>> >>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>>>>> >>serial# 6429897
>>>>>> >>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>>>>> >>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx
>>>>155,
>>>>>> >>type 54)
>>>>>> >>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB
>>>>Digital
>>>>>> >>(eeprom 0x88)
>>>>>> >>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx
>>>>40)
>>>>>> >>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx
>>>>34)
>>>>>> >>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has
>>>>no
>>>>>> >>IR transmitter
>>>>>> >>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>>>>> >>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>>>>>> >>[    7.738991] cx23885[0]: cx23885 based dvb card
>>>>>> >>[    7.961122] IR Sony protocol handler initialized
>>>>>> >>[    7.977301] tda18271 1-0060: creating new instance
>>>>>> >>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>>>>>> >>[    8.209663] DVB: registering new adapter (cx23885[0])
>>>>>> >>[    8.209668] DVB: registering adapter 0 frontend 0 (LG
>>>>Electronics
>>>>>> >>LGDT3305 VSB/QAM Frontend)...
>>>>>> >>[    8.210095] cx23885_dev_checkrevision() Hardware revision =
>>>>0xd0
>>>>>> >>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq:
>>>>17,
>>>>>> >>latency: 0, mmio: 0xf7c00000
>>>>>> >>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>>>>>> >>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>>>>
>>>>>> >>#ir-keytable -a /etc/rc_maps.cfg
>>>>>> >>Old keytable cleared
>>>>>> >>Wrote 136 keycode(s) to driver
>>>>>> >>Protocols changed to RC-5
>>>>>
>>>>>> >>I have heard this should show up as a normal keyboard to the
>>>>system
>>>>>> >>but no button presses cause anything to happen to the system and
>>>>>> >>trying lirc with devinput (with devinput lircd.conf) and then
>>>>opening
>>>>>> >>irw doesn't show any button presses either
>>>>>
>>>>>
>>>>>> > Don't force your card to a 1250, if the driver detects it is a
>>>>1270
>>>>>> with a CX23888 chip.  No need to use the enable_885_ir parameter
>>>>with
>>>>>> a CX23888 chip, either.  It only applies for two board models with
>>>>>> actual CX23885 chips.
>>>>>> >
>>>>>> > Use of IR with the CX23888 chip should be realtively trouble free,
>>>>>> *if* the 1270's IR has been enabled in the driver code.  It likely
>>>>has
>>>>>> not been.  I don't have the source code in front of me at the moment
>>>>>> to check.
>>>>>> >
>>>>>> > It shouldn't be hard for anyone to patch a few files in the
>>>>cx23885
>>>>>> driver to add it.  Patches are welcome...
>>>>>> >
>>>>>
>>>>>> Under auto detect without the enable_885_ir there is no difference
>>>>so
>>>>>> I can only hope someone will add support for it.
>>>>>
>>>>> I wasn't kidding when I said the patch is sholdn't be hard for
>>>>anyone.
>>>>> It is really, really simple cut-and-paste job.  In fact here is an
>>>>> *untested* patch.
>>>>>
>>>>> Regards,
>>>>> Andy
>>>>>
>>>>> cx23885: Add IR Rx support for HVR-1270 boards
>>>>>
>>>>> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>>>>>
>>>>>
>>>>> diff --git a/drivers/media/video/cx23885/cx23885-cards.c
>>>>b/drivers/media/video/cx23885/cx23885-cards.c
>>>>> index ea88722..5635588 100644
>>>>> --- a/drivers/media/video/cx23885/cx23885-cards.c
>>>>> +++ b/drivers/media/video/cx23885/cx23885-cards.c
>>>>> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
>>>>> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>>>>>                /* FIXME: Implement me */
>>>>>                break;
>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>> +               ret = cx23888_ir_probe(dev);
>>>>> +               if (ret)
>>>>> +                       break;
>>>>> +               dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
>>>>> +               v4l2_subdev_call(dev->sd_cx25840, core,
>>>>s_io_pin_config,
>>>>> +                                ir_rx_pin_cfg_count, ir_rx_pin_cfg);
>>>>> +               break;
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>                ret = cx23888_ir_probe(dev);
>>>>> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>>  void cx23885_ir_fini(struct cx23885_dev *dev)
>>>>>  {
>>>>>        switch (dev->board) {
>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>                cx23885_irq_remove(dev, PCI_MSK_IR);
>>>>> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int
>>>>tdi, int read_tdo)
>>>>>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>>>>>  {
>>>>>        switch (dev->board) {
>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>                if (dev->sd_ir)
>>>>> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev
>>>>*dev)
>>>>>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>>>>>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>>>>>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>        case CX23885_BOARD_MYGICA_X8506:
>>>>>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
>>>>> diff --git a/drivers/media/video/cx23885/cx23885-input.c
>>>>b/drivers/media/video/cx23885/cx23885-input.c
>>>>> index e97cafd..bc28d2c 100644
>>>>> --- a/drivers/media/video/cx23885/cx23885-input.c
>>>>> +++ b/drivers/media/video/cx23885/cx23885-input.c
>>>>> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct
>>>>cx23885_dev *dev, u32 events)
>>>>>                return;
>>>>>
>>>>>        switch (dev->board) {
>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>        case CX23885_BOARD_TEVII_S470:
>>>>> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct
>>>>cx23885_dev *dev)
>>>>>
>>>>>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
>>>>>        switch (dev->board) {
>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
>>>>>                return -ENODEV;
>>>>>
>>>>>        switch (dev->board) {
>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>Thank you I just tested those changes and they work (in getting the IR
>>>>to work to the same level as forcing the card model and not cause
>>>>problems for the video)
>>>>
>>>>I still can't use the remote any more then forcing the card model but
>>>>I have a guess on that. According to everything I have read the
>>>>ir-kbd-i2c module is needed but it never auto loads on my system so I
>>>>am thinking it is just not updated to know about this card and may
>>>>only need the same type of changes as the cx23885 module. (I am
>>>>guessing since I can't even program a Hello World) Is there any chance
>>>>you would be able to see if any easy changes could be done to it.
>>>
>>> You don't need ir-kbd-i2c for this ir unit.  If you don't have the right keymap loaded, the remote won't work though.
>>>
>>> The cx23885 module has a parameter called ir_888_debug (or something similar).  Set it to a value of around 7 or so.  The cx23885 module will log pulse and space measurments to dmesg or var/log/messages.  That way you can at least verify pulses are being processed.
>>>
>>> If pulses are not being processed, check that the cable is firmly plugged into the card and that you have fresh batteries in the remote.
>>>
>>> I don't have a 1270 of my own, so I can't help too much.
>>>
>>> Andy
>>>
>>
>>
>>
>> I have been unable to get any debug output but on two occasions I got
>> the down arrow to work on the XBMC menu but both times were followed
>> by the system locking up and I can't reproduce it anymore.
>>
>> Do I need the parameter to enable ir or not? I have tried it both ways.
>>
>
> After a couple more 1 button freezes the computer. I had one occasion
> that for about 20 seconds the remote was working perfect (play/pause,
> arrows, volume) then it just stopped working for no reason (but
> luckily didn't crash the computer) This was with no module parameters.
>
> So it can work but is extremely flaky.
>

I noticed something I missed from the debug parameter, when I press
the first button after loading the module this error gets printed to
the syslog

do_IRQ: 3.185 No irq handler for vector (irq -1)

I have reproduced it a few times to match up to the first button press
but not after.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  3:27               ` Dark Shadow
@ 2011-06-09  4:12                 ` Dark Shadow
  2011-06-21 17:28                   ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 13+ messages in thread
From: Dark Shadow @ 2011-06-09  4:12 UTC (permalink / raw)
  To: Andy Walls; +Cc: linux-media

On Wed, Jun 8, 2011 at 9:27 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
> On Wed, Jun 8, 2011 at 9:17 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
>> On Wed, Jun 8, 2011 at 8:31 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>> On Wed, Jun 8, 2011 at 7:34 PM, Andy Walls <awalls@md.metrocast.net> wrote:
>>>> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>
>>>>>On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls <awalls@md.metrocast.net>
>>>>>wrote:
>>>>>> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>>>>>>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net>
>>>>>wrote:
>>>>>>> > Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>>>> >
>>>>>>> >>I have a capture card that was sold as a Hauppauge HVR-1250
>>>>>(according
>>>>>>> >>to the box) that I am trying to use but I am having trouble
>>>>>getting
>>>>>>> >>all it's features at once. When I leave it auto detected by the
>>>>>module
>>>>>>> >>I have working TV in MythTV even though it thinks it is a 1270 but
>>>>>IR
>>>>>>> >>isn't setup.
>>>>>>> >>
>>>>>>> >>dmesg outputs
>>>>>>> >>#modprobe cx23885 enable_885_ir=1
>>>>>>> >>[    7.592714] cx23885 driver version 0.0.2 loaded
>>>>>>> >>[    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level,
>>>>>low)
>>>>>>> >>-> IRQ 17
>>>>>>> >>[    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board:
>>>>>Hauppauge
>>>>>>> >>WinTV-HVR1270 [card=18,autodetected]
>>>>>>> >>[    7.728163] IR JVC protocol handler initialized
>>>>>>> >>[    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>>>>>> >>serial# 6429897
>>>>>>> >>[    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>>>>>> >>[    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx
>>>>>155,
>>>>>>> >>type 54)
>>>>>>> >>[    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB
>>>>>Digital
>>>>>>> >>(eeprom 0x88)
>>>>>>> >>[    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx
>>>>>40)
>>>>>>> >>[    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx
>>>>>34)
>>>>>>> >>[    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has
>>>>>no
>>>>>>> >>IR transmitter
>>>>>>> >>[    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>>>>>> >>[    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>>>>>>> >>[    7.738991] cx23885[0]: cx23885 based dvb card
>>>>>>> >>[    7.961122] IR Sony protocol handler initialized
>>>>>>> >>[    7.977301] tda18271 1-0060: creating new instance
>>>>>>> >>[    7.979325] TDA18271HD/C2 detected @ 1-0060
>>>>>>> >>[    8.209663] DVB: registering new adapter (cx23885[0])
>>>>>>> >>[    8.209668] DVB: registering adapter 0 frontend 0 (LG
>>>>>Electronics
>>>>>>> >>LGDT3305 VSB/QAM Frontend)...
>>>>>>> >>[    8.210095] cx23885_dev_checkrevision() Hardware revision =
>>>>>0xd0
>>>>>>> >>[    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq:
>>>>>17,
>>>>>>> >>latency: 0, mmio: 0xf7c00000
>>>>>>> >>[    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>>>>>>> >>[    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>>>>>
>>>>>>> >>#ir-keytable -a /etc/rc_maps.cfg
>>>>>>> >>Old keytable cleared
>>>>>>> >>Wrote 136 keycode(s) to driver
>>>>>>> >>Protocols changed to RC-5
>>>>>>
>>>>>>> >>I have heard this should show up as a normal keyboard to the
>>>>>system
>>>>>>> >>but no button presses cause anything to happen to the system and
>>>>>>> >>trying lirc with devinput (with devinput lircd.conf) and then
>>>>>opening
>>>>>>> >>irw doesn't show any button presses either
>>>>>>
>>>>>>
>>>>>>> > Don't force your card to a 1250, if the driver detects it is a
>>>>>1270
>>>>>>> with a CX23888 chip.  No need to use the enable_885_ir parameter
>>>>>with
>>>>>>> a CX23888 chip, either.  It only applies for two board models with
>>>>>>> actual CX23885 chips.
>>>>>>> >
>>>>>>> > Use of IR with the CX23888 chip should be realtively trouble free,
>>>>>>> *if* the 1270's IR has been enabled in the driver code.  It likely
>>>>>has
>>>>>>> not been.  I don't have the source code in front of me at the moment
>>>>>>> to check.
>>>>>>> >
>>>>>>> > It shouldn't be hard for anyone to patch a few files in the
>>>>>cx23885
>>>>>>> driver to add it.  Patches are welcome...
>>>>>>> >
>>>>>>
>>>>>>> Under auto detect without the enable_885_ir there is no difference
>>>>>so
>>>>>>> I can only hope someone will add support for it.
>>>>>>
>>>>>> I wasn't kidding when I said the patch is sholdn't be hard for
>>>>>anyone.
>>>>>> It is really, really simple cut-and-paste job.  In fact here is an
>>>>>> *untested* patch.
>>>>>>
>>>>>> Regards,
>>>>>> Andy
>>>>>>
>>>>>> cx23885: Add IR Rx support for HVR-1270 boards
>>>>>>
>>>>>> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>>>>>>
>>>>>>
>>>>>> diff --git a/drivers/media/video/cx23885/cx23885-cards.c
>>>>>b/drivers/media/video/cx23885/cx23885-cards.c
>>>>>> index ea88722..5635588 100644
>>>>>> --- a/drivers/media/video/cx23885/cx23885-cards.c
>>>>>> +++ b/drivers/media/video/cx23885/cx23885-cards.c
>>>>>> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
>>>>>> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>>>>>>                /* FIXME: Implement me */
>>>>>>                break;
>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>> +               ret = cx23888_ir_probe(dev);
>>>>>> +               if (ret)
>>>>>> +                       break;
>>>>>> +               dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
>>>>>> +               v4l2_subdev_call(dev->sd_cx25840, core,
>>>>>s_io_pin_config,
>>>>>> +                                ir_rx_pin_cfg_count, ir_rx_pin_cfg);
>>>>>> +               break;
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>                ret = cx23888_ir_probe(dev);
>>>>>> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>>>  void cx23885_ir_fini(struct cx23885_dev *dev)
>>>>>>  {
>>>>>>        switch (dev->board) {
>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>                cx23885_irq_remove(dev, PCI_MSK_IR);
>>>>>> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int
>>>>>tdi, int read_tdo)
>>>>>>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>>>>>>  {
>>>>>>        switch (dev->board) {
>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>                if (dev->sd_ir)
>>>>>> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev
>>>>>*dev)
>>>>>>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>>>>>>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>>>>>>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>        case CX23885_BOARD_MYGICA_X8506:
>>>>>>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
>>>>>> diff --git a/drivers/media/video/cx23885/cx23885-input.c
>>>>>b/drivers/media/video/cx23885/cx23885-input.c
>>>>>> index e97cafd..bc28d2c 100644
>>>>>> --- a/drivers/media/video/cx23885/cx23885-input.c
>>>>>> +++ b/drivers/media/video/cx23885/cx23885-input.c
>>>>>> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct
>>>>>cx23885_dev *dev, u32 events)
>>>>>>                return;
>>>>>>
>>>>>>        switch (dev->board) {
>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>        case CX23885_BOARD_TEVII_S470:
>>>>>> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct
>>>>>cx23885_dev *dev)
>>>>>>
>>>>>>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
>>>>>>        switch (dev->board) {
>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>>> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
>>>>>>                return -ENODEV;
>>>>>>
>>>>>>        switch (dev->board) {
>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>Thank you I just tested those changes and they work (in getting the IR
>>>>>to work to the same level as forcing the card model and not cause
>>>>>problems for the video)
>>>>>
>>>>>I still can't use the remote any more then forcing the card model but
>>>>>I have a guess on that. According to everything I have read the
>>>>>ir-kbd-i2c module is needed but it never auto loads on my system so I
>>>>>am thinking it is just not updated to know about this card and may
>>>>>only need the same type of changes as the cx23885 module. (I am
>>>>>guessing since I can't even program a Hello World) Is there any chance
>>>>>you would be able to see if any easy changes could be done to it.
>>>>
>>>> You don't need ir-kbd-i2c for this ir unit.  If you don't have the right keymap loaded, the remote won't work though.
>>>>
>>>> The cx23885 module has a parameter called ir_888_debug (or something similar).  Set it to a value of around 7 or so.  The cx23885 module will log pulse and space measurments to dmesg or var/log/messages.  That way you can at least verify pulses are being processed.
>>>>
>>>> If pulses are not being processed, check that the cable is firmly plugged into the card and that you have fresh batteries in the remote.
>>>>
>>>> I don't have a 1270 of my own, so I can't help too much.
>>>>
>>>> Andy
>>>>
>>>
>>>
>>>
>>> I have been unable to get any debug output but on two occasions I got
>>> the down arrow to work on the XBMC menu but both times were followed
>>> by the system locking up and I can't reproduce it anymore.
>>>
>>> Do I need the parameter to enable ir or not? I have tried it both ways.
>>>
>>
>> After a couple more 1 button freezes the computer. I had one occasion
>> that for about 20 seconds the remote was working perfect (play/pause,
>> arrows, volume) then it just stopped working for no reason (but
>> luckily didn't crash the computer) This was with no module parameters.
>>
>> So it can work but is extremely flaky.
>>
>
> I noticed something I missed from the debug parameter, when I press
> the first button after loading the module this error gets printed to
> the syslog
>
> do_IRQ: 3.185 No irq handler for vector (irq -1)
>
> I have reproduced it a few times to match up to the first button press
> but not after.
>

OK I have it working now after Googling for a bit I found a fix for
that error I had to add the kernel option "pci=nomsi" to grub. Now it
works.
I just hope that didn't cause any problems with other hardware since
during bootup it causes MSI-X to fail which I Googled to figure out
what that is and my guess is it could cause problems for other
hardware that needs it.

Now to figure out why some buttons don't seem to be in the keymap.
Like the OK button But that will be a different message.


Thank you again for your patch you have no idea how grateful I am.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-09  4:12                 ` Dark Shadow
@ 2011-06-21 17:28                   ` Mauro Carvalho Chehab
  2011-06-21 17:53                     ` Andy Walls
  0 siblings, 1 reply; 13+ messages in thread
From: Mauro Carvalho Chehab @ 2011-06-21 17:28 UTC (permalink / raw)
  To: Andy Walls; +Cc: Dark Shadow, linux-media

Em 09-06-2011 01:12, Dark Shadow escreveu:
> On Wed, Jun 8, 2011 at 9:27 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
>> On Wed, Jun 8, 2011 at 9:17 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>> On Wed, Jun 8, 2011 at 8:31 PM, Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>> On Wed, Jun 8, 2011 at 7:34 PM, Andy Walls <awalls@md.metrocast.net> wrote:
>>>>> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>>
>>>>>> On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls <awalls@md.metrocast.net>
>>>>>> wrote:
>>>>>>> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>>>>>>>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls <awalls@md.metrocast.net>
>>>>>> wrote:
>>>>>>>>> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I have a capture card that was sold as a Hauppauge HVR-1250
>>>>>> (according
>>>>>>>>>> to the box) that I am trying to use but I am having trouble
>>>>>> getting
>>>>>>>>>> all it's features at once. When I leave it auto detected by the
>>>>>> module
>>>>>>>>>> I have working TV in MythTV even though it thinks it is a 1270 but
>>>>>> IR
>>>>>>>>>> isn't setup.
>>>>>>>>>>
>>>>>>>>>> dmesg outputs
>>>>>>>>>> #modprobe cx23885 enable_885_ir=1
>>>>>>>>>> [    7.592714] cx23885 driver version 0.0.2 loaded
>>>>>>>>>> [    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17 (level,
>>>>>> low)
>>>>>>>>>> -> IRQ 17
>>>>>>>>>> [    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board:
>>>>>> Hauppauge
>>>>>>>>>> WinTV-HVR1270 [card=18,autodetected]
>>>>>>>>>> [    7.728163] IR JVC protocol handler initialized
>>>>>>>>>> [    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev C2F5,
>>>>>>>>>> serial# 6429897
>>>>>>>>>> [    7.738974] tveeprom 0-0050: MAC address is 00:0d:fe:62:1c:c9
>>>>>>>>>> [    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2 (idx
>>>>>> 155,
>>>>>>>>>> type 54)
>>>>>>>>>> [    7.738977] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB
>>>>>> Digital
>>>>>>>>>> (eeprom 0x88)
>>>>>>>>>> [    7.738979] tveeprom 0-0050: audio processor is CX23888 (idx
>>>>>> 40)
>>>>>>>>>> [    7.738980] tveeprom 0-0050: decoder processor is CX23888 (idx
>>>>>> 34)
>>>>>>>>>> [    7.738982] tveeprom 0-0050: has no radio, has IR receiver, has
>>>>>> no
>>>>>>>>>> IR transmitter
>>>>>>>>>> [    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>>>>>>>>> [    7.738985] cx23885_dvb_register() allocating 1 frontend(s)
>>>>>>>>>> [    7.738991] cx23885[0]: cx23885 based dvb card
>>>>>>>>>> [    7.961122] IR Sony protocol handler initialized
>>>>>>>>>> [    7.977301] tda18271 1-0060: creating new instance
>>>>>>>>>> [    7.979325] TDA18271HD/C2 detected @ 1-0060
>>>>>>>>>> [    8.209663] DVB: registering new adapter (cx23885[0])
>>>>>>>>>> [    8.209668] DVB: registering adapter 0 frontend 0 (LG
>>>>>> Electronics
>>>>>>>>>> LGDT3305 VSB/QAM Frontend)...
>>>>>>>>>> [    8.210095] cx23885_dev_checkrevision() Hardware revision =
>>>>>> 0xd0
>>>>>>>>>> [    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4, irq:
>>>>>> 17,
>>>>>>>>>> latency: 0, mmio: 0xf7c00000
>>>>>>>>>> [    8.210109] cx23885 0000:07:00.0: setting latency timer to 64
>>>>>>>>>> [    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>>>>>>
>>>>>>>>>> #ir-keytable -a /etc/rc_maps.cfg
>>>>>>>>>> Old keytable cleared
>>>>>>>>>> Wrote 136 keycode(s) to driver
>>>>>>>>>> Protocols changed to RC-5
>>>>>>>
>>>>>>>>>> I have heard this should show up as a normal keyboard to the
>>>>>> system
>>>>>>>>>> but no button presses cause anything to happen to the system and
>>>>>>>>>> trying lirc with devinput (with devinput lircd.conf) and then
>>>>>> opening
>>>>>>>>>> irw doesn't show any button presses either
>>>>>>>
>>>>>>>
>>>>>>>>> Don't force your card to a 1250, if the driver detects it is a
>>>>>> 1270
>>>>>>>> with a CX23888 chip.  No need to use the enable_885_ir parameter
>>>>>> with
>>>>>>>> a CX23888 chip, either.  It only applies for two board models with
>>>>>>>> actual CX23885 chips.
>>>>>>>>>
>>>>>>>>> Use of IR with the CX23888 chip should be realtively trouble free,
>>>>>>>> *if* the 1270's IR has been enabled in the driver code.  It likely
>>>>>> has
>>>>>>>> not been.  I don't have the source code in front of me at the moment
>>>>>>>> to check.
>>>>>>>>>
>>>>>>>>> It shouldn't be hard for anyone to patch a few files in the
>>>>>> cx23885
>>>>>>>> driver to add it.  Patches are welcome...
>>>>>>>>>
>>>>>>>
>>>>>>>> Under auto detect without the enable_885_ir there is no difference
>>>>>> so
>>>>>>>> I can only hope someone will add support for it.
>>>>>>>
>>>>>>> I wasn't kidding when I said the patch is sholdn't be hard for
>>>>>> anyone.
>>>>>>> It is really, really simple cut-and-paste job.  In fact here is an
>>>>>>> *untested* patch.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Andy
>>>>>>>
>>>>>>> cx23885: Add IR Rx support for HVR-1270 boards
>>>>>>>
>>>>>>> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>>>>>>>
>>>>>>>
>>>>>>> diff --git a/drivers/media/video/cx23885/cx23885-cards.c
>>>>>> b/drivers/media/video/cx23885/cx23885-cards.c
>>>>>>> index ea88722..5635588 100644
>>>>>>> --- a/drivers/media/video/cx23885/cx23885-cards.c
>>>>>>> +++ b/drivers/media/video/cx23885/cx23885-cards.c
>>>>>>> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
>>>>>>> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>>>>>>>                /* FIXME: Implement me */
>>>>>>>                break;
>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>> +               ret = cx23888_ir_probe(dev);
>>>>>>> +               if (ret)
>>>>>>> +                       break;
>>>>>>> +               dev->sd_ir = cx23885_find_hw(dev, CX23885_HW_888_IR);
>>>>>>> +               v4l2_subdev_call(dev->sd_cx25840, core,
>>>>>> s_io_pin_config,
>>>>>>> +                                ir_rx_pin_cfg_count, ir_rx_pin_cfg);
>>>>>>> +               break;
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>                ret = cx23888_ir_probe(dev);
>>>>>>> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev *dev)
>>>>>>>  void cx23885_ir_fini(struct cx23885_dev *dev)
>>>>>>>  {
>>>>>>>        switch (dev->board) {
>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>                cx23885_irq_remove(dev, PCI_MSK_IR);
>>>>>>> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms, int
>>>>>> tdi, int read_tdo)
>>>>>>>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>>>>>>>  {
>>>>>>>        switch (dev->board) {
>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>                if (dev->sd_ir)
>>>>>>> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct cx23885_dev
>>>>>> *dev)
>>>>>>>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>>>>>>>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>>>>>>>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>        case CX23885_BOARD_MYGICA_X8506:
>>>>>>>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
>>>>>>> diff --git a/drivers/media/video/cx23885/cx23885-input.c
>>>>>> b/drivers/media/video/cx23885/cx23885-input.c
>>>>>>> index e97cafd..bc28d2c 100644
>>>>>>> --- a/drivers/media/video/cx23885/cx23885-input.c
>>>>>>> +++ b/drivers/media/video/cx23885/cx23885-input.c
>>>>>>> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct
>>>>>> cx23885_dev *dev, u32 events)
>>>>>>>                return;
>>>>>>>
>>>>>>>        switch (dev->board) {
>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>        case CX23885_BOARD_TEVII_S470:
>>>>>>> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct
>>>>>> cx23885_dev *dev)
>>>>>>>
>>>>>>>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters, &params);
>>>>>>>        switch (dev->board) {
>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>>>> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev *dev)
>>>>>>>                return -ENODEV;
>>>>>>>
>>>>>>>        switch (dev->board) {
>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Thank you I just tested those changes and they work (in getting the IR
>>>>>> to work to the same level as forcing the card model and not cause
>>>>>> problems for the video)
>>>>>>
>>>>>> I still can't use the remote any more then forcing the card model but
>>>>>> I have a guess on that. According to everything I have read the
>>>>>> ir-kbd-i2c module is needed but it never auto loads on my system so I
>>>>>> am thinking it is just not updated to know about this card and may
>>>>>> only need the same type of changes as the cx23885 module. (I am
>>>>>> guessing since I can't even program a Hello World) Is there any chance
>>>>>> you would be able to see if any easy changes could be done to it.
>>>>>
>>>>> You don't need ir-kbd-i2c for this ir unit.  If you don't have the right keymap loaded, the remote won't work though.
>>>>>
>>>>> The cx23885 module has a parameter called ir_888_debug (or something similar).  Set it to a value of around 7 or so.  The cx23885 module will log pulse and space measurments to dmesg or var/log/messages.  That way you can at least verify pulses are being processed.
>>>>>
>>>>> If pulses are not being processed, check that the cable is firmly plugged into the card and that you have fresh batteries in the remote.
>>>>>
>>>>> I don't have a 1270 of my own, so I can't help too much.
>>>>>
>>>>> Andy
>>>>>
>>>>
>>>>
>>>>
>>>> I have been unable to get any debug output but on two occasions I got
>>>> the down arrow to work on the XBMC menu but both times were followed
>>>> by the system locking up and I can't reproduce it anymore.
>>>>
>>>> Do I need the parameter to enable ir or not? I have tried it both ways.
>>>>
>>>
>>> After a couple more 1 button freezes the computer. I had one occasion
>>> that for about 20 seconds the remote was working perfect (play/pause,
>>> arrows, volume) then it just stopped working for no reason (but
>>> luckily didn't crash the computer) This was with no module parameters.
>>>
>>> So it can work but is extremely flaky.
>>>
>>
>> I noticed something I missed from the debug parameter, when I press
>> the first button after loading the module this error gets printed to
>> the syslog
>>
>> do_IRQ: 3.185 No irq handler for vector (irq -1)
>>
>> I have reproduced it a few times to match up to the first button press
>> but not after.
>>
> 
> OK I have it working now after Googling for a bit I found a fix for
> that error I had to add the kernel option "pci=nomsi" to grub. Now it
> works.
> I just hope that didn't cause any problems with other hardware since
> during bootup it causes MSI-X to fail which I Googled to figure out
> what that is and my guess is it could cause problems for other
> hardware that needs it.
> 
> Now to figure out why some buttons don't seem to be in the keymap.
> Like the OK button But that will be a different message.
> 
> 
> Thank you again for your patch you have no idea how grateful I am.

As the patch seems were tested, I'll apply it on my tree.

Thanks!
Mauro

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] cx23885: Add IR Rx support for HVR-1270 boards
  2011-06-21 17:28                   ` Mauro Carvalho Chehab
@ 2011-06-21 17:53                     ` Andy Walls
  0 siblings, 0 replies; 13+ messages in thread
From: Andy Walls @ 2011-06-21 17:53 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: Dark Shadow, linux-media

Mauro Carvalho Chehab <mchehab@redhat.com> wrote:

>Em 09-06-2011 01:12, Dark Shadow escreveu:
>> On Wed, Jun 8, 2011 at 9:27 PM, Dark Shadow
><shadowofdarkness@gmail.com> wrote:
>>> On Wed, Jun 8, 2011 at 9:17 PM, Dark Shadow
><shadowofdarkness@gmail.com> wrote:
>>>> On Wed, Jun 8, 2011 at 8:31 PM, Dark Shadow
><shadowofdarkness@gmail.com> wrote:
>>>>> On Wed, Jun 8, 2011 at 7:34 PM, Andy Walls
><awalls@md.metrocast.net> wrote:
>>>>>> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>>>
>>>>>>> On Wed, Jun 8, 2011 at 6:24 PM, Andy Walls
><awalls@md.metrocast.net>
>>>>>>> wrote:
>>>>>>>> On Wed, 2011-06-08 at 13:18 -0600, Dark Shadow wrote:
>>>>>>>>> On Wed, Jun 8, 2011 at 4:19 AM, Andy Walls
><awalls@md.metrocast.net>
>>>>>>> wrote:
>>>>>>>>>> Dark Shadow <shadowofdarkness@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> I have a capture card that was sold as a Hauppauge HVR-1250
>>>>>>> (according
>>>>>>>>>>> to the box) that I am trying to use but I am having trouble
>>>>>>> getting
>>>>>>>>>>> all it's features at once. When I leave it auto detected by
>the
>>>>>>> module
>>>>>>>>>>> I have working TV in MythTV even though it thinks it is a
>1270 but
>>>>>>> IR
>>>>>>>>>>> isn't setup.
>>>>>>>>>>>
>>>>>>>>>>> dmesg outputs
>>>>>>>>>>> #modprobe cx23885 enable_885_ir=1
>>>>>>>>>>> [    7.592714] cx23885 driver version 0.0.2 loaded
>>>>>>>>>>> [    7.592748] cx23885 0000:07:00.0: PCI INT A -> GSI 17
>(level,
>>>>>>> low)
>>>>>>>>>>> -> IRQ 17
>>>>>>>>>>> [    7.592926] CORE cx23885[0]: subsystem: 0070:2211, board:
>>>>>>> Hauppauge
>>>>>>>>>>> WinTV-HVR1270 [card=18,autodetected]
>>>>>>>>>>> [    7.728163] IR JVC protocol handler initialized
>>>>>>>>>>> [    7.738971] tveeprom 0-0050: Hauppauge model 22111, rev
>C2F5,
>>>>>>>>>>> serial# 6429897
>>>>>>>>>>> [    7.738974] tveeprom 0-0050: MAC address is
>00:0d:fe:62:1c:c9
>>>>>>>>>>> [    7.738975] tveeprom 0-0050: tuner model is NXP 18271C2
>(idx
>>>>>>> 155,
>>>>>>>>>>> type 54)
>>>>>>>>>>> [    7.738977] tveeprom 0-0050: TV standards NTSC(M)
>ATSC/DVB
>>>>>>> Digital
>>>>>>>>>>> (eeprom 0x88)
>>>>>>>>>>> [    7.738979] tveeprom 0-0050: audio processor is CX23888
>(idx
>>>>>>> 40)
>>>>>>>>>>> [    7.738980] tveeprom 0-0050: decoder processor is CX23888
>(idx
>>>>>>> 34)
>>>>>>>>>>> [    7.738982] tveeprom 0-0050: has no radio, has IR
>receiver, has
>>>>>>> no
>>>>>>>>>>> IR transmitter
>>>>>>>>>>> [    7.738983] cx23885[0]: hauppauge eeprom: model=22111
>>>>>>>>>>> [    7.738985] cx23885_dvb_register() allocating 1
>frontend(s)
>>>>>>>>>>> [    7.738991] cx23885[0]: cx23885 based dvb card
>>>>>>>>>>> [    7.961122] IR Sony protocol handler initialized
>>>>>>>>>>> [    7.977301] tda18271 1-0060: creating new instance
>>>>>>>>>>> [    7.979325] TDA18271HD/C2 detected @ 1-0060
>>>>>>>>>>> [    8.209663] DVB: registering new adapter (cx23885[0])
>>>>>>>>>>> [    8.209668] DVB: registering adapter 0 frontend 0 (LG
>>>>>>> Electronics
>>>>>>>>>>> LGDT3305 VSB/QAM Frontend)...
>>>>>>>>>>> [    8.210095] cx23885_dev_checkrevision() Hardware revision
>=
>>>>>>> 0xd0
>>>>>>>>>>> [    8.210101] cx23885[0]/0: found at 0000:07:00.0, rev: 4,
>irq:
>>>>>>> 17,
>>>>>>>>>>> latency: 0, mmio: 0xf7c00000
>>>>>>>>>>> [    8.210109] cx23885 0000:07:00.0: setting latency timer
>to 64
>>>>>>>>>>> [    8.210186] cx23885 0000:07:00.0: irq 49 for MSI/MSI-X
>>>>>>>>
>>>>>>>>>>> #ir-keytable -a /etc/rc_maps.cfg
>>>>>>>>>>> Old keytable cleared
>>>>>>>>>>> Wrote 136 keycode(s) to driver
>>>>>>>>>>> Protocols changed to RC-5
>>>>>>>>
>>>>>>>>>>> I have heard this should show up as a normal keyboard to the
>>>>>>> system
>>>>>>>>>>> but no button presses cause anything to happen to the system
>and
>>>>>>>>>>> trying lirc with devinput (with devinput lircd.conf) and
>then
>>>>>>> opening
>>>>>>>>>>> irw doesn't show any button presses either
>>>>>>>>
>>>>>>>>
>>>>>>>>>> Don't force your card to a 1250, if the driver detects it is
>a
>>>>>>> 1270
>>>>>>>>> with a CX23888 chip.  No need to use the enable_885_ir
>parameter
>>>>>>> with
>>>>>>>>> a CX23888 chip, either.  It only applies for two board models
>with
>>>>>>>>> actual CX23885 chips.
>>>>>>>>>>
>>>>>>>>>> Use of IR with the CX23888 chip should be realtively trouble
>free,
>>>>>>>>> *if* the 1270's IR has been enabled in the driver code.  It
>likely
>>>>>>> has
>>>>>>>>> not been.  I don't have the source code in front of me at the
>moment
>>>>>>>>> to check.
>>>>>>>>>>
>>>>>>>>>> It shouldn't be hard for anyone to patch a few files in the
>>>>>>> cx23885
>>>>>>>>> driver to add it.  Patches are welcome...
>>>>>>>>>>
>>>>>>>>
>>>>>>>>> Under auto detect without the enable_885_ir there is no
>difference
>>>>>>> so
>>>>>>>>> I can only hope someone will add support for it.
>>>>>>>>
>>>>>>>> I wasn't kidding when I said the patch is sholdn't be hard for
>>>>>>> anyone.
>>>>>>>> It is really, really simple cut-and-paste job.  In fact here is
>an
>>>>>>>> *untested* patch.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Andy
>>>>>>>>
>>>>>>>> cx23885: Add IR Rx support for HVR-1270 boards
>>>>>>>>
>>>>>>>> Signed-off-by: Andy Walls <awalls@md.metrocast.net>
>>>>>>>>
>>>>>>>>
>>>>>>>> diff --git a/drivers/media/video/cx23885/cx23885-cards.c
>>>>>>> b/drivers/media/video/cx23885/cx23885-cards.c
>>>>>>>> index ea88722..5635588 100644
>>>>>>>> --- a/drivers/media/video/cx23885/cx23885-cards.c
>>>>>>>> +++ b/drivers/media/video/cx23885/cx23885-cards.c
>>>>>>>> @@ -1097,12 +1097,19 @@ int cx23885_ir_init(struct cx23885_dev
>*dev)
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1800:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1200:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1400:
>>>>>>>> -       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1275:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1255:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1210:
>>>>>>>>                /* FIXME: Implement me */
>>>>>>>>                break;
>>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>> +               ret = cx23888_ir_probe(dev);
>>>>>>>> +               if (ret)
>>>>>>>> +                       break;
>>>>>>>> +               dev->sd_ir = cx23885_find_hw(dev,
>CX23885_HW_888_IR);
>>>>>>>> +               v4l2_subdev_call(dev->sd_cx25840, core,
>>>>>>> s_io_pin_config,
>>>>>>>> +                                ir_rx_pin_cfg_count,
>ir_rx_pin_cfg);
>>>>>>>> +               break;
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>>                ret = cx23888_ir_probe(dev);
>>>>>>>> @@ -1156,6 +1163,7 @@ int cx23885_ir_init(struct cx23885_dev
>*dev)
>>>>>>>>  void cx23885_ir_fini(struct cx23885_dev *dev)
>>>>>>>>  {
>>>>>>>>        switch (dev->board) {
>>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>>                cx23885_irq_remove(dev, PCI_MSK_IR);
>>>>>>>> @@ -1199,6 +1207,7 @@ int netup_jtag_io(void *device, int tms,
>int
>>>>>>> tdi, int read_tdo)
>>>>>>>>  void cx23885_ir_pci_int_enable(struct cx23885_dev *dev)
>>>>>>>>  {
>>>>>>>>        switch (dev->board) {
>>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>>                if (dev->sd_ir)
>>>>>>>> @@ -1357,6 +1366,7 @@ void cx23885_card_setup(struct
>cx23885_dev
>>>>>>> *dev)
>>>>>>>>        case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
>>>>>>>>        case CX23885_BOARD_NETUP_DUAL_DVB_T_C_CI_RF:
>>>>>>>>        case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
>>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>>        case CX23885_BOARD_MYGICA_X8506:
>>>>>>>>        case CX23885_BOARD_MAGICPRO_PROHDTVE2:
>>>>>>>> diff --git a/drivers/media/video/cx23885/cx23885-input.c
>>>>>>> b/drivers/media/video/cx23885/cx23885-input.c
>>>>>>>> index e97cafd..bc28d2c 100644
>>>>>>>> --- a/drivers/media/video/cx23885/cx23885-input.c
>>>>>>>> +++ b/drivers/media/video/cx23885/cx23885-input.c
>>>>>>>> @@ -82,6 +82,7 @@ void cx23885_input_rx_work_handler(struct
>>>>>>> cx23885_dev *dev, u32 events)
>>>>>>>>                return;
>>>>>>>>
>>>>>>>>        switch (dev->board) {
>>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>>        case CX23885_BOARD_TEVII_S470:
>>>>>>>> @@ -133,6 +134,7 @@ static int cx23885_input_ir_start(struct
>>>>>>> cx23885_dev *dev)
>>>>>>>>
>>>>>>>>        v4l2_subdev_call(dev->sd_ir, ir, rx_g_parameters,
>&params);
>>>>>>>>        switch (dev->board) {
>>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>>>>> @@ -257,6 +259,7 @@ int cx23885_input_init(struct cx23885_dev
>*dev)
>>>>>>>>                return -ENODEV;
>>>>>>>>
>>>>>>>>        switch (dev->board) {
>>>>>>>> +       case CX23885_BOARD_HAUPPAUGE_HVR1270:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1850:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1290:
>>>>>>>>        case CX23885_BOARD_HAUPPAUGE_HVR1250:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> Thank you I just tested those changes and they work (in getting
>the IR
>>>>>>> to work to the same level as forcing the card model and not
>cause
>>>>>>> problems for the video)
>>>>>>>
>>>>>>> I still can't use the remote any more then forcing the card
>model but
>>>>>>> I have a guess on that. According to everything I have read the
>>>>>>> ir-kbd-i2c module is needed but it never auto loads on my system
>so I
>>>>>>> am thinking it is just not updated to know about this card and
>may
>>>>>>> only need the same type of changes as the cx23885 module. (I am
>>>>>>> guessing since I can't even program a Hello World) Is there any
>chance
>>>>>>> you would be able to see if any easy changes could be done to
>it.
>>>>>>
>>>>>> You don't need ir-kbd-i2c for this ir unit.  If you don't have
>the right keymap loaded, the remote won't work though.
>>>>>>
>>>>>> The cx23885 module has a parameter called ir_888_debug (or
>something similar).  Set it to a value of around 7 or so.  The cx23885
>module will log pulse and space measurments to dmesg or
>var/log/messages.  That way you can at least verify pulses are being
>processed.
>>>>>>
>>>>>> If pulses are not being processed, check that the cable is firmly
>plugged into the card and that you have fresh batteries in the remote.
>>>>>>
>>>>>> I don't have a 1270 of my own, so I can't help too much.
>>>>>>
>>>>>> Andy
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I have been unable to get any debug output but on two occasions I
>got
>>>>> the down arrow to work on the XBMC menu but both times were
>followed
>>>>> by the system locking up and I can't reproduce it anymore.
>>>>>
>>>>> Do I need the parameter to enable ir or not? I have tried it both
>ways.
>>>>>
>>>>
>>>> After a couple more 1 button freezes the computer. I had one
>occasion
>>>> that for about 20 seconds the remote was working perfect
>(play/pause,
>>>> arrows, volume) then it just stopped working for no reason (but
>>>> luckily didn't crash the computer) This was with no module
>parameters.
>>>>
>>>> So it can work but is extremely flaky.
>>>>
>>>
>>> I noticed something I missed from the debug parameter, when I press
>>> the first button after loading the module this error gets printed to
>>> the syslog
>>>
>>> do_IRQ: 3.185 No irq handler for vector (irq -1)
>>>
>>> I have reproduced it a few times to match up to the first button
>press
>>> but not after.
>>>
>> 
>> OK I have it working now after Googling for a bit I found a fix for
>> that error I had to add the kernel option "pci=nomsi" to grub. Now it
>> works.
>> I just hope that didn't cause any problems with other hardware since
>> during bootup it causes MSI-X to fail which I Googled to figure out
>> what that is and my guess is it could cause problems for other
>> hardware that needs it.
>> 
>> Now to figure out why some buttons don't seem to be in the keymap.
>> Like the OK button But that will be a different message.
>> 
>> 
>> Thank you again for your patch you have no idea how grateful I am.
>
>As the patch seems were tested, I'll apply it on my tree.
>
>Thanks!
>Mauro

That's fine.

Regards,
Andy

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2011-06-21 17:53 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-06-08  3:10 Getting IR to work on a hvr-1250 tuner Dark Shadow
2011-06-08 10:19 ` Andy Walls
2011-06-08 19:18   ` Dark Shadow
2011-06-09  0:24     ` [PATCH] cx23885: Add IR Rx support for HVR-1270 boards Andy Walls
2011-06-09  0:35       ` Andy Walls
2011-06-09  1:25       ` Dark Shadow
2011-06-09  1:34         ` Andy Walls
2011-06-09  2:31           ` Dark Shadow
2011-06-09  3:17             ` Dark Shadow
2011-06-09  3:27               ` Dark Shadow
2011-06-09  4:12                 ` Dark Shadow
2011-06-21 17:28                   ` Mauro Carvalho Chehab
2011-06-21 17:53                     ` Andy Walls

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.