>----- Original Message ----
>On Tue, 2011-03-22 at 19:57 +0000, Emil Meier wrote:
>> The patch in cx25840-core.c was needed to get PAL support for the video input.
>
>> If the line
>> cx25840_write(client, 0x2, 0x76);
>> is needed by other cards,
> You patches have a problem:
> Your first patch modifies a card entry in the cx23885 driver, but your
> second patch changes the cx231xx_initialize() function in
> cx25840-core.c.
>http://git.linuxtv.org/media_tree.git?a=blob;f=drivers/media/video/cx25840/cx25840-core.c;h=35796e0352475b6536bfd47315107e418e6716fa;hb=refs/heads/staging/for_v2.6.39#l638
>8
> The second patch should have no effect on the operation of a CX2388[578]
> based card.
Thanks Andy,
your are right, the patch is applied in the wrong function. In earlyer kernels,
I have placed the patch in cx23885_initialize()...
Checking this again I found the patch not working in 2.6.36.4 vanilla...The
patches are working in 2.6.35.11 vanilla. But there are a lot af changes between
2.6.35.11 and 2.6.36.4 in the code.
I have attached the patches against 2.6.35.11 vanilla. The last time I have
tried the dvb-drivers, they don't compile against older kenrels...
With 2.6.36.4 and the last patch I get the following error:
2.6.36.4:
cx23885[1]: hauppauge eeprom: model=80019
cx25840 2-0044: cx23885 A/V decoder found @ 0x88 (cx23885[1])
cx25840: probe of 2-0044 failed with error -34
tuner 1-0061: chip found @ 0xc2 (cx23885[1])
xc2028 1-0061: creating new instance
xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner
....
while grabbing:
xc2028 1-0061: xc2028/3028 firmware name not set!
cx23885[1]: VID A - dma channel status dump
cx23885[1]: cmds: init risc lo : 0x37c70000
cx23885[1]: cmds: init risc hi : 0x00000000
cx23885[1]: cmds: cdt base : 0x000104c0
cx23885[1]: cmds: cdt size : 0x0000000c
cx23885[1]: cmds: iq base : 0x00010380
cx23885[1]: cmds: iq size : 0x00000010
cx23885[1]: cmds: risc pc lo : 0x37c70034
cx23885[1]: cmds: risc pc hi : 0x00000000
cx23885[1]: cmds: iq wr ptr : 0x000040ed
cx23885[1]: cmds: iq rd ptr : 0x000040e1
cx23885[1]: cmds: cdt current : 0x000104c8
cx23885[1]: cmds: pci target lo : 0x00000000
cx23885[1]: cmds: pci target hi : 0x00000000
cx23885[1]: cmds: line / byte : 0x00000000
cx23885[1]: risc0: 0x80008000 [ sync resync count=0 ]
cx23885[1]: risc1: 0x1c000500 [ write sol eol count=1280 ]
cx23885[1]: risc2: 0x37cb7500 [ INVALID eol irq2 irq1 23 22 19 cnt1 cnt0 14 13
instead of: 2.6.35.11:
cx23885[2]: hauppauge eeprom: model=80019
cx25840 2-0044: cx23885 A/V decoder found @ 0x88 (cx23885[2])
cx25840 2-0044: loaded v4l-cx23885-avcore-01.fw firmware (16382 bytes)
tuner 1-0061: chip found @ 0xc2 (cx23885[2])
xc2028 1-0061: creating new instance
Emil
*** linux-2.6.35.11/drivers/media/video/cx23885/cx23885-cards.c 2011-02-06 20:04:07.000000000 +0100
--- /usr/src/linux-2.6.35.11/drivers/media/video/cx23885/cx23885-cards.c 2011-03-29 14:29:24.000000000 +0200
***************
*** 144,150 ****
--- 144,173 ----
},
[CX23885_BOARD_HAUPPAUGE_HVR1400] = {
.name = "Hauppauge WinTV-HVR1400",
+ .porta = CX23885_ANALOG_VIDEO,
.portc = CX23885_MPEG_DVB,
+ .tuner_type = TUNER_XC2028,
+ .tuner_addr = 0x61, /* 0x84 >> 1 */
+ .input = {{
+ .type = CX23885_VMUX_TELEVISION,
+ .vmux = CX25840_VIN7_CH3 |
+ CX25840_VIN5_CH2 |
+ CX25840_VIN2_CH1,
+ .gpio0 = 0,
+ }, {
+ .type = CX23885_VMUX_COMPOSITE1,
+ .vmux = CX25840_VIN7_CH3 |
+ CX25840_VIN4_CH2 |
+ CX25840_VIN6_CH1,
+ .gpio0 = 0,
+ }, {
+ .type = CX23885_VMUX_SVIDEO,
+ .vmux = CX25840_VIN7_CH3 |
+ CX25840_VIN4_CH2 |
+ CX25840_VIN8_CH1 |
+ CX25840_SVIDEO_ON,
+ .gpio0 = 0,
+ } },
},
[CX23885_BOARD_DVICO_FUSIONHDTV_7_DUAL_EXP] = {
.name = "DViCO FusionHDTV7 Dual Express",
***************
*** 1102,1107 ****
--- 1125,1131 ----
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
+ case CX23885_BOARD_HAUPPAUGE_HVR1400:
case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
case CX23885_BOARD_HAUPPAUGE_HVR1850:
case CX23885_BOARD_MYGICA_X8506:
*** linux-2.6.35.11/drivers/media/video/cx25840/cx25840-core.c 2011-02-06 20:04:07.000000000 +0100
--- /usr/src/linux-2.6.35.11/drivers/media/video/cx25840/cx25840-core.c 2011-03-29 14:50:01.000000000 +0200
***************
*** 282,288 ****
* '887: 25.000000 MHz
* '888: 50.000000 MHz
*/
! cx25840_write(client, 0x2, 0x76);
/* Power up all the PLL's and DLL */
cx25840_write(client, 0x1, 0x40);
--- 282,290 ----
* '887: 25.000000 MHz
* '888: 50.000000 MHz
*/
! /* This changes for the cx23888 products */
! // not for hvr1400 em 090818
! //cx25840_write(client, 0x2, 0x76);
/* Power up all the PLL's and DLL */
cx25840_write(client, 0x1, 0x40);