Linux 6.6.52-loong64 #1 SMP Loongnix 6.6.52-1.11 (2026-07-23) loongarch64 GNU/Linux

ai编译的deb包,本地电脑试了,装完能使用wifi了,分析一下

https://wp.6589jk.cn/s/J8PuW 下载链接,我设置了500次下载之后失效,如果失效了留个言我再续一下,防止我的流量直接爆炸….

SCM2625 Wi-Fi 驱动安装记录

1. 操作概览

本次通过 SSH 连接到目标电脑,为其安装 Senscomm SCM2625 PCIe Wi-Fi 网卡驱动。

项目结果
SSH 主机已隐去
操作系统Loongnix GNU/Linux 25
架构loongarch64
内核6.6.52-loong64
无线网卡Senscomm SCM2625 Wi-Fi6 Network Adapter
PCI ID1eb9:2020
驱动包scm2625-pcie-dkms 2.1.2-V17
最终无线接口wlp2s0

2. 初始检查

首先检查系统信息、PCI 设备、USB 设备和网络接口:

ssh <用户名>@<目标地址> \
  "uname -a; lspci -nn; lsusb; ip -br link"

检查结果显示:

  • 系统为 Loongnix 25,运行在 LoongArch 架构上。
  • PCI 总线上检测到 Senscomm Semiconductor SCM2625
  • 系统当时只有有线网卡,没有可用的 Wi-Fi 网络接口。
  • 已加载的 mwifiex 模块并不匹配 SCM2625 设备。

随后查看驱动、固件和内核日志:

lspci -k -s 02:00.0
lsmod
find /lib/firmware -iname '*scm*' -o -iname '*senscomm*'
dmesg | grep -iE 'scm2625|senscomm|firmware|wifi|wlan'

确认系统中已有 Senscomm 固件文件:

/lib/firmware/senscomm/wise-pcie.bin
/lib/firmware/senscomm/scm2020.bin

3. 查找并安装发行版驱动包

通过 Loongnix 软件仓库查询匹配的驱动包:

apt-cache search -n 'senscomm|scm2625|wifi.*firmware|firmware.*wifi'

查询结果包含:

scm2625-pcie-dkms - scm2625-pcie driver in DKMS format

然后更新软件包索引并安装驱动:

sudo apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y scm2625-pcie-dkms

初次安装时,DKMS 编译失败。失败原因不是缺少固件,而是驱动源码与当前 6.6 内核的 mac80211 API 条件判断不兼容:

error: initialization of ‘void (*)(struct ieee80211_hw *,
struct ieee80211_vif *)’ from incompatible pointer type
‘void (*)(struct ieee80211_hw *, struct ieee80211_vif *, unsigned int)’

4. 修复内核 API 兼容性

检查驱动源码后发现,源码根据 MAC80211_BASE 判断
mgd_protect_tdls_discover 回调的参数形式,但当前内核头文件使用的是不带
link_id 参数的形式,而驱动源码错误地选择了带该参数的实现。

涉及源码目录:

/usr/src/scm2625-pcie-2.1.2-V17/

修复内容仅限于回调函数的兼容性条件,使当前内核使用无 link_id 参数的实现:

  • chan.c:选择无 link_id 参数的 scm80211_mgd_tdls_discover
  • core.h:同步更新函数声明条件

之后删除旧的 DKMS 构建结果并重新安装模块:

sudo dkms remove -m scm2625-pcie -v 2.1.2-V17 --all
sudo dkms install -m scm2625-pcie -v 2.1.2-V17 -k "$(uname -r)"
sudo depmod -a
sudo modprobe scm2625-pcie

重新编译成功,生成并安装了:

/lib/modules/6.6.52-loong64/updates/scm2625-pcie.ko
/lib/modules/6.6.52-loong64/updates/scm-btusb.ko

5. 验证驱动加载

检查 DKMS 状态和内核模块:

sudo dkms status
lsmod | grep -E 'scm|cfg80211'

结果显示:

scm2625-pcie/2.1.2-V17, 6.6.52-loong64, loongarch64: installed
scm2625_pcie
scm_btusb
mac80211
cfg80211

查看 NetworkManager 设备:

nmcli device status

已识别到:

wlp2s0  wifi  已断开
p2p-dev-wlp2s0  wifi-p2p  已断开

查看内核日志可以确认固件下载和设备初始化成功:

downloading wise senscomm/wise-pcie.bin
wise boot success!
successfully attached RF scm2020.0
wlp2s0: renamed from wlan0

6. Wi-Fi 扫描验证

使用 NetworkManager 扫描附近无线网络:

nmcli device wifi rescan ifname wlp2s0
nmcli device wifi list ifname wlp2s0

扫描成功,发现了多个无线网络,例如:

misaka20001
misaka20001_5G
misaka20001_IoT
Office1_2.4GHz

这证明驱动、固件、无线射频和 NetworkManager 均已正常工作。

7. 最终状态

驱动安装已完成,当前状态如下:

  • DKMS 驱动已成功编译并安装。
  • 驱动模块已加载到当前内核。
  • 固件 wise-pcie.bin 已成功下载到网卡。
  • 无线接口 wlp2s0 已出现。
  • Wi-Fi 扫描功能正常。
  • 当前尚未连接到具体的 Wi-Fi 网络。

连接 Wi-Fi 的示例命令(请在本机替换网络名称和密码):

nmcli device wifi connect "WiFi名称" password "WiFi密码" ifname wlp2s0

连接后可使用以下命令确认状态:

nmcli device status
ip -br address show wlp2s0
ping -c 4 192.168.31.1

8. 注意事项

  1. 本次修复针对 Loongnix 25 的 6.6.52-loong64 内核和
    scm2625-pcie-dkms 2.1.2-V17 驱动包。
  2. 如果内核升级,DKMS 会尝试自动重新编译;若再次遇到同一个回调类型错误,
    需要确认驱动包是否保留了上述兼容性修复。
  3. 本次操作没有记录或写入任何 Wi-Fi 密码。
  4. apt-get update 期间出现了软件源组件拼写警告
    non-free-firemware,但不影响本次驱动安装和使用。

9. 分享用 DEB 安装包

已另行生成分享用安装包:

scm2625-pcie-dkms-fixed_2.1.2-1_loong64.deb

该文件已复制到本地工作目录,可直接分享:

../scm2625-pcie-dkms-fixed_2.1.2-1_loong64.deb

安装包包含:

  • SCM2625 PCIe DKMS 驱动源码
  • wise-pcie.binscm2020.bin 固件
  • 针对 6.6 系列内核 mac80211 回调兼容性的修复
  • DKMS 自动编译、安装和模块加载脚本

安装示例:

sudo apt install ./scm2625-pcie-dkms-fixed_2.1.2-1_loong64.deb

安装完成后检查:

dkms status
nmcli device status

注意:该包面向 Loongnix/Debian 系列的 loong64/loongarch64 系统,
并要求目标机器安装了与当前运行内核匹配的内核头文件、DKMS 和编译工具。
该 DEB 是针对 loong64 架构构建的,不能直接安装在 amd64arm64
等其他架构上。

分类: 未分类

0 条评论

发表回复

Avatar placeholder