[pvrusb2] New driver snapshot: pvrusb2-mci-20060417

Patricio Stegmann IAFIS pstegmann at iafis.net
Tue Apr 18 23:25:47 CDT 2006


Hi Mike,

I tried last driver snapshot and it still works as older ones i.e. I can 
see good images but no sound...
I looked around a bit and it seems my board doesn't tell the driver it 
supports PAL-N (tv std in Argentina):

/sys/class/pvrusb2/sn-7426843/ctl_video_standard_mask_available
---------------------------------------------------------------

bit_val
	PAL-B
	PAL-B1
	PAL-G
	PAL-H
	PAL-I
	PAL-D
	PAL-D1
	PAL-K
	PAL-M
	PAL-N
	PAL-Nc
	PAL-60
	NTSC-M
	NTSC-Mj
	NTSC-443
	SECAM-B	
	SECAM-D
	SECAM-G
	SECAM-H
	SECAM-K
	SECAM-K1
	SECAM-L
	SECAM-LC

cur_val
	PAL-B PAL-B1 PAL-G PAL-I PAL-D PAL-D1 PAL-K SECAM-L

custom_val
	PAL-B/B1/D/D1/G/I/K;SECAM-L


/sys/class/pvrusb2/sn-7426843/ctl_video_standard_mask_active
------------------------------------------------------------

bit_val
	PAL-B
	PAL-B1
	PAL-G
	PAL-I
	PAL-D
	PAL-D1
	PAL-K
	SECAM-L
cur_val
	PAL-B
custom_val
	PAL-B


/sys/class/pvrusb2/sn-7426843/ctl_video_standard
------------------------------------------------

cur_val
	PAL-B
enum_val
	none
	PAL-B
	PAL-B1
	PAL-G
	PAL-I
	PAL-D
	PAL-D1
	PAL-K
	SECAM-L


I did some echo "PAL-N" in cur_vals and could have it as 
ctl_video_standard, but still has no sound !
I don't really know how to use bit_val stuff in /sys ! I wonder how can 
I modify or force add some values ?

I send you the complete dmesg discovering the new device just in case:

