U-Boot defconfig通用配置

时间:2019-01-09 11:03:21

标签: config u-boot kbuild

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

因此,我想知道是否有可能在common_defconfig中包含<new_board>_defconfig来不复制所有配置文件。与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文件。

1 个答案:

答案 0 :(得分:1)

U-Boot从Linux继承了构建系统。到目前为止,这两种支持都没有包含在 _defconfig 文件中。如果要更改它,则需要为scripts / kconfig / Makefile scripts / kconfig / Makefile 提供一个补丁。

configs / * defconfig 文件正在植入 .config 。因此,无论如何,大多数配置都来自 Kconfig 文件中的预设。这与设备树不同,在设备树中,所有值都来自 *。dts *。dtsi 文件。