Tuner code 0x71 for Hauppauge PVR-150 (pvrxxx)

Simon Thoustrup simon at thoustrup.dk
Thu Jan 25 23:58:56 UTC 2007


Hi!

I've just received a Hauppauge PVR-150. Getting the tuner to work seems 
to cause me some problems however.
I'm running 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Wed Jan 24 13:01:44 CET 
2007 - dmesg and pciconf quoted at the end.

I've tried the following with /usr/ports/multimedia/pvrxxx

1. Copied hcwPVRP2.sys from the CD to /usr/ports/distfiles/.
2. Copied HcwMakoC.ROM from the CD to /usr/ports/disfiles/HcwMakoA.ROM
3. Updated distinfo to reflect actual SIZE, MD5 and SHA256 of HcwMakoA.ROM
4. make patch-iicbb
5. Compile kernel with "device iicbus" and "device iicbb"
6. Install kernel and reboot
7. make install
8. kldload cxm_iic && kldload cxm

This results in the following:

kernel: cxm0: <Conexant iTVC16 MPEG Coder> mem 0xd0000000-0xd3ffffff irq 
9 at device 13.0 on pci0
kernel: cxm_iic0: <Conexant iTVC15 / iTVC16 I2C controller> on cxm0
kernel: iicbb0: <I2C bit-banging driver> on cxm_iic0
kernel: iicbus0: <Philips I2C bus> on iicbb0 master-only
kernel: tuner code 113
kernel: cxm0: unknown tuner code 0x71
kernel: tuner_type = -1
kernel: cxm0: could not initialize tuner
kernel: iicbus0: detached
kernel: iicbb0: detached
kernel: cxm_iic0: detached
kernel: device_attach: cxm0 attach returned 6

