收起左侧

编译安装MediaTek MT7922无线网卡驱动

25
回复
2556
查看
[ 复制链接 ]

2

主题

4

回帖

0

牛值

江湖小虾

2025-3-5 17:31:38 显示全部楼层 阅读模式

编译安装MediaTek MT7922无线网卡驱动

步骤 0: 准备工作

  1. 切换到root用户:
sudo -i
  1. 安装非自由固件,其中包含了MT7922的固件:
apt update
apt install firmware-misc-nonfree

步骤 1: 安装编译工具和必要的库

apt install build-essential libncurses-dev bison flex libssl-dev libelf-dev bc

步骤 2: 下载 Linux 内核源代码

  1. 下载源码:
git clone --depth=1 -b v6.6.38 https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git linux-6.6.38
  1. 下载完成后,进入内核源代码目录:
cd linux-6.6.38

步骤 3: 配置内核编译环境

  1. 执行以下命令配置内核编译环境:
make oldconfig && make prepare
  1. 修改 .config文件:
echo 'CONFI**T7921E=m' >> .config
  1. 配置内核模块编译环境:
make modules_prepare

步骤 4: 编译 mt76目录下的所有驱动模块

make KBUILD_MODPOST_WARN=1 M=drivers/net/wireless/mediatek/mt76/ modules

步骤 5: 手动安装驱动模块

  1. 创建模块目标目录:
mkdir -p /lib/modules/6.6.38-trim/kernel/drivers/net/wireless/mediatek/mt76/mt7921/
  1. 手动复制模块文件:
