[pvrusb2] Re: Problem with 20060102A

Helmut Toplitzer pvrusb2 at toplitzer.net
Wed Jan 4 02:34:11 CST 2006


Ok. Testing gmplayer works fine so far. However sometimes stop/starting
takes longer than others. Then, it looks like, the device is reset:

vrusb2 i2c v4l2 decoder_enable(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_start
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_start id=cad1e980
pvrusb2 /*--TRACE_STREAM--*/ disable
pvrusb2 subsys mask changing 0x3c000:0x0 from 0x3c001 to 0x1
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_stop
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(0)
pvrusb2 /*---TRACE_CTL----*/ decoder disable
pvrusb2 i2c v4l2 decoder_enable(0)
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (tear-down) id=cad1e980
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_stop id=cad1e980
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (setup) id=cad1e980
pvrusb2 /*--TRACE_STREAM--*/ enable
pvrusb2 subsys mask changing 0x3c001:0xffffffff from 0x1 to 0x3c001
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_configure
pvrusb2 /*---TRACE_CTL----*/ decoder enable
pvrusb2 i2c v4l2 decoder_enable(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_start
pvrusb2 ***WARNING*** device's encoder appears to be stuck (status=000000003)
pvrusb2 Encoder command: 0x81
pvrusb2 Encoder arg1: 0x00000000
pvrusb2 Encoder arg2: 0x00000013
pvrusb2 Encoder arg3: 0x00000000
pvrusb2 Encoder arg4: 0x00000000
pvrusb2 Encoder arg5: 0x00000000
pvrusb2 Encoder arg6: 0x00000000
pvrusb2 Encoder arg7: 0x00000000
pvrusb2 Encoder arg8: 0x00000000
pvrusb2 Encoder arg9: 0x00000000
pvrusb2 Encoder arg10: 0x00000000
pvrusb2 Encoder arg11: 0x00000000
pvrusb2 Encoder arg12: 0x00000000
pvrusb2 Giving up waiting.  It is likely that this is a bad idea...
pvrusb2 Error recovery initiated
pvrusb2 Retrying device reconfiguration
pvrusb2 subsys mask changing 0x3c001:0xffffffff from 0x8000 to 0x3c001
pvrusb2 /*---TRACE_CTL----*/ pvr2_upload_firmware2
pvrusb2 pvr2_upload_firmware2
pvrusb2 Requesting uproc soft reset
pvrusb2 Requesting uproc hard reset
pvrusb2 upload of pvrusb2.f2 : 262144 / 262144
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_configure
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_start
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_start id=cad1e980

But its working again after this without any action on my side.
This also happens sometimes on mythtv without problems (This are the 2sec.
changes of the channel)

Retested mythtv and got:
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Saturation" <-- 63 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Brightness" <-- 127 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Hue" <-- 0 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Tuner Frequency (Hz)" <-- 495250000 (<integer>)
pvrusb2 i2c v4l2 set_freq(495250000)
pvrusb2 i2c v4l1 set_freq(495250000)
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (setup) id=cad1e980
pvrusb2 /*--TRACE_STREAM--*/ enable
pvrusb2 subsys mask changing 0x3c001:0xffffffff from 0x1 to 0x3c001
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_configure
pvrusb2 /*---TRACE_CTL----*/ decoder enable
pvrusb2 i2c v4l2 decoder_enable(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_start
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_start id=cad1e980
pvrusb2 /*--TRACE_STREAM--*/ disable
pvrusb2 subsys mask changing 0x3c000:0x0 from 0x3c001 to 0x1
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_stop
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(0)
pvrusb2 /*---TRACE_CTL----*/ decoder disable
pvrusb2 i2c v4l2 decoder_enable(0)
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (tear-down) id=cad1e980
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_stop id=cad1e980
pvrusb2 /*--TRACE_COMMIT--*/ "Contrast" <-- 63 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Saturation" <-- 63 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Brightness" <-- 127 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Hue" <-- 0 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Tuner Frequency (Hz)" <-- 543250000 (<integer>)
pvrusb2 i2c v4l2 set_freq(543250000)
pvrusb2 i2c v4l1 set_freq(543250000)
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (setup) id=cad1e980
pvrusb2 /*--TRACE_STREAM--*/ enable
pvrusb2 subsys mask changing 0x3c001:0xffffffff from 0x1 to 0x3c001
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_configure
pvrusb2 /*---TRACE_CTL----*/ decoder enable
pvrusb2 i2c v4l2 decoder_enable(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_start
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_start id=cad1e980
pvrusb2 /*--TRACE_STREAM--*/ disable
pvrusb2 subsys mask changing 0x3c000:0x0 from 0x3c001 to 0x1
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_stop
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(0)
pvrusb2 /*---TRACE_CTL----*/ decoder disable
pvrusb2 i2c v4l2 decoder_enable(0)
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (tear-down) id=cad1e980
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_stop id=cad1e980
pvrusb2 /*--TRACE_COMMIT--*/ "Contrast" <-- 63 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Saturation" <-- 63 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Brightness" <-- 127 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Hue" <-- 0 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Tuner Frequency (Hz)" <-- 495250000 (<integer>)
pvrusb2 i2c v4l2 set_freq(495250000)
pvrusb2 i2c v4l1 set_freq(495250000)
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (setup) id=cad1e980
pvrusb2 /*--TRACE_STREAM--*/ enable
pvrusb2 subsys mask changing 0x3c001:0xffffffff from 0x1 to 0x3c001
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_configure
pvrusb2 /*---TRACE_CTL----*/ decoder enable
pvrusb2 i2c v4l2 decoder_enable(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(1)
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_start
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_start id=cad1e980
================ HERE'S THE HANG ===================================
================ RESTARTING MYTHTV - BACKEND =======================
pvrusb2 /*--TRACE_STREAM--*/ disable
pvrusb2 subsys mask changing 0x3c000:0x0 from 0x3c001 to 0x1
pvrusb2 /*---TRACE_CTL----*/ pvr2_encoder_stop
pvrusb2 /*---TRACE_CTL----*/ pvr2_hdw_cmd_usbstream(0)
pvrusb2 /*---TRACE_CTL----*/ decoder disable
pvrusb2 i2c v4l2 decoder_enable(0)
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_setup (tear-down) id=cad1e980
pvrusb2 /*---TRACE_READ---*/ pvr2_ioread_stop id=cad1e980
pvrusb2 pvr2_v4l2_do_ioctl failure, ret=-22 (0xffffffea)
pvrusb2 /*--TRACE_COMMIT--*/ "Video Source" <-- 0 (television)
pvrusb2 i2c msp3400 set_stereo
pvrusb2 i2c v4l2 set_input(0)
pvrusb2 /*--TRACE_COMMIT--*/ "Video Standard" <-- 1 (PAL-BG)
pvrusb2 i2c v4l2 set_standard(1)
pvrusb2 i2c v4l1 set_standard(1)
pvrusb2 /*--TRACE_COMMIT--*/ "Contrast" <-- 63 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Saturation" <-- 63 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Brightness" <-- 127 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Hue" <-- 0 (<integer>)
pvrusb2 i2c v4l2 set_bcsh b=127 c=63 s=63 h=0
pvrusb2 /*--TRACE_COMMIT--*/ "Tuner Frequency (Hz)" <-- 495250000 (<integer>)
pvrusb2 i2c v4l2 set_freq(495250000)
pvrusb2 i2c v4l1 set_freq(495250000)


> One other question - when you get this hang, how do you recover?  Just
> change channels again, restart MythTV, reload the driver, re-plug the
> hardware, and/or reboot?  Given that the log you sent didn't show any
> evidence of a problem I have to presume that just causing the stream to
> restart is probably enough, but everything I've presumed about your issue
> so far has been wrong :-)

Recovery is done by simply restarting the mythtv-backend. The frontend hangs, 
sometimes quits itself after a few secs., sometimes must be killed.
Restarting only the frontend is not enough because backend is hung in a way
too. However the init-script does its work in restarting the backend.

start-stop-daemon --stop --oknodo --pidfile $RUNDIR/$NAME.pid \
                --chuid $USER --exec $DAEMON -- $ARGS
start-stop-daemon --start --pidfile $RUNDIR/$NAME.pid \
                --chuid $USER --nicelevel $NICE --exec $DAEMON -- $ARGS
 
       
(The second error log included here is hopefully more usefull)

Helmut



-- 
My GNUpg fingerprint http://www.gnupg.org
4563 F4FB 0B7E 8698 53CD  00E9 E319 35BD 6A91 1656


More information about the pvrusb2 mailing list