linux下编译基于rtl8188cu控制芯片的USB无线网卡驱动

2019-07-13 01:11发布

本人因为实验的需要,需要在嵌入式linux环境下添加wifi功能,通过在网上调研,选择基于rtl8188cu控制芯片的水星NW150UM无线USB网卡,现简单记录下配置过程。 1.下载最新的rtl8188cu的linux驱动: 下载页面 :  ftp://WebUser:AxPL9s3k@58.211.24.153/cn/wlan/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.zip 2.解压缩下载的文件,把驱动文件rtl8192_8188CU_linux_xxx.tar.gz(xxx是版本号)添加到要编译的内核树里面去 (1)假定你的内核位置为/root/linux-kernel,解压缩驱动文件,并且把解压缩后的驱动文件夹名改为rtl8192cu。 (2)把改好名字的驱动文件夹rtl8192cu复制到/root/linux-kernel/drivers/net/wireless/下。 (3)修改/root/linux-kernel/drivers/net/wireless/下的MakefileKconfig文件,在Makefile添加obj -$(CONFIG_RTL8192CU)  += rtl8192cu/,在Kconfig下添加 source "drivers/net/wireless/rtl8192cu/Kconfig" (4)make menuconfig 配置内核,在Device Drivers/Network device support/Wireless LAN下选中8192cu,编译内核。
(5)如果遇见error: 'struct net_device' has no member named 'wireless_handlers'错误时,请看这一步的操作。 查阅资料后发现是内核在编译的时候CONFIG_WIRELESS_EXT这个选项没有选择,选择该选项后重新编译内核镜像或者模块即可修正该错误。
3.在命令行下配置无线网卡: (1)iwconfig 查看当前的无线网卡设备,假设你的无线网卡设备为wlan1 (2)设置无线网卡的AP信息 添加AP账号名,AP登陆密码 iwconfig essid "AP-Name" key 1234-5678-90ab(密码每四个一组,中间用破折号隔开) (3)启动无线网卡 ifconfig wlan1 up (4)设置无线网卡的IP地址 如果你的无线网卡的IP地址是静态设置的 ifconfig wlan1 192.168.1.2 netmask 255.255.255.0  如果你的无线网卡的IP地址是动态获取的 dhclient wlan1 或者 dhcpcd wlan1 动态获取无线网卡的IP