[4301948.275000] usb 1-4: new high speed USB device using ehci_hcd and 
address 9
[4301948.390000] usb 1-4: configuration #1 chosen from 1 choice
[4301948.391000] pvrusb2: pvr2_hdw_create: hdw=e7d7a000, type "WinTV PVR 
USB2 Model Category 29xxxx"
[4301948.391000] pvrusb2: Driver unit number is 0, name is pvrusb2_a
[4301948.391000] pvrusb2: subsys_stream_mask: 0x1e
[4301948.391000] pvrusb2: pvr_probe(pvr=f2030500)
[4301948.391000] pvrusb2: pvr2_hdw_setup(hdw=e7d7a000) begin
[4301948.392000] pvrusb2: Probe of device endpoint 1 succeeded
[4301948.392000] pvrusb2: Performing a device reset...
[4301948.494000] usb 1-4: reset high speed USB device using ehci_hcd and 
address 9
[4301948.617000] pvrusb2: Requesting powerup
[4301948.617000] pvrusb2: pvr2_upload_firmware2
[4301948.638000] pvrusb2: Located encoder firmware: v4l-cx2341x-enc.fw; 
uploading...
[4301948.639000] pvrusb2: Requesting uproc hard reset
[4301948.866000] pvrusb2: upload of v4l-cx2341x-enc.fw : 262144 / 262144
[4301948.933000] pvrusb2: i2c_attach [client=tveeprom @ 0x50 ctxt=f7179820]
[4301948.975000] msp3400 4-0040: MSP3415G-B8 found @ 0x80 (pvrusb2_a)
[4301948.976000] msp3400 4-0040: MSP3415G-B8 supports nicam and radio, 
mode is autodetect and autoselect
[4301948.978000] pvrusb2: i2c_attach [client=MSP3415G-B8 @ 0x40 
ctxt=f7095740]
[4301949.014000] saa7115 4-0021: saa7115 found @ 0x42 (pvrusb2_a)
[4301949.188000] pvrusb2: i2c_attach [client=saa7115 @ 0x21 ctxt=e5934540]
[4301949.223000] tda9887 4-0043: chip found @ 0x86 (pvrusb2_a)
[4301949.223000] pvrusb2: i2c_attach [client=tda9887 @ 0x43 ctxt=e5934f60]
[4301949.259000] tuner 4-0061: chip found @ 0xc2 (pvrusb2_a)
[4301949.259000] pvrusb2: i2c_attach [client=(tuner unset) @ 0x61 
ctxt=e5934980]
[4301949.267000] pvrusb2: Value for eeprom addr from controller was 0x50
[4301949.267000] pvrusb2: Examining 256 byte eeprom at location 0x50 
using 8 bit addressing
[4301949.307000] tveeprom 4-0050: Hauppauge model 29039, rev C552, 
serial# 7426843
[4301949.307000] tveeprom 4-0050: tuner model is Microtune 4049 FM5 (idx 
52, type 45)
[4301949.307000] tveeprom 4-0050: TV standards PAL(B/G) PAL(I) 
SECAM(L/L') PAL(D/D1/K) (eeprom 0x74)
[4301949.307000] tveeprom 4-0050: audio processor is MSP3415 (idx 6)
[4301949.307000] tveeprom 4-0050: decoder processor is SAA7115 (idx 19)
[4301949.307000] tveeprom 4-0050: has radio, has IR remote
[4301949.307000] pvrusb2: eeprom detected v4l tveeprom module
[4301949.307000] pvrusb2: eeprom direct call results:
[4301949.307000] pvrusb2: has_radio=1
[4301949.307000] pvrusb2: tuner_type=45
[4301949.307000] pvrusb2: tuner_formats=0x4000f7
[4301949.307000] pvrusb2: audio_processor=10
[4301949.307000] pvrusb2: model=29039
[4301949.307000] pvrusb2: revision=9262418
[4301949.307000] pvrusb2: serial_number=7426843
[4301949.307000] pvrusb2: rev_str=C552
[4301949.307000] pvrusb2: Supported video standard(s) reported by 
eeprom: PAL-B/B1/D/D1/G/I/K;SECAM-L
[4301949.307000] pvrusb2: Mapping standards mask=0x4000f7 
(PAL-B/B1/D/D1/G/I/K;SECAM-L)
[4301949.307000] pvrusb2: Setting up 8 unique standard(s)
[4301949.307000] pvrusb2: Set up standard idx=0 name=PAL-B
[4301949.307000] pvrusb2: Set up standard idx=1 name=PAL-B1
[4301949.307000] pvrusb2: Set up standard idx=2 name=PAL-G
[4301949.307000] pvrusb2: Set up standard idx=3 name=PAL-I
[4301949.307000] pvrusb2: Set up standard idx=4 name=PAL-D
[4301949.307000] pvrusb2: Set up standard idx=5 name=PAL-D1
[4301949.307000] pvrusb2: Set up standard idx=6 name=PAL-K
[4301949.307000] pvrusb2: Set up standard idx=7 name=SECAM-L
[4301949.307000] pvrusb2: Initial video standard auto-selected to PAL-B
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "brightness" <-- 128 
<integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "contrast" <-- 68 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "saturation" <-- 64 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "hue" <-- 0 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "volume" <-- 65535 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "balance" <-- 0 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "bass" <-- 0 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "treble" <-- 0 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "mute" <-- 0 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "srate" <-- 48KHz <enum>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "audio_bitrate" <-- 
224kb/s <enum>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "audio_crc" <-- 1 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "audio_layer" <-- 2 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "audio_emphasis" <-- None 
<enum>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "interlace" <-- 0 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "vbr" <-- 0 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "video_average_bitrate" 
<-- 6000000 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "video_peak_bitrate" <-- 
6000000 <integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "input" <-- television <enum>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "audio_mode" <-- Stereo 
<enum>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "frequency" <-- 175250000 
<integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "resolution_hor" <-- 720 
<integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "resolution_ver" <-- 480 
<integer>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ 
"video_standard_mask_active" <-- PAL-B <bitmask>
[4301949.307000] pvrusb2: /*--TRACE_COMMIT--*/ "video_standard" <-- 
PAL-B <enum>
[4301949.307000] pvrusb2: Probed: ctxt=f7179820 ctl_mask=0x22f tveeprom 
@ 0x50 [v4l2_standard v4l2_bcsh v4l2_volume v4l2_freq v4l2_size v4l2_log]
[4301949.307000] pvrusb2: i2c 0x40 msp3400 V4L2 handler set up
[4301949.307000] pvrusb2: Probed: ctxt=f7095740 ctl_mask=0x22f 
MSP3415G-B8 @ 0x40 (handler: pvrusb2-audio (old routing) v4l2) 
[v4l2_standard v4l2_bcsh v4l2_volume v4l2_freq v4l2_size v4l2_log]
[4301949.308000] pvrusb2: i2c 0x21 saa711x V4L2 handler set up
[4301949.308000] pvrusb2: Probed: ctxt=e5934540 ctl_mask=0x22f saa7115 @ 
0x21 (handler: pvrusb2-video-v4l (old routing)) [v4l2_standard v4l2_bcsh 
v4l2_volume v4l2_freq v4l2_size v4l2_log]
[4301949.308000] pvrusb2: i2c 0x43 tda9887 V4L2 handler set up
[4301949.308000] pvrusb2: Probed: ctxt=e5934f60 ctl_mask=0x22f tda9887 @ 
0x43 (handler: pvrusb2-demod) [v4l2_standard v4l2_bcsh v4l2_volume 
v4l2_freq v4l2_size v4l2_log]
[4301949.308000] pvrusb2: i2c 0x61 tuner handler set up
[4301949.308000] pvrusb2: Probed: ctxt=e5934980 ctl_mask=0x22f (tuner 
unset) @ 0x61 (handler: pvrusb2-tuner) [v4l2_standard v4l2_bcsh 
v4l2_volume v4l2_freq v4l2_size v4l2_log]
[4301949.308000] pvrusb2: i2c msp3400 v4l2 set_stereo
[4301949.325000] pvrusb2: i2c v4l2 set_input(0)
[4301949.328000] pvrusb2: i2c v4l2 set_audio 0
[4301949.333000] pvrusb2: i2c demod set_config(0x0)
[4301949.335000] pvrusb2: i2c tuner set_type(45)
[4301949.335000] tuner 4-0061: type set to 45 (Microtune 4049 FM5)
[4301949.335000] pvrusb2: i2c v4l2 set_standard(0x1)
[4301949.389000] pvrusb2: i2c v4l2 set_bcsh b=128 c=68 s=64 h=0
[4301949.392000] pvrusb2: i2c v4l2 set_volume(vol=65535 bal=0 bas=0 
treb=0 mute=0)
[4301949.434000] pvrusb2: i2c v4l2 set_freq(175250000)
[4301949.438000] pvrusb2: i2c v4l2 set_size(720x576)
[4301949.458000] pvrusb2: i2c v4l2 do_log()
[4301949.459000] msp3400 4-0040: MSP3415G-B8 rev1 = 0x0207 rev2 = 0x0f48
[4301949.459000] msp3400 4-0040: Audio:    volume 65535
[4301949.459000] msp3400 4-0040: Audio:    balance 0 bass 0 treble 0 
loudness off
[4301949.459000] msp3400 4-0040: Mode:     unknown
[4301949.459000] msp3400 4-0040: Standard: could not detect sound 
standard (mono)
[4301949.459000] msp3400 4-0040: ACB:      0x0c00
[4301949.459000] saa7115 4-0021: Audio frequency: 48000 Hz
[4301949.461000] saa7115 4-0021: Input:           Composite 4
[4301949.461000] saa7115 4-0021: Video signal:    bad
[4301949.461000] saa7115 4-0021: Frequency:       50 Hz
[4301949.461000] saa7115 4-0021: Detected format: BW/No color
[4301949.461000] tda9887 4-0043: Data bytes: b=0xd4 c=0x74 e=0x49
[4301949.461000] tuner 4-0061: Tuner mode:      analog TV
[4301949.461000] tuner 4-0061: Frequency:       175.25 MHz
[4301949.461000] tuner 4-0061: Standard:        0x00000001
[4301949.461000] pvrusb2: pvr2_stream_create: sp=e93948c0
[4301949.461000] pvrusb2: pvr2_hdw_setup: video stream is e93948c0
[4301949.461000] pvrusb2: pvr2_hdw_setup(hdw=e7d7a000) done, ok=1 init_ok=1
[4301949.461000] pvrusb2: Device initialization completed successfully.
[4301949.461000] pvrusb2: pvr2_hdw_setup(hdw=e7d7a000) end
[4301949.461000] pvrusb2: registered device video0 [mpeg]


By the way using xawtv4, if I run scan analog the application dies (with 
an "aborted" message on the console).

Thank you for your effort




pvrusb2-request at isely.net wrote:
> Send pvrusb2 mailing list submissions to
> 	pvrusb2 at isely.net
> 
> To subscribe or unsubscribe via the World Wide Web, visit
> 	http://www.isely.net/cgi-bin/mailman/listinfo/pvrusb2
> or, via email, send a message with subject or body 'help' to
> 	pvrusb2-request at isely.net
> 
> You can reach the person managing the list at
> 	pvrusb2-owner at isely.net
> 
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of pvrusb2 digest..."
> 
> 
> Today's Topics:
> 
>    1. New driver snapshot: pvrusb2-mci-20060417 (Mike Isely)
>    2. Re: New driver snapshot: pvrusb2-mci-20060417 (Andreas Korinek)
>    3. Re: New driver snapshot: pvrusb2-mci-20060417 (Andreas Korinek)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Tue, 18 Apr 2006 02:07:43 -0500 (CDT)
> From: Mike Isely <isely at isely.net>
> Subject: [pvrusb2] New driver snapshot: pvrusb2-mci-20060417
> To: pvrusb2 at isely.net
> Message-ID: <Pine.LNX.4.63.0604180140370.23227 at cnc.isely.net>
> Content-Type: text/plain; charset=us-ascii; format=flowed
> 
> 
> This pvrusb2 driver snapshot has quite a few changes.  You can see the 
> full list here:
> 
>    http://www.isely.net/pvrusb2-history.html#pvrusb2-mci-20060417
> 
> Some highlights:
> 
> 1. The internal controls logic has been completely reworked since the last 
> snapshot.  Long story.  Suffice to say that since it is all new code, 
> there might be some new bugs here.  I've beat on it for the better part of 
> a day and it looks good here - but having said that now there's probably 
> some horrible thing that I might have missed :-)  Read the sysfs interface 
> description on the pvrusb2 web page - enhancements have been added.
> 
> 2. Video standard handling has been completely reworked.  The outward 
> behavioral difference that you're going to see now is that the list of 
> available standards in your V4L app should correspond closely with the 
> hardware model you have.  Also, the list of standards you can choose from 
> is very explicitly laid out, i.e. instead of PAL-B/G now there's PAL-B and 
> PAL-G.  Support for some more obscure standard variants should be present 
> now - so if you're in, say, Argentina, give this a try.  If the standard 
> you want is not in the list, there are ways you can override the list now 
> too.  If anyone sees a need for that, post here and I'll reply to the list 
> with instructions.  Honestly I don't know how well these changes are going 
> to work, because I live in NTSC territory so it's very hard to test the 
> other possibilities.  So please let me know how this works.
> 
> 3. Model 24xxx support is _considerably_ improved now.  You should no 
> longer have to do the "force=-1,27" module option for wm8775, AND the 
> obscure FWSEND fixup/patch in the cx25840 is not strictly needed anymore. 
> Also, the bad failure scenario I had previously described where msp3400 
> can come in and seriously screw up the system should be prevented now. 
> It's still possible that the cx25843 chip can wedge itself, however now 
> nothing "bad" should happen to the kernel anymore.  Those of you with 
> model 24xxx devices, please let me know how well this works.  I strongly 
> recommend using at least the 2.6.16 kernel for this.  It is theoretically 
> possible that that 2.6.15 kernel will also work, but cx25840.ko is 
> different there and I haven't gotten around to testing for it yet.
> 
> 4. The fix to allow xawtv to work again for old hardware and to work at 
> all for new hardware has been implemented.  The xawtv maintainer by the 
> way never replied to my query related to this.
> 
> 5. Compilation under amd64 should work better now.
> 
> Overall, this driver has a lot of new code.  It's possible that there are 
> some regressions.  Hopefully not.  Please let me know how this works out. 
> So far for me this new code is working great.
> 
> BTW, the thing I had to do to patch around the FWSEND issue definitely 
> falls into the category of "deviant hack".  Clearly just lowering the 
> maximum transfer size in cx25840.ko is the preferred way to go, but in an 
> attempt to make it easier for people running 2.6.16 (for which this fix is 
> not implemented), I created this workaround.  I do not expect this hack to 
> find its way into the V4L resident version of the driver, since there it 
> should never be needed.
> 
> Yes, I know the web page documentation is seriously lacking in content 
> related to the new hardware.  That update is in the pipe.  I started 
> writing new documentation a week ago; it just isn't ready yet.
> 
> Enjoy.
> 
>    -Mike
> 
> 

-- 
Cordialmente,

Patricio Stegmann
IAFIS ARGENTINA
of.: (54-11) 48115637
cel.: (54-9-11) 57946871
Cerrito 1054 4º Capital Federal ARGENTINA


More information about the pvrusb2 mailing list