1

我正在向 Yocto 添加一个新板时,我注意到很多配置可以从以前的硬件版本继承。

所以我想知道是否有可能common_defconfig<new_board>_defconfig不复制所有配置文件的情况下包含 a 。dts与文件发生的情况类似。

例如

common_defconfig:

CONFIG_ARM=y
CONFIG_SPL=y
CONFIG_CMD_I2C=y

board_hw1_defconfig:

#include "common_defconfig"
CONFIG_TARGET_BOARD_HW1=y

board_hw2_defconfig:

#include "common_defconfig"
CONFIG_TARGET_BOARD_HW2=y

更新 1

正如@Xypron 指出的那样,正如我所怀疑的那样,没有办法_defconfig在另一个中包含不同的。

我还尝试创建一个泛型Kconfig.defconfig来选择一些配置。问题是,例如,ARM被定义为config内部的choice,所以不能从Kconf文件内部选择。

我最终将创建一个do_configure_append任务,我将_defconfig通过使用scripts/kconfig/merge_config.sh如果没有人提供更好的解决方案来合并文件。

4

1 回答 1

1

U-Boot 继承了 Linux 的构建系统。到目前为止,这两种支持都不包含在_defconfig -files 中。如果你想改变它,你需要为 scripts/kconfig/Makefile scripts/kconfig/Makefile提供一个补丁。

configs/*defconfig文件正在播种.config。所以无论如何,大部分配置都来自Kconfig文件中的预设。这与 ARM 系统的所有值都来自*.dts*.dtsi文件的设备树不同。

于 2019-01-09T21:19:28.230 回答