Zum Inhalt springen
things/linux-btusb
# Linux kernel commit (2026)
Ein Bluetooth-Treiber-Patch, in den Linux-Kernel aufgenommen
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.
Die Korrektur umfasst zwei Zeilen: die ID mit den richtigen Flags in die Tabelle eintragen. Das Spannendste war der Prozess: den Patch nach den Regeln des Kernels vorbereiten (checkpatch, korrekt formatierte Commit-Nachricht), ihn mit git send-email per E-Mail an die Mailingliste linux-bluetooth schicken und das Review begleiten. Der Patch wurde von Maintainer Luiz Augusto von Dentz akzeptiert und in den Hauptzweig aufgenommen.
Im Massstab des Kernels ist das ein winziger Beitrag, aber er repariert meine eigene Hardware und die aller, die denselben Laptop haben. Ein Problem bis zum Ende verstehen und die Korrektur upstream zurückgeben, statt sie für sich zu behalten: Genau diese Art von Beitrag gefällt mir an Open Source.