Comment 27 for bug 87054

Revision history for this message
Martin Olsson (mnemo) wrote : Re: [Needs Packaging] Microdia SN9C201 webcam driver

FWIW, I tested the [unmodified] microdia bits (taken from git right after commit b8dad85dcb7c182933c40356c8255ff924e21dad) together with the jaunty 2.6.28-8-generic pre-release kernel and I was able to get video from my LifeCam VX-6000 (PCI ID 045e:00f4).

* Videos works in Skype, VLC and mplayer but it does not work in Cheese.
* At first I connected the cam into an USB port on my keyboard and then my dmesg said there wasn't enough power:
[ 4592.420493] usbcore: registered new interface driver sn9c20x
[ 4592.420693] sn9c20x: SN9C20x USB 2.0 Webcam Driver v2009.01 loaded
[ 5966.240081] usb 3-2.2: USB disconnect, address 4
[ 5970.413808] usb 3-2.2: new full speed USB device using uhci_hcd and address 6
[ 5970.523798] usb 3-2.2: not running at top speed; connect to a high speed hub
[ 5970.553866] usb 3-2.2: rejected 1 configuration due to insufficient available bus power
[ 5970.553869] usb 3-2.2: no configuration chosen from 1 choice
[ 5994.398237] usb 3-2.2: USB disconnect, address 6

Then I connected it to a real USB port at the back of the computer and insmod:ed the driver and then dmesg said:
[ 4592.420493] usbcore: registered new interface driver sn9c20x
[ 4592.420693] sn9c20x: SN9C20x USB 2.0 Webcam Driver v2009.01 loaded

BUT I still didn't get any /dev/video* device created. Eventually I figured out that I needed to unplug the camera and then reconnect it again while the driver module was loaded because the driver module doesn't seem to understand that the camera is connected already when the module is loading?

Anyway, when I reconnected the cam while the driver module _was_ running it worked. dmesg said:
[ 6211.423443] sn9c20x: SN9C20X USB 2.0 Webcam - 045E:00F4 plugged-in.
[ 6211.531191] sn9c20x: Detected OV9650 Sensor.
[ 6211.532046] sn9c20x: Webcam device 045E:00F4 is now controlling video device /dev/video0
[ 6211.550815] sn9c20x: Using yuv420 output format

And then I had a /dev/video* device that worked.