收起左侧

通过编译Linux内核(kernel)的形式为mt79225无线网卡所需的驱动程序支持

7
回复
2756
查看
[ 复制链接 ]

3

主题

4

回帖

0

牛值

fnOS系统内测组

2024-10-21 10:42:43 显示全部楼层 阅读模式

通过编译Linux内核(kernel)的形式为mt79225无线网卡所需的驱动程序支持

本教程适合

  • 为希望给自己的硬件增加M.2-2230(KEY A至E)或其他接口规格的wifi无线网卡的用户
  • 自行安装了其他硬件,并需要安装相关驱动程序的用户
  • 自行安装了比较新的硬件(如新出的无线网卡、硬盘托架、光驱等),社区中暂时没有已经编译好的.deb包用于驱动安装的用户
  • 需要一个思路,用于指导自己在遇到类似问题时进行解决方案检索的用户

步骤1.根据硬件说明安装好物理硬件

本人昨天购买了 天钡wtr pro 这款nas准系统,并在系统中刷了飞牛os系统,准备将这款机器带到公司用,蹭一蹭公司的网络带宽和电费,但是本人的工位上已经没有多余的网口,只能通过wifi连接互联网,遂产生了在这款硬件上安装无线网卡的需求,这里本人采购了目前仅有的一款同时满足支持amd cpu、wifi7协议且可以在linux系统(飞牛os是基于debian的)中使用的无线网卡--mt7925,物理接口为M.2-2230 KEY E

  • mt7925外观

mt7925外观

  • 天钡wtr pro外观,这款nas主机采用一横一竖的双风扇散热,分别吹硬盘架和cpu主板,稳稳地**住了amd 5825u的发热,兼具性能、静音甚至节能(最低待机功耗仅有8w),很适合作为all in one的机器

天钡wtr pro外观

  • 天钡wtr pro的主板上提供的用于插入无线网卡的专用M.2接口,把mt7925插这里就好

无线网卡的M.2接口

步骤2.查询哪个版本的Linux内核支持mt7925 KEY E无线网卡

根据Linux内核的关于mt7925的源码编译配置指南https://www.kernelconfig.io/confi**t7925e的说明 (注意区分7925u和7925e),6.12-rc3这个内核是最新且内置了mt7925的驱动的,原则上我们尽量选新一点的内核,因为功能更多 (如6.12之前的版本不支持使用mt7925的蓝牙),也修复了之前的一些问题

mt7925e_config.png

我们需要在编译linux内核时,提前在编译配置文件增加一行配置,在编译内核时才会顺带把这个驱动也编译出来:

CONFI**T7925E=m

步骤3.下载指定Linux kernel的源码并进行编译安装

linux_source.png

  • 通过winscp等工具传输至你机器的任意目录,解压源码包并进入源码目录
tar -zxvf linux-6.12-rc3.tar.gz && cd linux-6.12-rc3
  • 将源内核的配置文件复制到源码目录中,使用原内核的配置文件可以保证新内核也拥有原内核中所需的组件:
cp /boot/config-$(uname -r) .config
  • 在.config文件中增加一行
CONFI**T7925E=m
  • 安装编译所需的工具:
sudo aptitude install build-essential libncurses-dev bison flex libssl-dev libelf-dev bc
  • 进行编译,最后的数字14是编译时开启的线程数,越多越快,根据你cpu的线程数来就好,一般为物理cpu线程数减2,编译一般进行数个小时
make -j14
  • 完成编译后安装模块
sudo make modules_install -j6
  • 为该内核生成内核预加载块设备模块
sudo mkinitramfs /lib/modules/6.12.0-rc3/ -o /boot/initrd.img-6.12.0-rc3
sudo cp arch/x86/boot/bzImage /boot/vmlinuz-6.12.0-rc3
sudo cp System.map /boot/System.map-6.12.0-rc3
  • 更新引导:更新引导加载程序以识别新安装的内核。执行以下命令:
sudo update-grub2
sudo mkdir /lib/firmware/mediatek/mt7925
sudo cp WIFI_MT7925_PATCH_MCU_1_1_hdr.bin /lib/firmware/mediatek/mt7925
sudo cp WIFI_RAM_CODE_MT7925_1_1.bin /lib/firmware/mediatek/mt7925
sudo cp BT_RAM_CODE_MT7925_1_1_hdr.bin /lib/firmware/mediatek/mt7925
  • 完成所有步骤后重启:
sudo reboot
  • 重启后查看飞牛os的界面,可以看到多了一个网卡: wireless
  • 至此,内核成功升级且驱动安装成功,安装无线网络管理工具network-manager后,即可使用命令行列出附近的wifi
zhongtong@johnwrtpro:~$ nmcli device wifi list
IN-USE  BSSID              SSID          MODE   CHAN  RATE        SIGNAL  BARS  SECURITY 
*       A4:A9:30:84:F4:F0  脏猫猫在线5g  Infra  48    540 Mbit/s  72      ▂▄▆_  WPA2
  • 进行连接,SSID替换成你的wifi的SSID或BSSID
nmcli device wifi connect SSID password <password>

连接wifi网络;目前飞牛os还不支持在界面上配置wifi,但是通过nmcli命令成功连接WiFi后,是可以在界面上看到的: feiniu_net

收藏
送赞 2
分享

本帖子中包含更多资源

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

x

8

主题

122

回帖

60

牛值

fnOS系统内测组

社区上线纪念勋章社区共建团荣誉勋章

2024-10-21 13:37:28 显示全部楼层
支持,非常感谢

0

主题

5

回帖

0

牛值

江湖小虾

2024-12-5 15:55:00 显示全部楼层
在京东上看到有的USB无线网卡也支持linux系统,是不是插上就能直接用了?
需要飞牛目前的linux内核,也就是kernel 6.6.13里内置你这款网卡的驱动才行,目前原生支持(插上就能用)的有最新款网卡有AX210这种wifi6E的网卡,旧一点像AX200或者一些wifi5的网卡也支持的;wifi 7的目前不支持  详情 回复
2024-12-6 23:14

3

主题

4

回帖

0

牛值

fnOS系统内测组

2024-12-6 23:14:40 楼主 显示全部楼层
需要飞牛目前的linux内核,也就是kernel 6.6.13里内置你这款网卡的驱动才行,目前原生支持(插上就能用)的有最新款网卡有AX210这种wifi6E的网卡,旧一点像AX200或者一些wifi5的网卡也支持的;wifi 7的目前不支持

0

主题

10

回帖

0

牛值

江湖小虾

2025-1-3 16:20:24 显示全部楼层
大佬,N150这种核显用你这种方法可以吗

0

主题

2

回帖

0

牛值

江湖小虾

2025-1-8 22:40:20 显示全部楼层
你好替换内核有什么影响吗,还能支持系统更新吗

1

主题

4

回帖

0

牛值

江湖小虾

2025-2-22 21:42:02 显示全部楼层
哎,和你一样的5825U 极魔刻小主机。。无线网卡7922 也是连不上。。算了用有线   实在不会

0

主题

5

回帖

0

牛值

江湖小虾

2025-5-24 11:20:53 显示全部楼层

哈哈哈,飞牛有修改内核代码,搞了个虚拟文件系统trimafs来汇聚不同的存储空间,直接这样用上游代码,肯定有bug的,trim_file_monit,mounts_monitor等监控服务。

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

本版积分规则