新闻详情

新闻详情

首页 / 资讯中心 / 详情

Linux驱动-网络设备-移植 RTL8723DU(wifi)驱动

发布时间:2026/11/4 21:23:48来源:尧图网络
Linux驱动-网络设备-移植 RTL8723DU(wifi)驱动
提示Linux驱动-网络设备-移植 RTL8723DU(wifi)驱动文章目录前言一、参考资料二、编译WIFI驱动WIFI驱动包三、配置wifi驱动修改 Makefile 文件make 命令进行编译编译指令makeARCHarm64CROSS_COMPILE/home/topeet/rk356x_linux/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu--C /home/topeet/rk356x_linux/kernelM/home/topeet/rk356x_linux/kernel/drivers/net/wireless/rtl8723DU_WiFi_linux_v5.13.4.2-4modules四、验证移植驱动是否成功-检查网卡总结前言Linux驱动-网络设备-移植 RTL8723DU(wifi)驱动这里举例如何移植WIFI驱动。 思路对于绝大多数 WIFI驱动和RJ485 网线驱动一样要么原厂BSP工程师 已经写好了、要么第三方公司WIFI芯片芯片公司已经写好了你只需要移植到系统里面去就可以了。对于硬件连接这个偏向于硬件工程师的工作就是芯片如何焊接到主板上偏向于硬件工程师的工作需要了解下那么如何移植基本操作要会不管哪一款WIFI芯片移植工作大同小异。一、参考资料从零到一在RK3588 Android12上实战RTL8723DU WiFi蓝牙双模驱动移植linux 移植rtl8723du蓝牙驱动二、编译WIFI驱动WIFI驱动包如如下这样wifi 芯片供应商会提供类似的驱动包将 wifi 厂家提供的驱动资料包拷贝到 Linux 源码的 kernel/drivers/net/wireless 目录下 然后解压缩三、配置wifi驱动修改 Makefile 文件CONFIG_MULTIDRVnCONFIG_RTL8188EnCONFIG_RTL8812AnCONFIG_RTL8821AnCONFIG_RTL8192EnCONFIG_RTL8723BnCONFIG_RTL8814AnCONFIG_RTL8723CnCONFIG_RTL8188FnCONFIG_RTL8188GTVnCONFIG_RTL8822BnCONFIG_RTL8723Dy//因为适配的模块是 RTL8723du 所以此选项为 yCONFIG_RTL8821CnCONFIG_RTL8710BnCONFIG_RTL8192FnCONFIG_RTL8822CnCONFIG_RTL8814BnCONFIG_RTL8723Fn #########################Interface###########################CONFIG_USB_HCIy//模块为 usb 接口 设置为 yCONFIG_PCI_HCInCONFIG_SDIO_HCInCONFIG_GSPI_HCInCONFIG_PLATFORM_I386_PCn//此选项修改为 nCONFIG_PLATFORM_ANDROID_X86nCONFIG_PLATFORM_ANDROID_INTEL_X86nCONFIG_PLATFORM_JB_X86nCONFIG_PLATFORM_ARM_S3C2K4nCONFIG_PLATFORM_ARM_PXA2XXnCONFIG_PLATFORM_ARM_S3C6K4nCONFIG_PLATFORM_MIPS_RMInCONFIG_PLATFORM_RTD2880BnCONFIG_PLATFORM_MIPS_AR9132nCONFIG_PLATFORM_RTK_DMPnCONFIG_PLATFORM_MIPS_PLMnCONFIG_PLATFORM_MSTAR389nCONFIG_PLATFORM_MT53XXnCONFIG_PLATFORM_ARM_MX58_241HnCONFIG_PLATFORM_FS_MX61nCONFIG_PLATFORM_ACTIONS_ATJ227XnCONFIG_PLATFORM_TEGRA3_CARDHUnCONFIG_PLATFORM_TEGRA4_DALMOREnCONFIG_PLATFORM_ARM_TCC8900nCONFIG_PLATFORM_ARM_TCC8920nCONFIG_PLATFORM_ARM_TCC8920_JB42nCONFIG_PLATFORM_ARM_TCC8930_JB42nCONFIG_PLATFORM_ARM_RK2818nCONFIG_PLATFORM_ARM_RK3066nCONFIG_PLATFORM_ARM_RK3568y//新增此选项设置为 y//将下面的 3188 改成 3568CONFIG_PLATFORM_ARM_RK3188nifeq($(CONFIG_PLATFORM_ARM_RK3568),y)EXTRA_CFLAGS-DCONFIG_LITTLE_ENDIAN-DCONFIG_PLATFORM_ANDROID-DCONFIG_PLATFORM_ROCKCHIPS#defaultsettingforAndroid4.1,4.2,4.3,4.4EXTRA_CFLAGS-DCONFIG_IOCTL_CFG80211-DRTW_USE_CFG80211_STA_EVENTEXTRA_CFLAGS-DCONFIG_CONCURRENT_MODE#defaultsettingforPowercontrol #EXTRA_CFLAGS-DRTW_ENABLE_WIFI_CONTROL_FUNCifeq($(CONFIG_SDIO_HCI),y)EXTRA_CFLAGS-DRTW_SUPPORT_PLATFORM_SHUTDOWNendif #defaultsettingforSpecialfunctionARCH:arm64//修改为 arm64CROSS_COMPILE:/home/topeet/rk356x_linux/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linuxgnu/bin/aarch64-linux-gnuKSRC:/home/topeet/rk356x_linux/kernelMODULE_NAME:wlan//模块名称endifmake 命令进行编译编译指令makeARCHarm64 \CROSS_COMPILE/home/topeet/rk356x_linux/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-\-C/home/topeet/rk356x_linux/kernel \M/home/topeet/rk356x_linux/kernel/drivers/net/wireless/rtl8723DU_WiFi_linux_v5.13.4.2-4\ modulesmake调用编译构建工具。ARCHarm64作用指定目标 CPU 架构为 ARM64。为什么需要因为您的 Ubuntu 是 x86_64而 RK356x 开发板是 ARM64编译驱动必须告诉系统目标架构才能加载正确的内核头文件和编译规则。CROSS_COMPILE/home/topeet/rk356x_linux/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-作用指定交叉编译工具链的前缀。为什么需要编译 ARM64 代码不能用 Ubuntu 自带的 gcc那是给 x86 用的必须用专门的交叉编译器。这个路径指向了工具链的 bin 目录前缀是 aarch64-linux-gnu-Makefile 会自动拼接成 aarch64-linux-gnu-gcc、aarch64-linux-gnu-ld 等。-C /home/topeet/rk356x_linux/kernel作用告诉 make 先切换到 /home/topeet/rk356x_linux/kernel 这个目录。为什么需要驱动编译需要依赖内核的顶层 Makefile、.config 配置和头文件所以必须进入内核源码目录去读取这些信息。M/home/topeet/rk356x_linux/kernel/drivers/net/wireless/rtl8723DU_WiFi_linux_v5.13.4.2-4作用指定外部模块驱动源码的路径。为什么需要M 是 Linux 内核编译外部模块的标准写法告诉内核构建系统“我要编译的驱动代码不在内核源码树里而是在 M 指向的这个目录下”。modules作用指定编译目标为 内核模块。结果编译完成后会在驱动目录下生成 .ko 文件例如 8723du.ko这就是可以 insmod 加载到开发板内核里的驱动模块。编译完成之后生成 wlan.ko 驱动模块四、验证移植驱动是否成功-检查网卡将编译好的 wlan.ko 拷贝到开发板上 加载 wlan.ko加载完成之后 生成 wlan 的 wifi 网卡至此 移植 RTL8723DUwifi 驱动 实验完成总结这里讲解了 移植WIFI驱动 基础必备知识遇到实际问题可以参考细节也蛮多的但是基础知识务必掌握实际工作中如何编译到内核可以查阅资料这里知识编译成.ko文件 然后验证移植是否成功而已。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/4 15:56:54

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/3 12:09:35

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/4 17:01:23

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/4 12:33:12

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/4 1:25:31

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/4 3:51:11

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