AP6256 WiFi移植

 时间:2024-10-15 12:33:01

该方法应用于ampak正基所有AP6XXX系列,下面就AP6256为例子该经验来源:深圳市世联芯科技有限公司

工具/原料

电脑,正基WiFi模块

方法/步骤

1、1-1配置CFG80211CFG80211是内核中WiFi驱动和用户态进程的标准接口,在CFG80211出现之前是WEXT,现在越来越多的使用CFG80211,WiFiDirect功能只有CFG80211才支持。进入Networksupport->Wireless,设置cfg80211和mac80211为M,如下图所示。

AP6256 WiFi移植

2、1-2配置WirelessExtensionWEXT是内核中WiFi驱动和用户态进程的标准接口,调试工具iwconfig、iwlist、iwpriv需要使用该接口。如果没有配置改接口,有些驱动会有编译错误。WEXT在内核配置中没有单独的配置项,只能通过打开依赖它的配置项来间接打开。配置了CFG80211后,进入DeviceDrivers->Networkdevicesupport->WirelessLAN,设置USBZD1201basedWirelessdevicesupport为M。如下图所示。

AP6256 WiFi移植

3、如果找不到这项配置,需要先配置好US幞洼踉残B再来配置该选项。1-3配置USB和SDIO请参考《外围设备驱动操作指南》中的USB惺绅寨瞀和SDIO操作指南。**rtl8189ftv、ap618ap621ap6212a、ap6214a的接口是SDIO2.0,请设置SDIO时钟为50MHz左右,ap6255的接口是SDIO3.0,请设置SDIO时钟为150MHz左右。**kernel默认的SDIO2.0的IO电压为3.3V,如果给WiFi模块的IO电压为1.8V,需要修改SDIO驱动,将IO电压切换到1.8V。1-4配置IPv6使用ap618ap621ap6212a、ap6214a、ap6255时,不配置IPv6会导致驱动运行错误,所以需要配置IPv6。使用其他四款WiFi无需配置该项。进入Networksupport->Networkingoptions,设置TheIPv6protocol为y。如下图所示。

AP6256 WiFi移植

4、1.5SDIO中断配置Kernel默认没有开启SDIO中断,使用rtl8189ftv时需要将SDIO中断打开,开启方法,如Hi3519V101:文件arch/arm/boot/dts/hisi-hi3519v101.dtsi,在WiFi对接的SDIO端口属性中增加:cap-sdio-irq。

5、2.1咯悝滩镞配置wifi_project开发包wifi_project在编译前需要配置交叉编译环境,修改顶层Makefile中的WIFI_DEVICE、CR晦倘佳鳎OSS_COMPILE和KERNEL。交叉编译工具链编译时需要的交叉编译工具,例如arm-hisiv500-linux-、arm-hisiv600-linux-等。如:ARCH:=armCROSS_COMPILE:=arm-hisiv500-linux-WIFI_DEVICE希望编译的Wi-Fi设备名称,支持的WiFi设备见Makefile文件中的注释。如:WIFI_DEVICE:=sdio_ap6xxxap618ap621ap6212a、ap6214a、ap6225都配置为sdio_ap6xxx。KERNEL编译Wi-Fi驱动时所指定的内核路径,在编译Wi-Fi驱动时,必须指定内核路径,注意内核一定要已经编译过的。如:KERNEL:=/home/work/linux-3.18.y配置完后就可以进行编译了,在wifi_project目录下执行makeall,会自动编译驱动和工具,makedriver只编译驱动,maketools只编译工具。生成的驱动放在wifi_project/out/kmod目录下,工具放在wifi_project/out/tools目录下,主要包括iwconfig、iwlist、iwpriv、wpa_cli、wpa_supplicant、hostapd等,生成的库文件放在wifi_project/out/lib目录下。

6、3-1载入驱动文件编译后驱动会生成在wifi_project/out/kmod目录下,拷贝所需的驱动到单板中。各个WiFi的驱动文件如下:ap6181/ap6212/ap6212a/ap6214a/ap6255cfg80211.ko、bcmdhd.kocfg80211.ko文件请在kernel的net/wireless目录下拷贝。驱动在单板上的目录不重要,比如可以放在/kmod目录。

7、3-2载入firmware文件如果要使用Broadcom的ap6181芯片,请执行如下操作:在单板上建立目录/etc/firmware,将wifi_project/firmware/sdio_ap6181文件夹下的固件文件fw_bcm40181a2.bin、fw_bcm40181a2_apsta.bin和nvram.txt下载到单板此目录下。ap6212/ap6212a/ap6214a/ap6255请拷贝wifi_project/firmware对应目录的firmware和nvram文件。

8、3-3芙囹买乐载入工具将wifi_project/out/lib目录下的libnl-genl.so.2.0.0、libn造婷用痃l.so.2.0.0拷贝到单板的/lib目录。进入单板/lib目录,创建这两个文件的软链接:ln–slibnl-genl.so.2.0.0libnl-genl.so.2ln–slibnl.so.2.0.0libnl.so.2拷贝wifi_project/out/tools目录下的iwconfig、iwlist、iwpriv、iperf拷贝到单板的/sbin目录下。这几个是调试工具,实际使用时可以不用拷贝这几个文件。STA模式需要将wifi_project/out/tools目录下的wpa_supplicant、wpa_cli拷贝到单板的/sbin目录下。AP模式需要将wifi_project/out/tools目录下的hostapd拷贝到单板的/sbin目录下。BroadcomWiFi除了使用wpa_supplicant和hostapd来配置外,还有一种方式是采用wl工具,这种情况下需要将wifi_project/out/tools目录下的wl拷贝到单板的/sbin目录下。工具拷贝到单板后,需要修改工具的可执行权限,如:chmoda+xwpa_supplicant

9、3-4wpa_supplicant.conf文件wpa_supplicant.conf是启动wpa_supplicant进程时需要使用到的配置文件。可以在单板上新建一个,目录不重要,比如放在/etc/Wireless目录下。文件内容如下:ctrl_interface=/var/wpa_supplicant也可以将sample目录下的wpa_supplicant.conf拷贝到/etc/Wireless目录下。3-5hostapd.conf文件hostapd.conf是启动hostapd进程时需要使用到的配置文件。可以在单板上新建一个,目录不重要,比如放在/etc/Wireless目录下。文件内容请参考hostapd配置和启动SoftAP。也可以将sample目录下的hostapd.conf拷贝到/etc/Wireless目录下。

10、3-6udhcpd.conf文件udhcpd.conf文件是SoftAP模式下DHCPserver需要使用到的配置文件。在wifi_project/sample目录下拷贝udhcpd.conf到单板目录下,目录不重要,比如放在/etc/Wireless目录下。3-7entropy.bin文件entropy.bin文件是随机数种子文件,hostapd进程配置带加密的SoftAP模式时需要使用。在wifi_project/sample目录下拷贝entropy.bin到单板目录下,目录不重要,比如放在/etc/Wireless目录下。

华为手机如何使用王者荣耀vt 萤石S2运动相机如何开启新浪直播? 将电脑硬盘分区克隆到另一个硬盘的分区怎么做 Windows 8如何查看磁盘活动的进程 将基础磁盘转换成动态磁盘的方法
热门搜索
美国三级电影 古堡图片 韩宝仪图片 邓文迪图片 ppt结尾谢谢图片