linux 3.11.10, mini2440, usb wifi TL-WN721 8176 ,8192cu ,os_intfs.o error1
需要移植usb wifi TL-WN721 8176 8192cu的驱动到linux3.11.10内核,但是编译时报错:error: implicit declaration of function 'create_proc_entry' ../os_dep/linux/os_intfs.o]错误 1原因是3.11.10的内核里面的“create_proc_entry“已经过时,尝试修改..
参数:
Linux内核版本:linux3.11.10
开发板型号:mini2440,256M1.编译
1.1查看usb adapter的型号
将usb wifi插到PC的linux下,使用lsusb命令查看其信息。我的是Bus 002 Device 005: ID 0bda:8176 Realtek Semiconductor Corp.
表明是Realtek的。
1.2修改内核源码配置
make menuconfig
Device Drivers --->
[*] Network device support --->
[*]Wireless LAN --->
[M]Realtek rtlwifi family of devices --->
<M> Realtek RTL8192CU/RTL8188CU USB Wireless Network Adapter
然后编译内核
1.3编译驱动程序
去网站:http://www.realtek.com/downloads/downloadsView.aspx?Langid=3&PNid=48&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#RTL8192CU
下载驱动,解压,修改Makefile
CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ARM_S3C2K4 = y //修改芯片架构
CONFIG_POWER_SAVING = n //去掉节能模式
ifeq ($(CONFIG_PLATFORM_ARM_S3C2K4), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
ARCH := arm
CROSS_COMPILE := arm-linux-
KVER := 3.11.10
KSRC := 你的linux源码路径
然后make,编译时报错:error: implicit declaration of function 'create_proc_entry' ../os_dep/linux/os_intfs.o]错误 1
原因是3.11.10的内核里面的“create_proc_entry“已经过时,尝试修改../os_dep/linux/os_intfs.c文件但未果,在网上搜到一个改好的os_intfs.c文件,替换掉原来的文件编译测试,可以使用
代码网址如下:https://raw.github.com/raspberrypi/linux/rpi-3.10.y/drivers/net/wireless/rtl8192cu/os_dep/linux/os_intfs.c
2.使用驱动
2.1优化
编译之后的8192cu.ko文件可能比较大,有大概7M,原因是里面包含了大量的调试信息,所以使用arm-linux-strip -S
8192cu.ko去掉调试信息,之后大小就变为了700多k2.2下载和使用
使用minicom或是其他方法将该驱动下载到开发板
下载进去后使用insmod就可以加载了,加载成功后,使用命令iwconfig来查看一般名为wlan0
参考网址:http://m.blog.csdn.net/blog/dragon101788/8658374,这篇文章较为详细地介绍了移植的过程,可以作为移植usb wifi 驱动的参考,谢谢作者
更多推荐
所有评论(0)