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

Simon Thoustrup simon at thoustrup.dk
Mon Feb 5 13:13:57 UTC 2007


usleepless at gmail.com skrev:
> On 2/5/07, Simon Thoustrup <simon at thoustrup.dk> wrote:
>> usleepless at gmail.com wrote:
>> >> It takes a lot longer to load the cxm module now, but I still 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
>> >> (16382 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 == -597317209 (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]
>> >> bsd kernel: cxm0: encoder firmware version 0x2050032
>> >>
>> >> - and still the same error messages when trying pvr250-setchannel:
>> >>
>> >> ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
>> >> ioctl( tfd, TVTUNER_SETTYPE ) failed.: Invalid argument
>> > > what are the exact parameters you are supplying to pvr250-setchannel?
>> # pvr250-setchannel -a on -m 4 231.25
>> ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
>> ioctl( tfd, TVTUNER_SETTYPE ) failed.: Invalid argument
>>
>> # pvr250-setchannel -m 4 231.25
>> ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
>> ioctl( tfd, TVTUNER_SETTYPE ) failed.: Invalid argument
>>
>> # pvr250-setchannel 231.25
>> ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
>>
>>
>> # pvr250-setchannel -a on -m 4 11
>> ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
>> ioctl( tfd, TVTUNER_SETTYPE ) failed.: Invalid argument
>> ioctl( tfd, TVTUNER_SETCHNL ) failed.: Invalid argument
>>
>> # pvr250-setchannel -m 4 11
>> ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
>> ioctl( tfd, TVTUNER_SETTYPE ) failed.: Invalid argument
>> ioctl( tfd, TVTUNER_SETCHNL ) failed.: Invalid argument
>>
>> # pvr250-setchannel 11
>> ioctl( tfd, BT848_GAUDIO ) failed.: Device not configured
>> ioctl( tfd, TVTUNER_SETCHNL ) failed.: Invalid argument
>>
>> As Dan also points out in his mail, I didn't expect pvr250-setchannel 
>> to work as it should with the i2c bus not starting correctly, but 
>> tried it out in case it was just a "print-error"/warning..
> 
> well, the error messages are a bit too "serious". not all is broken.
> 
> i investigated and your tuner has is not configured for properly.
> 
> i am working on a proper fix for it at the moment, but in the meantime, 
> you could try:
> 
> 1. edit cxm_tuner.c, find "TCL 2002N-6A"
> 2. change "CXM_TUNER_TV_SYSTEM_MN, cxm_none_system_code_style" into:
>                 "CXM_TUNER_TV_SYSTEM_MN | CXM_TUNER_TV_SYSTEM_BG | 
> CXM_TUNER_TV_SYSTEM_DK,  cxm_none_system_code_style"
> 3. recompile, reinstall and retry.
> 4. let me know.
That did it!
I still get all the kernel error messages when loading the cxm module, 
but pvr250-setchannel now only gives the audio error when tuning by 
frequency. Tuning by channel number still produces the invalid argument 
error.

When tuning by frequency I get a very fine result testing with

#cat /dev/cxm0 > test.mpg

Thank you very much for you assistance! I will be more than delighted to 
help you test any patches/fixes you come up with, if you need it.

Best,
Simon


More information about the freebsd-multimedia mailing list