Talk:Pinnacle PCTV Hybrid Pro Card (310c)

From LinuxTVWiki
Jump to navigation Jump to search

Faq

PCI allocation failed

PCI: Failed to allocate mem resource #0:1000000@38000000 for 0000:03:00.2


to solve that problem change following entry in setup-bus.c in the kernel sources:

old entry:

#define CARDBUS_MEM_SIZE        (32*1024*1024)

new entry:

#define CARDBUS_MEM_SIZE        (48*1024*1024)

and recompile the kernel.

$ cat /proc/iomem
...
30000000-35ffffff : PCI Bus #02
  30000000-32ffffff : PCI CardBus #03
36000000-360003ff : 0000:00:1f.1
39000000-3bffffff : PCI CardBus #03
  39000000-39ffffff : 0000:03:00.0
  3a000000-3affffff : 0000:03:00.1
  3b000000-3bffffff : 0000:03:00.2 <- this one failed to allocate previously
3c000000-3effffff : PCI CardBus #07
41000000-43ffffff : PCI CardBus #07
...
$ lspci -vvv
03:00.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: Yuan Yuan Enterprise Co., Ltd. Unknown device 1788
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at 39000000 (32-bit, non-prefetchable) [disabled] [size=16M]
        Capabilities: [44] Vital Product Data
        Capabilities: [4c] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

03:00.1 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (rev 05)
        Subsystem: Yuan Yuan Enterprise Co., Ltd. Unknown device 1788
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at 3a000000 (32-bit, non-prefetchable) [disabled] [size=16M]
        Capabilities: [4c] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

03:00.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05)
        Subsystem: Yuan Yuan Enterprise Co., Ltd. Unknown device 1788
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 10
NEW --> Region 0: Memory at 3b000000 (32-bit, non-prefetchable) [disabled] [size=16M]
        Capabilities: [4c] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

Windows Allocation

allocation in windows:

Cardbus #1:
E0207000 - E0207FFF
FEBFE000 - FEBFEFFF
FABFE000 - FEBFDFFF
E/A FF00 - FFFF
E/A FD00 - FDFF
IRQ 10
000DF000 - 000DFFFF

Cardbus #2:
E0208000 - E0208FFF
FABFD000 - FABFDFFF
E4000000 - E7FFFFFF
E/A FC00 - FCFF
E/A FB00 - FBFF
IRQ 10
000DE000 - 000DEFFF

PCMCIA:
Function 0: IRQ 10, FB000000 - FBFFFFFF - dvb-t/analog TV tuner card
Function 1: IRQ 10, FC000000 - FCFFFFFF - Pinnacle PCTV 310c Audio AVStream Device
Function 2: IRQ 10, FD000000 - FDFFFFFF - TS capture device

/proc/iomem

30000000-33ffffff : PCI Bus #01
  30000000-31ffffff : PCI CardBus #02
  32000000-33ffffff : PCI CardBus #06
34000000-340003ff : 0000:00:1f.1
36000000-37ffffff : PCI CardBus #02
38000000-39ffffff : PCI CardBus #06
PCI: Bus 2, cardbus bridge: 0000:01:06.0
  IO window: 00003000-000030ff
  IO window: 00003400-000034ff
  PREFETCH window: 30000000-31ffffff
  MEM window: 36000000-37ffffff
PCI: Bus 6, cardbus bridge: 0000:01:06.1
  IO window: 00003800-000038ff
  IO window: 00003c00-00003cff
  PREFETCH window: 32000000-33ffffff
  MEM window: 38000000-39ffffff
PCI: Bridge: 0000:00:1e.0
  IO window: 3000-3fff
  MEM window: e0200000-e07fffff
  PREFETCH window: 30000000-33ffffff

lspci -vvv

03:00.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: Yuan Yuan Enterprise Co., Ltd. Unknown device 1788
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 (5000ns min, 13750ns max)
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at 36000000 (32-bit, non-prefetchable) [size=16M]
        Capabilities: [44] Vital Product Data
        Capabilities: [4c] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

03:00.1 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (rev 05)
        Subsystem: Yuan Yuan Enterprise Co., Ltd. Unknown device 1788
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR+
        Latency: 64 (1000ns min, 63750ns max)
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at 37000000 (32-bit, non-prefetchable) [size=16M]
        Capabilities: [4c] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

03:00.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05)
        Subsystem: Yuan Yuan Enterprise Co., Ltd. Unknown device 1788
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 10
        Capabilities: [4c] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

dmesg (Kernel 2.6.18.4)

pccard: CardBus card inserted into slot 0
Linux video capture interface: v2.00
cx2388x v4l2 driver version 0.0.6 loaded
PCI: Enabling device 0000:03:00.0 (0000 -> 0002)
ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 18 (level, low) -> IRQ 201
CORE cx88[0]: subsystem: 12ab:1788, board: Pinnacle Hybrid PCTV [card=57,autodetected]
TV tuner 71 at 0xc2, Radio tuner -1 at 0x1fe
cx2388x alsa driver version 0.0.6 loaded
cx2388x cx88-mpeg Driver Manager version 0.0.6 loaded
tuner 0-0061: chip found @ 0xc2 (cx88[0])
Tuner: setting up tuner core extension for: Xceive 3028 Tuner
ERROR TUNER TYPE NOT SUPPORTED (0)
cx88[0]/0: found at 0000:03:00.0, rev: 5, irq: 201, latency: 0, mmio: 0x45000000
PCI: Setting latency timer of device 0000:03:00.0 to 64
cx88[0]/0: registered device video0 [v4l2]
cx88[0]/0: registered device vbi0
Loading base firmware: xc3028_init0.i2c.fw
Switching to Analogue TV
cx88_gpio_write: 132 - 0
Loading default analogue TV settings: xc3028_BG_PAL_A2_A.i2c.fw
xc3028_set_std, Loading specific configuration for requested mode xc3028_MN_NTSCPAL_A2.i2c.fw
PCI: Enabling device 0000:03:00.1 (0000 -> 0002)
ACPI: PCI Interrupt 0000:03:00.1[A] -> GSI 18 (level, low) -> IRQ 201
PCI: Setting latency timer of device 0000:03:00.1 to 64
cx88[0]/1: CX88x/0: ALSA support for cx2388x boards
cx88[0]/2: cx2388x 8802 Driver Manager
PCI: Enabling device 0000:03:00.2 (0000 -> 0002)
ACPI: PCI Interrupt 0000:03:00.2[A] -> GSI 18 (level, low) -> IRQ 201
PCI: Setting latency timer of device 0000:03:00.2 to 64
cx88[0]/2: found at 0000:03:00.2, rev: 5, irq: 201, latency: 64, mmio: 0x47000000

DVB-T Scanning

The zl10353 status register shows up that it locks onto a channel, but there's no IRQ coming in which signals MPEG data.

============== SCAN ============
STATUS6: 6f
STATUS7: 33
STATUS8: 00
FE_HAS_CARRIER
FE_HAS_VITERBI
FE_HAS_LOCK
FE_HAS_SYNC
WARNING: filter timeout pid 0x0010
>>> tune to: 482000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
>>> tuning status == 0x00
>>> tuning status == 0x06
>>> tuning status == 0x1e
WARNING: filter timeout pid 0x0011
WARNING: filter timeout pid 0x0000
WARNING: filter timeout pid 0x0010
>>> tune to: 578000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
>>> tuning status == 0x00
>>> tuning status == 0x1e
WARNING: filter timeout pid 0x0011
WARNING: filter timeout pid 0x0000
WARNING: filter timeout pid 0x0010