Linux 6.1 移植RTL8723du驱动

一、前言

移植此驱动前,需要在内核menuconfig中选择支持usb,wifi等驱动,如果之前使用过别的usb wifi模块那应该就可以按照下面的步骤移植。还需要支持wpa_supplicant工具。这里就不多介绍了,因为之前用过别的款式的usb wifi,下面就直接移植rtl8723du驱动。

二、移植

1.下载RTL8723DU源码

因为使用的是linux6.1的内核,发现网上的很多驱动版本都比较老,编译会报错,因为linux6.1中删除了一些函数的支持,所以需要找到比较新的版本。https://download.csdn.net/download/qq_37868856/92754892可以在此链接下载新版本的。

2.新建linux内核源码的drivers/net/wireless目录下创建rtl8723du文件夹,将下载到的源码解压到该目录下,因为我的这个已经编译过了所以多了一些文件。

3.创建Kconfig文件夹,写入以下内容

cpp 复制代码
config RTL8723DU

tristate "Realtek 8723D USB WiFi"

help

  Help message of RTL8723DU

4.修改drivers/net/wireless目录下的Kconfig文件以及Makefile文件

(1)Kconfig

增加一项如下所示

cpp 复制代码
source "drivers/net/wireless/rtl8723du/Kconfig"

(2)Makefile

增加一项如下所示

cpp 复制代码
obj-$(CONFIG_RTL8723DU) += rtl8723du/

5.编译

以上已经完成所有配置了,就可以在menuconfig中看到rtl8723du的驱动程序了,如下所示

将其选择为模块就可以了make编译了,会在rtl8723du文件夹下生成8723du.ko文件,放到板子上就可以加载运行了。

6.使用

wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf -d

udhcpc -i wlan0

7.测试速度,使用iperf3,速度大概就是40Mbits左右

相关推荐
阳光九叶草LXGZXJ9 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
奔跑的大白啊9 小时前
多容器共享目录权限踩坑记
linux·ubuntu·共享目录·linux权限·docker 容器化部署
Android系统攻城狮13 小时前
Linux Gstreamer深度解析之gst_audio_encoder_set_frame_max调用流程与实战(六十一)
android·linux·运维·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
H.莓飛13 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
91刘仁德13 小时前
IP协议详解:从IP协议头到网段划分、路由与NAT
linux·服务器·网络·网络协议·tcp/ip
硅基手札14 小时前
【Linux内核专栏 14】网络协议栈
linux·运维·网络协议
沫璃染墨16 小时前
《Linux工程实践篇(一):认识设计模式——从日志系统看策略模式》
linux·c++·安全·设计模式·策略模式
工作10年+,存储芯片行业16 小时前
Linux NVMe 中断排查与性能优化:CPU 亲和性
linux·运维·服务器·windows·性能优化·ssd·pcie
wuminyu16 小时前
ForkJoinPool内部WorkQueue的Lock-Free数组操作以及并发任务窃取原理剖析
java·linux·c语言·jvm·c++
她说彩礼65万17 小时前
C语言 堆区和栈区
java·linux·c语言