给Buildroot(全志D1)移植RTL8723DS驱动
-
(同步自我自己的公众号,需要看原文的请点击该传送门)
近期在捣鼓韦东山大佬的Buildroot,在配置Buildroot的时候发现没有RTL8723DS驱动,怎么办呢?于是我分析了下Buildroot的文件结构,发现package下面有软件包选项相关的配置文件:
前提条件:已经下载好韦东山大佬弄的的Buildroot(见下图),如果没有,请自行git clone
git clone https://gitee.com/weidongshan/neza-d1-buildroot/
首先我们找一个非firmware的网卡驱动包,复制下来(我复制的是rtl8189fs),然后重命名为rtl8723ds。
进入该文件夹,然后文件名上rtl8189fs的全部替换成rtl8723ds,然后把不相关的文件删除,如图所示:
接下来就是修改配置文件,先把Config.in修改成以下内容(help内容请根据情况填写):
config BR2_PACKAGE_RTL8723DS bool "rtl8723ds" depends on BR2_LINUX_KERNEL help Wireless driver rtl8723ds. https://gitee.com/chrithon_official/rtl8723ds-linux comment "rtl8723ds needs a Linux kernel to be built" depends on !BR2_LINUX_KERNEL
然后把rtl8723ds.mk修改成以下内容(如果使用的是Github上的rtl8723ds驱动包,请把Gitee的链接替换成该文件的下载链接):
################################################################################ # # rtl8723ds # ################################################################################ RTL8723DS_SITE = "https://gitee.com/chrithon_official/rtl8723ds-linux/attach_files/957021/download/rtl8723ds.tar.gz" RTL8723DS_LICENSE = GPL-2.0 RTL8189FS_MODULE_MAKE_OPTS = \ CONFIG_RTL8723DS=m \ KVER=$(LINUX_VERSION_PROBED) \ KSRC=$(LINUX_DIR) $(eval $(kernel-module)) $(eval $(generic-package))
请注意:我修改的rtl8723ds驱动包已经上传到Gitee上,如果你使用的是Github上的版本,需按照要求(传送门)修改“os_intfs.c”和“rtw_cfgvendor.c”。
然后返回上一级,打开Config.in并翻到Hardware handling那一行,然后在这下面找到如下内容:
source "package/rtl8723bu/Config.in"
添加如下内容:
source "package/rtl8723ds/Config.in"
保存,运行以下命令:
make neza-d1_defconfig make make menuconfig
找到Hardware handling那一栏,然后勾上rtl8723ds:
(至于其他包的话,可根据需要自行选择,我这里就勾选了网络相关的软件包)
保存退出,执行:
make all
等固件被编译出来后就可以把该固件烧录到SD卡或者板载存储器里(在此教程中,我就直接用编译好的固件来演示)。
然后使用nmtui配置无线网络连接(或者你用wpa_supplicant也行)并执行以下命令即可:
udhcpc -i wlan0
然后就成功了!
-
此回复已被删除! -
@chrithon 为什么rtl8189fs要改成rtl8723ds ??
-
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号