cp ./drivers/net/wireless/mediatek/mt76/mt7921/*.ko /lib/modules/6.6.38-trim/kernel/drivers/net/wireless/mediatek/mt76/mt7921/
cp ./drivers/net/wireless/mediatek/mt76/*.ko /lib/modules/6.6.38-trim/kernel/drivers/net/wireless/mediatek/mt76/

步骤 6: 更新模块依赖关系

depmod -a 6.6.38-trim

步骤 7: 加载 mt7921e驱动模块

modprobe mt7921e

步骤 8: 验证驱动是否加载成功

lsmod | grep mt7921e
lspci -nn | grep mt7921e

检查 lsmodlspci -v命令的输出,确认 mt7921e模块是否加载,以及无线网卡设备是否使用了该驱动。

步骤 9: 登录fnOS管理页面,在 系统设置-网络设置中配置无线网络

步骤 10: 重启

reboot

重启后,再次验证驱动是否自动加载,并测试无线网络连接是否正常。

收藏
送赞 1
分享

0

主题

4

回帖

0

牛值

江湖小虾

2025-3-7 23:41:27 显示全部楼层
如果mt7921呢,应该修改哪些代码,直接把7922e改成7921能不能直接用
mt7921和mt7922用的是相同的驱动  详情 回复
2025-3-18 09:53

1

主题

10

回帖

0

牛值

江湖小虾

2025-3-13 18:37:19 显示全部楼层
2个问题
1 firmware-misc-nonfree 需要离线包,http://deb.debian.org/debian/poo ... _20210315-3_all.deb
2 又依赖被锁定 通过apt-mark unhold xxx 解锁

0

主题

1

回帖

0

牛值

江湖小虾

2025-3-13 21:14:28 显示全部楼层
本帖最后由 Wanvn 于 2025-3-13 21:21 编辑

跟着大佬的步骤磕磕绊绊算是装上驱动了,说一下自己遇到的问题
1. 依赖可能安装不上,可以通过aptitude去安装依赖
2. 修改.config文件,应该是


3

主题

5

回帖

0

牛值

江湖小虾

2025-3-14 17:50:00 显示全部楼层
大佬, 用同样的安装办法我这边就显示没有路径啊
给个报错信息呢  详情 回复
2025-3-18 09:53

2

主题

4

回帖

0

牛值

江湖小虾

2025-3-18 09:53:10 楼主 显示全部楼层
hignness 发表于 2025-3-14 17:50
大佬, 用同样的安装办法我这边就显示没有路径啊

给个报错信息呢

2

主题

4

回帖

0

牛值

江湖小虾

2025-3-18 09:53:59 楼主 显示全部楼层
惊鸿影 发表于 2025-3-7 23:41
如果mt7921呢,应该修改哪些代码,直接把7922e改成7921能不能直接用

mt7921和mt7922用的是相同的驱动

1

主题

8

回帖

0

牛值

江湖小虾

2025-3-20 16:49:46 显示全部楼层
本帖最后由 tcyy 于 2025-3-20 16:52 编辑

步骤1报错需要执行
apt-get install aptitude
aptitude install libc6=2.36-9+deb12u9
步骤3.config文件修改


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
执行这个也报错!0。8.43 最新系统  详情 回复
2025-4-6 13:45
装了 更新了系统,等于白装  详情 回复
2025-3-21 13:01

1

主题

10

回帖

0

牛值

江湖小虾

2025-3-21 13:01:33 显示全部楼层
tcyy 发表于 2025-3-20 16:49
步骤1报错需要执行
apt-get install aptitude
aptitude install libc6=2.36-9+deb12u9

装了 更新了系统,等于白装
新内核改aptitude install libc6=2.36-9+deb12u10  详情 回复
2025-3-22 15:29

1

主题

8

回帖

0

牛值

江湖小虾

2025-3-22 15:23:59 显示全部楼层
本帖最后由 tcyy 于 2025-3-22 15:27 编辑

新内核更新后使用aptitude install libc6=2.36-9+deb12u10,另外针对今后内核的更新,可以考虑使用DKMS,螃蟹的8852be我刚弄好,MT7922还没弄。

1

主题

8

回帖

0

牛值

江湖小虾

2025-3-22 15:29:04 显示全部楼层
LANMIN 发表于 2025-3-21 13:01
装了 更新了系统,等于白装

新内核改aptitude install libc6=2.36-9+deb12u10

0

主题

2

回帖

0

牛值

江湖小虾

2025-3-22 22:03:32 显示全部楼层
如果mt7961呢,应该修改哪些代码,直接把7921e改成7961能不能直接用?

1

主题

8

回帖

0

牛值

江湖小虾

2025-3-24 21:24:12 显示全部楼层
本帖最后由 tcyy 于 2025-3-24 21:55 编辑

简单更新一下dkms的安装方法
参照楼主的方法先做到步骤三echo .config那一步(有问题的可以爬楼)
1.apt install dkms
2.cd ..
3.cp -r linux-6.6.38 /usr/src
4.cd /usr/src
5.mv linux-6.6.38 mt76-1.0
6.cd mt76-1.0
7.vim dkms.conf  复制下方内容并保存
PACKAGE_NAME="mt76"
PACKAGE_VERSION="1.0"
CLEAN="make clean"
BUILT_MODULE_NAME[0]="mt76"
BUILT_MODULE_LOCATION[0]="drivers/net/wireless/mediatek/mt76/"
DEST_MODULE_LOCATION[0]="/updates/dkms"
BUILT_MODULE_NAME[1]="mt76-usb"
BUILT_MODULE_LOCATION[1]="drivers/net/wireless/mediatek/mt76/"
DEST_MODULE_LOCATION[1]="/updates/dkms"
BUILT_MODULE_NAME[2]="mt76x02-lib"
BUILT_MODULE_LOCATION[2]="drivers/net/wireless/mediatek/mt76/"
DEST_MODULE_LOCATION[2]="/updates/dkms"
BUILT_MODULE_NAME[3]="mt76x02-usb"
BUILT_MODULE_LOCATION[3]="drivers/net/wireless/mediatek/mt76/"
DEST_MODULE_LOCATION[3]="/updates/dkms"
BUILT_MODULE_NAME[4]="mt76-connac-lib"
BUILT_MODULE_LOCATION[4]="drivers/net/wireless/mediatek/mt76/"
DEST_MODULE_LOCATION[4]="/updates/dkms"
BUILT_MODULE_NAME[5]="mt792x-lib"
BUILT_MODULE_LOCATION[5]="drivers/net/wireless/mediatek/mt76/"
DEST_MODULE_LOCATION[5]="/updates/dkms"
BUILT_MODULE_NAME[6]="mt7921-common"
BUILT_MODULE_LOCATION[6]="drivers/net/wireless/mediatek/mt76/mt7921"
DEST_MODULE_LOCATION[6]="/updates/dkms"
BUILT_MODULE_NAME[7]="mt7921e"
BUILT_MODULE_LOCATION[7]="drivers/net/wireless/mediatek/mt76/mt7921"
DEST_MODULE_LOCATION[7]="/updates/dkms"
AUTOINSTALL="yes"
MAKE[0]="make modules_prepare && make KBUILD_MODPOST_WARN=1 M=drivers/net/wireless/mediatek/mt76/ modules"
POST_INSTALL="depmod -a"
8.dkms add -m mt76 -v 1.0
9.dkms build -m mt76 -v 1.0
10.dkms install -m mt76 -v 1.0 --force
11.modprobe mt7921e
12.reboot

2

主题

1

回帖

0

牛值

江湖小虾

2025-3-30 11:13:17 显示全部楼层
cp ./drivers/net/wireless/mediatek/mt76/mt7921/*.ko /lib/modules/6.6.38-trim/kernel/drivers/net/wireless/mediatek/mt76/mt7921/
报错cp: cannot stat './drivers/net/wireless/mediatek/mt76/mt7921/*.ko': No such file or directory
处理了吗,我也是这个问题  详情 回复
2025-4-7 16:43

0

主题

1

回帖

0

牛值

江湖小虾

2025-4-3 09:17:16 显示全部楼层
到第二步进行不下去了,看网站上的版本是6.6.85,修改后可以进行下载,但是报错:

error: RPC failed; curl 56 Recv failure: Connection reset by peer
error: 61 bytes of body are still expected
fatal: expected flush after ref listing

4

主题

4

回帖

0

牛值

江湖小虾

2025-4-6 13:45:42 显示全部楼层
tcyy 发表于 2025-3-20 16:49
步骤1报错需要执行
apt-get install aptitude
aptitude install libc6=2.36-9+deb12u9

执行这个也报错!0.8.43 最新系统
新内核试试改成aptitude install libc6=2.36-9+deb12u10  详情 回复
2025-4-8 09:45

1

主题

3

回帖

0

牛值

江湖小虾

2025-4-7 16:43:52 显示全部楼层
南风_PVgvV 发表于 2025-3-30 11:13
cp ./drivers/net/wireless/mediatek/mt76/mt7921/*.ko /lib/modules/6.6.38-trim/kernel/drivers/net/wire ...

处理了吗,我也是这个问题
前面几楼有回答  详情 回复
2025-4-8 10:17

1

主题

8

回帖

0

牛值

江湖小虾

2025-4-8 09:45:18 显示全部楼层
Jooho 发表于 2025-4-6 13:45
执行这个也报错!0.8.43 最新系统

新内核试试改成aptitude install libc6=2.36-9+deb12u10

1

主题

8

回帖

0

牛值

江湖小虾

2025-4-8 10:17:49 显示全部楼层
A.相 发表于 2025-4-7 16:43
处理了吗,我也是这个问题

前面几楼有回答

0

主题

1

回帖

0

牛值

江湖小虾

2025-4-20 18:32:49 显示全部楼层

upload 附件:mt7921驱动.fnOS.0.8.47.zip

挺费时间的,编译好的上传上来吧。

1、解压"mt7921驱动"下面的文件和目录 到 下面的目录:
/lib/modules/6.6.38-trim/kernel/drivers/net/wireless/mediatek/mt76

2、更新模块依赖关系
depmod -a 6.6.38-trim

3、加载 mt7921e驱动模块
modprobe mt7921e

4、验证驱动是否加载成功
lsmod | grep mt7921e
lspci -nn | grep mt7921e
检查 lsmod和 lspci -v命令的输出,确认 mt7921e模块是否加载,以及无线网卡设备是否使用了该驱动。

5、重启
reboot

照片.png

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
大佬,文件视图没root权限怎么替换啊?  详情 回复
2025-4-25 21:46

11

主题

15

回帖

0

牛值

江湖小虾

2025-4-25 21:46:32 显示全部楼层
PanZhenyu 发表于 2025-4-20 18:32
附件:mt7921驱动.fnOS.0.8.47.zip
挺费时间的,编译好的上传上来吧。
1、解压"mt7921驱动"下面的文件和目 ...

大佬,文件视图没root权限怎么替换啊?

1

主题

853

回帖

390

牛值

共建版主

社区上线纪念勋章社区共建团荣誉勋章飞牛百度网盘玩家

2025-4-27 23:55:51 显示全部楼层
PanZhenyu 发表于 2025-4-20 18:32
附件:mt7921驱动.fnOS.0.8.47.zip
挺费时间的,编译好的上传上来吧。
1、解压"mt7921驱动"下面的文件和目 ...

在操作步之前,还要先执行3条命令:
1.apt update
2.apt install firmware-misc-nonfree
3.apt-get install aptitude
之前头几部就报错,后来执行了之后,到6步报错,错误信息如下:  详情 回复
2025-5-19 14:31

0

主题

2

回帖

0

牛值

江湖小虾

2025-5-19 14:30:42 显示全部楼层
第6步,执行的时候报错如下:root@myMS01:~/linux-6.6.38# depmod -a 6.6.38-trim depmod: WARNING: could not open modules.order at /lib/modules/6.6.38-trim: No such file or directory depmod: WARNING: could not open modules.builtin at /lib/modules/6.6.38-trim: No such file or directory depmod: WARNING: could not open modules.builtin.modinfo at /lib/modules/6.6.38-trim: No such file or directory

0

主题

2

回帖

0

牛值

江湖小虾

2025-5-19 14:31:41 显示全部楼层
扫地僧 发表于 2025-4-27 23:55
在操作步之前,还要先执行3条命令:
1.apt update
2.apt install firmware-misc-nonfree

之前头几部就报错,后来执行了之后,到6步报错,错误信息如下:

0

主题

1

回帖

0

牛值

江湖小虾

2025-5-22 17:00:50 显示全部楼层
这个是不是只支持内核6.6的

0

主题

2

回帖

0

牛值

江湖小虾

2025-5-26 16:41:42 显示全部楼层

内核源码下不来,换版本也clone不了,卡住了怎么弄,请指示

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则