add kernel driver for SPCA5XX based USB cameras
SVN-Revision: 2602
This commit is contained in:
parent
70882293ab
commit
e2af66b181
6 changed files with 227 additions and 0 deletions
|
@ -6,4 +6,5 @@ source "target/linux/package/madwifi/Config.in"
|
||||||
source "target/linux/package/mini_fo/Config.in"
|
source "target/linux/package/mini_fo/Config.in"
|
||||||
source "target/linux/package/openswan/Config.in"
|
source "target/linux/package/openswan/Config.in"
|
||||||
source "target/linux/package/shfs/Config.in"
|
source "target/linux/package/shfs/Config.in"
|
||||||
|
source "target/linux/package/spca5xx/Config.in"
|
||||||
source "target/linux/package/wlcompat/Config.in"
|
source "target/linux/package/wlcompat/Config.in"
|
||||||
|
|
|
@ -10,6 +10,7 @@ package-$(BR2_PACKAGE_KMOD_MADWIFI) += madwifi
|
||||||
package-$(BR2_PACKAGE_KMOD_MINI_FO) += mini_fo
|
package-$(BR2_PACKAGE_KMOD_MINI_FO) += mini_fo
|
||||||
package-$(BR2_PACKAGE_KMOD_OPENSWAN) += openswan
|
package-$(BR2_PACKAGE_KMOD_OPENSWAN) += openswan
|
||||||
package-$(BR2_PACKAGE_KMOD_SHFS) += shfs
|
package-$(BR2_PACKAGE_KMOD_SHFS) += shfs
|
||||||
|
package-$(BR2_PACKAGE_KMOD_SPCA5XX) += spca5xx
|
||||||
package-y += base-files
|
package-y += base-files
|
||||||
|
|
||||||
ifeq ($(BOARD)-$(KERNEL),brcm-2.4)
|
ifeq ($(BOARD)-$(KERNEL),brcm-2.4)
|
||||||
|
|
9
openwrt/target/linux/package/spca5xx/Config.in
Normal file
9
openwrt/target/linux/package/spca5xx/Config.in
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
config BR2_PACKAGE_KMOD_SPCA5XX
|
||||||
|
prompt "kmod-spca5xx...................... Kernel driver for SPCA5XX based USB cameras"
|
||||||
|
tristate
|
||||||
|
default m if CONFIG_DEVEL
|
||||||
|
help
|
||||||
|
Kernel driver for SPCA5XX based USB cameras
|
||||||
|
|
||||||
|
http://mxhaard.free.fr/
|
||||||
|
|
41
openwrt/target/linux/package/spca5xx/Makefile
Normal file
41
openwrt/target/linux/package/spca5xx/Makefile
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
# $Id: Makefile,v 1.2 2005/06/11 15:36:31 nbd Exp $
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
include ../../rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=spca5xx
|
||||||
|
PKG_VERSION:=20051105
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
PKG_MD5SUM:=7d2e84c3d3880728fefd5644713ba0ca
|
||||||
|
|
||||||
|
PKG_SOURCE_URL:=http://mxhaard.free.fr/spca50x/Download/
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
|
PKG_CAT:=zcat
|
||||||
|
|
||||||
|
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
|
||||||
|
|
||||||
|
ifeq ($(KERNEL_DIR),)
|
||||||
|
KERNEL_DIR:=$(LINUX_DIR)
|
||||||
|
endif
|
||||||
|
|
||||||
|
include $(TOPDIR)/package/rules.mk
|
||||||
|
|
||||||
|
$(eval $(call PKG_template,KMOD_SPCA5XX,kmod-spca5xx,$(LINUX_VERSION)+$(PKG_VERSION)-$(BOARD)-$(PKG_RELEASE),$(ARCH),kernel ($(LINUX_VERSION)-$(BOARD)-$(KERNEL_RELEASE))))
|
||||||
|
|
||||||
|
$(PKG_BUILD_DIR)/.configured:
|
||||||
|
touch $@
|
||||||
|
|
||||||
|
$(PKG_BUILD_DIR)/.built:
|
||||||
|
$(MAKE) -C $(KERNEL_DIR) \
|
||||||
|
SUBDIRS="$(PKG_BUILD_DIR)" \
|
||||||
|
modules
|
||||||
|
touch $@
|
||||||
|
|
||||||
|
$(IPKG_KMOD_SPCA5XX):
|
||||||
|
install -m0755 -d $(IDIR_KMOD_SPCA5XX)/lib/modules/$(LINUX_VERSION)
|
||||||
|
cp -fpR $(PKG_BUILD_DIR)/spca5xx.$(LINUX_KMOD_SUFFIX) \
|
||||||
|
$(IDIR_KMOD_SPCA5XX)/lib/modules/$(LINUX_VERSION)/
|
||||||
|
$(RSTRIP_KMOD) $(IDIR_KMOD_SPCA5XX)
|
||||||
|
$(IPKG_BUILD) $(IDIR_KMOD_SPCA5XX) $(PACKAGE_DIR)
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
Package: kmod-spca5xx
|
||||||
|
Priority: optional
|
||||||
|
Section: sys
|
||||||
|
Description: Kernel driver for SPCA5XX based USB cameras
|
171
openwrt/target/linux/package/spca5xx/patches/01-kmod-build.patch
Normal file
171
openwrt/target/linux/package/spca5xx/patches/01-kmod-build.patch
Normal file
|
@ -0,0 +1,171 @@
|
||||||
|
diff -ruN spca5xx-20051105-old/Makefile spca5xx-20051105-new/Makefile
|
||||||
|
--- spca5xx-20051105-old/Makefile 2005-11-05 19:18:26.000000000 +0100
|
||||||
|
+++ spca5xx-20051105-new/Makefile 2005-12-08 21:50:20.000000000 +0100
|
||||||
|
@@ -68,157 +68,18 @@
|
||||||
|
|
||||||
|
else # kernel version test
|
||||||
|
|
||||||
|
-#############################################################################
|
||||||
|
-# For Linux 2.4 users.
|
||||||
|
-# Change the following lines according to your system configuration.
|
||||||
|
-# It is important to configure your particular source tree ("make dep") before
|
||||||
|
-# compiling this module!
|
||||||
|
-#############################################################################
|
||||||
|
-###
|
||||||
|
-# This makefile will build the spca50x driver module external to the kernel
|
||||||
|
-# source tree. It makes it easier to swap kernels.
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-KERNEL_VERSION = `uname -r`
|
||||||
|
-
|
||||||
|
-###
|
||||||
|
-# Location of the header files (most importantly the config files)
|
||||||
|
-# for the kernel you want to build the module against.
|
||||||
|
-# This should be correct for the currently installed kernel on your machine.
|
||||||
|
-KINCLUDE = /lib/modules/$(KERNEL_VERSION)/build/include
|
||||||
|
-KERNEL_ACFILE = $(KINCLUDE)/linux/autoconf.h
|
||||||
|
-KERNEL_MODVERSIONSFILE = $(KINCLUDE)/linux/modversions.h
|
||||||
|
-MODULE_INSTALLDIR = /lib/modules/$(KERNEL_VERSION)/kernel/drivers/usb/
|
||||||
|
-
|
||||||
|
-# Detect module versioning support
|
||||||
|
-ifneq ($(strip $(shell grep 'define CONFIG_MODVERSIONS 1' $(KERNEL_ACFILE))),)
|
||||||
|
- DEFINES += -DMODVERSIONS -include $(KERNEL_MODVERSIONSFILE)
|
||||||
|
-endif
|
||||||
|
-
|
||||||
|
-# Detect SMP support
|
||||||
|
-ifneq ($(strip $(shell grep 'define CONFIG_SMP 1' $(KERNEL_ACFILE))),)
|
||||||
|
- DEFINES += -D__SMP__ -DSMP
|
||||||
|
-endif
|
||||||
|
-
|
||||||
|
-# Setup the tools
|
||||||
|
-CC = gcc
|
||||||
|
-LD = ld
|
||||||
|
-
|
||||||
|
-# Setup compiler warnings
|
||||||
|
-WARNINGS = -Wall -Wpointer-arith
|
||||||
|
-WARNINGS += -Wcast-align -Wwrite-strings -Wstrict-prototypes
|
||||||
|
-WARNINGS += -Wuninitialized -Wreturn-type -Wunused -Wparentheses
|
||||||
|
-
|
||||||
|
-# Setup compiler flags
|
||||||
|
-CFLAGS = -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe
|
||||||
|
-CFLAGS += -mpreferred-stack-boundary=2
|
||||||
|
-CFLAGS += -I$(KINCLUDE) -Idrivers/usb
|
||||||
|
-
|
||||||
|
-# Setup link flags
|
||||||
|
-LDFLAGS = --strip-debug -r
|
||||||
|
-
|
||||||
|
-# Setup the list of files to be included in a distribution
|
||||||
|
-DIST_FILES = CHANGELOG \
|
||||||
|
- README \
|
||||||
|
- Makefile \
|
||||||
|
- drivers/usb/Config.in \
|
||||||
|
- drivers/usb/spcadecoder.c \
|
||||||
|
- drivers/usb/spcadecoder.h \
|
||||||
|
- drivers/usb/jpeg_header.h \
|
||||||
|
- drivers/usb/jpeg_qtables.h \
|
||||||
|
- drivers/usb/spcagamma.h \
|
||||||
|
- drivers/usb/spcaCompat.h \
|
||||||
|
- drivers/usb/spcausb.h \
|
||||||
|
- drivers/usb/spca500_init.h \
|
||||||
|
- drivers/usb/spca501_init.h \
|
||||||
|
- drivers/usb/sp5xxfw2.dat \
|
||||||
|
- drivers/usb/sp5xxfw2.h \
|
||||||
|
- drivers/usb/spca505_init.h \
|
||||||
|
- drivers/usb/spca506.h \
|
||||||
|
- drivers/usb/spca508_init.h \
|
||||||
|
- drivers/usb/spca561.h \
|
||||||
|
- drivers/usb/sonix.h \
|
||||||
|
- drivers/usb/cs2102.h \
|
||||||
|
- drivers/usb/hv7131b.h \
|
||||||
|
- drivers/usb/icm105a.h \
|
||||||
|
- drivers/usb/hv7131c.h \
|
||||||
|
- drivers/usb/hdcs2020.h \
|
||||||
|
- drivers/usb/pb0330.h \
|
||||||
|
- drivers/usb/tas5130c.h \
|
||||||
|
- drivers/usb/zc3xx.h\
|
||||||
|
- drivers/usb/tv8532.h\
|
||||||
|
- drivers/usb/cxlib.h\
|
||||||
|
- drivers/usb/sn9cxxx.h\
|
||||||
|
- drivers/usb/cx11646.h\
|
||||||
|
- drivers/usb/pac207.h\
|
||||||
|
- drivers/usb/spca5xx.c \
|
||||||
|
- drivers/usb/spca5xx.h
|
||||||
|
-
|
||||||
|
-OBJS = drivers/usb/spcadecoder.o \
|
||||||
|
- drivers/usb/spca5xx.o
|
||||||
|
-
|
||||||
|
-BINARY = spca5xx.o
|
||||||
|
-
|
||||||
|
-###
|
||||||
|
-# Targets follow here
|
||||||
|
-
|
||||||
|
-binary: $(OBJS)
|
||||||
|
- @echo Linking $(BINARY)
|
||||||
|
- @$(LD) $(LDFLAGS) -o $(BINARY) $(OBJS)
|
||||||
|
-
|
||||||
|
-install: binary
|
||||||
|
- @echo Installing.. Your root password may be required.
|
||||||
|
- su -c "make install-root"
|
||||||
|
-
|
||||||
|
-install-root:
|
||||||
|
- @echo Installing..
|
||||||
|
- @mkdir -p /lib/modules/`uname -r`/kernel/drivers/usb
|
||||||
|
- @rm -f /lib/modules/`uname -r`/kernel/drivers/usb/spca50x.o
|
||||||
|
- @rm -f /lib/modules/`uname -r`/kernel/drivers/usb/et61x.o
|
||||||
|
- @cp spca5xx.o /lib/modules/`uname -r`/kernel/drivers/usb/spca5xx.o
|
||||||
|
- @/sbin/depmod
|
||||||
|
-
|
||||||
|
-dist: clean binary
|
||||||
|
- @echo Making distributable archives
|
||||||
|
- @rm -f spca5xx-src-$(VERSION).tar.gz
|
||||||
|
- @tar zcf spca5xx-src-$(VERSION).tar.gz $(DIST_FILES)
|
||||||
|
- @rm -f spca5xx-module-$(VERSION).tar.gz
|
||||||
|
- @cp $(BINARY) spca5xx-$(VERSION).o
|
||||||
|
- @tar zcf spca5xx-module-$(VERSION).tar.gz spca5xx-$(VERSION).o README
|
||||||
|
- @rm spca5xx-$(VERSION).o
|
||||||
|
-
|
||||||
|
-.c.o: Makefile $*.c
|
||||||
|
- @echo Compiling $*.c
|
||||||
|
- @$(CC) $(CFLAGS) $(WARNINGS) $(DEFINES) -c $*.c -o $*.o
|
||||||
|
-
|
||||||
|
-###
|
||||||
|
-# Dependencies follow here
|
||||||
|
-
|
||||||
|
-drivers/usb/spca5xx.o: drivers/usb/spca5xx.h \
|
||||||
|
- drivers/usb/spcaCompat.h \
|
||||||
|
- drivers/usb/spcausb.h \
|
||||||
|
- drivers/usb/sonix.h \
|
||||||
|
- drivers/usb/spca500_init.h \
|
||||||
|
- drivers/usb/spca501_init.h \
|
||||||
|
- drivers/usb/sp5xxfw2.h \
|
||||||
|
- drivers/usb/spca505_init.h \
|
||||||
|
- drivers/usb/spca506.h \
|
||||||
|
- drivers/usb/spca508_init.h \
|
||||||
|
- drivers/usb/spca561.h \
|
||||||
|
- drivers/usb/zc3xx.h\
|
||||||
|
- drivers/usb/tv8532.h\
|
||||||
|
- drivers/usb/cx11646.h\
|
||||||
|
- drivers/usb/mr97311.h\
|
||||||
|
- drivers/usb/sn9cxxx.h\
|
||||||
|
- drivers/usb/pac207.h\
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-drivers/usb/spcadecoder.o: drivers/usb/spcadecoder.h \
|
||||||
|
- drivers/usb/spcagamma.h \
|
||||||
|
- drivers/usb/jpeg_header.h
|
||||||
|
+EXTRA_CFLAGS += $(DEFINES)
|
||||||
|
|
||||||
|
-endif # End kernel version test
|
||||||
|
+spca5xx-objs := drivers/usb/spca5xx.o drivers/usb/spcadecoder.o
|
||||||
|
+
|
||||||
|
+obj-m += spca5xx.o
|
||||||
|
+obj-y := $(spca5xx-objs)
|
||||||
|
+
|
||||||
|
+O_TARGET := $(obj-m)
|
||||||
|
|
||||||
|
+-include $(TOPDIR)/Rules.make
|
||||||
|
+
|
||||||
|
+endif # End kernel version test
|
||||||
|
|
||||||
|
##############################################################################
|
||||||
|
# OTHER TARGETS
|
Loading…
Reference in a new issue