* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig [not found] <30670792.47881410234247727.JavaMail.weblogic@epv6ml04> @ 2014-09-11 2:57 ` Jaehoon Chung 0 siblings, 0 replies; 10+ messages in thread From: Jaehoon Chung @ 2014-09-11 2:57 UTC (permalink / raw) To: u-boot Hi, On 09/09/2014 12:44 PM, Akshay Saraswat wrote: > Hi Masahiro, > >> Hi Samsung developers, >> Simon Glass, >> >> >> 2014-09-09 1:10 GMT+09:00 Masahiro YAMADA : >>> Hi Stephen, >>> >>> >>> 2014-09-09 0:58 GMT+09:00 Stephen Warren : >>>> On 09/08/2014 09:57 AM, Masahiro YAMADA wrote: >>>>> >>>>> Hi Stephen, >>>>> >>>>> >>>>> >>>>> 2014-09-09 0:04 GMT+09:00 Stephen Warren : >>>>> >>>>>> I don't believe this is the correct approach; CONFIG_OF_CONTROL isn't a >>>>>> user-configurable option, and hence shouldn't show up in *_defconfig. >>>>>> "select OF_CONTROL" in a Kconfig file probably makes sense though. >>>>> >>>>> >>>>> >>>>> I think it depends on the board (SoC). >>>>> >>>>> In my understanding, Zynq boards should work with/without Device Tree >>>>> control. >>>>> (Moreover, Zynq boards work with/without SPL) >>>>> >>>>> At least as for Zynq, >>>>> CONFIG_OF_CONTROL ( and CONFIG_SPL too) is a user-configurable option. >>>>> >>>>> (Michal, please correct me if I am wrong.) >>>>> >>>>> >>>>> I am not familiar with Tegra SoCs, but >>>>> do Tegra boards always Device Tree? ( and only work with SPL ?) >>>>> >>>>> If so, >>>>> >>>>> config TEGRA >>>>> select SPL >>>>> select OF_CONTROL >>>>> >>>>> looks better? >>>> >>>> >>>> That looks correct for Tegra. >>>> >>> >>> OK. I will send v2. >>> CONFIG_OF_CONTROL in tegra defconfigs will go away. >>> >>> >>> (BTW, I forgot to mention a famous board; beaglebone black. >>> >>> am335_boneblack_defconfig disables CONFIG_OF_CONTROL, >>> whereas am335_boneblack_vboot_defconfig enables it. ) >>> >> >> Before posting v2 of this series, >> please let me ask the same question on Exynos and Sandbox >> >> >> Do Exynos boards always need Device Tree to run U-Boot? >> (that is, CONFIG_OF_CONTROL must be "select"ed.) >> > > Yes, all Exynos5 boards need Device Tree to run U-Boot. > In case of Snow and Pit, we use U-Boot's DTB to extract corresponding Kernel DTB. > Also, we do check (#ifdef) CONFIG_OF_CONTROL to enable some features and IPs. > I am not sure about Exynos4 but I can see CONFIG_OF_LIBFDT in their config files. I knew Exynos4/5 are supported the Device-tree, but older Samsung SoCs isn't supported it. Best Regards, Jaehoon Chung > >> or >> >> Do they work with/without Device Tree? >> (that is, users can enable/disable via "make menuconfig" or friends.) >> >> >> What about Sandbox? >> >> >> >> >> Best Regards >> Masahiro Yamada > > Regards, > Akshay Saraswat > ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 0/10] Move some CONFIGs to Kconfig @ 2014-09-07 8:43 Masahiro Yamada 2014-09-07 8:43 ` [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* " Masahiro Yamada 0 siblings, 1 reply; 10+ messages in thread From: Masahiro Yamada @ 2014-09-07 8:43 UTC (permalink / raw) To: u-boot Now we have the basic Kconfig infrastructure and we are ready to move CONFIG options from header files to Kconfig. We do not have to rush to do it at once. We can do it little by little when we find some time. (Of course, this task is too tedious to do by hand. I wrote a script to do it automatically for me.) I also did build-test over all the boards to confirm this series does not change the outputs. Masahiro Yamada (10): kconfig: add blank Kconfig files kconfig: move CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED to Kconfig kconfig: move CONFIG_CMD_BOOTM to Kconfig kconfig: move CONFIG_CMD_CRC32 to Kconfig kconfig: move CONFIG_CMD_EXPORTENV to Kconfig kconfig: move CONFIG_CMD_GO to Kconfig kconfig: move CONFIG_CMD_IMPORTENV to Kconfig kconfig: delete config_cmd_defaults.h kconfig: move CONFIG_OF_* to Kconfig kconfig: CONFIG_DEFAULT_DEVICE_TREE to kconfig Kconfig | 14 +++++- common/Kconfig | 24 ++++++++++ configs/am335x_boneblack_vboot_defconfig | 2 + configs/arndale_defconfig | 2 + configs/bct-brettl2_defconfig | 1 + configs/beaver_defconfig | 2 + configs/bf506f-ezkit_defconfig | 3 ++ configs/bf518f-ezbrd_defconfig | 1 + configs/bf526-ezbrd_defconfig | 1 + configs/bf527-ad7160-eval_defconfig | 1 + configs/bf527-ezkit-v2_defconfig | 1 + configs/bf527-ezkit_defconfig | 1 + configs/bf527-sdp_defconfig | 1 + configs/bf533-ezkit_defconfig | 1 + configs/bf533-stamp_defconfig | 1 + configs/bf537-stamp_defconfig | 1 + configs/bf538f-ezkit_defconfig | 1 + configs/bf548-ezkit_defconfig | 1 + configs/bf561-acvilon_defconfig | 1 + configs/bf561-ezkit_defconfig | 1 + configs/br4_defconfig | 1 + configs/cardhu_defconfig | 2 + configs/cm-bf527_defconfig | 1 + configs/cm-bf533_defconfig | 1 + configs/cm-bf537e_defconfig | 1 + configs/cm-bf537u_defconfig | 1 + configs/cm-bf548_defconfig | 1 + configs/cm-bf561_defconfig | 1 + configs/colibri_t20_iris_defconfig | 2 + configs/colibri_t30_defconfig | 2 + .../controlcenterd_TRAILBLAZER_DEVELOP_defconfig | 1 + configs/controlcenterd_TRAILBLAZER_defconfig | 1 + configs/coreboot-x86_defconfig | 2 + configs/dalmore_defconfig | 2 + configs/harmony_defconfig | 2 + configs/ip04_defconfig | 1 + configs/jetson-tk1_defconfig | 2 + configs/kwb_defconfig | 1 + configs/medcom-wide_defconfig | 2 + configs/microblaze-generic_defconfig | 3 ++ configs/mx6dlsabreauto_defconfig | 1 + configs/mx6qsabreauto_defconfig | 1 + configs/origen_defconfig | 2 + configs/paz00_defconfig | 2 + configs/peach-pit_defconfig | 2 + configs/plutux_defconfig | 2 + configs/pr1_defconfig | 1 + configs/s5pc210_universal_defconfig | 2 + configs/sandbox_defconfig | 2 + configs/seaboard_defconfig | 2 + configs/smdk5250_defconfig | 2 + configs/smdk5420_defconfig | 2 + configs/snow_defconfig | 2 + configs/tcm-bf518_defconfig | 1 + configs/tcm-bf537_defconfig | 1 + configs/tec-ng_defconfig | 2 + configs/tec_defconfig | 2 + configs/trats2_defconfig | 2 + configs/trats_defconfig | 2 + configs/trimslice_defconfig | 2 + configs/tseries_mmc_defconfig | 1 + configs/tseries_nand_defconfig | 1 + configs/tseries_spi_defconfig | 1 + configs/vct_platinum_onenand_small_defconfig | 1 + configs/vct_platinum_small_defconfig | 1 + configs/vct_platinumavc_onenand_small_defconfig | 1 + configs/vct_platinumavc_small_defconfig | 1 + configs/vct_premium_onenand_small_defconfig | 1 + configs/vct_premium_small_defconfig | 1 + configs/venice2_defconfig | 2 + configs/ventana_defconfig | 2 + configs/vexpress_aemv8a_defconfig | 1 + configs/vexpress_aemv8a_semi_defconfig | 1 + configs/whistler_defconfig | 2 + configs/zynq_microzed_defconfig | 2 + configs/zynq_zc70x_defconfig | 2 + configs/zynq_zc770_xm010_defconfig | 2 + configs/zynq_zc770_xm012_defconfig | 2 + configs/zynq_zc770_xm013_defconfig | 2 + configs/zynq_zed_defconfig | 2 + drivers/Kconfig | 51 ++++++++++++++++++++ drivers/block/Kconfig | 0 drivers/core/Kconfig | 0 drivers/crypto/Kconfig | 0 drivers/dfu/Kconfig | 0 drivers/dma/Kconfig | 0 drivers/gpio/Kconfig | 0 drivers/hwmon/Kconfig | 0 drivers/i2c/Kconfig | 0 drivers/input/Kconfig | 0 drivers/misc/Kconfig | 0 drivers/mmc/Kconfig | 0 drivers/mtd/Kconfig | 0 drivers/net/Kconfig | 0 drivers/pci/Kconfig | 0 drivers/pcmcia/Kconfig | 0 drivers/power/Kconfig | 0 drivers/rtc/Kconfig | 0 drivers/serial/Kconfig | 0 drivers/sound/Kconfig | 0 drivers/spi/Kconfig | 0 drivers/tpm/Kconfig | 0 drivers/usb/Kconfig | 0 drivers/video/Kconfig | 0 drivers/watchdog/Kconfig | 0 dts/Kconfig | 54 ++++++++++++++++++++++ fs/Kconfig | 19 ++++++++ fs/cramfs/Kconfig | 0 fs/ext4/Kconfig | 0 fs/fat/Kconfig | 0 fs/jffs2/Kconfig | 0 fs/reiserfs/Kconfig | 0 fs/ubifs/Kconfig | 0 include/config_cmd_defaults.h | 18 -------- include/configs/am335x_evm.h | 3 -- include/configs/arndale.h | 3 -- include/configs/bct-brettl2.h | 1 - include/configs/beaver.h | 3 -- include/configs/bf506f-ezkit.h | 3 -- include/configs/bf518f-ezbrd.h | 1 - include/configs/bf526-ezbrd.h | 1 - include/configs/bf527-ad7160-eval.h | 1 - include/configs/bf527-ezkit.h | 1 - include/configs/bf527-sdp.h | 1 - include/configs/bf533-ezkit.h | 1 - include/configs/bf533-stamp.h | 1 - include/configs/bf537-stamp.h | 1 - include/configs/bf538f-ezkit.h | 1 - include/configs/bf548-ezkit.h | 1 - include/configs/bf561-acvilon.h | 1 - include/configs/bf561-ezkit.h | 1 - include/configs/br4.h | 1 - include/configs/bur_am335x_common.h | 1 - include/configs/cardhu.h | 3 -- include/configs/cm-bf527.h | 1 - include/configs/cm-bf533.h | 1 - include/configs/cm-bf537e.h | 1 - include/configs/cm-bf537u.h | 1 - include/configs/cm-bf548.h | 1 - include/configs/cm-bf561.h | 1 - include/configs/colibri_t20_iris.h | 3 -- include/configs/colibri_t30.h | 3 -- include/configs/controlcenterd.h | 1 - include/configs/coreboot.h | 3 -- include/configs/dalmore.h | 3 -- include/configs/exynos4-dt.h | 2 - include/configs/exynos5-dt.h | 2 - include/configs/h2200.h | 1 - include/configs/harmony.h | 3 -- include/configs/ip04.h | 1 - include/configs/jetson-tk1.h | 3 -- include/configs/kwb.h | 1 - include/configs/medcom-wide.h | 3 -- include/configs/microblaze-generic.h | 3 -- include/configs/mx6qsabreauto.h | 2 - include/configs/origen.h | 2 - include/configs/paz00.h | 3 -- include/configs/peach-pit.h | 2 - include/configs/plutux.h | 3 -- include/configs/pr1.h | 1 - include/configs/s5pc210_universal.h | 2 - include/configs/sandbox.h | 3 -- include/configs/seaboard.h | 3 -- include/configs/smdk5250.h | 2 - include/configs/smdk5420.h | 2 - include/configs/snow.h | 2 - include/configs/tcm-bf518.h | 1 - include/configs/tcm-bf537.h | 1 - include/configs/tec-ng.h | 3 -- include/configs/tec.h | 3 -- include/configs/tegra-common-post.h | 1 - include/configs/trats.h | 2 - include/configs/trats2.h | 2 - include/configs/trimslice.h | 3 -- include/configs/vct.h | 1 - include/configs/venice2.h | 3 -- include/configs/ventana.h | 3 -- include/configs/vexpress_aemv8a.h | 1 - include/configs/whistler.h | 3 -- include/configs/zynq-common.h | 9 +--- include/configs/zynq_microzed.h | 1 - include/configs/zynq_zc70x.h | 1 - include/configs/zynq_zc770.h | 3 -- include/configs/zynq_zed.h | 1 - lib/Kconfig | 11 +++++ net/Kconfig | 10 ++++ scripts/Makefile.autoconf | 1 - 187 files changed, 300 insertions(+), 156 deletions(-) create mode 100644 common/Kconfig create mode 100644 drivers/Kconfig create mode 100644 drivers/block/Kconfig create mode 100644 drivers/core/Kconfig create mode 100644 drivers/crypto/Kconfig create mode 100644 drivers/dfu/Kconfig create mode 100644 drivers/dma/Kconfig create mode 100644 drivers/gpio/Kconfig create mode 100644 drivers/hwmon/Kconfig create mode 100644 drivers/i2c/Kconfig create mode 100644 drivers/input/Kconfig create mode 100644 drivers/misc/Kconfig create mode 100644 drivers/mmc/Kconfig create mode 100644 drivers/mtd/Kconfig create mode 100644 drivers/net/Kconfig create mode 100644 drivers/pci/Kconfig create mode 100644 drivers/pcmcia/Kconfig create mode 100644 drivers/power/Kconfig create mode 100644 drivers/rtc/Kconfig create mode 100644 drivers/serial/Kconfig create mode 100644 drivers/sound/Kconfig create mode 100644 drivers/spi/Kconfig create mode 100644 drivers/tpm/Kconfig create mode 100644 drivers/usb/Kconfig create mode 100644 drivers/video/Kconfig create mode 100644 drivers/watchdog/Kconfig create mode 100644 dts/Kconfig create mode 100644 fs/Kconfig create mode 100644 fs/cramfs/Kconfig create mode 100644 fs/ext4/Kconfig create mode 100644 fs/fat/Kconfig create mode 100644 fs/jffs2/Kconfig create mode 100644 fs/reiserfs/Kconfig create mode 100644 fs/ubifs/Kconfig delete mode 100644 include/config_cmd_defaults.h create mode 100644 lib/Kconfig create mode 100644 net/Kconfig -- 1.9.1 ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-07 8:43 [U-Boot] [PATCH 0/10] Move some CONFIGs " Masahiro Yamada @ 2014-09-07 8:43 ` Masahiro Yamada 2014-09-08 15:04 ` Stephen Warren 2014-09-08 19:23 ` Daniel Schwierzeck 0 siblings, 2 replies; 10+ messages in thread From: Masahiro Yamada @ 2014-09-07 8:43 UTC (permalink / raw) To: u-boot This commit moves: CONFIG_OF_CONTROL CONFIG_OF_SEPARATE CONFIG_OF_EMBED CONFIG_OF_HOSTFILE Because these options are currently not supported for SPL, the "Device Tree Control" menu does not appear in the SPL configuration. Note: zynq-common.h should be adjusted so as not to change the default value of CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Cc: Simon Glass <sjg@chromium.org> Cc: Stephen Warren <swarren@nvidia.com> Cc: Minkyu Kang <mk7.kang@samsung.com> Cc: Michal Simek <michal.simek@xilinx.com> --- Kconfig | 2 ++ configs/am335x_boneblack_vboot_defconfig | 1 + configs/arndale_defconfig | 1 + configs/beaver_defconfig | 1 + configs/cardhu_defconfig | 1 + configs/colibri_t20_iris_defconfig | 1 + configs/colibri_t30_defconfig | 1 + configs/coreboot-x86_defconfig | 1 + configs/dalmore_defconfig | 1 + configs/harmony_defconfig | 1 + configs/jetson-tk1_defconfig | 1 + configs/medcom-wide_defconfig | 1 + configs/microblaze-generic_defconfig | 2 ++ configs/origen_defconfig | 1 + configs/paz00_defconfig | 1 + configs/peach-pit_defconfig | 1 + configs/plutux_defconfig | 1 + configs/s5pc210_universal_defconfig | 1 + configs/sandbox_defconfig | 1 + configs/seaboard_defconfig | 1 + configs/smdk5250_defconfig | 1 + configs/smdk5420_defconfig | 1 + configs/snow_defconfig | 1 + configs/tec-ng_defconfig | 1 + configs/tec_defconfig | 1 + configs/trats2_defconfig | 1 + configs/trats_defconfig | 1 + configs/trimslice_defconfig | 1 + configs/venice2_defconfig | 1 + configs/ventana_defconfig | 1 + configs/whistler_defconfig | 1 + configs/zynq_microzed_defconfig | 1 + configs/zynq_zc70x_defconfig | 1 + configs/zynq_zc770_xm010_defconfig | 1 + configs/zynq_zc770_xm012_defconfig | 1 + configs/zynq_zc770_xm013_defconfig | 1 + configs/zynq_zed_defconfig | 1 + dts/Kconfig | 46 ++++++++++++++++++++++++++++++++ include/configs/am335x_evm.h | 2 -- include/configs/arndale.h | 2 -- include/configs/beaver.h | 2 -- include/configs/cardhu.h | 2 -- include/configs/colibri_t20_iris.h | 2 -- include/configs/colibri_t30.h | 2 -- include/configs/coreboot.h | 2 -- include/configs/dalmore.h | 2 -- include/configs/exynos4-dt.h | 2 -- include/configs/exynos5-dt.h | 2 -- include/configs/harmony.h | 2 -- include/configs/jetson-tk1.h | 2 -- include/configs/medcom-wide.h | 2 -- include/configs/microblaze-generic.h | 2 -- include/configs/mx6qsabreauto.h | 1 - include/configs/paz00.h | 2 -- include/configs/plutux.h | 2 -- include/configs/sandbox.h | 2 -- include/configs/seaboard.h | 2 -- include/configs/tec-ng.h | 2 -- include/configs/tec.h | 2 -- include/configs/tegra-common-post.h | 1 - include/configs/trimslice.h | 2 -- include/configs/venice2.h | 2 -- include/configs/ventana.h | 2 -- include/configs/whistler.h | 2 -- include/configs/zynq-common.h | 9 +------ 65 files changed, 86 insertions(+), 58 deletions(-) create mode 100644 dts/Kconfig diff --git a/Kconfig b/Kconfig index fc5e7cd..e0c8992 100644 --- a/Kconfig +++ b/Kconfig @@ -106,6 +106,8 @@ source "arch/Kconfig" source "common/Kconfig" +source "dts/Kconfig" + source "net/Kconfig" source "drivers/Kconfig" diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig index 00317c4..af7ceca 100644 --- a/configs/am335x_boneblack_vboot_defconfig +++ b/configs/am335x_boneblack_vboot_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,EMMC_BOOT,ENABLE_VBOOT" +S:CONFIG_ARM=y +S:CONFIG_TARGET_AM335X_EVM=y +CONFIG_OF_CONTROL=y diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig index 7ea5c0d..737bb3e 100644 --- a/configs/arndale_defconfig +++ b/configs/arndale_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_ARNDALE=y +CONFIG_OF_CONTROL=y diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig index 7c9d94b..9427faf 100644 --- a/configs/beaver_defconfig +++ b/configs/beaver_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_BEAVER=y +CONFIG_OF_CONTROL=y diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig index bb042b4..232a778 100644 --- a/configs/cardhu_defconfig +++ b/configs/cardhu_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_CARDHU=y +CONFIG_OF_CONTROL=y diff --git a/configs/colibri_t20_iris_defconfig b/configs/colibri_t20_iris_defconfig index b2a21e1..094fb9f 100644 --- a/configs/colibri_t20_iris_defconfig +++ b/configs/colibri_t20_iris_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_COLIBRI_T20_IRIS=y +CONFIG_OF_CONTROL=y diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig index abb41f3..5f35fa1 100644 --- a/configs/colibri_t30_defconfig +++ b/configs/colibri_t30_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_COLIBRI_T30=y +CONFIG_OF_CONTROL=y diff --git a/configs/coreboot-x86_defconfig b/configs/coreboot-x86_defconfig index a06c527..3cc034a 100644 --- a/configs/coreboot-x86_defconfig +++ b/configs/coreboot-x86_defconfig @@ -1,3 +1,4 @@ CONFIG_SYS_EXTRA_OPTIONS="SYS_TEXT_BASE=0x01110000" CONFIG_X86=y CONFIG_TARGET_COREBOOT=y +CONFIG_OF_CONTROL=y diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig index 70677aa..ca6b664 100644 --- a/configs/dalmore_defconfig +++ b/configs/dalmore_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA114=y +S:CONFIG_TARGET_DALMORE=y +CONFIG_OF_CONTROL=y diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig index a52231b..d29e8d2 100644 --- a/configs/harmony_defconfig +++ b/configs/harmony_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_HARMONY=y +CONFIG_OF_CONTROL=y diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig index 00eac92..1c385a6 100644 --- a/configs/jetson-tk1_defconfig +++ b/configs/jetson-tk1_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA124=y +S:CONFIG_TARGET_JETSON_TK1=y +CONFIG_OF_CONTROL=y diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig index e9a3930..5674e9b 100644 --- a/configs/medcom-wide_defconfig +++ b/configs/medcom-wide_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_MEDCOM_WIDE=y +CONFIG_OF_CONTROL=y diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig index 7f23786..1dc7441 100644 --- a/configs/microblaze-generic_defconfig +++ b/configs/microblaze-generic_defconfig @@ -1,3 +1,5 @@ CONFIG_SPL=y +S:CONFIG_MICROBLAZE=y +S:CONFIG_TARGET_MICROBLAZE_GENERIC=y +CONFIG_OF_CONTROL=y +CONFIG_OF_EMBED=y diff --git a/configs/origen_defconfig b/configs/origen_defconfig index aa92381..1d712e8 100644 --- a/configs/origen_defconfig +++ b/configs/origen_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_ORIGEN=y +CONFIG_OF_CONTROL=y diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig index 05974eb..a682f4c 100644 --- a/configs/paz00_defconfig +++ b/configs/paz00_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_PAZ00=y +CONFIG_OF_CONTROL=y diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig index 797d5e0..9f3530a 100644 --- a/configs/peach-pit_defconfig +++ b/configs/peach-pit_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_PEACH_PIT=y +CONFIG_OF_CONTROL=y diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig index 60e80ff..03374fe 100644 --- a/configs/plutux_defconfig +++ b/configs/plutux_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_PLUTUX=y +CONFIG_OF_CONTROL=y diff --git a/configs/s5pc210_universal_defconfig b/configs/s5pc210_universal_defconfig index a9a3446..0a3ad0d 100644 --- a/configs/s5pc210_universal_defconfig +++ b/configs/s5pc210_universal_defconfig @@ -1,3 +1,4 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_TARGET_S5PC210_UNIVERSAL=y +CONFIG_OF_CONTROL=y diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig index e69de29..dd84281 100644 --- a/configs/sandbox_defconfig +++ b/configs/sandbox_defconfig @@ -0,0 +1 @@ +CONFIG_OF_CONTROL=y diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig index 516e760..9e2028b 100644 --- a/configs/seaboard_defconfig +++ b/configs/seaboard_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_SEABOARD=y +CONFIG_OF_CONTROL=y diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig index 465a75a..5cdfa63 100644 --- a/configs/smdk5250_defconfig +++ b/configs/smdk5250_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_SMDK5250=y +CONFIG_OF_CONTROL=y diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig index 9dc43f2..4619c62 100644 --- a/configs/smdk5420_defconfig +++ b/configs/smdk5420_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_SMDK5420=y +CONFIG_OF_CONTROL=y diff --git a/configs/snow_defconfig b/configs/snow_defconfig index 2d59046..c201c84 100644 --- a/configs/snow_defconfig +++ b/configs/snow_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ARCH_EXYNOS=y +S:CONFIG_TARGET_SNOW=y +CONFIG_OF_CONTROL=y diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig index e4a31cc..501d449 100644 --- a/configs/tec-ng_defconfig +++ b/configs/tec-ng_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA30=y +S:CONFIG_TARGET_TEC_NG=y +CONFIG_OF_CONTROL=y diff --git a/configs/tec_defconfig b/configs/tec_defconfig index 62a9542..fe743f9 100644 --- a/configs/tec_defconfig +++ b/configs/tec_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_TEC=y +CONFIG_OF_CONTROL=y diff --git a/configs/trats2_defconfig b/configs/trats2_defconfig index fa82724..666011c 100644 --- a/configs/trats2_defconfig +++ b/configs/trats2_defconfig @@ -1,3 +1,4 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_TARGET_TRATS2=y +CONFIG_OF_CONTROL=y diff --git a/configs/trats_defconfig b/configs/trats_defconfig index f888a51..6ef4b33 100644 --- a/configs/trats_defconfig +++ b/configs/trats_defconfig @@ -1,3 +1,4 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_TARGET_TRATS=y +CONFIG_OF_CONTROL=y diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig index 94f23e3..8b1a13e 100644 --- a/configs/trimslice_defconfig +++ b/configs/trimslice_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_TRIMSLICE=y +CONFIG_OF_CONTROL=y diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig index dfc5407..3897862 100644 --- a/configs/venice2_defconfig +++ b/configs/venice2_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA124=y +S:CONFIG_TARGET_VENICE2=y +CONFIG_OF_CONTROL=y diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig index 845e241..7398d11 100644 --- a/configs/ventana_defconfig +++ b/configs/ventana_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_VENTANA=y +CONFIG_OF_CONTROL=y diff --git a/configs/whistler_defconfig b/configs/whistler_defconfig index 8c07c18..a275005 100644 --- a/configs/whistler_defconfig +++ b/configs/whistler_defconfig @@ -2,3 +2,4 @@ +S:CONFIG_TEGRA=y +S:CONFIG_TEGRA20=y +S:CONFIG_TARGET_WHISTLER=y +CONFIG_OF_CONTROL=y diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig index 3aedb35..9767863 100644 --- a/configs/zynq_microzed_defconfig +++ b/configs/zynq_microzed_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_MICROZED=y +CONFIG_OF_CONTROL=y diff --git a/configs/zynq_zc70x_defconfig b/configs/zynq_zc70x_defconfig index 04c8def..d303f97 100644 --- a/configs/zynq_zc70x_defconfig +++ b/configs/zynq_zc70x_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC70X=y +CONFIG_OF_CONTROL=y diff --git a/configs/zynq_zc770_xm010_defconfig b/configs/zynq_zc770_xm010_defconfig index 1178b40..4e6660f 100644 --- a/configs/zynq_zc770_xm010_defconfig +++ b/configs/zynq_zc770_xm010_defconfig @@ -3,3 +3,4 @@ CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM010" +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC770=y +CONFIG_OF_CONTROL=y diff --git a/configs/zynq_zc770_xm012_defconfig b/configs/zynq_zc770_xm012_defconfig index 52c2121..16d62e6 100644 --- a/configs/zynq_zc770_xm012_defconfig +++ b/configs/zynq_zc770_xm012_defconfig @@ -3,3 +3,4 @@ CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM012" +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC770=y +CONFIG_OF_CONTROL=y diff --git a/configs/zynq_zc770_xm013_defconfig b/configs/zynq_zc770_xm013_defconfig index 836809a..7343a64 100644 --- a/configs/zynq_zc770_xm013_defconfig +++ b/configs/zynq_zc770_xm013_defconfig @@ -3,3 +3,4 @@ CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM013" +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZC770=y +CONFIG_OF_CONTROL=y diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig index 2337906..38d5fa6 100644 --- a/configs/zynq_zed_defconfig +++ b/configs/zynq_zed_defconfig @@ -2,3 +2,4 @@ CONFIG_SPL=y +S:CONFIG_ARM=y +S:CONFIG_ZYNQ=y +S:CONFIG_TARGET_ZYNQ_ZED=y +CONFIG_OF_CONTROL=y diff --git a/dts/Kconfig b/dts/Kconfig new file mode 100644 index 0000000..98b2357 --- /dev/null +++ b/dts/Kconfig @@ -0,0 +1,46 @@ +# +# Device Tree Control +# +# TODO: +# This feature is not currently supported for SPL, +# but this restriction should be removed in the future. + +menu "Device Tree Control" + depends on !SPL_BUILD + depends on ARM || MICROBLAZE || SANDBOX || X86 + +config OF_CONTROL + bool "Run-time configuration via Device Tree" + help + This feature provides for run-time configuration of U-Boot + via a flattened device tree. + +choice + prompt "Provider of DTB for DT control" + depends on OF_CONTROL + default OF_HOSTFILE if SANDBOX + default OF_SEPARATE + +config OF_SEPARATE + bool "Separate DTB for DT control" + help + If this option is enabled, the device tree will be built and + placed as a separate u-boot.dtb file alongside the U-Boot image. + +config OF_EMBED + bool "Embedded DTB for DT control" + help + If this option is enabled, the device tree will be picked up and + built into the U-Boot image. + +config OF_HOSTFILE + bool "Host filed DTB for DT control" + depends on SANDBOX + help + If this option is enabled, DTB will be read from a file on startup. + This is only useful for Sandbox. Use the -d flag to U-Boot to + specify the file to read. + +endchoice + +endmenu diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h index df1a6fc..47a173f 100644 --- a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@ -23,8 +23,6 @@ # define CONFIG_TIMESTAMP # define CONFIG_LZO # ifdef CONFIG_ENABLE_VBOOT -# define CONFIG_OF_CONTROL -# define CONFIG_OF_SEPARATE # define CONFIG_DEFAULT_DEVICE_TREE am335x-boneblack # define CONFIG_FIT_SIGNATURE # define CONFIG_RSA diff --git a/include/configs/arndale.h b/include/configs/arndale.h index 75f9933..7f06907 100644 --- a/include/configs/arndale.h +++ b/include/configs/arndale.h @@ -22,8 +22,6 @@ #define CONFIG_DISPLAY_CPUINFO #define CONFIG_DISPLAY_BOARDINFO -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* Allow tracing to be enabled */ #define CONFIG_TRACE diff --git a/include/configs/beaver.h b/include/configs/beaver.h index d8ed717..4c7cf5f 100644 --- a/include/configs/beaver.h +++ b/include/configs/beaver.h @@ -26,8 +26,6 @@ /* Enable fdt support for Beaver. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra30-beaver -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra30 (Beaver) # " diff --git a/include/configs/cardhu.h b/include/configs/cardhu.h index 59f429c..1616a54 100644 --- a/include/configs/cardhu.h +++ b/include/configs/cardhu.h @@ -26,8 +26,6 @@ /* Enable fdt support for Cardhu. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra30-cardhu -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra30 (Cardhu) # " diff --git a/include/configs/colibri_t20_iris.h b/include/configs/colibri_t20_iris.h index 6f9e08c..3ce1f9b 100644 --- a/include/configs/colibri_t20_iris.h +++ b/include/configs/colibri_t20_iris.h @@ -11,8 +11,6 @@ /* Enable FDT support */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-colibri_t20_iris -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (Colibri) # " diff --git a/include/configs/colibri_t30.h b/include/configs/colibri_t30.h index eacff5b..d9e2d86 100644 --- a/include/configs/colibri_t30.h +++ b/include/configs/colibri_t30.h @@ -12,8 +12,6 @@ #include "tegra30-common.h" #define CONFIG_DEFAULT_DEVICE_TREE tegra30-colibri -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE #define V_PROMPT "Colibri T30 # " #define CONFIG_TEGRA_BOARD_STRING "Toradex Colibri T30" diff --git a/include/configs/coreboot.h b/include/configs/coreboot.h index a1a63a0..915245e 100644 --- a/include/configs/coreboot.h +++ b/include/configs/coreboot.h @@ -28,8 +28,6 @@ #define CONFIG_LMB #define CONFIG_OF_LIBFDT -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE #define CONFIG_DEFAULT_DEVICE_TREE link #define CONFIG_BOOTSTAGE diff --git a/include/configs/dalmore.h b/include/configs/dalmore.h index fd774a3..e3bb27f 100644 --- a/include/configs/dalmore.h +++ b/include/configs/dalmore.h @@ -23,8 +23,6 @@ /* Enable fdt support for Dalmore. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra114-dalmore -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra114 (Dalmore) # " diff --git a/include/configs/exynos4-dt.h b/include/configs/exynos4-dt.h index 7dac1a3..27e32da 100644 --- a/include/configs/exynos4-dt.h +++ b/include/configs/exynos4-dt.h @@ -23,8 +23,6 @@ #define CONFIG_SYS_GENERIC_BOARD /* Enable fdt support */ -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE #define CONFIG_SYS_CACHELINE_SIZE 32 diff --git a/include/configs/exynos5-dt.h b/include/configs/exynos5-dt.h index a7c6292..5488363 100644 --- a/include/configs/exynos5-dt.h +++ b/include/configs/exynos5-dt.h @@ -25,8 +25,6 @@ #define CONFIG_EXYNOS_SPL /* Enable fdt support for Exynos5250 */ -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* Allow tracing to be enabled */ #define CONFIG_TRACE diff --git a/include/configs/harmony.h b/include/configs/harmony.h index 3ec0e41..97db202 100644 --- a/include/configs/harmony.h +++ b/include/configs/harmony.h @@ -13,8 +13,6 @@ /* Enable fdt support for Harmony. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-harmony -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (Harmony) # " diff --git a/include/configs/jetson-tk1.h b/include/configs/jetson-tk1.h index d03a66c..dc7e324 100644 --- a/include/configs/jetson-tk1.h +++ b/include/configs/jetson-tk1.h @@ -14,8 +14,6 @@ /* Enable fdt support for Jetson TK1. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra124-jetson-tk1 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra124 (Jetson TK1) # " diff --git a/include/configs/medcom-wide.h b/include/configs/medcom-wide.h index 40155c3..5e52574 100644 --- a/include/configs/medcom-wide.h +++ b/include/configs/medcom-wide.h @@ -14,8 +14,6 @@ /* Enable fdt support for Medcom-Wide. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-medcom-wide -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (Medcom-Wide) # " diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h index 1a82a57..f5e83ff 100644 --- a/include/configs/microblaze-generic.h +++ b/include/configs/microblaze-generic.h @@ -15,8 +15,6 @@ #define MICROBLAZE_V5 1 /* Open Firmware DTS */ -#define CONFIG_OF_CONTROL 1 -#define CONFIG_OF_EMBED 1 #define CONFIG_DEFAULT_DEVICE_TREE microblaze-generic /* linear and spi flash memory */ diff --git a/include/configs/mx6qsabreauto.h b/include/configs/mx6qsabreauto.h index d1639c4..95f4600 100644 --- a/include/configs/mx6qsabreauto.h +++ b/include/configs/mx6qsabreauto.h @@ -45,7 +45,6 @@ #define CONFIG_SYS_I2C_MXC #define CONFIG_SYS_I2C_SPEED 100000 -#define CONFIG_OF_SEPARATE #define CONFIG_DEFAULT_DEVICE_TREE imx6q-sabreauto #endif /* __MX6QSABREAUTO_CONFIG_H */ diff --git a/include/configs/paz00.h b/include/configs/paz00.h index dd0abf8..01cb649 100644 --- a/include/configs/paz00.h +++ b/include/configs/paz00.h @@ -22,8 +22,6 @@ /* Enable fdt support for Paz00. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-paz00 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (Paz00) MOD # " diff --git a/include/configs/plutux.h b/include/configs/plutux.h index a473f23..719d81a 100644 --- a/include/configs/plutux.h +++ b/include/configs/plutux.h @@ -14,8 +14,6 @@ /* Enable fdt support for Plutux. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-plutux -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (Plutux) # " diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h index bf2d25c..4998152 100644 --- a/include/configs/sandbox.h +++ b/include/configs/sandbox.h @@ -35,8 +35,6 @@ /* Number of bits in a C 'long' on this architecture */ #define CONFIG_SANDBOX_BITS_PER_LONG 64 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_HOSTFILE #define CONFIG_OF_LIBFDT #define CONFIG_LMB #define CONFIG_FIT diff --git a/include/configs/seaboard.h b/include/configs/seaboard.h index fc4f976..e61811d 100644 --- a/include/configs/seaboard.h +++ b/include/configs/seaboard.h @@ -21,8 +21,6 @@ /* Enable fdt support for Seaboard. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-seaboard -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (SeaBoard) # " diff --git a/include/configs/tec-ng.h b/include/configs/tec-ng.h index 13baa76..5b4c255 100644 --- a/include/configs/tec-ng.h +++ b/include/configs/tec-ng.h @@ -12,8 +12,6 @@ /* Enable fdt support for tec-ng. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra30-tec-ng -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra30 (TEC-NG) # " diff --git a/include/configs/tec.h b/include/configs/tec.h index 90e7b7a..0598d5d 100644 --- a/include/configs/tec.h +++ b/include/configs/tec.h @@ -14,8 +14,6 @@ /* Enable fdt support for TEC. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-tec -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (TEC) # " diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h index c337e30..23e3c8a 100644 --- a/include/configs/tegra-common-post.h +++ b/include/configs/tegra-common-post.h @@ -69,7 +69,6 @@ /* remove devicetree support */ #ifdef CONFIG_OF_CONTROL -#undef CONFIG_OF_CONTROL #endif /* remove I2C support */ diff --git a/include/configs/trimslice.h b/include/configs/trimslice.h index f81cfa2..2ef010c 100644 --- a/include/configs/trimslice.h +++ b/include/configs/trimslice.h @@ -13,8 +13,6 @@ /* Enable fdt support for TrimSlice. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-trimslice -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (TrimSlice) # " diff --git a/include/configs/venice2.h b/include/configs/venice2.h index 6d4e999..b516d92 100644 --- a/include/configs/venice2.h +++ b/include/configs/venice2.h @@ -14,8 +14,6 @@ /* Enable fdt support for Venice2. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra124-venice2 -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra124 (Venice2) # " diff --git a/include/configs/ventana.h b/include/configs/ventana.h index edf3720..3b9d142 100644 --- a/include/configs/ventana.h +++ b/include/configs/ventana.h @@ -13,8 +13,6 @@ /* Enable fdt support for Ventana. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-ventana -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (Ventana) # " diff --git a/include/configs/whistler.h b/include/configs/whistler.h index 9e09f03..f3bf806 100644 --- a/include/configs/whistler.h +++ b/include/configs/whistler.h @@ -13,8 +13,6 @@ /* Enable fdt support for Whistler. Flash the image in u-boot-dtb.bin */ #define CONFIG_DEFAULT_DEVICE_TREE tegra20-whistler -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE /* High-level configuration options */ #define V_PROMPT "Tegra20 (Whistler) # " diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h index 875cb43..5d6472f 100644 --- a/include/configs/zynq-common.h +++ b/include/configs/zynq-common.h @@ -227,8 +227,6 @@ #define CONFIG_IMAGE_FORMAT_LEGACY /* enable also legacy image format */ /* FDT support */ -#define CONFIG_OF_CONTROL -#define CONFIG_OF_SEPARATE #define CONFIG_DISPLAY_BOARDINFO_LATE /* RSA support */ @@ -273,18 +271,13 @@ #define CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION 1 #define CONFIG_SPL_LIBDISK_SUPPORT #define CONFIG_SPL_FAT_SUPPORT -#if defined(CONFIG_OF_CONTROL) && defined(CONFIG_OF_SEPARATE) -# define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot-dtb.img" -#else -# define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot.img" -#endif +#define CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME "u-boot-dtb.img" #endif /* Disable dcache for SPL just for sure */ #ifdef CONFIG_SPL_BUILD #define CONFIG_SYS_DCACHE_OFF #undef CONFIG_FPGA -#undef CONFIG_OF_CONTROL #endif /* Address in RAM where the parameters must be copied by SPL. */ -- 1.9.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-07 8:43 ` [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* " Masahiro Yamada @ 2014-09-08 15:04 ` Stephen Warren 2014-09-08 15:57 ` Masahiro YAMADA 2014-09-08 19:23 ` Daniel Schwierzeck 1 sibling, 1 reply; 10+ messages in thread From: Stephen Warren @ 2014-09-08 15:04 UTC (permalink / raw) To: u-boot On 09/07/2014 02:43 AM, Masahiro Yamada wrote: > This commit moves: > CONFIG_OF_CONTROL > CONFIG_OF_SEPARATE > CONFIG_OF_EMBED > CONFIG_OF_HOSTFILE > > Because these options are currently not supported for SPL, > the "Device Tree Control" menu does not appear in the SPL > configuration. > > Note: > zynq-common.h should be adjusted so as not to change the > default value of CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME. I don't believe this is the correct approach; CONFIG_OF_CONTROL isn't a user-configurable option, and hence shouldn't show up in *_defconfig. "select OF_CONTROL" in a Kconfig file probably makes sense though. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-08 15:04 ` Stephen Warren @ 2014-09-08 15:57 ` Masahiro YAMADA 2014-09-08 15:58 ` Stephen Warren 2014-09-16 12:05 ` Michal Simek 0 siblings, 2 replies; 10+ messages in thread From: Masahiro YAMADA @ 2014-09-08 15:57 UTC (permalink / raw) To: u-boot Hi Stephen, 2014-09-09 0:04 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>: > I don't believe this is the correct approach; CONFIG_OF_CONTROL isn't a > user-configurable option, and hence shouldn't show up in *_defconfig. > "select OF_CONTROL" in a Kconfig file probably makes sense though. I think it depends on the board (SoC). In my understanding, Zynq boards should work with/without Device Tree control. (Moreover, Zynq boards work with/without SPL) At least as for Zynq, CONFIG_OF_CONTROL ( and CONFIG_SPL too) is a user-configurable option. (Michal, please correct me if I am wrong.) I am not familiar with Tegra SoCs, but do Tegra boards always Device Tree? ( and only work with SPL ?) If so, config TEGRA select SPL select OF_CONTROL looks better? -- Best Regards Masahiro Yamada ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-08 15:57 ` Masahiro YAMADA @ 2014-09-08 15:58 ` Stephen Warren 2014-09-08 16:10 ` Masahiro YAMADA 2014-09-16 12:05 ` Michal Simek 1 sibling, 1 reply; 10+ messages in thread From: Stephen Warren @ 2014-09-08 15:58 UTC (permalink / raw) To: u-boot On 09/08/2014 09:57 AM, Masahiro YAMADA wrote: > Hi Stephen, > > > > 2014-09-09 0:04 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>: > >> I don't believe this is the correct approach; CONFIG_OF_CONTROL isn't a >> user-configurable option, and hence shouldn't show up in *_defconfig. >> "select OF_CONTROL" in a Kconfig file probably makes sense though. > > > I think it depends on the board (SoC). > > In my understanding, Zynq boards should work with/without Device Tree control. > (Moreover, Zynq boards work with/without SPL) > > At least as for Zynq, > CONFIG_OF_CONTROL ( and CONFIG_SPL too) is a user-configurable option. > > (Michal, please correct me if I am wrong.) > > > I am not familiar with Tegra SoCs, but > do Tegra boards always Device Tree? ( and only work with SPL ?) > > If so, > > config TEGRA > select SPL > select OF_CONTROL > > looks better? That looks correct for Tegra. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-08 15:58 ` Stephen Warren @ 2014-09-08 16:10 ` Masahiro YAMADA 2014-09-08 16:25 ` Masahiro YAMADA 0 siblings, 1 reply; 10+ messages in thread From: Masahiro YAMADA @ 2014-09-08 16:10 UTC (permalink / raw) To: u-boot Hi Stephen, 2014-09-09 0:58 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>: > On 09/08/2014 09:57 AM, Masahiro YAMADA wrote: >> >> Hi Stephen, >> >> >> >> 2014-09-09 0:04 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>: >> >>> I don't believe this is the correct approach; CONFIG_OF_CONTROL isn't a >>> user-configurable option, and hence shouldn't show up in *_defconfig. >>> "select OF_CONTROL" in a Kconfig file probably makes sense though. >> >> >> >> I think it depends on the board (SoC). >> >> In my understanding, Zynq boards should work with/without Device Tree >> control. >> (Moreover, Zynq boards work with/without SPL) >> >> At least as for Zynq, >> CONFIG_OF_CONTROL ( and CONFIG_SPL too) is a user-configurable option. >> >> (Michal, please correct me if I am wrong.) >> >> >> I am not familiar with Tegra SoCs, but >> do Tegra boards always Device Tree? ( and only work with SPL ?) >> >> If so, >> >> config TEGRA >> select SPL >> select OF_CONTROL >> >> looks better? > > > That looks correct for Tegra. > OK. I will send v2. CONFIG_OF_CONTROL in tegra defconfigs will go away. (BTW, I forgot to mention a famous board; beaglebone black. am335_boneblack_defconfig disables CONFIG_OF_CONTROL, whereas am335_boneblack_vboot_defconfig enables it. ) -- Best Regards Masahiro Yamada ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-08 16:10 ` Masahiro YAMADA @ 2014-09-08 16:25 ` Masahiro YAMADA 0 siblings, 0 replies; 10+ messages in thread From: Masahiro YAMADA @ 2014-09-08 16:25 UTC (permalink / raw) To: u-boot Hi Samsung developers, Simon Glass, 2014-09-09 1:10 GMT+09:00 Masahiro YAMADA <yamada.m@jp.panasonic.com>: > Hi Stephen, > > > 2014-09-09 0:58 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>: >> On 09/08/2014 09:57 AM, Masahiro YAMADA wrote: >>> >>> Hi Stephen, >>> >>> >>> >>> 2014-09-09 0:04 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>: >>> >>>> I don't believe this is the correct approach; CONFIG_OF_CONTROL isn't a >>>> user-configurable option, and hence shouldn't show up in *_defconfig. >>>> "select OF_CONTROL" in a Kconfig file probably makes sense though. >>> >>> >>> >>> I think it depends on the board (SoC). >>> >>> In my understanding, Zynq boards should work with/without Device Tree >>> control. >>> (Moreover, Zynq boards work with/without SPL) >>> >>> At least as for Zynq, >>> CONFIG_OF_CONTROL ( and CONFIG_SPL too) is a user-configurable option. >>> >>> (Michal, please correct me if I am wrong.) >>> >>> >>> I am not familiar with Tegra SoCs, but >>> do Tegra boards always Device Tree? ( and only work with SPL ?) >>> >>> If so, >>> >>> config TEGRA >>> select SPL >>> select OF_CONTROL >>> >>> looks better? >> >> >> That looks correct for Tegra. >> > > OK. I will send v2. > CONFIG_OF_CONTROL in tegra defconfigs will go away. > > > (BTW, I forgot to mention a famous board; beaglebone black. > > am335_boneblack_defconfig disables CONFIG_OF_CONTROL, > whereas am335_boneblack_vboot_defconfig enables it. ) > Before posting v2 of this series, please let me ask the same question on Exynos and Sandbox Do Exynos boards always need Device Tree to run U-Boot? (that is, CONFIG_OF_CONTROL must be "select"ed.) or Do they work with/without Device Tree? (that is, users can enable/disable via "make menuconfig" or friends.) What about Sandbox? Best Regards Masahiro Yamada ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-08 15:57 ` Masahiro YAMADA 2014-09-08 15:58 ` Stephen Warren @ 2014-09-16 12:05 ` Michal Simek 1 sibling, 0 replies; 10+ messages in thread From: Michal Simek @ 2014-09-16 12:05 UTC (permalink / raw) To: u-boot On 09/08/2014 05:57 PM, Masahiro YAMADA wrote: > Hi Stephen, > > > > 2014-09-09 0:04 GMT+09:00 Stephen Warren <swarren@wwwdotorg.org>: > >> I don't believe this is the correct approach; CONFIG_OF_CONTROL isn't a >> user-configurable option, and hence shouldn't show up in *_defconfig. >> "select OF_CONTROL" in a Kconfig file probably makes sense though. > > > I think it depends on the board (SoC). > > In my understanding, Zynq boards should work with/without Device Tree control. > (Moreover, Zynq boards work with/without SPL) > > At least as for Zynq, > CONFIG_OF_CONTROL ( and CONFIG_SPL too) is a user-configurable option. > > (Michal, please correct me if I am wrong.) I don't want to restrict people with thing which they want to do that's why both options are just there. Thanks, Michal -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: OpenPGP digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20140916/630ae338/attachment.pgp> ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-07 8:43 ` [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* " Masahiro Yamada 2014-09-08 15:04 ` Stephen Warren @ 2014-09-08 19:23 ` Daniel Schwierzeck 2014-09-09 2:45 ` Masahiro Yamada 1 sibling, 1 reply; 10+ messages in thread From: Daniel Schwierzeck @ 2014-09-08 19:23 UTC (permalink / raw) To: u-boot Hi Masahiro, On 07.09.2014 10:43, Masahiro Yamada wrote: > This commit moves: > CONFIG_OF_CONTROL > CONFIG_OF_SEPARATE > CONFIG_OF_EMBED > CONFIG_OF_HOSTFILE > > Because these options are currently not supported for SPL, > the "Device Tree Control" menu does not appear in the SPL > configuration. > > Note: > zynq-common.h should be adjusted so as not to change the > default value of CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME. > > Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> > Cc: Simon Glass <sjg@chromium.org> > Cc: Stephen Warren <swarren@nvidia.com> > Cc: Minkyu Kang <mk7.kang@samsung.com> > Cc: Michal Simek <michal.simek@xilinx.com> > --- [...] > diff --git a/dts/Kconfig b/dts/Kconfig > new file mode 100644 > index 0000000..98b2357 > --- /dev/null > +++ b/dts/Kconfig > @@ -0,0 +1,46 @@ > +# > +# Device Tree Control > +# > +# TODO: > +# This feature is not currently supported for SPL, > +# but this restriction should be removed in the future. > + > +menu "Device Tree Control" > + depends on !SPL_BUILD > + depends on ARM || MICROBLAZE || SANDBOX || X86 I suggest to use boolean symbols HAS_* or SUPPORTS_* like the kernel does. For example: config SUPPORTS_OF_CONTROL bool menu "Device Tree Control" depends on !SPL_BUILD depends on SUPPORTS_OF_CONTROL arch/Kconfig: config ARM bool "ARM architecture" select SUPPORTS_OF_CONTROL > + > +config OF_CONTROL > + bool "Run-time configuration via Device Tree" > + help > + This feature provides for run-time configuration of U-Boot > + via a flattened device tree. > + > +choice > + prompt "Provider of DTB for DT control" > + depends on OF_CONTROL > + default OF_HOSTFILE if SANDBOX > + default OF_SEPARATE > + > +config OF_SEPARATE > + bool "Separate DTB for DT control" > + help > + If this option is enabled, the device tree will be built and > + placed as a separate u-boot.dtb file alongside the U-Boot image. > + > +config OF_EMBED > + bool "Embedded DTB for DT control" > + help > + If this option is enabled, the device tree will be picked up and > + built into the U-Boot image. > + > +config OF_HOSTFILE > + bool "Host filed DTB for DT control" > + depends on SANDBOX > + help > + If this option is enabled, DTB will be read from a file on startup. > + This is only useful for Sandbox. Use the -d flag to U-Boot to > + specify the file to read. > + > +endchoice > + > +endmenu > -- - Daniel ^ permalink raw reply [flat|nested] 10+ messages in thread
* [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig 2014-09-08 19:23 ` Daniel Schwierzeck @ 2014-09-09 2:45 ` Masahiro Yamada 0 siblings, 0 replies; 10+ messages in thread From: Masahiro Yamada @ 2014-09-09 2:45 UTC (permalink / raw) To: u-boot Hi Daniel, On Mon, 08 Sep 2014 21:23:05 +0200 Daniel Schwierzeck <daniel.schwierzeck@gmail.com> wrote: > > > diff --git a/dts/Kconfig b/dts/Kconfig > > new file mode 100644 > > index 0000000..98b2357 > > --- /dev/null > > +++ b/dts/Kconfig > > @@ -0,0 +1,46 @@ > > +# > > +# Device Tree Control > > +# > > +# TODO: > > +# This feature is not currently supported for SPL, > > +# but this restriction should be removed in the future. > > + > > +menu "Device Tree Control" > > + depends on !SPL_BUILD > > + depends on ARM || MICROBLAZE || SANDBOX || X86 > > I suggest to use boolean symbols HAS_* or SUPPORTS_* like the kernel > does. For example: > > config SUPPORTS_OF_CONTROL > bool > > menu "Device Tree Control" > depends on !SPL_BUILD > depends on SUPPORTS_OF_CONTROL > > > arch/Kconfig: > config ARM > bool "ARM architecture" > select SUPPORTS_OF_CONTROL > Good idea, altough HAVE_* seems more common: In Linux 3.17-rc4, $ find . -name 'Kconfig*' | xargs grep HAVE_ | wc 1332 4394 71649 $ find . -name 'Kconfig*' | xargs grep HAS_ | wc 760 2744 40496 $ find . -name 'Kconfig*' | xargs grep SUPPORTS_ | wc 487 1571 26996 Besides, Documentation/kbuild/kconfig-language.txt suggests to do so. ---------------------------8<--------------------------- Adding common features and make the usage configurable ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ It is a common idiom to implement a feature/functionality that are relevant for some architectures but not all. The recommended way to do so is to use a config variable named HAVE_* that is defined in a common Kconfig file and selected by the relevant architectures. An example is the generic IOMAP functionality. We would in lib/Kconfig see: # Generic IOMAP is used to ... config HAVE_GENERIC_IOMAP config GENERIC_IOMAP depends on HAVE_GENERIC_IOMAP && FOO And in lib/Makefile we would see: obj-$(CONFIG_GENERIC_IOMAP) += iomap.o For each architecture using the generic IOMAP functionality we would see: config X86 select ... select HAVE_GENERIC_IOMAP select ... Note: we use the existing config option and avoid creating a new config variable to select HAVE_GENERIC_IOMAP. Note: the use of the internal config variable HAVE_GENERIC_IOMAP, it is introduced to overcome the limitation of select which will force a config option to 'y' no matter the dependencies. The dependencies are moved to the symbol GENERIC_IOMAP and we avoid the situation where select forces a symbol equals to 'y'. ---------------------------->8---------------------------- I was also thinking to add HAVE_SPL_SUPPORT. config SPL bool "Enable SPL" depends on HAVE_SPL_SUPPORT Best Regards Masahiro Yamada ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2014-09-16 12:05 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <30670792.47881410234247727.JavaMail.weblogic@epv6ml04>
2014-09-11 2:57 ` [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* to Kconfig Jaehoon Chung
2014-09-07 8:43 [U-Boot] [PATCH 0/10] Move some CONFIGs " Masahiro Yamada
2014-09-07 8:43 ` [U-Boot] [PATCH 09/10] kconfig: move CONFIG_OF_* " Masahiro Yamada
2014-09-08 15:04 ` Stephen Warren
2014-09-08 15:57 ` Masahiro YAMADA
2014-09-08 15:58 ` Stephen Warren
2014-09-08 16:10 ` Masahiro YAMADA
2014-09-08 16:25 ` Masahiro YAMADA
2014-09-16 12:05 ` Michal Simek
2014-09-08 19:23 ` Daniel Schwierzeck
2014-09-09 2:45 ` Masahiro Yamada
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox