Linux ファームウェア
Linux ファームウェアは、特定のハードウェアデバイスの一部または完全な機能に必要な、バイナリ・ブロブのコレクションであり、Linux カーネルとともに配布されます。これらのバイナリ・ブロブは、GPL でライセンスされた作品に含めることは許可されていませんが、別の形で再配布することは許可されています。
ファームウェアが必要となる典型的なハードウェアの種類:
- GPU
- 有線ネットワークアダプター
- 無線ネットワークアダプター
- Bluetooth コントローラー
- サウンドカード ― プロフェッショナルオーディオやオンボードオーディオ。
インストール
linux-firmware メタパッケージを インストールすることで、よく使われる すべてのファームウェアを取得できます。これはほとんどのユーザーに推奨される方法です。ディスク容量を節約したい場合は、自身のシステムで使用しているハードウェアベンダー向けのファームウェアのみを選んでインストールすることもできます。
linux-firmware によってインストールされる主なパッケージ:
- linux-firmware-amdgpu — AMD Radeon GPU、
- linux-firmware-atheros — Qualcomm Atheros 製 Wi-Fi および Bluetooth アダプター、
- linux-firmware-broadcom — Broadcom および Cypress 製ネットワークアダプター、
- linux-firmware-cirrus — Cirrus Logic 製オーディオデバイス、
- linux-firmware-intel — Intel 製オーディオデバイス、Bluetooth アダプター、GPU、ネットワークアダプター、NPU、Web カメラなどの各種デバイス、
- linux-firmware-mediatek — MediaTek および Ralink 製ネットワークアダプター、
- linux-firmware-nvidia — NVIDIA 製 GPU および SoC、
- linux-firmware-other — その他の未分類デバイス、
- linux-firmware-radeon — ATI Radeon GPU、
- linux-firmware-realtek — Realtek 製ネットワークおよび Bluetooth アダプター。
オプションパッケージ:
- linux-firmware-liquidio — Cavium LiquidIO サーバーアダプター、
- linux-firmware-marvell — Marvell 製ネットワークアダプター、
- linux-firmware-mellanox — Mellanox 製 Spectrum スイッチ、
- linux-firmware-nfp — Netronome Flow Processor、
- linux-firmware-qcom — Qualcomm 製 SoC、
- linux-firmware-qlogic — QLogic 製ネットワークデバイス。
サードパーティ製パッケージ:
- alsa-firmware — alsa-tools に含まれるローダープログラムおよびホットプラグ対応ファームウェアローダー、詳しくは ALSA#Firmware を参照、
- sane-gt68xx-firmware — gt68xx ベースのスキャナー用、
- sigrok-firmware-fx2lafw — FX2 ロジックアナライザー用、
- sof-firmware — Sound Open Firmware 用。
ヒントとテクニック
読み込まれたファームウェアの検出
デバッグやインストールすべきファームウェアパッケージを特定するために、システムによってどのファームウェアが読み込まれたかを知りたい場合があります。
これは dynamic debug を使って確認できます:
- カーネルパラメータ に
dyndbg="func fw_log_firmware_info +p"を追加してください。なお、使用している ブートローダー によってはクォートをエスケープする必要があります。 - 以下のコマンドで読み込まれたファームウェアを一覧表示できます:
# journalctl -kg 'loaded f'