JZ2440- USB 摄像头

 

一: 编写Myuvc 文件源码(仿照 :Uvc_driver.c (drivers\media\video\uvc)  移植)

编译模块后,加载出现 error

dmesg后 ,打印如下:

当前编译的源码版本跟系统内核的版本没有一致

JZ2440- USB 摄像头_第1张图片

修改MakefileJZ2440- USB 摄像头_第2张图片

JZ2440- USB 摄像头_第3张图片

重新insmod myuvc.ko后 仍然没有输出信息:

JZ2440- USB 摄像头_第4张图片

如何查看摄像头的的信息:

lsusb -v -d 0xbda:   ---->注意不要掉了冒号

 

 

如何设置ubuntu 从串口输出 内核的 log信息:

1先设置虚拟机,添加串口设备,然后设置输出到文件!

 

2 # vi /etc/default//grub

    11 GRUB_CMDLINE_LINUX_DEFAULT="" 

    GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8" 补上

修改完成后执行:update-grub 

 

 

3. root@book-virtual-machine:/home/book# cat /proc/sys/kernel/printk
4       4       1       7 

root@book-virtual-machine:/home/book# echo "4 4 1 7" > /proc/sys/kernel/printk   修改内核的打印级别

 

调试应用程序:

让程序在开发板上直接运行,当它发生错误的时候,令他产生core dump文件

然后使用gdb根据core dump文件找到错误的地方

在arm板上:

1.ulimit -c unlimited

2.执行应用程序:程序出错时会在当前目录下名为core的文件

在PC上:也就是在ubuntu上

3.  /bin/arm-linux-gdb ./test_debug ./core  例如:arm-linux-gdb video2lcd /work/nfs_root/fs_mini_mdev_new/core

4.PC控制台执行backtrace 命令:

 

(三) .修改开发板的uvc驱动,并且在lcd上显示图像

1.把 lcd_4.3.c复制到 /work/system/linux-3.4.2/drivers/video   ---->修改/drivers/video/Makefile  

2.添加网卡驱动

注释:cp config_ok .config的必要性:

JZ2440- USB 摄像头_第5张图片

 

3.make menuconfig·

搜索 USB_VIDEO......

JZ2440- USB 摄像头_第6张图片

 

JZ2440- USB 摄像头_第7张图片

 

4.make uImage && cp /arch/arm/boot/uImage /work/nfs_root/uImage_uvc_lcd

JZ2440- USB 摄像头_第8张图片

reset后启动不起来,分析发现需要修改UBOOT 内核的大小要修改

JZ2440- USB 摄像头_第9张图片

修改 u-boot-2012.04.01_100ask.patch

JZ2440- USB 摄像头_第10张图片

打patch

JZ2440- USB 摄像头_第11张图片

vi u-boot-2012.04.01_100ask/include/configs/smdk2440.h 查看是否打了

重新编译uboot

生成了

烧录后,可以正常启动

JZ2440- USB 摄像头_第12张图片

但是kernel打印的分区信息不对,需要修改kernel的参数但不影响系统跑起来

 

(四)烧录了支持uvc LCD 驱动的uImage_UVC_LCD内核,验证现象

在烧录uImage_UVC_LCD内核以前,插入usb 摄像头,没有输出相应的usb设备的讯息

现在插入:

JZ2440- USB 摄像头_第13张图片

运行uvc的应用程序试看效果:

mount 服务器的文件系统:

mount -t nfs -o nolock,vers=2 192.168.2.102:/work/nfs_root/fs_mini_mdev_new

JZ2440- USB 摄像头_第14张图片

JZ2440- USB 摄像头_第15张图片

程序正常运行,但是只是显示部分图像:

JZ2440- USB 摄像头_第16张图片

 

未完待续 :为什么只显示部分图像???????

你可能感兴趣的:(移植)