Did a bit of google'ing and found an answer 
(http://lists.freebsd.org/pipermail/freebsd-multimedia/2006-November/005303.html) 
suggesting that my tuner is, or at least can work as, a TCL 2002N-6A. 
Therefore I did:

9. kldunload cxm && kldunload cxm_iic
10. Opened work/dev/cxm/cxm_eeprom.c and found "0x55"
11. Added "case 0x71:" so that it reads:
                 case 0x71:
                 case 0x55: /* TCL 2002N-6A */
12. rm work/.build_done.pvrxxx._usr_local
13. make reinstall -DFORCE_PKG_REGISTER
14. kldload cxm_iic && kldload cxm

Now I get:

kernel: cxm0: <Conexant iTVC16 MPEG Coder> mem 0xd0000000-0xd3ffffff irq 
9 at device 13.0 on pci0
kernel: cxm_iic0: <Conexant iTVC15 / iTVC16 I2C controller> on cxm0
kernel: iicbb0: <I2C bit-banging driver> on cxm_iic0
kernel: iicbus0: <Philips I2C bus> on iicbb0 master-only
kernel: tuner code 113
kernel: tuner_type = 20
kernel: cxm0: TCL 2002N-6A tuner
kernel: <2>cxm 0-0000: loaded /lib/modules/v4l-cx25840.fw firmware 
(14264 bytes)
kernel: <2>cxm debug 0-0000: decoder set input (0)
kernel: <2>cxm debug 0-0000: now setting Tuner input
kernel: <2>cxm debug 0-0000: set audio input (0)
kernel: <2>cxm debug 0-0000: set audio input (0)
kernel: cxm0: Eeprom PAL
kernel: <2>tda 0-0000: switching to v4l2
kernel: <2>tda 0-0000: configure for: PAL-BG
kernel: <2>tda 0-0000: writing: b=0xd4 c=0x70 e=0x09
kernel: could not start iic bus
kernel: probed 54
kernel: probed 136
kernel: probed 160
kernel: probed 194
kernel: probed 224
kernel: probed 226
kernel: probed 228
kernel: probed 230
kernel: <2>tda 0-0000: i2c i/o error: rc == 2 (should be 4)
kernel: read error
kernel: <2>tda 0-0000: i2c i/o error: rc == -597292633 (should be 1)
kernel: <2>tda 0-0000: read: 0x 0
kernel: <2>tda 0-0000:   after power on : no
kernel: <2>tda 0-0000:   afc            : - 12.5 kHz
kernel: <2>tda 0-0000:   fmif level     : low
kernel: <2>tda 0-0000:   afc window     : out
kernel: <2>tda 0-0000:   vfi level      : low
kernel: <2>cxm 0-0000: Video signal:              not present
kernel: <2>cxm 0-0000: Detected format:           NTSC-M
kernel: <2>cxm 0-0000: Detected audio mode:       forced mode
kernel: <2>cxm 0-0000: Detected audio standard:   forced audio standard
kernel: <2>cxm 0-0000: Audio muted:               no
kernel: <2>cxm 0-0000: Audio microcontroller:     running
kernel: <2>cxm 0-0000: Configured audio standard: A2-BG
kernel: <2>cxm 0-0000: Configured audio mode:     undefined
kernel: <2>cxm 0-0000: Specified standard:        PAL-BDGHI
kernel: <2>cxm 0-0000: Specified input:           Tuner
kernel: <2>cxm 0-0000: Specified audio input:     Tuner
kernel: <2>cxm 0-0000: Specified audioclock freq: 48 kHz
kernel: <2>cxm 0-0000: Preferred audio mode:      stereo
kernel: <2>cxm 0-0000: Selected 65 MHz format:    system DK
kernel: <2>cxm 0-0000: Selected 45 MHz format:    chroma
kernel: cxm0: [GIANT-LOCKED]

I didn't expect it to work, but I tried pvr250-setchannel just to be sure:

15. pvr250-setchannel -a on -m 4 231.25

Being in Denmark I need -m 4 for PAL. Freq 231.25 is the "Info-channel" 
of the cabel provider TDC in Copenhagen.
The command gave the following console response:

ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
ioctl( tfd, TVTUNER_SETTYPE ) failed.: Invalid argument

In the log I got the following:

kernel: device cxm0 opened
kernel: <2>cxm 0-0000: Video signal:              not present
kernel: <2>cxm 0-0000: Detected format:           NTSC-M
kernel: <2>cxm 0-0000: Detected audio mode:       forced mode
kernel: <2>cxm 0-0000: Detected audio standard:   forced audio standard
kernel: <2>cxm 0-0000: Audio muted:               no
kernel: <2>cxm 0-0000: Audio microcontroller:     running
kernel: <2>cxm 0-0000: Configured audio standard: A2-BG
kernel: <2>cxm 0-0000: Configured audio mode:     undefined
kernel: <2>cxm 0-0000: Specified standard:        PAL-BDGHI
kernel: <2>cxm 0-0000: Specified input:           Tuner
kernel: <2>cxm 0-0000: Specified audio input:     Tuner
kernel: <2>cxm 0-0000: Specified audioclock freq: 48 kHz
kernel: <2>cxm 0-0000: Preferred audio mode:      stereo
kernel: <2>cxm 0-0000: Selected 65 MHz format:    system DK
kernel: <2>cxm 0-0000: Selected 45 MHz format:    chroma

- and the output (cat /dev/cxm0 > tv.mpg) gave nothing but static.
I have tried to place "case 0x71:" with every existing case one by one. 
None of them worked. Some did even worse than the 0x55 case (not able to 
lock device -errors).

Does anyone have a hint?
I can try installing the card in Windows or Linux, if that can provide 
any information needed by someone wise to come up with the magic patch..


Regards
Simon Thoustrup


dmesg:

Copyright (c) 1992-2007 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
         The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 6.2-RELEASE #0: Wed Jan 24 13:01:44 CET 2007
     root at bsd.cph.thoustrup.dk:/usr/obj/usr/src/sys/PVR150
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel Pentium III (701.59-MHz 686-class CPU)
   Origin = "GenuineIntel"  Id = 0x683  Stepping = 3
 
Features=0x387f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,PN,MMX,FXSR,SSE>
real memory  = 671023104 (639 MB)
avail memory = 647315456 (617 MB)
bktr_mem: memory holder loaded
kbd1 at kbdmux0
ath_hal: 0.9.17.2 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
acpi0: <IntelR AWRDACPI> on motherboard
acpi0: Power Button (fixed)
Timecounter "ACPI-safe" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0
cpu0: <ACPI CPU> on acpi0
acpi_throttle0: <ACPI CPU Throttling> on cpu0
acpi_button0: <Power Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 
0xcf8-0xcff,0x4000-0x4041,0x5000-0x500f on acpi0
pci0: <ACPI PCI bus> on pcib0
agp0: <Intel 82443BX (440 BX) host to PCI bridge> mem 
0xd7000000-0xd7ffffff at device 0.0 on pci0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <display, VGA> at device 0.0 (no driver attached)
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 UDMA33 controller> port 
0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xf000-0xf00f at device 7.1 on pci0
ata0: <ATA channel 0> on atapci0
ata1: <ATA channel 1> on atapci0
uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0xe000-0xe01f irq 
9 at device 7.2 on pci0
uhci0: [GIANT-LOCKED]
usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
pci0: <bridge> at device 7.3 (no driver attached)
xl0: <3Com 3c905-TX Fast Etherlink XL> port 0xe400-0xe43f irq 9 at 
device 11.0 on pci0
miibus0: <MII bus> on xl0
nsphy0: <DP83840 10/100 media interface> on miibus0
nsphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
xl0: Ethernet address: 00:60:97:36:81:e5
pci0: <multimedia, video> at device 13.0 (no driver attached)
fxp0: <Intel 82559 Pro/100 Ethernet> port 0xe800-0xe83f mem 
0xd8a01000-0xd8a01fff,0xd8800000-0xd88fffff irq 10 at device 15.0 on pci0
miibus1: <MII bus> on fxp0
inphy0: <i82555 10/100 media interface> on miibus1
inphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp0: Ethernet address: 00:02:b3:0f:d4:f4
fxp1: <Intel 82559 Pro/100 Ethernet> port 0xec00-0xec3f mem 
0xd8a00000-0xd8a00fff,0xd8900000-0xd89fffff irq 11 at device 17.0 on pci0
miibus2: <MII bus> on fxp1
inphy1: <i82555 10/100 media interface> on miibus2
inphy1:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp1: Ethernet address: 00:02:b3:06:b8:0b
acpi_tz0: <Thermal Zone> on acpi0
fdc0: <floppy drive controller> port 0x3f2-0x3f5,0x3f7 irq 6 drq 2 on acpi0
fdc0: [FAST]
sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on 
acpi0
sio0: type 16550A
sio1: <16550A-compatible COM port> port 0x2f8-0x2ff irq 3 on acpi0
sio1: type 16550A
ppc0: <ECP parallel printer port> port 0x378-0x37f,0x778-0x77b irq 7 drq 
3 on acpi0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/16 bytes threshold
ppbus0: <Parallel port bus> on ppc0
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model IntelliMouse, device ID 3
pmtimer0 on isa0
orm0: <ISA Option ROMs> at iomem 
0xc0000-0xc7fff,0xc8000-0xcbfff,0xcc000-0xccfff,0xcd000-0xcdfff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sbc0: <Creative SB AWE64> at port 0x220-0x22f,0x330-0x331,0x388-0x38b 
irq 5 drq 1,5 on isa0
sbc0: [GIANT-LOCKED]
pcm0: <SB16 DSP 4.16> on sbc0
pcm0: [GIANT-LOCKED]
Timecounter "TSC" frequency 701593892 Hz quality 800
Timecounters tick every 1.000 msec
ad0: 76319MB <Seagate ST380021A 3.75> at ata0-master UDMA33
ad2: 39266MB <IC35L060AVV207 0 V22OA63A> at ata1-master UDMA33
acd0: CDRW <PLEXTOR CD-R PX-320A/1.04> at ata1-slave UDMA33
cd0 at ata1 bus 0 target 1 lun 0
cd0: <PLEXTOR CD-R   PX-320A 1.04> Removable CD-ROM SCSI-0 device
cd0: 33.000MB/s transfers
cd0: cd present [273535 x 2048 byte records]
Trying to mount root from ufs:/dev/ad0s1a
bridge0: Ethernet address: 3e:e3:a9:a4:f1:46
bridge1: Ethernet address: 06:75:7d:cb:8f:4a


pciconf -vl:

agp0 at pci0:0:0:  class=0x060000 card=0x00000000 chip=0x71908086 rev=0x03 
hdr=0x00
     vendor   = 'Intel Corporation'
     device   = '82443BX/ZX 440BX/ZX CPU to PCI Bridge (AGP Implemented)'
     class    = bridge
     subclass = HOST-PCI
pcib1 at pci0:1:0: class=0x060400 card=0x00000000 chip=0x71918086 rev=0x03 
hdr=0x01
     vendor   = 'Intel Corporation'
     device   = '82443BX/ZX 440BX/ZX AGPset PCI-to-PCI bridge'
     class    = bridge
     subclass = PCI-PCI
isab0 at pci0:7:0: class=0x060100 card=0x00000000 chip=0x71108086 rev=0x02 
hdr=0x00
     vendor   = 'Intel Corporation'
     device   = '82371AB/EB/MB PIIX4/4E/4M ISA Bridge'
     class    = bridge
     subclass = PCI-ISA
atapci0 at pci0:7:1:       class=0x010180 card=0x00000000 chip=0x71118086 
rev=0x01 hdr=0x00
     vendor   = 'Intel Corporation'
     device   = '82371AB/EB/MB PIIX4/4E/4M IDE Controller'
     class    = mass storage
     subclass = ATA
uhci0 at pci0:7:2: class=0x0c0300 card=0x00000000 chip=0x71128086 rev=0x01 
hdr=0x00
     vendor   = 'Intel Corporation'
     device   = '82371AB/EB/MB PIIX4/4E/4M USB Interface'
     class    = serial bus
     subclass = USB
none0 at pci0:7:3: class=0x068000 card=0x00000000 chip=0x71138086 rev=0x02 
hdr=0x00
     vendor   = 'Intel Corporation'
     device   = '82371AB/EB/MB PIIX4/4E/4M Power Management Controller'
     class    = bridge
xl0 at pci0:11:0:  class=0x020000 card=0x00000000 chip=0x905010b7 rev=0x00 
hdr=0x00
     vendor   = '3COM Corp, Networking Division'
     device   = '3C905-TX Fast Etherlink XL PCI 10/100'
     class    = network
     subclass = ethernet
cxm0 at pci0:13:0: class=0x040000 card=0x80030070 chip=0x00164444 rev=0x01 
hdr=0x00
     vendor   = 'Conexant Inc (Was: Globespan, ICompression Inc)'
     device   = 'iTVC16/CX23416 MPEG Codec'
     class    = multimedia
     subclass = video
fxp0 at pci0:15:0: class=0x020000 card=0x000c8086 chip=0x12298086 rev=0x08 
hdr=0x00
     vendor   = 'Intel Corporation'
     device   = '82550/1/7/8/9 EtherExpress PRO/100(B) Ethernet Adapter'
     class    = network
     subclass = ethernet
fxp1 at pci0:17:0: class=0x020000 card=0x000c8086 chip=0x12298086 rev=0x08 
hdr=0x00
     vendor   = 'Intel Corporation'
     device   = '82550/1/7/8/9 EtherExpress PRO/100(B) Ethernet Adapter'
     class    = network
     subclass = ethernet
none1 at pci1:0:0: class=0x030000 card=0x63261569 chip=0x63261039 rev=0x0b 
hdr=0x00
     vendor   = 'Silicon Integrated Systems (SiS)'
     device   = 'SiS 86C6326 AGP/PCI Graphics & Video Accelerator'
     class    = display
     subclass = VGA







More information about the freebsd-multimedia mailing list