使用到了WG209 无线模块 需要在板子上面支持无线上网这个功能
使用的是am35x平台 。
记录一下移植的过程
一、kernel
make menuconfig
Device Drivers ---> --->
[*] Network device support --->
[*] Wireless LAN --->
[*] Mediatek Wireless LAN support --->
<M> MediaTek MT7601U (USB) support
<*> Realtek rtlwifi family of devices --->
<*> Realtek RTL8192CU/RTL8188CU USB Wireless Network Adapter
[*] Debugging output for rtlwifi driver family
<*> RTL8723AU/RTL8188[CR]U/RTL819[12]CU (mac80211) support
[*] TI Wireless LAN support --->
整体如下
详细的配置 可以参考:https://www.cnblogs.com/chenfulin5/p/7550812.html
然后 make 即可
这里需要从编译后的文件中找到
mt7601u.ko ---编译后的模块 这里我以模块的形式加载 便于调试 把这个拷贝到板子
如果使用的是外部移植的文件,最终也是生成这个.ko文件,关于DPO_MT7601U_LinuxSTA_3.0.0.4_20130913 移植 ,文章最后会给出参考
加载模块:
insmod mt7601u.ko
看到如下信息:
表示模块加载成功
查看 cat /proc/net/wireless 看到如下信息 这以及确认加载成功
二、工具及其配置
使用的是 wpa_supplicant 工具 ,具体的wpa_supplicant 工具移植方法 可以参考网上 这里提供一个
参考: https://www.cnblogs.com/BANLOONG/p/9819618.html
我使用的是buitroot工具 编译生成的wpa_supplicant 以及 wpa_supplicant.conf
配置如下:
参考: https://www.cnblogs.com/chenfulin5/p/7550812.html
编译好后 会得到如下两个文件
wpa_supplicant.conf ---配置文件 设置密码等
wpa_supplicant ---工具
把这两个工具拷贝到板子 或者文件系统中,需要使用到
三、配置脚本
得到wpa_supplicant.conf 和 wpa_supplicant后 做一些基本的配置
首先拷贝wpa_supplicant.conf 到板子或者文件系统中 ,然后编辑: 把ap_scan去掉 那个是ap模式的 开启热点
编辑内容如下:
在根文件系统下创建目录: /var/run/wpa_supplicant 先留着用
三、使用
1.关闭eth0
ifconfig eth0 down
2.启动wlan0
ifconfig wlan0 up
ifconfig后会看到wlan0已经启动
3.连接无线网络
wpa_supplicant -B -c /etc/wpa_supplicant.conf -i wlan0
这时候会提示缺少动态链接库,从buidroot中复制到板子即可
如下两个动态链接库:
libssl.so.1.1
libcrypto.so.1.1
之后如下
就会连上在配置文件中设置的热点,但是这个时候还没有ip
4.动态获取ip
udhcpc -i wlan0
获取到ip后 即可上网
因为我为了记录 中间做了一些异常操作,所以提示这样 不过不要紧
ping 8.8.8.8
为了方便 提供了一些必要的下载 这个是工具 以及编译好的文件 ,动态链接库,我使用的是arm-linux-gnueabihf-gcc交叉编译器
https://github.com/ChenChangXiong/WG209-wifi.git
参考:
https://www.cnblogs.com/BANLOONG/p/9819618.html
https://www.cnblogs.com/chenfulin5/p/7550812.html
http://blog.sina.com.cn/s/blog_14dbb26e60102w7z8.html