Syntek Webcam & Linux (05e1:0501)
luty 2nd, 2007 . by vipWith help of my friend, yoB, I’ve got working ASUS F2J webcam (Syntek STK-1135 probably).
You’d only want to checkout the syntekdriver.sf.net SVN with:
svn co https://syntekdriver.svn.sourceforge.net/svnroot/syntekdriver syntekdriver
go to the trunk/driver and apply patch.
After kernel module compilation and modprobing videodev & stk11xx You shoud get a new entry at /dev/video0.
Now you’ve only to run your favourite cam app to see yourself :-)
UPDATE
There is NO NEED to apply the patch, because it is already in Syntek SVN.
UPDATE; 08 feb 2007
To get rid of the blue, apply “Color correction” filter in camorama or set a “RGB->BGR Conversion” in gqcam’s preferences.



luty 3rd, 2007 at 19:16
Hi !
How do you apply the patch ? It applies on two different files or ??
Could you detail the method ?
Thanks
mahashakti89
luty 3rd, 2007 at 22:49
It is simple, after svn checkout do:
cd syntekdriver/trunk/driverpatch << /tmp/syntek.patch
It should patch two files, the output looks like:
patching file stk11xx.h
patching file stk11xx-usb.c
luty 5th, 2007 at 19:04
It didn’t work for me. I get this when trying to patch:
patching file stk11xx.h
Hunk #1 succeeded at 57 with fuzz 2 (offset 11 lines).
patching file stk11xx-usb.c
Hunk #1 FAILED at 59.
Hunk #2 FAILED at 593.
2 out of 2 hunks FAILED — saving rejects to file stk11xx-usb.c.rej
luty 5th, 2007 at 19:57
As You can see, the patch is now in SVN, so there is no need to patch the SVN again. The patch is outdated.
marzec 13th, 2007 at 15:14
Hi, I receive a lot of errors, can you explain whats missing ?
(…)
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:696:
error: ’struct usb_endpoint_descriptor’ has no member named
‘wMaxPacketSize’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:698:
error: ’struct usb_stk11xx’ has no member named ‘isoc_in_size’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:699:
error: ’struct usb_stk11xx’ has no member named ‘isoc_in_endpointAddr’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:699:
error: ’struct usb_endpoint_descriptor’ has no member named
‘bEndpointAddress’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:703:
error: ’struct usb_stk11xx’ has no member named ‘int_in_endpointAddr’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:703:
error: ’struct usb_stk11xx’ has no member named ‘isoc_in_endpointAddr’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:705:
error: ’struct usb_stk11xx’ has no member named ‘kref’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:721:
error: ’struct usb_stk11xx’ has no member named ‘kref’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:733:
error: ’struct usb_stk11xx’ has no member named ‘kref’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c: In
function ‘usb_stk11xx_disconnect’:
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:766:
error: ’struct usb_stk11xx’ has no member named ‘kref’
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c: In
function ‘usb_stk11xx_init’:
/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.c:807:
error: ‘EINVAL’ undeclared (first use in this function)
make[2]: *** [/home/fulano/syntek/syntekdriver/trunk/driver/stk11xx-usb.o]
Error 1
make[1]: *** [_module_/home/fulano/syntek/syntekdriver/trunk/driver] Error 2
make[1]: Leaving directory `/usr/src/linux-source-2.6.20′
marzec 13th, 2007 at 18:27
Maybe its lack of some devel files related to usb libs
marzec 13th, 2007 at 19:57
None.
I need to go /usr/src/linux and
sudo make oldconfig
sudo make prepare
remove dash (sh->dash) in my system, but now :
$make
make -C /usr/src/linux SUBDIRS=/home/fulano/syntek/syntekdriver/trunk/driver modules
make[1]: Entering directory `/usr/src/linux-source-2.6.20′
WARNING: Symbol version dump /usr/src/linux-source-2.6.20/Module.symvers
is missing; modules will have no dependencies and modversions.
Building modules, stage 2.
MODPOST 1 modules
/bin/sh: scripts/mod/modpost: No such file or directory
make[2]: *** [__modpost] Error 127
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/usr/src/linux-source-2.6.20′
make: *** [driver] Error 2
Any idea ?
marzec 14th, 2007 at 13:09
I don’t use building within original kernel sources; I’d prefer local build with Build module script for kernels 2.6 by Przemyslaw Iskra (http://cvs.pld-linux.org/cgi-bin/cvsweb/SOURCES/rpm.macros).
The commands executed by the script can be like:
http://coffee3.org/wp-content/uploads/2007/03/stk11xx.sh
The original kernel source tree must be clean.
marzec 14th, 2007 at 13:58
Hei, my system is Ubuntu and I prepare kernel :
cd /usr/src/linux
sudo make oldconfig
sudo make prepare
sudo make-kpkg clean
sudo fakeroot make-kpkg - -initrd - -append-to-version=-custom kernel_image kernel_headers (only to build binary in /usr/src/linux/scripts/mod)
But ‘make install’ fail and exists warning some messages in compilation process :
fulano@fulano-notebook:~/syntekdriver/trunk/driver$ make driver
make -C /usr/src/linux SUBDIRS=/home/fulano/syntekdriver/trunk/driver modules
make[1]: Entering directory `/usr/src/linux-source-2.6.20′
Building modules, stage 2.
MODPOST 1 modules
WARNING: vmlinux - Section mismatch: reference to .init.data:boot_params from .text between ‘_text’ (at offset 0xc0100036) and ’startup_32_smp’
WARNING: vmlinux - Section mismatch: reference to .init.data:boot_params from .text between ‘_text’ (at offset 0xc0100044) and ’startup_32_smp’
WARNING: vmlinux - Section mismatch: reference to .init.data:init_pg_tables_end from .text between ‘_text’ (at offset 0xc01000a6) and ’startup_32_smp’
WARNING: vmlinux - Section mismatch: reference to .init.text:start_kernel from .text between ‘is386′ (at offset 0xc0100221) and ‘check_x87′
WARNING: vmlinux - Section mismatch: reference to .init.text:smp_prepare_cpus from .text between ‘init’ (at offset 0xc0100437) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:migration_init from .text between ‘init’ (at offset 0xc010043c) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:spawn_ksoftirqd from .text between ‘init’ (at offset 0xc0100441) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:spawn_softlockup_task from .text between ‘init’ (at offset 0xc0100446) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:smp_cpus_done from .text between ‘init’ (at offset 0xc01004c2) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:sched_init_smp from .text between ‘init’ (at offset 0xc01004c7) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:cpuset_init_smp from .text between ‘init’ (at offset 0xc01004cc) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:usermodehelper_init from .text between ‘init’ (at offset 0xc01004d6) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:driver_init from .text between ‘init’ (at offset 0xc01004db) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:sysctl_init from .text between ‘init’ (at offset 0xc01004e1) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.data: from .text between ‘init’ (at offset 0xc0100503) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.data: from .text between ‘init’ (at offset 0xc010051c) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:prepare_namespace from .text between ‘init’ (at offset 0xc01006ff) and ‘rest_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:__alloc_bootmem from .text between ‘init_gdt’ (at offset 0xc010a07b) and ‘cpu_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:__alloc_bootmem from .text between ‘init_gdt’ (at offset 0xc010a091) and ‘cpu_init’
WARNING: vmlinux - Section mismatch: reference to .init.text:sysenter_setup from .text between ‘identify_cpu’ (at offset 0xc010a6eb) and ‘display_cacheinfo’
WARNING: vmlinux - Section mismatch: reference to .init.text:mtrr_bp_init from .text between ‘identify_cpu’ (at offset 0xc010a6f5) and ‘display_cacheinfo’
WARNING: vmlinux - Section mismatch: reference to .init.text:trap_init_f00f_bug from .text between ‘init_intel’ (at offset 0xc010c746) and ‘cpuid4_cache_lookup’
WARNING: vmlinux - Section mismatch: reference to .init.data:initkmem_list3 from .text between ’set_up_list3s’ (at offset 0xc0171abf) and ’s_start’
WARNING: vmlinux - Section mismatch: reference to .init.text:eisa_root_register from .text between ‘pci_eisa_init’ (at offset 0xc026c90b) and ‘virtual_eisa_release’
WARNING: vmlinux - Section mismatch: reference to .init.text:eisa_root_register from .text between ‘virtual_eisa_root_init’ (at offset 0xc026c96f) and ‘cpufreq_unregister_driver’
WARNING: vmlinux - Section mismatch: reference to .init.text: from .text between ‘iret_exc’ (at offset 0xc02f0170) and ‘_etext’
WARNING: vmlinux - Section mismatch: reference to .init.text:start_kernel from .paravirtprobe between ‘__start_paravirtprobe’ (at offset 0xc03be490) and ‘__stop_paravirtprobe’
Any sugestion ?
marzec 24th, 2007 at 12:05
Under Fedora Core 6 when I try to compile I have this message:
make -C /usr/src/linux SUBDIRS= modules
make: *** /usr/src/linux: Aucun fichier ou répertoire de ce type. Arrêt.
make: *** [driver] Erreur 2
Do you what is the problem?
Thank you very much
marzec 24th, 2007 at 13:53
hamacker: your system is probably lacking of kernel-headers package
BTW: when pasting errors, type LANG=C before the `make` command, it will give english messages/errors
czerwiec 17th, 2007 at 18:33
Hi,
I have a problem after compiling the kernel module :
I have make svn co https://syntekdriver.svn.sourceforge.net/svnroot/syntekdriver syntekdriver,
then i went with terminal in the driver folder, and maked : (…)/driver$ sudo make, the driver compiled.
Then, /driver$ sudo make install, and i get “make: *** Pas de règle pour fabriquer la cible « install ». Arrêt.” in english, “no rules to build the target “install”. Stopped.”
Jeżeli miałeż jakis swiatłó na ten problem aby pomagać jeden francuz który mieszka w Polsce, to byłoby fajnie..
Dzięki
czerwiec 17th, 2007 at 22:32
Hello Louis,
I don’t know how Makefile looks, but You can just find the “stk11xx.ko” file, and put it (as root) to the /lib/modules/`uname -r`/video directory (it can be ‘misc’ or sth else instead of video).
Then, do “depmod -a” as root, and run: “modprobe stk11xx”.
Souhaite bon courage!