Re: USB-webcam support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> >> If I have a USB camera with good Linux support, can I connect it
> >> to omap3evm(or any omap2) and make it functional?

I'm told some folk have used ISO transfer support, but when I last did
much work with the musb code, none of it was tested.


> > I don't see why not. Do you expect a problem with using it? You could
> > use MUSB in host or OTG mode and connect the camera to the MUSB port.
>
> Not quite, MUSB doesn't support the 'high bandwidth' flag, which most  
> usb webcams seem to use (even the puny 12mbit ones). Tested on the  
> MUSB port of my beagle and bf548.

Since "high bandwidth" is a mode restricted to 480 mbps hardware, I
think generic ISO transfer problems are more likely the issue than
anything related to isochronous video streams topping 8 MByte/second...
no 12mbit camera can possibly care about high bandwidth.

The integrated MUSB controllers (2430, OMAP3[45]xx) have hardware
support for "high bandwidth".  Technically, "high bandwidth" is when
you have a 480 Mbit/sec connection and it's issuing more than one
isochronous or interrupt packet per microframe (8 microframes/msec).
Those packet top out at 1 KByte each, ergo 8 MByte/second is the
most you can get without high bandwidth support.  Endpoints can issue
at most three such packets per microframe ... so, max 24 MByte/sec is
the most you can get *with* high bandwidth support.  (The USB 2.0
spec is self contradictory about whether you can have two streams
at that rate going concurrently.  One is clearly OK; two would exceed
the bandwidth reserved for periodic transfers, by around 3%.)


So ... first, someone should get ISO to work well.  Start with full
speed webcams, which can do one 1023 byte packet per millisecond.
I think you'll need to make sure double buffering works right, and
tweak the default FIFO allocations a bit.

Then go to high speed webcams, and make sure that same code can work
eight times faster (one 1024 byte packet every microframe, you get an
extra byte).  Then it's time to work on the high bandwidth stuff.

- Dave

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux