From: Masahiro Yamada Date: Tue, 11 Aug 2015 22:31:54 +0000 (+0900) Subject: of: flip CONFIG_SPL_DISABLE_OF_CONTROL into CONFIG_SPL_OF_CONTROL X-Git-Url: http://git.dujemihanovic.xyz/img/sics.gif?a=commitdiff_plain;h=dffb86e468c8e02ba77283989aefef214d904dc5;p=u-boot.git of: flip CONFIG_SPL_DISABLE_OF_CONTROL into CONFIG_SPL_OF_CONTROL As we discussed a couple of times, negative CONFIG options make our life difficult; CONFIG_SYS_NO_FLASH, CONFIG_SYS_DCACHE_OFF, ... and here is another one. Now, there are three boards enabling OF_CONTROL on SPL: - socfpga_arria5_defconfig - socfpga_cyclone5_defconfig - socfpga_socrates_defconfig This commit adds CONFIG_SPL_OF_CONTROL for them and deletes CONFIG_SPL_DISABLE_OF_CONTROL from the other boards to invert the logic. Signed-off-by: Masahiro Yamada Reviewed-by: Tom Rini Reviewed-by: Simon Glass --- diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 735d971f4e..a99ae28444 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -658,7 +658,6 @@ config ARCH_SUNXI select DM_USB select OF_CONTROL select OF_SEPARATE - select SPL_DISABLE_OF_CONTROL select USB select USB_STORAGE select USB_KEYBOARD @@ -684,7 +683,6 @@ config ARCH_ZYNQ select CPU_V7 select SUPPORT_SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL select DM select DM_SPI select DM_SPI_FLASH @@ -821,7 +819,6 @@ config ARCH_UNIPHIER select DM select DM_SERIAL select DM_I2C - select SPL_DISABLE_OF_CONTROL help Support for UniPhier SoC family developed by Socionext Inc. (formerly, System LSI Business Division of Panasonic Corporation) diff --git a/arch/arm/cpu/armv7/s5pc1xx/Kconfig b/arch/arm/cpu/armv7/s5pc1xx/Kconfig index 792ef595e4..04acdaad79 100644 --- a/arch/arm/cpu/armv7/s5pc1xx/Kconfig +++ b/arch/arm/cpu/armv7/s5pc1xx/Kconfig @@ -7,12 +7,10 @@ choice config TARGET_S5P_GONI bool "S5P Goni board" select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_SMDKC100 bool "Support smdkc100 board" select OF_CONTROL - select SPL_DISABLE_OF_CONTROL endchoice diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig index 37b89b0013..a6a75974d7 100644 --- a/arch/arm/mach-exynos/Kconfig +++ b/arch/arm/mach-exynos/Kconfig @@ -8,7 +8,6 @@ config TARGET_SMDKV310 select SUPPORT_SPL bool "Exynos4210 SMDKV310 board" select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_TRATS bool "Exynos4210 Trats board" @@ -29,7 +28,6 @@ config TARGET_ODROID config TARGET_ODROID_XU3 bool "Exynos5422 Odroid board" select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_ARNDALE bool "Exynos5250 Arndale board" @@ -37,19 +35,16 @@ config TARGET_ARNDALE select CPU_V7_HAS_VIRT select SUPPORT_SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_SMDK5250 bool "SMDK5250 board" select SUPPORT_SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_SNOW bool "Snow board" select SUPPORT_SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_SPRING bool "Spring board" @@ -61,19 +56,16 @@ config TARGET_SMDK5420 bool "SMDK5420 board" select SUPPORT_SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_PEACH_PI bool "Peach Pi board" select SUPPORT_SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL config TARGET_PEACH_PIT bool "Peach Pit board" select SUPPORT_SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL endchoice diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig index ba0b865bb9..a5b7e0d22d 100644 --- a/arch/arm/mach-tegra/Kconfig +++ b/arch/arm/mach-tegra/Kconfig @@ -5,7 +5,6 @@ config TEGRA_ARMV7_COMMON select SUPPORT_SPL select SPL select OF_CONTROL - select SPL_DISABLE_OF_CONTROL select CPU_V7 select DM select DM_SPI_FLASH diff --git a/common/spl/spl.c b/common/spl/spl.c index 94b01da56c..45cf92526c 100644 --- a/common/spl/spl.c +++ b/common/spl/spl.c @@ -158,7 +158,7 @@ int spl_init(void) gd->malloc_ptr = 0; #endif if (IS_ENABLED(CONFIG_OF_CONTROL) && - !IS_ENABLED(CONFIG_SPL_DISABLE_OF_CONTROL)) { + IS_ENABLED(CONFIG_SPL_OF_CONTROL)) { ret = fdtdec_setup(); if (ret) { debug("fdtdec_setup() returned error %d\n", ret); diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig index b141255632..b52ddfdc7a 100644 --- a/configs/am335x_boneblack_vboot_defconfig +++ b/configs/am335x_boneblack_vboot_defconfig @@ -12,5 +12,4 @@ CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT,ENABLE_VBOOT" # CONFIG_CMD_FLASH is not set # CONFIG_CMD_SETEXPR is not set CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_SPI_FLASH=y diff --git a/configs/arches_defconfig b/configs/arches_defconfig index f979a64560..9084a3a904 100644 --- a/configs/arches_defconfig +++ b/configs/arches_defconfig @@ -4,4 +4,3 @@ CONFIG_TARGET_CANYONLANDS=y CONFIG_ARCHES=y CONFIG_DEFAULT_DEVICE_TREE="arches" CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y diff --git a/configs/canyonlands_defconfig b/configs/canyonlands_defconfig index 09172b1dfd..44d4fbdb9d 100644 --- a/configs/canyonlands_defconfig +++ b/configs/canyonlands_defconfig @@ -4,5 +4,4 @@ CONFIG_TARGET_CANYONLANDS=y CONFIG_CANYONLANDS=y CONFIG_DEFAULT_DEVICE_TREE="canyonlands" CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_OF_EMBED=y diff --git a/configs/galileo_defconfig b/configs/galileo_defconfig index 3f80483aef..6ef1090e1e 100644 --- a/configs/galileo_defconfig +++ b/configs/galileo_defconfig @@ -11,7 +11,6 @@ CONFIG_BOOTSTAGE=y CONFIG_BOOTSTAGE_REPORT=y CONFIG_CMD_BOOTSTAGE=y CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_SPI_FLASH=y CONFIG_NETDEVICES=y CONFIG_ETH_DESIGNWARE=y diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig index 5de1bcd89a..53829d4547 100644 --- a/configs/microblaze-generic_defconfig +++ b/configs/microblaze-generic_defconfig @@ -4,6 +4,5 @@ CONFIG_DEFAULT_DEVICE_TREE="microblaze-generic" CONFIG_SPL=y # CONFIG_CMD_SETEXPR is not set CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_OF_EMBED=y CONFIG_SYS_PROMPT="U-Boot-mONStR> " diff --git a/configs/odroid_defconfig b/configs/odroid_defconfig index 0a4f63b6e0..5c355ba31d 100644 --- a/configs/odroid_defconfig +++ b/configs/odroid_defconfig @@ -11,7 +11,6 @@ CONFIG_DEFAULT_DEVICE_TREE="exynos4412-odroid" CONFIG_CMD_PMIC=y CONFIG_CMD_REGULATOR=y CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_DM_I2C=y CONFIG_DM_I2C_COMPAT=y CONFIG_DM_PMIC=y diff --git a/configs/origen_defconfig b/configs/origen_defconfig index d69d497aa6..6ddfc9783b 100644 --- a/configs/origen_defconfig +++ b/configs/origen_defconfig @@ -10,7 +10,6 @@ CONFIG_SPL=y # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_USB=y CONFIG_DM_USB=y CONFIG_SYS_PROMPT="ORIGEN # " diff --git a/configs/s5pc210_universal_defconfig b/configs/s5pc210_universal_defconfig index 1a49978c70..36d294c6bd 100644 --- a/configs/s5pc210_universal_defconfig +++ b/configs/s5pc210_universal_defconfig @@ -9,7 +9,6 @@ CONFIG_DEFAULT_DEVICE_TREE="exynos4210-universal_c210" # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_USB=y CONFIG_DM_USB=y CONFIG_SYS_PROMPT="Universal # " diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig index 4d1cd21c15..f406db7cfd 100644 --- a/configs/socfpga_arria5_defconfig +++ b/configs/socfpga_arria5_defconfig @@ -6,6 +6,7 @@ CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_OF_CONTROL=y +CONFIG_SPL_OF_CONTROL=y CONFIG_SPI_FLASH=y CONFIG_SPL_DM=y CONFIG_SPL_MMC_SUPPORT=y diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig index ae3a1dea91..75207bf5d0 100644 --- a/configs/socfpga_cyclone5_defconfig +++ b/configs/socfpga_cyclone5_defconfig @@ -6,6 +6,7 @@ CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_OF_CONTROL=y +CONFIG_SPL_OF_CONTROL=y CONFIG_SPI_FLASH=y CONFIG_DM_ETH=y CONFIG_NETDEVICES=y diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig index 71d4711679..c38f1ab345 100644 --- a/configs/socfpga_socrates_defconfig +++ b/configs/socfpga_socrates_defconfig @@ -6,6 +6,7 @@ CONFIG_SPL=y # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set CONFIG_OF_CONTROL=y +CONFIG_SPL_OF_CONTROL=y CONFIG_SPI_FLASH=y CONFIG_DM_ETH=y CONFIG_NETDEVICES=y diff --git a/configs/trats2_defconfig b/configs/trats2_defconfig index f0dd2b9fa2..4b290db02c 100644 --- a/configs/trats2_defconfig +++ b/configs/trats2_defconfig @@ -10,7 +10,6 @@ CONFIG_DEFAULT_DEVICE_TREE="exynos4412-trats2" # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_USB=y CONFIG_DM_USB=y CONFIG_SYS_PROMPT="Trats2 # " diff --git a/configs/trats_defconfig b/configs/trats_defconfig index 6412f31f8a..9c24cae007 100644 --- a/configs/trats_defconfig +++ b/configs/trats_defconfig @@ -9,7 +9,6 @@ CONFIG_DEFAULT_DEVICE_TREE="exynos4210-trats" # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set CONFIG_OF_CONTROL=y -CONFIG_SPL_DISABLE_OF_CONTROL=y CONFIG_USB=y CONFIG_DM_USB=y CONFIG_SYS_PROMPT="Trats # " diff --git a/dts/Kconfig b/dts/Kconfig index 09cfefbd35..d72a90905f 100644 --- a/dts/Kconfig +++ b/dts/Kconfig @@ -14,9 +14,9 @@ config OF_CONTROL This feature provides for run-time configuration of U-Boot via a flattened device tree. -config SPL_DISABLE_OF_CONTROL - bool "Disable run-time configuration via Device Tree in SPL" - depends on OF_CONTROL +config SPL_OF_CONTROL + bool "Enable run-time configuration via Device Tree in SPL" + depends on SPL && OF_CONTROL help Some boards use device tree in U-Boot but only have 4KB of SRAM which is not enough to support device tree. Enable this option to diff --git a/include/config_uncmd_spl.h b/include/config_uncmd_spl.h index 86cc0c3c5d..2741fc8a8e 100644 --- a/include/config_uncmd_spl.h +++ b/include/config_uncmd_spl.h @@ -20,7 +20,7 @@ #undef CONFIG_CMD_SNTP #undef CONFIG_CMD_TFTPPUT #undef CONFIG_CMD_TFTPSRV -#ifdef CONFIG_SPL_DISABLE_OF_CONTROL +#ifndef CONFIG_SPL_OF_CONTROL #undef CONFIG_OF_CONTROL #endif diff --git a/include/fdtdec.h b/include/fdtdec.h index 2ef3f662cc..5796e272b2 100644 --- a/include/fdtdec.h +++ b/include/fdtdec.h @@ -46,7 +46,7 @@ struct fdt_memory { #endif #ifdef CONFIG_OF_CONTROL -# if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_DISABLE_OF_CONTROL) +# if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_SPL_OF_CONTROL) # define OF_CONTROL 0 # else # define OF_CONTROL 1 diff --git a/lib/Makefile b/lib/Makefile index db7d9806df..3b6a74bae7 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -49,7 +49,13 @@ obj-$(CONFIG_BITREVERSE) += bitrev.o obj-y += list_sort.o endif -ifndef CONFIG_SPL_DISABLE_OF_CONTROL +ifndef CONFIG_SPL_BUILD +obj-$(CONFIG_OF_LIBFDT) += libfdt/ +obj-$(CONFIG_OF_CONTROL) += fdtdec_common.o +obj-$(CONFIG_OF_CONTROL) += fdtdec.o +endif + +ifdef CONFIG_SPL_OF_CONTROL obj-$(CONFIG_OF_LIBFDT) += libfdt/ obj-$(CONFIG_OF_CONTROL) += fdtdec_common.o obj-$(CONFIG_OF_CONTROL) += fdtdec.o diff --git a/scripts/Makefile.uncmd_spl b/scripts/Makefile.uncmd_spl index a0630d1ef1..b90fcb8186 100644 --- a/scripts/Makefile.uncmd_spl +++ b/scripts/Makefile.uncmd_spl @@ -3,7 +3,7 @@ # TODO: Invent a better way ifdef CONFIG_SPL_BUILD -ifdef CONFIG_SPL_DISABLE_OF_CONTROL +ifndef CONFIG_SPL_OF_CONTROL CONFIG_OF_CONTROL= endif