Linux kernel commit
Ein Bluetooth-Treiber-Patch, in den Kernel gemergt · 2026
Das Bluetooth meines Acer-Laptops funktionierte unter Linux nicht. Beim Start meldete der Kernel «Bluetooth: hci0: Opcode 0x0c03 failed: -110», und die Schnittstelle blieb tot. Beim Nachforschen stellte sich heraus: Der Chip ist ein MediaTek MT7921 in einem Lite-On-Modul, dessen USB-ID (04ca:3807) in der Tabelle des btusb-Treibers fehlte. Der Treiber lud zwar über eine generische Übereinstimmung, aber ohne das Flag BTUSB_MEDIATEK wurde die Firmware nie geladen.
Der Fix besteht aus zwei Zeilen: die ID mit den richtigen Flags in die Tabelle eintragen. Wirklich interessant war der Prozess: den Patch nach Kernel-Regeln vorbereiten (checkpatch, korrekt formatierte Commit-Nachricht), ihn per E-Mail mit git send-email an die linux-bluetooth-Mailingliste schicken und die Review begleiten. Der Patch wurde vom Maintainer Luiz Augusto von Dentz angenommen und in den Mainline-Baum gemergt.
Im Massstab des Kernels ist das ein winziger Beitrag, aber er repariert meine eigene Hardware, und die aller, die denselben Laptop haben. Genau das liebe ich an Open Source: auf ein Problem stossen, es bis zum Grund verstehen und den Fix upstream schicken, statt ihn für sich zu behalten.