VS-RK3399嵌入式开发板QT下wifi 移植方法
RK3399的CPU采用big.LITTLE大小核架构,双Cortex-A72大核+四Cortex-A53小核结构,对整数、浮点、内存等作了大幅优化,在整体性能、功耗及核心面积三个方面都具革命性提升。 RK3399的GPU采用四核ARM新一代高端图像处理器Mali-T860,集成更多带宽压缩技术:如智能迭加、ASTC、本地像素存储等,还支持更多的图形和计算接口,总体性能比上一代提升45%。
第1章 内核配置
硬件平台:x3399开发板或ibox3399卡片电脑
操作系统:linux4.4.5 + QT5.6
WIFI型号:AP6356S(AP6335,AP6225方法可通用)
1.1 使能内核配置项CFG80211
确定内核配置项CONFIG_CFG80211=y,如下:
-> Networking support (NET [=y])
-> Wireless (WIRELESS [=y])
-> cfg80211 - wireless configuration API
1.2 添加内容到Kconfig
添加下面内容到kernel/drivers/net/wireless/rockchip_wlan/rkwifi/Kconfig
source “drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/Kconfig”
1.3 添加内容到Makefile
添加下列内容到kernel/drivers/net/wireless/rockchip_wlan/rkwifi/Makefile
obj-(CONFIGBCMDHD)+=bcmdhd/注意:如果Makefile文件这一项的配置项是“obj−(CONFIGBCMDHD)+=bcmdhd/注意:如果Makefile文件这一项的配置项是“obj−(CONFIG_AP6XXX) += bcmdhd/”,则将其改为上述内容。
1.4 Wi-Fi驱动配置
添加上述2和3后,进入内核make menuconfig
-> Device Drivers
-> Network device support (NETDEVICES [=y])
-> Wireless LAN (WLAN [=y])
-> Rockchip Wireless LAN support
做出如下配置:
说明:配置项Firmware path和NVRAM path可以不用修改,参照默认配置即可。这里的文件fw_bcm4356a2_ag_apsta.bin、nvram_ap6356s.txt获取来源参见本文档“添加固件”
第2章 Buildroot配置
2.1 配置wpa_supplicant
执行make x3399_defconfig默认配置后,进入make menuconfig做出如下配置:
-> Target packages
-> Networking applications
2.2 配置rfkill
-> Target packages
-> Hardware handlingrfkill
2.3 配置hostapd
-> Target packages
-> Networking applications
选择hostapd配置项
2.4 在buildroot中添加S99wpa_supplicant
添加文件S99wpa_supplicant到buildroot/board/9tripod/x3399/rootfs-overlay/etc/init.d/目录
文件S99wpa_supplicant是wpa_supplicant服务开机启动的脚本,内容如下:
!/bin/sh
#
Start the wpa_supplicant….
#
case “$1” in
start)
echo “Starting wpa_supplicant…”
ifconfig wlan0 up
/usr/sbin/wpa_supplicant -Dnl80211 -i wlan0 -c /etc/wpa_supplicant.conf &
/usr/sbin/wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf -B;;stop)
echo -n “Stopping wpa_supplicant…”
ifconfig wlan0 down
;;
restart|reload)
“<span class="MathJax" id="MathJax-Element-2-Frame" tabindex="0" data-mathml="0”stop“" role="presentation" style="box-sizing: border-box; outline: 0px; display: inline; line-height: normal; text-align: left; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; border: 0px; word-break: break-all; position: relative;">0”stop“0”stop“0” start
;;
*)
echo “Usage: $0 {start|stop|restart}”
exit 1
esac exit $? 说明:wpa_supplicant可执行程序根据具体位置确定。其中启动wpa_supplicant服务指令:
-iwlan0 wlan0网络接口名称;/etc/wpa_supplicant.conf是wpa_supplicant的配置文件;
可适当添加下列选项;
-d 增加调试信息,-Dwext: wext驱动名称 2.5 在buildroot中添加wpa_supplicant.conf文件
添加文件wpa_supplicant.conf到buildroot/board/9tripod/x3399/rootfs-overlay/etc/目录
wpa_supplicant.conf是wpa_supplicant的配置文件,内容如下:
ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
update_config=1 network={
ssid=”JDCZ2.4”
psk=”123456789”
}
其中ssid是接入点名称,psk是密码 2.6 添加固件
文件:nvram_ap6356s.txt、fw_bcm4356a2_ag.bin、fw_bcm4356a2_ag_apsta.bin
将此3个文件添加进buildroot/board/9tripod/x3399/rootfs-overlay/system/etc/firmware/目录 |