Bug 639031 - module gspca_sonixj no longer working for microdia webcam 0c45:613c
Summary: module gspca_sonixj no longer working for microdia webcam 0c45:613c
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 13
Hardware: i686
OS: Linux
low
medium
Target Milestone: ---
Assignee: Hans de Goede
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-09-30 16:35 UTC by andreas kriegl
Modified: 2010-11-07 16:28 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-11-07 16:28:47 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
the log file produced by cheese with 'export LIBV4L2_LOG_FILENAME=/tmp/log' (26.45 KB, text/plain)
2010-10-18 13:50 UTC, andreas kriegl
no flags Details
the log file produced by cheese with 'export LIBV4L2_LOG_FILENAME=/tmp/log' and webcam as /dev/video1 in 640x80 mode selected (26.45 KB, application/octet-stream)
2010-10-18 15:04 UTC, andreas kriegl
no flags Details

Description andreas kriegl 2010-09-30 16:35:54 UTC
Description of problem:
the freetalk webcam (ID 0c45:613c Microdia PC Camera (SN9C120)) 
using gspca_main and gspca_sonixj
is not working with fedora 13, 
but was working with fedora 12. 

Version-Release number of selected component (if applicable):
kernel-PAE-2.6.34.7-56.fc13.i686

How reproducible:
Every time (e.g. when starting cheese)

Steps to Reproduce:
1. plugin usb web camera
2. start cheese

/var/log/messages:
kernel: gspca: found int in endpoint: 0x83, buffer_len=1, interval=100
  
Actual results:
cheese window stays black

Expected results:
displaying webcam image

Additional info:
/var/log/messages:
kernel: usb 4-1: new full speed USB device using uhci_hcd and address 3
kernel: usb 4-1: New USB device found, idVendor=0c45, idProduct=613c
kernel: usb 4-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
kernel: usb 4-1: Product: USB camera
kernel: gspca: probing 0c45:613c
kernel: sonixj: Sonix chip id: 12
kernel: input: sonixj as /devices/pci0000:00/0000:00:1d.2/usb4/4-1/input/input6
kernel: gspca: video0 created
kernel: gspca: found int in endpoint: 0x83, buffer_len=1, interval=100

on fedora 12:
sonixj reported it as SN9C102P HV7131R

Comment 1 Hans de Goede 2010-10-10 08:07:23 UTC
Hi,

Thanks for the report!

There are 2 recent patches which are likely culprits of this regression, I've creates a src rpm which has these 2 patches reverted.

Unfortunately I cannot provide you with pre-build rpms as you're on a different architecture (i686) then I am (x86_64).

Building from a source rpm is easy though, download:
http://people.fedoraproject.org/~jwrdegoede/kernel-2.6.34.7-59.bz639031_1.fc13.src.rpm

Then from a terminal do
rpmbuild --rebuild kernel-2.6.34.7-59.bz639031_1.fc13.src.rpm

If you get command not found, do as root:
yum install rpm-build

If you get complaints about missing build dependency do as root:
yum install <missing-dep1> <missing-dep2>

Note that building will take a while!

Once the kernel is build do: as root:

rpm -ivh /home/<user-used-to-build>/rpmbuild/RPMS/i686/kernel-....rpm

You want to install the package kernel package not -devel, -debuginfo or some such. Note it is important to use "rpm -ivh" and not "rpm -Uvh" as the first version ("rpm -ivh") will install the kernel parallel to your existing one,
so you can always fallback to your old working kernel.

Please let me know if reverting these 2 patches fixes it. Then I'll prepare another src.rpm to further narrow down the cause.

Thanks & Regards,

Hans

Comment 2 andreas kriegl 2010-10-15 19:18:52 UTC
Hi Hans,

Thank you for attacking that problem. I followed your well written advice
and compiled and installed the kernel src rpm you provided. Unfortunately
the webcam is NOT working with this kernel and modules as well.
The logfile contains no errors but the screen in cheese stays black
and in ekiga green.
Is there any further information I could provide to ease the solution of this
problem?

Thanks & Regards,

Andreas

Comment 3 Hans de Goede 2010-10-15 19:28:19 UTC
andreas, can you try unplugging and then re-plugging the cam (after waiting 5 seconds), it is possible that the old driver has confused it and that it needs to be reset. Rebooting the machine into a new kernel does not reset usb devices. And
with some motherboards even turning off the machine does not reset them (leaves them powered). But unplugging always manages to remove the power :)

Comment 4 andreas kriegl 2010-10-17 11:33:01 UTC
hans, unplugging had no effect. Wecam ist still not working.

Comment 5 Hans de Goede 2010-10-17 20:35:53 UTC
Hi Andreas,

Thanks for testing. I'm afraid I don't know where the problem is coming from then. There have been some changes to the usb stack recently which were causing some issues and some fixes have been done on top of those. Can you first of all
try a newer kernel and see if that helps:
http://koji.fedoraproject.org/koji/buildinfo?buildID=200659

This is an F14 kernel bug it should work fine on F13 too.

If that does not help, start a terminal and do:
export LIBV4L2_LOG_FILENAME=/tmp/log
cheese

And then when cheese gives you a black window, wait a while (say 10 seconds)
and then close cheese. After this collect /tmp/log and please attach it here.

Thanks,

Hans

Comment 6 andreas kriegl 2010-10-18 13:50:23 UTC
Created attachment 454128 [details]
the log file produced by cheese with 'export LIBV4L2_LOG_FILENAME=/tmp/log'

Comment 7 andreas kriegl 2010-10-18 13:53:02 UTC
Hi Hans,

I tried this new F14 kernel but with no success.
The kernel log when plugging in the webcam is:

Oct 18 15:39:07 uhura kernel: [  121.845037] hub 1-0:1.0: over-current change on port 7
Oct 18 15:39:08 uhura kernel: [  122.048030] usb 4-1: new full speed USB device using uhci_hcd and address 2
Oct 18 15:39:08 uhura kernel: [  122.196030] usb 4-1: New USB device found, idVendor=0c45, idProduct=613c
Oct 18 15:39:08 uhura kernel: [  122.196036] usb 4-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
Oct 18 15:39:08 uhura kernel: [  122.196040] usb 4-1: Product: USB camera
Oct 18 15:39:08 uhura kernel: [  122.239356] gspca: main v2.9.0 registered
Oct 18 15:39:08 uhura kernel: [  122.249478] gspca: probing 0c45:613c
Oct 18 15:39:08 uhura kernel: [  122.254850] sonixj: Sonix chip id: 12
Oct 18 15:39:08 uhura kernel: [  122.256976] input: sonixj as /devices/pci0000:00/0000:00:1d.2/usb4/4-1/input/input5
Oct 18 15:39:08 uhura kernel: [  122.257604] gspca: video1 created
Oct 18 15:39:08 uhura kernel: [  122.257610] gspca: found int in endpoint: 0x83, buffer_len=1, interval=100
Oct 18 15:39:08 uhura kernel: [  122.257912] usbcore: registered new interface driver sonixj
Oct 18 15:39:08 uhura kernel: [  122.257917] sonixj: registered
Oct 18 15:39:48 uhura kernel: [  162.204173] gspca: found int in endpoint: 0x83, buffer_len=1, interval=100
Oct 18 15:40:18 uhura kernel: [  192.809705] gspca: found int in endpoint: 0x83, buffer_len=1, interval=100

The log file produced by cheese with 'export LIBV4L2_LOG_FILENAME=/tmp/log'
is in the previous comment.

Kind regards,
Andreas

Comment 8 Hans de Goede 2010-10-18 14:33:48 UTC
Hi Andreas,

Thanks for the log I think I know what is going on. Your machine has 2 video4linux devices, the webcam and what I believe is a tv card, likely bt878 based.

Maybe the tv-card was not recognized with previous kernels, or the loading order of the drivers was different, but it is recognized now and I believe that cheese is trying to use the tvcard rather then the camera.

To fix this start cheese, go to edit->preferences, select the Device drop down and select the camera.

Please let me know if this fixes things, so that this bug can be closed.

Regards,

Hans

Comment 9 andreas kriegl 2010-10-18 15:00:16 UTC
Hi Hans,

I used my TV-card also in previous versions and I checked in cheese
whether the webcam and not the tv-card is selected, which is case.
So this seems not to be the reason for the bug.

I will double-check again, and attach the correspoding log.

Regards,
Andreas

Comment 10 andreas kriegl 2010-10-18 15:04:05 UTC
Created attachment 454139 [details]
the log file produced by cheese with 'export LIBV4L2_LOG_FILENAME=/tmp/log' and webcam as /dev/video1 in 640x80 mode selected

Comment 11 Hans de Goede 2010-10-19 12:33:59 UTC
I'm afraid I'm all out of ideas, I'm going to forward this issue to the upstream sonixj driver maintainer, I'll put you on the CC.

Comment 12 Hans de Goede 2010-11-05 13:22:46 UTC
Hi,

I saw some updates in JF Moine's (the upstream sonixj maintainer) git tree, which seem related to this. Did you test those updates, and do they fix your issue?

Regards,

Hans

Comment 13 andreas kriegl 2010-11-07 16:18:39 UTC
Hi,

JF Moine emailed some patches to me.
which finally fixed the problems I had.
I informed him about the success.
I have no information, whether he updated the git tree accordingly.

Regards,

Andreas

Comment 14 Hans de Goede 2010-11-07 16:28:47 UTC
Ok, thanks for the info!


Note You need to log in before you can comment on or make changes to this bug.