TP-Link AC600のLinux向けデバイスドライバ

自宅のマシンをUbuntu 22.04にアップデートしたのだけど、毎回WiFiアダプタのデバイスドライバが標準搭載されていないのを忘れて右往左往している。そして毎回、あちこちから拾ってきたデバイスドライバコンパイルバトルになるので、今回やったメモを残しておく(やっと、メモを残し始めたところ)。

TP Link AC600の中身

lsusb すると下記のような情報が出てくる。つまりRealtekのRTL8811AUというPHYが載っているということだ。

ID 2357:011e TP-Link AC600 wireless Realtek RTL8811AU [Archer T2U Nano]

デバイスドライバその1(今回使ったもの)

GitHub - aircrack-ng/rtl8812au: RTL8812AU/21AU and RTL8814AU driver with monitor mode and frame injection

今回、色々探してみたあげく、良さそうかなと思ったドライバの一つ。

READMEには色々ゴチャゴチャ書いてあるが、結局の所、MakefileでRTL8821Aのコンフィギュレーションを設定してDKMSでインストールするだけだ。

########################## WIFI IC ############################
CONFIG_RTL8812A = n
CONFIG_RTL8821A = y
CONFIG_RTL8814A = n
sudo make dkms_install

ただ、このままだと、DKMSのインストールの処理でコケる。koファイルのファイル名を決め打ちにしているところがあるのかな。同じく、Makefile内で下記のように修正する。

MODULE_NAME := 8811au

MODULE_NAME := 88XXau

これをやると上記のDKMSのインストールの処理も通るようになる。DKMSに詳しくないのでこれ以上掘り下げられない。ごめん。

ただ、曲がりなりにも8811auのドライバが使えたことに感謝。

なお、今回試したのはブランチ v5.6.4.2 の最新コミット 37e27f916。

デバイスドライバその2(今回使わなかったもの)

GitHub - morrownr/8812au-20210629: Linux Driver for USB WiFi Adapters that are based on the RTL8812AU Chipset - v5.13.6

もう一つ、こういうのもあった。お題目的には前記のドライバと同じだ。

しかし、前記のドライバ同様に石の設定を8821aにしてみたところではビルドが通らなかった。対象のヘッダファイルがないとかなんとかで完全にビルドが通らない状況なので、もう解析するのはやめた。。。

まぁ、要するに8821aをサポートする気がないんだろう。(そもそも8812auのドライバだしね)

ということで

適切かどうかの判断もできていないが、標記デバイスデバイスドライバをDKMS対応で入れることができた。

デバイスドライバコンフィギュレーションって、変えるとすぐにビルド通らなくなったりして、特定の構成でしか評価していないんだなとはっきりわかる。それでもこうやって使えているのだから感謝しかないけど。