回答

收藏

飞凌嵌入式ElfBoard ELF1板卡-开发板适配之wifi

其他 其他 640 人阅读 | 0 人回复 | 2025-02-28

硬件原理
上一节中提到,USB_OTG2作为host通过usb hub扩展出4路usb,其中两路连接到2个Type-A插座,另外两路分别连接板载wifi模块RTL8723DU和扩展板的4G模块。

添加驱动
本节介绍如何将wifi模块RTL8723DU驱动添加进入内核,RTL8723DU还具备蓝牙功能,在下节介绍。
RTL8723DU驱动在ELF 1开发板资料包\02-Linux 源代码\ 02-1 驱动源码\08_realtek\wifi\realtek.tar.bz2中,此文件夹中有rtl8188EUS、rt8189ES、rtl8723BU、rtl8723DU四款wifi模块的驱动,我们一并都添加进内核源码中。
一、将realtek.tar.bz2压缩文件放入到内核源码drivers/net/wireless/下,并在此目录下解压缩:
elf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga/drivers/net/wireless$ tar -xvf realtek.ta\r.bz2
二、打开realtek文件夹,我们可以看到这几个wifi模块的驱动,以及Kconfig和Makefile文件。
elf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga/drivers/net/wireless/realtek$ ls

在drivers/net/wireless/Makefile中增加对realtek中文件的编译:
obj-y     += realtek/

在drivers/net/wireless/Kconfig中增加对realtek下Kconfig的引用:
source “drivers/net/wireless/realtek/Kconfig”

三、配置内核
添加完成驱动文件之后,我们打开make menuconfig图形配置界面,配置以下内容:
Device Drivers
-> USB support


在以下路径添加80211编译进内核:
Networking support
-> Wireless

在以下路径打开下图选项:
Device Drivers
-> Network device support
-> Wireless LAN

最后进入以下路径,将rtL8723du编译成为ko模块:
Device Drivers
-> Network device support
->Wireless LAN
->Realtek wifi

四、替换配置文件
通过make menuconfig修改的内容写入到了.config文件,当使用make imx6ull_elf1_defconfig配置内核源码时,.config文件会被覆盖,因此,需要替换原有的imx6ull_elf1_defconfig。
elf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga$ cp .config arch/arm/configs/imx6ul\l_elf1_defconfig

编译测试
编译内核、设备树和模块并拷贝到开发板:
elf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga$ ./build.sh
elf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga$ scp arch/arm/boot/zImage   root\@172.16.0.175:/run/media/mmcblk1p1/
elf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga$ scp arch/arm/boot/dts/imx6ull-elf\1-emmc.dtb root@172.16.0.175:/run/media/mmcblk1p1/
elf@ubuntu:~/work/linux-imx-imx_4.1.15_2.0.0_ga$ scp .tmp/rootfs/modules.tar.bz2 r\oot@172.16.0.175:~/
在开发板上解压打包好的模块到根目录:
root@ELF1:~# tar -xvf modules.tar.bz2 -C /

进行sync操作后重启开发板:

重启后lsmod查看模块,我们可以发现8723du的模块已经正常加载了。
root@ELF1:~# lsmod

使用WiFi上网脚本测试:
root@ELF1:~# elf1_cmd_wifi.sh -i 8723 -s ELFBOARD -p elfboard
参数-s之后的参数是无线wifi的ssd,-p之后的参数是wifi密码,请根据实际的wifi环境进行配置。

使用ifconfig命令查看当前生成的wlan0网卡信息:

然后我们测试wlan0连接因特网的情况,ping www.elfboard.com
root@ELF1:~# ping www.elfboard.com -c 4
打印信息如下:


分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条