From: Olav R. <qc....@sp...> - 2005-02-20 15:53:41
|
Hi there, I'm trying to get the qc-usb driver to work on my upgraded Linux system. It used to work fine with SuSE 9.0 and 9.1, but with 9.2 that's no longer the case. My system is a relatively fresh install of SuSE Linux 9.2 with all updates available in Yast installed. The current kernel version is 2.6.8-24.11-default. 1) Building the driver While building the driver, the following error occurs: /mnt/raid/home/panter/src/sf/test/qc-usb-0.6.2/qc-driver.c: In function `qc_i2c_init': /mnt/raid/home/panter/src/sf/test/qc-usb-0.6.2/qc-driver.c:813: error: structure has no member named `timeout' This is easily fixed, just comment out the line. 2) Installing the new module Once compilation is done, the quickcam.ko module installs successfully: The driver detected the following supported cameras: quickcam: no version for "struct_module" found: kernel tainted. quickcam: QuickCam USB camera found (driver version QuickCam USB $Date: 2004/07/29 18:12:39 $) quickcam: Kernel:2.6.8-24.11-default bus:3 class:FF subclass:FF vendor:046D product:0870 quickcam: Sensor HDCS-1000/1100 detected quickcam: Registered device: /dev/video0 However, when I try to use it with the xawtv application, it fails to produce any video pictures. The following errors appear in the console: This is xawtv-3.94, running on Linux/i686 (2.6.8-24.11-default) /dev/video0 [v4l]: no overlay support v4l-conf had some trouble, trying to continue anyway ioctl: VIDIOC_QUERYCAP(driver="";card="";bus_info="";version=0.0.0;capabilities=0x0 []): Unknown error 515 lirc: connection lost ioctl: VIDIOCSYNC(int=0): No space left on device ioctl: VIDIOCMCAPTURE(frame=0;height=32;width=48;format=15): Invalid argument ioctl: VIDIOCMCAPTURE(frame=0;height=32;width=48;format=9): Invalid argument v4l: timeout (got SIGALRM), hardware/driver problems? ioctl: VIDIOCSYNC(int=0): Interrupted system call v4l: timeout (got SIGALRM), hardware/driver problems? ioctl: VIDIOCSYNC(int=0): Interrupted system call v4l: timeout (got SIGALRM), hardware/driver problems? ioctl: VIDIOCSYNC(int=0): Interrupted system call v4l: timeout (got SIGALRM), hardware/driver problems? ioctl: VIDIOCSYNC(int=0): Interrupted system call v4l: timeout (got SIGALRM), hardware/driver problems? ioctl: VIDIOCSYNC(int=0): Interrupted system call no way to get: 384x288 16 bit TrueColor (LE) no way to get: 384x288 16 bit TrueColor (LE) Segmentation fault The segmentation fault occurs when xawtv is quit (by closing the window). The following errors appear in my system log: Feb 20 14:57:31 panterbox kernel: Unable to handle kernel NULL pointer dereference at virtual address 000000c4 Feb 20 14:57:31 panterbox kernel: printing eip: Feb 20 14:57:31 panterbox kernel: f9637f46 Feb 20 14:57:31 panterbox kernel: *pde = 00000000 Feb 20 14:57:31 panterbox kernel: Oops: 0000 [#1] Feb 20 14:57:31 panterbox kernel: Modules linked in: quickcam snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device bttv video_b uf firmware_class i2c_algo_bit v4l2_common btcx_risc videodev radeon usbserial parport_pc lp parport ir_kbd_i2c ir_common speeds tep_lib freq_table thermal processor fan button battery ac ipt_tos ipt_MARK ipt_length cls_fw sch_htb ipt_TOS ipt_TCPMSS ipt_MAS QUERADE snd_pcm_oss snd_mixer_oss snd_intel8x0 snd_ac97_codec snd_pcm snd_timer asb100 snd soundcore w83l785ts i2c_sensor snd_pa ge_alloc i2c_nforce2 i2c_core ipt_pkttype af_packet ip6t_LOG ip6t_state ip6_conntrack ipt_LOG ipt_state ip6t_REJECT ipt_REJECT i ptable_mangle iptable_filter ip6table_mangle ip_nat_ftp iptable_nat ip_conntrack_ftp ip_conntrack ip_tables ip6table_filter ip6_ tables ipv6 binfmt_misc subfs nls_cp437 vfat fat nls_utf8 ntfs edd evdev joydev sg st sr_mod usbhid usb_storage ide_cd cdrom nvi dia_agp agpgart ohci_hcd ehci_hcd ohci1394 ieee1394 3c59x dm_mod usbcore sk98lin forcedeth reiserfs 3w_xxxx sd_mod scsi_mod Feb 20 14:57:31 panterbox kernel: CPU: 0 Feb 20 14:57:31 panterbox kernel: EIP: 0060:[<f9637f46>] Tainted: GF U VLI Feb 20 14:57:31 panterbox kernel: EFLAGS: 00010202 (2.6.8-24.11-default SL92_BRANCH-200501141301260000) Feb 20 14:57:31 panterbox kernel: EIP is at usb_unlink_urb+0x16/0x50 [usbcore] Feb 20 14:57:31 panterbox kernel: eax: cdc127c0 ebx: e2d24000 ecx: 00000002 edx: 00000004 Feb 20 14:57:31 panterbox kernel: esi: cdc127c0 edi: f75c49c8 ebp: f7093c98 esp: e2d25f70 Feb 20 14:57:31 panterbox kernel: ds: 007b es: 007b ss: 0068 Feb 20 14:57:31 panterbox kernel: Process xawtv (pid: 20663, threadinfo=e2d24000 task=e61e2000) Feb 20 14:57:31 panterbox kernel: Stack: f93e3059 00000000 e2982234 f93e4d6a e2982000 f93f22c8 f93e53f8 e2982000 Feb 20 14:57:31 panterbox kernel: f93e564c e4242a60 cde8c080 c0151bf6 e4242a60 00000000 f76cdbc0 e2d24000 Feb 20 14:57:31 panterbox kernel: c0150703 00000004 080bde30 40216c9c c0105c69 00000004 00068100 406e710c Feb 20 14:57:31 panterbox kernel: Call Trace: Feb 20 14:57:31 panterbox kernel: [<f93e3059>] qc_unlink_urb_sync+0x29/0x40 [quickcam] Feb 20 14:57:31 panterbox kernel: [<f93e4d6a>] qc_isoc_stop+0x2a/0xd0 [quickcam] Feb 20 14:57:31 panterbox kernel: [<f93e53f8>] qc_capt_exit+0x8/0x30 [quickcam] Feb 20 14:57:31 panterbox kernel: [<f93e564c>] qc_v4l_close+0x5c/0x70 [quickcam] Feb 20 14:57:31 panterbox kernel: [<c0151bf6>] __fput+0xd6/0x120 Feb 20 14:57:31 panterbox kernel: [<c0150703>] filp_close+0x43/0x70 Feb 20 14:57:31 panterbox kernel: [<c0105c69>] sysenter_past_esp+0x52/0x79 Feb 20 14:57:31 panterbox kernel: Code: 00 20 00 00 ba 00 20 00 00 bd 00 20 00 00 e9 7c ff ff ff 89 f6 ba ea ff ff ff 85 c0 74 2 3 f6 40 28 10 74 21 8b 50 1c 85 d2 74 11 <8b> 92 c0 00 00 00 85 d2 74 07 8b 4a 24 85 c9 75 13 ba ed ff ff Any hints on how to fix the driver for this kernel? Please let me know if you need more information to diagnose the problem. Regards, Olav |