![]() ![]() 加载摄像头驱动[ 编辑 下载内核补丁和摄像头驱动补丁 http://ftp.linux.org.uk/pub/linux/arm/kernel/v2.4/patch-2.4.18-rmk7.bz2 [ 编辑 修改内核补丁版本号打开patch-2.4.18-rmk7文件,把 +EXTRAVERSION = -rmk7 改为 +EXTRAVERSION = -rmk7-pxa1 前面已经说过板子上的内核版本号是-rmk7-pxa1,所以此处要将它改过来,否则在加载模块时会出现“内核版本号不一致”的错误 [ 编辑 打内核补丁cd linux-2.4.18 patch -p1 < ../patch-2.4.18-rmk7 [ 编辑 打摄像头驱动补丁cd linux-2.4.18/drivers/usb patch -p1 < ../../../usb-2.4.31.patch 此处会出现两个错误,解决方法如下: 把Makefile.rej文件中的 subdir-$(CONFIG_USB_SPCA5XX) += spca5xx ifeq ($(CONFIG_USB_SPCA5XX),y) obj-y += spca5xx/spca5xx.o endif 加到Makefile文件中 把Config.in.rej文件中的 dep_tristate ' USB SPCA5XX Sunplus Vimicro Sonix Cameras' CONFIG_USB_SPCA5XX $CONFIG_USB $CONFIG_VIDEO_DEV 加到Config.in文件中 [ 编辑 编译内核打开Makefile文件,把 ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/) CROSS_COMPILE = 改为 ARCH := arm CROSS_COMPILE = /usr/local/arm/2.95.3/bin/arm-linux- 此处只能用2.95.3版的,如果用比它高的版本就会出现 “arm-linux-ld:arch/arm/kernel/vmlinux.lds:799: parse error make: *** [.tmp_vmlinux1]” 的错误 内核配置 make menuconfig 此处只需选择两处就行了: Multimedia device ---> <M>Video for linux USB support ---> <M> Support for USB --- USB Multimedia devices <M> USB SPCA5XX Sunplus Vimicro Sonix Cameras 这些选项一定要是M 然后make dep && make modules就行了,因为我们不需要内核映像文件所以就把make zIamge省去了 [ 编辑 需要的点o文件可能需要四个点o文件:spca5xx.o、spca_core.o、spcadecoder.o、videodev.o linux-2.4.18/driver/usb/spca5xx文件下有:spca5xx.o、spca_core.o、spcadecoder.o linux-2.4.18/driver/media/video文件下有:videodev.o 有以下四种方法文件拷贝到开发板上: 1)用U盘等移动设备 2)用NFS服务 3)用FTP服务 4)用Apache+wget [ 编辑 加载模块insod videodev.o 会在/dev目录下生成一个video0的字符设备文件 insod spca5xx.o 若出现类似于以下的信息就代表成功了: usb.c: registered new driver spca5xx spca_core.c: spca5xx driver 00.57.06LE registered ![]() |
S3c2410-linux实现网络视频监控功能
最新推荐文章于 2020-10-15 09:44:06 发布