Bluetooth (MT7925) broken in kernel 6.19.12 on ThinkPad T14 Gen 6

System info:

  • Machine: Lenovo ThinkPad T14 Gen 6 (21QJ0063DN)
  • OS: Fedora Kinoite 43
  • Working version: 43.20260414.0 (kernel 6.19.11-200.fc43.x86_64)
  • Broken version: 43.20260416.0 (kernel 6.19.12-200.fc43.x86_64)
  • Bluetooth chip: MediaTek MT7925 (MT7925e PCIe)

Description:
After updating from Fedora Kinoite 43.20260414.0 to 43.20260416.0, Bluetooth stops working completely. The issue is specific to kernel 6.19.12 — rolling back to 6.19.11 restores Bluetooth functionality.

Symptoms:

  • bluetoothctl power on returns: “No default controller available”
  • systemctl status bluetooth shows the service as inactive/dead
  • No HCI device registered in dmesg
  • lsusb shows no Bluetooth device

Hi! I had the same issue on that Lenovo ThinkPad T14 Gen 6 running Fedora Workstation 43 with GNOME, but with a different device ID.

My MediaTek MT7925 shows up as:

  • Vendor ID: 0e8d
  • Device ID: e025

The original script didn’t work for me since it looks for 0489:e111 in HWDB, but the underlying cause was identical — GVFS was claiming the Bluetooth device as a media player, preventing BlueZ from initializing.

Fix that worked for me:

  1. Create a udev rule to prevent GVFS from claiming the device:
sudo bash -c 'cat > /etc/udev/rules.d/99-mediatek-bt.rules << EOF
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="e025", ENV{ID_MTP_DEVICE}="", ENV{ID_MEDIA_PLAYER}="", ENV{ID_GPHOTO2}="", ENV{GVFS_IGNORE}="1", ENV{ID_PDA}=""
EOF'
  1. Reload udev rules:
sudo udevadm control --reload-rules
sudo udevadm trigger
  1. Create a systemd service to restart Bluetooth after GVFS starts:
sudo bash -c 'cat > /etc/systemd/system/bluetooth-mediatek-fix.service << EOF
[Unit]
Description=Fix MediaTek MT7925 Bluetooth after GVFS
After=bluetooth.service gvfs-daemon.service
Wants=bluetooth.service

[Service]
Type=oneshot
ExecStartPre=/bin/sleep 5
ExecStart=/usr/bin/systemctl restart bluetooth

[Install]
WantedBy=multi-user.target
EOF'
  1. Enable and start the service:
sudo systemctl enable bluetooth-mediatek-fix.service
sudo systemctl start bluetooth-mediatek-fix.service

After a reboot, Bluetooth comes up automatically and works perfectly.

Hope this helps anyone else with the 0e8d:e025 variant of the MT7925!