uClinux Compiling with isp116x User Guide for lumit4510 : how to compile uClinux kernel with isp116x 说明: 本小节内容是关于针对S3C4510B嵌入式处理器,uClinux的ISP116x主控驱动的编译 ------------------------------------------------------------------------- 本文描述: 交叉编译环境采用 arm-elf-tools-20030314.sh 目标操作系统采用 uClinux-dist-20041215.tar.gz isp116x的文件采用hc_isp1161-0.8.patch.gz 下载地址:http://internap.dl.sourceforge.net/sourceforge/linux-usb/hc_isp1161-0.8.patch.gz http://www.uclinux.org/pub/uClinux/uclinux-elf-tools/arm-elf-tools-20030314.sh http://www.uclinux.org/pub/uClinux/dist/uClinux-dist-20041215.tar.gz 编译主机为Redhat 9, 在安装完编译环境和解压完操作系统之后<参考lumit-compile-uclinux-readme2.txt>, 1:执行 rm hc_simple*.* -f rm hc_isp* -f 解决版本匹配问题 2:将hc_isp1161-0.8.patch.gz文件复制到linux-2.4.x/drivers/usb/host 执行 tar zxfv hc_isp1161-0.8.patch.gz / gunzip hc_hc_isp1161-0.8.patch.gz patch -p1 < hc_isp1161-0.8.patch 3:在hc_isp116x.h 中增加 typedef struct devrequest { __u8 requesttype; __u8 request; __u16 value; __u16 index; __u16 length; } __attribute__ ((packed)) devrequest; typedef struct urb urb_t; 4:在drivers/usb/Makefile中适当之处增加(也可以直接将CONFIG_USB_ISP116x改成y) obj-$(CONFIG_USB_ISP116x) +=host/hc_isp116x.o subdir-$(CONFIG_USB_ISP116x) +=host 在linux-2.4.x/Makefile中增加 DRIVERS-y+=drivers/usb/host/hc_isp116x.o 5:编译内核参考 cd /ucLinux-dist/ make menuconfig 在最后选择customer kernel settings 退出后, 选择usb support /isp116x support 退出后可以在ucLinux-dist/linux-2.4.x/.config 文件中看到 CONFIG_USB=y CONFIG_USB_ISP116x=y 7:编译内核参考 make dep ;make romfs; make ; 8:make遇到错误后,在uclinux-dist/include/asm/pci.h 增加 #include extern mem_map_t *mem_map; 9:编译内核参考 make ;make image 10:编译完成,如有想确认是否已经将ISP116x编译进内核,可以通过查找linux-2.4.x/System.map 文件中有没有hc_found_hci 如有任何技术问题,欢迎发邮件和小组成员 王建威 讨论. ┌-------------------------------------------------------------------------┐ │ │ │ Welcome to visit http://www.lumit.org for more information │ │ │ │ [lumit] - let us make it together │ │ │ │ │ │ lumit-admin │ │ │ └-------------------------------------------------------------------------┘