《华清远见学习手记》之移植gspca摄像头驱动到FS2410

    技术2022-06-30  76

    移植gspca摄像头驱动到FS2410

     

    【编译环境】ubuntu 8.10 + Vmware + windows xp

    【目标机】FS2410

    【交叉编译器】arm-softfloat-linux-gnu-gcc

     

    1. 首先确保目标板的USB、CS8900a能正常工作。

    2. 从网络下载摄像头驱动gspcav1-20071224.tar.gz

    3. 在linux-2.6.22.6/drivers/usb/ 下新建media 目录,将gspcav1-20071224.tar.gz复制到media下解压。

    4. 修改usb目录下的Kconfig和Makefile文件

        4.1 在Kconfig 里添加source "drivers/usb/media/Kconfig"

        4.2 在Makefile 里添加 obj-$(CONFIG_USB_SPCA5XX) += media/

     

    5. 在drivers/usb/media目录下新建Kconfig和Makefile文件

        5.1 vim Kconfig

        comment "USB Multimedia devices"

                        depends on USB

        config      USB_SPCA5XX

                       tristate  "USB SPCA5XX Sunplus/Vimcro/Sonix jpeg Cameras"

                       depends on USB&&VIDEO_DEV

                       ---help---

                       <file:Documentation/video4linux/API.html>

        5.2 vim Makefile

        obj-$(CONFIG_USB_SPCA5XX) +=gspcav1-20071224/

     

     6. 修改drivers/usb/media/spcav1-20071224/目录下的Makefile:

     在gspca-objs := gspca_core.o decoder/gspcadecoder.o下面添加:  obj-$(CONFIG_USB_SPCA5XX) += gspca.o  修改KERNEL_VERSION = linux-2.6.22.6  修改KERNELDIR := linux-2.6.22.6所在目录绝对地址(我的是/hd2/linux-2.6.22.6-pure/linux-2.6.22.6/ )  修改MODULE_INSTALLDIR = $(KERNELDIR)/drivers/usb/media/  修改MODULE_INSTALLDIR2 = $(KERNELDIR)/drivers/media/video/  添加CC = arm-softfloat-linux-gnu-gcc

     

    7. make menuconfig 配置内核

        7.1 Multimedia devices --->

               <*>Video For Linux (跟Video相关的选上,其余的可不选)

        7.2  ---USB Multimedia devices

               <*> USB SPCA5XX Sunplus/Vimcro/Sonix jpeg Cameras

     

    8.make 尝试编译

      8.1若出现gspca-version相关的错误:

      修改gspcav1-20071224/gspca_core.c   //static const char gspca_version[] = GSPCA_VERSION;   改为 static const char gspca_version[] = "00.60.00"; 添加一个宏定义 #define VID_HARDWARE_GSPCA 0xff

      8.2若出现 undefined reference to "__this_module"相关的错误:

      <*> USB SPCA5XX Sunplus/Vimcro/Sonix jpeg Cameras

      改成 <M> USB SPCA5XX Sunplus/Vimcro/Sonix jpeg Cameras

      (我的出现了这个错误!为什么不能直接编进内核?如果你解决了请告诉我 :boat_man@163.com )

     

    9.make 成功后 ,在gspcav1-20071224 目录下会生成gspca.ko ,将它复制到主机nfs服务的根目录下(比如我的/soure/rootfs)。

     

    10. 启动目标板insmod gspca.ko 后插入scpca兼容的摄像头,如果显示:

    usb 1-1: new full speed USB device using s3c2410-ohci and address 2 usb 1-1: configuration #1 chosen from 1 choice drivers/usb/media/gspcav1-20071224/gspca_core.c: USB GSPCA camera found.(ZC3XX) drivers/usb/media/gspcav1-20071224/gspca_core.c: [spca5xx_probe:4275] Camera type JPEG drivers/usb/media/gspcav1-20071224/Vimicro/zc3xx.h: [zc3xx_config:679] Find Sensor MI0360. Chip revision 8001

    drivers/usb/media/gspcav1-20071224/gspca_core.c: [spca5xx_getcapability:1249] maxw 640 maxh 480 minw 160 minh 120  这说明摄像头的驱动安装成功!

     

     


    最新回复(0)