Hi group,
I seem to have narrowed down the gspca driver problem, since I had some free
time today. It seems that the driver consistently hangs at this kernel system
call: usb_set_interface().
The gspca drivers make numerous calls to this function, especially when
re-setting camera parameters (VIDIOCSWIN) and closing the camera stream. By
trial and error, I found out that the usb_set_interface() can only be called
once in the driver, so I added a static int flag to ensure that, and it worked.
Now, I did some googling and recall reading somewhere that usb_set_interface()
will hang if the driver did not support alternate data streaming modes, not
sure if that is what I am experiencing? But I noticed if I did this: TS-7800 ->
unpowered / powered hub -> webcam, the stock gspca driver works ok.
And kpykc, maybe we are looking for the problem in the wrong place... I now
suspect the problem is in usbcore. I did some googling of your problem, your
problem seems to be the usb driver (usbcore) returning an error code after
submission of the urb request
http://www.mjmwired.net/kernel/Documentation/usb/error-codes.txt
-EXDEV ISO transfer only partially completed. look at individual frame status
for details
Not sure how to interpret that error message though, maybe someone familar with
Linux can help us? I doubt I would take such a big leap to compile another
kernel, but do keep me posted about your findings. While you are at it, try not
to overlook the possibility of a bug with TS's usbcore.ko as well
Best regards
--- In "kpykc" <> wrote:
>
> --- In "kpykc" <kpykc@> wrote:
> >I have similar behaviour with Genius VideoCAM GF112 (lenny,2.6.21-ts,TS7800).
> > When i start test gstreamer pipeline it hangs, and cannot be interrupted
> > just like your app.
> > And i can see messages in syslog like:
> > Jan 11 17:58:53 ts7800 kernel: /root/gspca-01.00.20/gspca_core.c:
> > [spca50x_move_data:1611] ISOC data error: [1] len=0, status=-18
> >
> Fortunately, driver sometimes work. There is no strict requirements, and it's
> not always reproducible, but i can sometimes stream video.
> Just after booting, do:
> modprobe -v gspca
> rmmod gspca
> #all succesfull test was when i load driver with maximum debug level
> modprobe -v gspca debug=5
> # then i start pipeline
> gst-launch-0.10 v4lsrc ! video/x-raw-yuv,width=320,height=240 !
> ffmpegcolorspace ! jpegenc ! udpsink host=10.28.1.253 port=5000
>
> Unfortunately, as i said it dont work always, in most cases application hang.
>
> Now i'm try to build and boot with vanilla kernel from
> git://git.wormnet.eu/alex/ts78xx.git tree.
> As i understand spca driver now in mainline, so there is a chance that this
> problem already fixed. If not i will try to find problem.
>
------------------------------------
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|