AP6256 WiFi移植

 时间:2024-10-12 07:13:38

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

AP6256 WiFi移植

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

AP6256 WiFi移植

3、如果找不到这项配置,需要先配置好 US幞洼踉残B 再来配置该选项。1-3 配置 USB 和 SDIO请参考《外围设备驱动操作指南》中的 USB 和 SDIO 操作指南。** rtl8189ftv、ap6181、ap6212、ap6212a、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使用 ap6181、ap6212、ap6212a、ap6214a、ap6255 时,不配置 IPv6 会导致驱动运行错 误,所以需要配置 IPv6。使用其他四款 WiFi 无需配置该项。进入 Network support->Networking options,设置 The IPv6 protocol 为 y。如下图所示。

AP6256 WiFi移植

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

5、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_ap6xxx ap6181、ap6212、ap6212a、ap6214a、ap6225 都配置为 sdio_ap6xxx。 KERNEL编译 Wi-Fi 驱动时所指定的内核路径,在编译 Wi-Fi 驱动时,必须指定内核路径,注意内核一定要已经编译过的。如:KERNEL := /home/work/linux-3.18.y 配置完后就可以进行编译了,在 wifi_project目录下执行 make all,会自动编译驱动和工具,make driver 只编译驱动,make tools 只编译工具。生成的驱动放在 wifi_project/out/kmod 目录下,工具放在 wifi_project/out/tools 目录下,主要包括 iwconfig、iwlist、iwpriv、wpa_cli、wpa_supplicant、hostapd 等,生成的库文 件放在 wifi_project/out/lib 目录下。

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

7、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 芙囹买乐载入工具 将 wifi_project/out/lib 目录下的 libnl-genl.so.2.0.0、libn造婷用痃l.so.2.0.0 拷贝到单板的/lib目录。进入单板/lib 目录,创建这两个文件的软链接:ln –s libnl-genl.so.2.0.0 libnl-genl.so.2ln –s libnl.so.2.0.0 libnl.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 目录下。 Broadcom WiFi 除了使用 wpa_supplicant 和 hostapd 来配置外,还有一种方式是采 用 wl 工具,这种情况下需要将wifi_project/out/tools 目录下的 wl 拷贝到单板的/sbin 目录下。工具拷贝到单板后,需要修改工具的可执行权限,如:chmod a+x wpa_supplicant

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

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

  • 华为手机如何使用王者荣耀vt
  • 萤石S2运动相机如何开启新浪直播?
  • 将电脑硬盘分区克隆到另一个硬盘的分区怎么做
  • Windows 8如何查看磁盘活动的进程
  • 将基础磁盘转换成动态磁盘的方法
  • 热门搜索
    阅读手抄报 汉字手抄报简单又漂亮 名著手抄报 安全教育手抄报内容 关于环保的手抄报 植树节手抄报 劳动手抄报 我的祖国手抄报 民族团结手抄报 英语手抄报简单又漂亮