1.在迅为i.MX6ULL开发板上使用的是 usb 接口的 RTL8723 wifi 模块,原理图如下所示:
可以看到 RTL8723 模块的接口非常简单,只有 DP1 和 DM1 连接到 usb HUB 芯片上,就可以完成通信电路。
RTL8723 是 realtek 公司的 wifi 芯片,已经提供了 wifi 驱动源码,就不需要我们自己去编写了,只需要将提
供的 wifi 驱动源码添加到 Linux 内核中进行编译就可以了。
1.1在Linux内核中添加wifi驱动
首先获取 wifi 驱动源码,放到 Linux 内核 drivers/net/wireless 目录下,如下所示:
rtl8723BU 目录下内容如下所示:
其中 Kconfig 文件是 rtl8723 驱动的配置文件,这样可以通过 Linux 内核图形化配置界面来选择是否编译
WIFI 驱动,Kconfig 文件内容如下所示:
config RTL8723BU
tristate "Realtek 8723B USB WiFi"
depends on USB
---help---
Help message of RTL8723BU
当添加完 rtl8723 wifi 驱动时,需要修改上一级的 Kconfig 和 Makefile。
修改 drivers/net/wireless/Kconfig,添加如下内容:
source "drivers/net/wireless/rtl8723BU/Kconfig"
添加完成后如下所示:
添加完成后,在 Linux 内核的驱动配置界面上才会出现 rtl8723 的配置选项。
修改 drivers/net/wireless/Makefile 文件,添加如下内容:
obj-$(CONFIG_RTL8723BU) += rtl8723BU/
修改后如下所示:
1.2 配置 Linux 内核
添加好 rtl8723 wifi 驱动并修改完配置文件后,需要在 Linux 内核中在进行配置。
1、配置支持 USB 设备
Linux 内核配置路径如下:
Device Drivers --->USB support --->
<*> EHCI HCD (USB 2.0) support
<*> ChipIdea Highspeed Dual Role ControllerChipIdea device controllerChipIdea host controller
配置完成如下图所示:
2、配置支持 wifi 设备
Linux 内核配置路径如下:
Device Drivers --->Network device support --->Wireless LAN --->
<*> IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)Support downloading firmware images with Host AP driverSupport for non-volatile firmware download
配置完成如下图所示: