私のハードウェアに必要な最小ファームウェアファイルセットは何ですか?

私のハードウェアに必要な最小ファームウェアファイルセットは何ですか?

今日私は私の配布linux-unfree-firmwareパッケージのサイズが491MBであることを知りました。私は私のハードウェアにこれらのファイルがすべて必要ないと確信しています。そのため、どのファイルを除外できるかを知ることで、ディスク使用量を減らすことができると思いました。

どのファイルのソースを正確に指定する公式文書はありますか?https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/すべてのデバイス/コンピュータモデルに必要ですか?私のコンピュータハードウェアの公式文書にこれについての情報がありますか?一つある最初からLinux Webページこれはいくつかの一般的なハードウェアに関する情報を提供しますが、より多くの「公式」情報があるかどうかを知りたいです。

ベストアンサー1

残念ながら、すべてのハードウェアとそれに必要なファームウェアファイルの「公式」文書はありません。ただし、Linuxカーネルビルドシステムをいくつか変更すると、ハードウェアに必要なファームウェアファイルが何であるかが正確にわかります。

さらに、ハードウェアで使用されているファームウェアファイルが見つかったとしても、ほとんどすべてのバージョン以降に頻繁に更新する必要のある短くないファイルのリストが残ります(gitタグ)。https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/。これは、すぐに作成する方法を学ぶリストから直接ファームウェアファイルを確実にフィルタリングできないことを意味します。

それでも興味がある場合は、次の手順に従ってください。

  1. 以下から最新バージョンのカーネルをダウンロードしてください。https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
  2. ランニング: make localmodconfig
    • .configこれにより、現在のカーネルに基づくビルドパラメータのリストを含むファイルが生成されます。
  3. ランニングmake
    • カーネルが構築されるので、時間がかかることがあります。
    • ビルドを完了するには、いくつかの依存関係をインストールする必要があります。
    • 完了すると、カーネルモジュールファイルであるmake複数のファイルが作成されます。.ko
  4. 次のコマンドを実行します。
find -name '*.ko' -exec modinfo {} \; | awk '$1 == "firmware:" { print $2}'

最後のコマンドは、ディストリビューションlinux-unfree-firmwareパッケージにあるファームウェアファイルの一覧を印刷します。これはハードウェアに必要なファイルです。

クレジット取引:https://lists.kernelnewbies.org/pipermail/kernelnewbies/2020-May/020818.html

おすすめ記事