Re: working on webcam driver
- Date: Thu, 14 May 2009 19:26:39 +0200
- From: Hans de Goede <j.w.r.degoede@xxxxxx>
- Subject: Re: working on webcam driver
On 05/14/2009 06:00 PM, MK wrote:
Since I'm cross-posting this (as advised) I should introduce myself by
saying I am a neophyte C programmer getting into kernel programming by
trying to write a driver for an unsupported webcam. So far I've gotten
the device to register and have enumerated the various interfaces.
On 05/11/2009 02:50:00 PM, Erik Andrén wrote:
First of all, this list is deprecated. Send mails to
linux-media@xxxxxxxxxxxxxxx if you want to reach the kernel community.
Secondly, have you researched that there is no existing driver for
your camera? A good way to start would perhaps to search for the usb
id and linux in google to see if it generates some hits.
I've done this last bit already, and I just checked out gspca. There
is a lot of listing for the vendor id, but not the product id, so I
imagine there is no point in trying any of the drivers (unless I hack
the source to accept the id string).
However, a rather unhelpful person at the linux driver backport group
informs me "not all USB video drivers are under
drivers/media/video/usbvideo/ In fact, the majority of them are not."
but then tells me I should take off and go find them myself "with a web
browser" (very nice).
Does anyone know where these drivers are located?
Most non yvc (see below) usb webcams are driven through the gspca usb
webcam driver framework. This is a v4l driver which consists of gspca-core
+ various subdrivers for a lot of bridges, see drivers/media/video/gspca
The same person also
claims that the kernel now has support "for all devices that
follow the USB video class specification, and [sic] that the additional
23 device specific drivers in the tree* are just for non-conforming
This is correct recently the USB consortium (or whatever they are called)
have created a new spec called UVC, this is one standard protocol for all
webcams to follow. All *newer* webcams use this, but a lot of cams still
in the stores predate UVC (which stands for USB Video Class).
The first thing to find out to get your webcam supported is what kind of
bridge chip it is using, try looking at the windows driver .inf file,
typical bridges are the sonix series (often refenced to as sn9c10x or
sn9c20x), spca5xx series, zc3xx, vc032x, etc. If you see a reference
to anything like this in the windows driver .inf file (or inside dll's)
that would be good to know. Also it would be very helpful to have the usb
id of your camera.
video4linux-list mailing list