ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Amlogic 盒子刷 Armbian 后无线网卡驱动失效?从内核配置到成功联网的 RTL8822CS 适配操作

Amlogic 盒子刷 Armbian 后无线网卡驱动失效?从内核配置到成功联网的 RTL8822CS 适配操作 Amlogic 盒子刷 Armbian 后无线网卡驱动失效从内核配置到成功联网的 RTL8822CS 适配操作【免费下载链接】amlogic-s9xxx-armbianSupports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.项目地址: https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian一台腾讯极光3Pros905x3-b刷入 amlogic-s9xxx-armbian 项目的 Armbian 固件后ifconfig里只有 eth0看不到wlan0iw dev输出为空——RTL8822CS 无线网卡没被系统识别。按本文流程核对内核配置、编译出含驱动的模块并加载后wlan0恢复可直接用nmcli连上 5GHz 网络。环境清单动手前先对照下表确认你的设备在覆盖范围内项目内容适用芯片s905x3、s905x3-b、s912 等 Amlogic 平台示例设备腾讯极光3Pros905x3-b系统Armbian本项目编译的固件内核版本5.15推荐、5.10、5.4无线芯片RTL8822CS2.4GHz/5GHz 双频前置条件已完成系统刷写、可 SSH 登录、当前设备树已声明 WiFi 硬件两个名词先说清楚内核模块是.ko文件运行时插入内核即可生效不需要重新刷机设备树.dtb是描述硬件接线的清单WiFi 芯片能否被内核看见取决于设备树里有没有写它。RTL8822CS 上电后还需要加载一段厂商固件才能收发信号。主流程确认内核里有没有这个驱动先查当前运行的内核配置。/boot/config-$(uname -r)就是启动时用的内核配置快照# 查看当前内核是否编译了 RTL8822CS 驱动 grep RTL8822CS /boot/config-$(uname -r)输出为CONFIG_RTL8822CSm时表示驱动以模块形式存在可动态加载这一步通过。输出为空或显示# CONFIG_RTL8822CS is not set跳到「编译内核把驱动做进模块」。再看模块文件是否随内核一起装了进来# 按文件名查找驱动模块比记目录更稳 find /lib/modules/$(uname -r) -name rtl8822cs* 技巧如果你手里有本仓库的配置模板可以一次核对所有内核版本。把下面循环跑一遍哪个版本缺配置一目了然for c in compile-kernel/tools/config/config-*; do echo $c grep CONFIG_RTL8822CS $c || echo 未找到 done输出与上面不符比如某个版本没有m时同样进入下一节重新编译。编译内核把驱动做进模块本项目把内核编译做成了一个脚本它会依次检查并安装编译工具链、下载内核源码、套用补丁、按compile-kernel/tools/config/下的配置模板编译内核与全部模块、打包产物。配置文件本地缺失时脚本会自动拉取模板。# 进入仓库的编译目录 cd amlogic-s9xxx-armbian/compile-kernel # 指定 5.15 系列编译脚本自动处理下载与打包 ./tools/script/armbian_compile_kernel.sh -k 5.15需要换版本时把参数改掉例如 5.10 系列用-k 5.10。编译产物落在compile-kernel/output目录。⚠️ 易错点脚本会下载源码并跑完整编译耗时较长且占空间不要在中途 CtrlC 打断中断后重跑即可它会复用已下载的内容。编译完成后用项目的重打包脚本把新内核装入系统然后重启# 回到仓库根目录执行重打包 cd ../ sudo ./rebuild sudo reboot加载驱动并验证 wlan0重启登录后加载模块。modprobe成功时没有任何输出这就是正常的# 加载驱动模块 sudo modprobe rtl8822cs # 确认模块已在内核中 lsmod | grep rtl8822cs期望看到类似rtl8822cs 262144 0的一行。出现Module not found in sysfs之类的报错时跳到「症状索引」。再确认无线接口已经出现iw dev看到phy#0下挂着Interface wlan0、type managed说明网卡已被系统接管。输出里仍然没有wlan0同样去「症状索引」按设备树方向排查。让驱动开机自动加载手动modprobe只在本次开机有效。想每次启动自动加载建一个一次性 systemd 服务# 创建服务文件内容仅一条 modprobe sudo tee /etc/systemd/system/rtl8822cs.service EOF [Unit] DescriptionLoad RTL8822CS WiFi Driver Afternetwork.target [Service] Typeoneshot ExecStart/sbin/modprobe rtl8822cs RemainAfterExityes [Install] WantedBymulti-user.target EOF# 启用并立即生效 sudo systemctl enable rtl8822cs.service sudo systemctl start rtl8822cs.service完整案例腾讯极光3Pro 从编译到 ping 通这台设备s905x3-b使用专用设备树meson-sm1-skyworth-lb2004-a4091.dtb社区在 CONTRIBUTORS.md 中有测试记录千兆有线、无线、蓝牙均正常。同批记录的还有 TX9-Pros912、X96 Max Q2s905x3、H96 Max X3s905x3。以下命令与输出成对给出可直接对照。获取仓库git clone --depth 1 https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian编译 5.15 内核包含 RTL8822CS 模块cd amlogic-s9xxx-armbian/compile-kernel ./tools/script/armbian_compile_kernel.sh -k 5.15重打包系统并重启cd ../ sudo ./rebuild sudo reboot重启后核对内核版本uname -r5.15.100-ophub加载驱动并确认sudo modprobe rtl8822cs lsmod | grep rtl8822csrtl8822cs 262144 0确认无线接口iw devphy#0 Interface wlan0 ifindex 2 wdev 0x1 type managed连接 WiFi把名称和密码换成你的sudo nmcli device wifi connect 你的WiFi名称 password 你的WiFi密码Device wlan0 successfully connected to 你的WiFi名称.验证连通性ping -c 4 www.baidu.comPING www.baidu.com (220.181.38.148) 56(84) bytes of data. 64 bytes from 220.181.38.148: icmp_seq1 ttl50 time18.2 ms 64 bytes from 220.181.38.148: icmp_seq2 ttl50 time17.9 ms能收到回包即完成。连接后拿不到 IP 的看下面症状索引的第一行。症状索引症状可能原因处置动作modprobe报 Module not found in sysfs当前内核未按模板编译模块文件不存在用cat /boot/config-$(uname -r) \| grep RTL8822CS核对配置回「编译内核把驱动做进模块」重编lsmod有模块但iw dev无 wlan0设备树未声明 WiFi 硬件核对启动使用的.dtb是否为设备专用文件如meson-sm1-skyworth-lb2004-a4091.dtb能扫到网络但连接后无 IP固件缺失或 DHCP 未拿到地址检查/lib/firmware下 rtl 相关固件是否齐全重连一次仍不行重启无线路由器连接后频繁断流信道干扰或功率不足更换路由器信道或临时降功率sudo iwconfig wlan0 txpower 20设备树文件根本缺失设备尚未被项目收录参考现有.dtb新建配置并在项目 Issues 提交设备型号与测试结果⚠️ 易错点换内核版本后务必重新modprobe验证一次模块必须与uname -r的版本一一对应旧版本目录下的.ko插不进新内核。资源速查内容位置内核编译脚本compile-kernel/tools/script/armbian_compile_kernel.sh内核配置模板目录compile-kernel/tools/config/编译参数与用法说明compile-kernel/README.cn.md系统重打包入口rebuild内核重编译入口recompile设备测试与设备树记录CONTRIBUTORS.md无线启用与连接文档documents/README.cn.md社区反馈走项目 Issues提问时附上uname -r、iw dev和dmesg里 rtl 相关报错的完整输出方便维护者复现。收尾下一步对照「症状索引」处理你当前的报错仍解决不了时带着uname -r、iw dev和dmesg | grep -i rtl的输出到项目 Issues 提问。【免费下载链接】amlogic-s9xxx-armbianSupports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, rk3588, rk3568, rk3399, rk3328, h6, etc.项目地址: https://gitcode.com/GitHub_Trending/am/amlogic-s9xxx-armbian创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表