Results 1 to 15 of 45

Thread: Compiling driver for webcam

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Nov 2004
    Location
    Sweden
    Posts
    259
    Quote Originally Posted by lly View Post
    You have to rewrite some parts of it.
    That's not an option for me right now since my knowledge on this matter is quite limited.

    If the Makefile is not ready for cross-compiling, will I get it to work if I try to compile it directly on the router?

  2. #2
    Join Date
    Dec 2007
    Location
    The Netherlands - Eindhoven
    Posts
    1,767
    Quote Originally Posted by Tamadite View Post
    That's not an option for me right now since my knowledge on this matter is quite limited.

    If the Makefile is not ready for cross-compiling, will I get it to work if I try to compile it directly on the router?
    You need the kernel headers for that I believe... so that will also be a bit problematic.
    furthermore the driver will be compiled with the optware uclibc, which is older than the firmware uclibc. so that might cause trouble as well when you want to use it

  3. #3
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by Tamadite View Post
    That's not an option for me right now since my knowledge on this matter is quite limited.
    If you want driver for "classic" Oleg FW 1.9.2.7-10, it compiled already - http://translate.google.com/translat...n&hl=&ie=UTF-8 (google autotranslate).

    If you want to compile it for 1.9.2.7-d, you should:
    1. build firmware from SVN first
    2. setup proper LINUX_DIR
    3. replace CC = mipsel-linux-gcc to CC = mipsel-linux-gcc-3.4.6


    NB! Anyway, driver can be buggy

  4. #4
    Join Date
    Jul 2010
    Location
    Prague, Czech Republic
    Posts
    10
    Please,
    can enyone built spca5xx driver for 1.9.2.7-d ?
    WL-500gPv2 - 1.9.2.7-d-r2381

  5. #5

    spca5xx for 2.4.20

    Hello,

    I read from a lot of threads on different forums about
    spca5xx but no results... I think I have 3 choices:

    1st: compile the module onto router using actual compiler
    2nd: cross-compilling the module on a pc machine
    3rd: compile using same gcc version 3.2.3 with Broadcom
    modifications from Asus directly to router

    I attached here the makefile from 2nd and the result (spca5xx.o).


    1st: I tried also to compile on the router the drivers:
    http://mxhaard.free.fr/spca50x/Downl...goodbye.tar.gz

    - system: Broadcom BCM4704 chip rev 9 pkg 0;
    - cpu: BCM3302 V0.6;
    - Linux version 2.4.20 (gcc version 3.2.3 with Broadcom modifications) #109;
    - firmware 1.9.2.7-10-USB-1.71 (from koppel.cz);
    - webcam Logitech, Inc. QuickCam Communicate STX; ID: 046d:08d7;
    - compiler: gcc version 4.1.1;
    - linker: gnu ld version 2.17.50.0.8 20061201
    (both installed with ipkg on /opt/ [compact flash, 16gb card])

    At compilation process everything seems to stuck at /opt/include/asm/softirq.h
    The output of `make` is:
    -------------------------
    Compiling drivers/usb/spcadecoder.c
    In file included from /opt/include/linux/interrupt.h:46,
    from /opt/include/linux/usb.h:139,
    from drivers/usb/spca5xx.h:14,
    from drivers/usb/spcadecoder.h:5,
    from drivers/usb/spcadecoder.c:36:
    /opt/include/asm/softirq.h: In function 'cpu_bh_disable':
    /opt/include/asm/softirq.h:18: error: invalid lvalue in increment
    /opt/include/asm/softirq.h: In function '__cpu_bh_enable':
    /opt/include/asm/softirq.h:25: error: invalid lvalue in decrement
    drivers/usb/spcadecoder.c: In function 'fun_D':
    drivers/usb/spcadecoder.c:809: warning: value computed is not used
    drivers/usb/spcadecoder.c: In function 'decode_spca561':
    drivers/usb/spcadecoder.c:1422: warning: pointer targets in passing argument 4 of 'internal_spca561_decode' differ in signedness
    drivers/usb/spcadecoder.c: In function 'spca50x_outpicture':
    drivers/usb/spcadecoder.c:2161: warning: pointer targets in passing argument 2 of 'decode_spca561' differ in signedness
    drivers/usb/spcadecoder.c: In function 'yuv_decode':
    drivers/usb/spcadecoder.c:2270: warning: cast increases required alignment of target type
    drivers/usb/spcadecoder.c: In function 'jpeg_decode411':
    drivers/usb/spcadecoder.c:2622: warning: cast increases required alignment of target type
    drivers/usb/spcadecoder.c: In function 'jpeg_decode422':
    drivers/usb/spcadecoder.c:3001: warning: cast increases required alignment of target type
    drivers/usb/spcadecoder.c: In function 'bayer_decode':
    drivers/usb/spcadecoder.c:3356: warning: cast increases required alignment of target type
    make: *** [drivers/usb/spcadecoder.o] Error 1
    -------------------------

    2nd: I downloaded that version from the Asus's site
    (and also the source of firmware: GPL_WL500GP_1.9.7.7.tar.gz and toolschain323.tar.gz),
    extracted into pc#2 with CentOS 5.5, and configured in Makefile from spca5xx-v4l1goodbye.tar.gz
    I compiled it after many struggles. Only few warnings and no error (see below):
    ----------------------------------------------------------------
    # make
    Compiling drivers/usb/spcadecoder.c
    In file included from /opt/firmware/broadcom/src/linux/linux/include/linux/net.h:22,
    from /opt/firmware/broadcom/src/linux/linux/include/linux/fs.h:15,
    from /opt/firmware/broadcom/src/linux/linux/include/linux/capability.h:17,
    from /opt/firmware/broadcom/src/linux/linux/include/linux/binfmts.h:5,
    from /opt/firmware/broadcom/src/linux/linux/include/linux/sched.h:9,
    from /opt/firmware/broadcom/src/linux/linux/include/asm/uaccess.h:13,
    from drivers/usb/spca5xx.h:11,
    from drivers/usb/spcadecoder.h:5,
    from drivers/usb/spcadecoder.c:36:
    /opt/firmware/broadcom/src/linux/linux/include/linux/socket.h: In function `__cmsg_nxthdr':
    /opt/firmware/broadcom/src/linux/linux/include/linux/socket.h:107: warning: cast increases required alignment of target type
    drivers/usb/spcadecoder.c: In function `yuv_decode':
    drivers/usb/spcadecoder.c:2270: warning: cast increases required alignment of target type
    drivers/usb/spcadecoder.c: In function `jpeg_decode411':
    drivers/usb/spcadecoder.c:2622: warning: cast increases required alignment of target type
    drivers/usb/spcadecoder.c: In function `jpeg_decode422':
    drivers/usb/spcadecoder.c:3001: warning: cast increases required alignment of target type
    drivers/usb/spcadecoder.c: In function `bayer_decode':
    drivers/usb/spcadecoder.c:3356: warning: cast increases required alignment of target type
    Compiling drivers/usb/spca5xx.c
    In file included from /opt/firmware/broadcom/src/linux/linux/include/linux/net.h:22,
    from /opt/firmware/broadcom/src/linux/linux/include/linux/fs.h:15,
    from drivers/usb/spca5xx.c:45:
    /opt/firmware/broadcom/src/linux/linux/include/linux/socket.h: In function `__cmsg_nxthdr':
    /opt/firmware/broadcom/src/linux/linux/include/linux/socket.h:107: warning: cast increases required alignment of target type
    In file included from drivers/usb/spca5xx.c:847:
    drivers/usb/spcausb.h: In function `spca50x_reg_read_with_value':
    drivers/usb/spcausb.h:335: warning: cast increases required alignment of target type
    drivers/usb/spcausb.h:341: warning: cast increases required alignment of target type
    drivers/usb/spca5xx.c: At top level:
    drivers/usb/spca5xx.c:5660: warning: initialization from incompatible pointer type
    drivers/usb/spca5xx.c:5661: warning: initialization from incompatible pointer type
    drivers/usb/spca5xx.c:5662: warning: initialization from incompatible pointer type
    drivers/usb/spca5xx.c:5663: warning: braces around scalar initializer
    drivers/usb/spca5xx.c:5663: warning: (near initialization for `spca5xx_driver.disconnect')
    drivers/usb/spca5xx.c:5663: warning: excess elements in scalar initializer
    drivers/usb/spca5xx.c:5663: warning: (near initialization for `spca5xx_driver.disconnect')
    drivers/usb/spca5xx.c:150: warning: `bright' defined but not used
    drivers/usb/spca5xx.c:151: warning: `contrast' defined but not used
    Linking spca5xx.o
    ----------------------------------------------------------------
    Also there are few interesting results:
    - on router, after /sbin/insmod videodev and
    /sbin/insmod /opt/lib/webcam/spca5xx.o
    there are no complains;
    - some weird characters appear when the camera is loaded;
    - appeared the message: `[b]vlan1: dev_set_allmulti(master, 1)`;
    - no video0 in /dev (nor /dev/4l/video0);
    - no other errors, no tained, no unresolved symbols;
    - there are no files in /proc/video nor /proc/spca50x
    and some informations in files from /proc/bus/usb (see attached);
    ----------------------------------------------------------------
    dmesg output:
    ----------------------------------------------------------------
    usb.c: registered new driver audio
    usb.c: audio driver claimed interface 81e304d0
    usbaudio: device 2 audiocontrol interface 1 has 1 input and 0 output AudioStreaming interfaces
    usbaudio: device 2 interface 2 altsetting 1 channels 1 framesize 2 configured
    usbaudio: valid input sample rate 8000
    usbaudio: device 2 interface 2 altsetting 1: format 0x00000010 sratelo 8000 sratehi 8000 attributes 0x00
    usbaudio: device 2 interface 2 altsetting 2 channels 1 framesize 2 configured
    usbaudio: valid input sample rate 16000
    usbaudio: device 2 interface 2 altsetting 2: format 0x00000010 sratelo 16000 sratehi 16000 attributes 0x00
    usbaudio: registered dsp 14,3
    usbaudio: constructing mixer for Terminal 3 type 0x0101
    usbaudio: warning: found 1 of 0 logical channels.
    usbaudio: assuming the channel found is the master channel (got a Philips camera?). Should be fine.
    usbaudio: registered mixer 14,0
    usb_audio_parsecontrol: usb_audio_state at 81c66dc0
    usb.c: audio driver claimed interface 81e304b8
    audio.c: v1.0.0:USB Audio Class driver
    vlan1: dev_set_allmulti(master, 1)
    Linux video capture interface: v1.00
    usb.c: registered new driver Ðÿ½',
    usb.c: Ðÿ½', driver claimed interface 81e304a0
    drivers/usb/spca5xx.c: spca5xx driver 00.60.00.1 registered

    ------------------------------------------------------

    3rd: very slow (you know already the deal with the router's limited cpu, ram)...
    so: no problem at `configure`, errors at `make`... still working at it...
    don't know if I will see it finaly and properly compiled

    I really don't still want to get to 2.6.x kernel; after few months maybe.
    I appreciate every single advice in this problem.
    Attached Files Attached Files

Similar Threads

  1. WL500gPv2 and webcam
    By cu4xs in forum WL-500gP Q&A
    Replies: 59
    Last Post: 27-09-2010, 16:02
  2. cannot detect USB HDD
    By ferdz_33 in forum WL-500gP Q&A
    Replies: 8
    Last Post: 13-01-2010, 07:53
  3. Compiling driver for usb2seriell cable
    By stefan1982 in forum WL-500g Q&A
    Replies: 0
    Last Post: 06-03-2007, 22:11

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •