0.前言
MediaTek Filogic 330(MT7922)是一款集成了Wi-Fi 6/6E 与蓝牙 5.2 的单芯片,适用于各种消费电子产品和笔记本电脑。
引用自联发科官网
但是由于自古以来发哥的驱动就支楞不起来,果然这次也没让我失望🤔
提到💻电脑后的第一时间我就发现该芯片在 Ubuntu 无法启动蓝牙😑
具体体现在:识别出蓝牙但是诡异的蓝牙抽搐
和内核中的 ERROR (最喜欢的一集)
1.修复前提示
其实并不需要什么复杂的操作,开源社区已经有大佬提交了一个补丁,修复了这个问题。
[PATCH V2] Bluetooth: Add support for MediaTek MT7922 device (https://lkml.org/lkml/2024/3/15/325)
所以你可以直接拉下这个补丁,自己编译一个内核(不过能编译内核不翻车的大佬应该也不会看这篇文章)。
警告: 请不要随意编译 Mainline Kernel。如果您不是高级用户或对内核更新的影响有足够了解,建议您使用发行版提供的稳定内核版本,以避免系统不稳定或出现兼容性问题。
2.获取内核源代码
在终端键入如下命令获取内核源码
sudo apt-get update
sudo apt-get install linux-source
安装完成后,内核源代码会被下载到 /usr/src 目录中。你可以解压它:
cd /usr/src
sudo tar xjf linux-source-*.tar.bz2
解压后,你会得到一个类似 linux-source-<version> 的目录。
3.应用补丁:
进入解压后的源代码目录:
cd linux-source-6.8.0
保存这个页面 https://lkml.org/lkml/diff/2024/3/15/325/1 并且重命名为 bluetooth.patch
随后将补丁应用到解压后的源代码
sudo patch -p1 < /path/to/bluetooth.patch
4.编译和安装内核
安装必要的构建工具和依赖项:
sudo apt-get install build-essential fakeroot dpkg-dev flex bison libssl-dev
更改版本号(可选)
sudo nano Makefile
更改 EXTRAVERSION 和 NAME 字段即可
配置并编译内核:
sudo make oldconfig
sudo make
安装内核模块:
sudo make modules_install
安装内核:
sudo make install
更新 GRUB:
sudo update-grub
重启系统:
sudo reboot
享受你的蓝牙吧~
发表回复