| usblog ( @ 2004-11-21 12:54:00 |
USB (3) : Tasklets and deferred work in a video driver
Hello,
I came to know today with a new driver,SPCA.
SPCA driver is a LINUX USB webcam driver.
see http://spca50x.sourceforge.net/spca 50x.php
According to the web site, it supports 77 types of WebCams
see http://spca50x.sourceforge.net/spca 50x.php?page=cams
I had tested it on a camera not from the list, and it was OK.
This is the *FIRST* Linux USB webcam driver I know which
uses tasklets (deferred execution,bottom handlers).
It's interesting why a use of tasklets was done here.
Grepping the "media" subtree of USB in the kernel for tasklets gives 0 results.
(that media subtree is where the video drivers reside)
For more info on takslets and deferring work see :
1) Tasklets and Bottom-Half Processing in Chapter 9
(Interrupt Handling of Linux Device Drivers) of Linux Device Drivers book.
also online:
http://www.xml.com/ldd/chapter/book/ch0 9.html
2) "Introduction to linux device drivers" (a lecture given by Mulix):
http://www.mulix.org/lectures/intro_to_ linux_device_drivers/intro_linux_device_ drivers.pdf
Tasklets or not, It still also uses completion handlers for urb messages.
As you can see , this driver was based on Omnivision OV511 driver
see http://mxhaard.free.fr/sview.html.
However, ov5111.c does not contain tasklets.
There are also tools for this driver (including a grabber and an
SDL player)
see
SpcaView & SpcaTools Howto by Michel Xhaard in
http://mxhaard.free.fr/sview.html.
Cheers,
USBLOG
Hello,
I came to know today with a new driver,SPCA.
SPCA driver is a LINUX USB webcam driver.
see http://spca50x.sourceforge.net/spca
According to the web site, it supports 77 types of WebCams
see http://spca50x.sourceforge.net/spca
I had tested it on a camera not from the list, and it was OK.
This is the *FIRST* Linux USB webcam driver I know which
uses tasklets (deferred execution,bottom handlers).
It's interesting why a use of tasklets was done here.
Grepping the "media" subtree of USB in the kernel for tasklets gives 0 results.
(that media subtree is where the video drivers reside)
For more info on takslets and deferring work see :
1) Tasklets and Bottom-Half Processing in Chapter 9
(Interrupt Handling of Linux Device Drivers) of Linux Device Drivers book.
also online:
http://www.xml.com/ldd/chapter/book/ch0
2) "Introduction to linux device drivers" (a lecture given by Mulix):
http://www.mulix.org/lectures/intro_to_
Tasklets or not, It still also uses completion handlers for urb messages.
As you can see , this driver was based on Omnivision OV511 driver
see http://mxhaard.free.fr/sview.html.
However, ov5111.c does not contain tasklets.
There are also tools for this driver (including a grabber and an
SDL player)
see
SpcaView & SpcaTools Howto by Michel Xhaard in
http://mxhaard.free.fr/sview.html.
Cheers,
USBLOG