カーネル構成を別のアーキテクチャに移植

カーネル構成を別のアーキテクチャに移植

私は良い.configx86カーネル設定を持っていて、それに満足しています。

今、私はいくつかの異なるARMベースのデバイス(一部はビデオ出力なし)を持っており、すべてデフォルトの事前設定された設定で利用可能になりました。

すべてのターゲットの設定をできるだけ近づけたいと思います。たとえば、すべてのターゲットが同じファイルシステムをアクティブにすることです。

.config重要なハードウェア関連の設定(基本構成に付属)が失われるため、周囲の内容を単にコピーするだけでは機能しません。

デフォルトでは、低レベルの設定(プロセッサの詳細、I / Oマッピングなど)はそのままにしておく必要があり、高レベルの設定(アクティブファイルシステム、USBデバイスドライバ、セキュリティオプション、その他のさまざまな設定)はそのままにしてください。適用)はそのままにしてください。今考えているものは、すべての構成で共有する必要があります。

この状況の「ベストプラクティス」はありますか?それとも実際に3000以上の設定を手動で確認する必要がありますか?

答え1

Linux カーネルの構成には、デバイスドライバの有効化など、多くのハードウェア関連の詳細が含まれています。あるアーキテクチャから別のアーキテクチャに移行する可能性はほとんどありません(x86およびx86_64などの密接に関連するアーキテクチャを除く)。また、ARMチップはオンチップデバイスメニューで構成されるため、特別な構成処理が必要です。これにより、ARMの構成処理はx86_64やSPARC64などのPCとは異なります。

特定の用途に合わせて構成を一度調整する必要があります。多くの作業なしで構成領域をそのまま維持できるメニューベースの構成ツールの1つを使用する必要があります。

答え2

パーティーに遅れていることはわかりますが、私の答えが他の人に役立つことを願っています。

  1. .configカーネルソースコードをx86を含むARM SoCにコピーします。
  2. run 、 x86 値と ARM デフォルト値を取得し、make olddefconfig新しい値を生成します。.config.config
  3. カーネルを構築するためにARMのいくつかのデフォルト設定とx86のいくつかの設定の両方に含まれているので、何も尋ねません。

関連情報