AR# 71102

2016.4-2018.1 PetaLinux: カーネルに外部ソースを使用するとカーネル コンフィギュレーションの依存関係が正しく渡されない

説明

Petalinux 2016.4 ~ 2018.1 では、petalinux-config オプションで外部カーネルソースを選択すると、Linux カーネル bitbake do_configure タスクが実行されたときに、すべてのカーネル コンフィギュレーションの依存関係が適切に渡されません。

外部のカーネル ソースを使用した場合、コンフィギュレーション フローは次のようになります。

  1. kernel do_configure (make oldconfig )
  2. update cfg's
  3. do_configure (make oldconfig)

これにより、cfgs の依存関係は手順 1 で既に渡されているため、正しく構成されなくなります。

ソリューション

この問題は、デフォルトの設定の上にさらに設定が追加されて発生します。

リモート/git フローでは、この手順は実行されません。 

KERNEL_CONFIG_COMMAND を NULL に設定すると、手順 1 がスキップされ、リモート/git フローにインライン化されます。

この問題を解決するには、次の python 関数を <plnx-proj-root>/project-spec/meta-user/recipes-kernel/linux/linux-xlnx_%bbappend に追加します。


python __anonymous () {
    if (d.getVar("EXTERNALSRC")) :
        d.setVar("KERNEL_CONFIG_COMMAND", '')
}

注記:

  1. Python 関数の字下げは維持する必要があります。
  2. SCC は外部ソース モードでは動作しません。
AR# 71102
日付 05/18/2018
ステータス アクティブ
種類 一般
デバイス
ツール 詳細 概略
Boards & Kits