From c1c3fe23070ac924e65208abbf8d2396bcc08008 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Thu, 3 Aug 2017 12:21:59 -0600 Subject: [PATCH] env: Convert CONFIG_ENV_IS_IN... to a choice At present we support multiple environment drivers but there is not way to select between them at run time. Also settings related to the position and size of the environment area are global (i.e. apply to all locations). Until these limitations are removed we cannot really support more than one environment location. Adjust the location to be a choice so that only one can be selected. By default the environment is 'nowhere', meaning that the environment exists only in memory and cannot be saved. Also expand the help for the 'nowhere' option and move it to the top since it is the default. Signed-off-by: Simon Glass [trini: Move all of the imply logic to default X if Y so it works again] Signed-off-by: Tom Rini --- arch/arm/Kconfig | 2 -- arch/arm/mach-exynos/Kconfig | 1 - arch/arm/mach-imx/mx6/Kconfig | 1 - arch/arm/mach-imx/mx7/Kconfig | 1 - arch/arm/mach-integrator/Kconfig | 2 -- arch/arm/mach-mvebu/Kconfig | 1 - arch/arm/mach-sunxi/Kconfig | 6 ---- arch/arm/mach-tegra/Kconfig | 3 -- arch/m68k/Kconfig | 8 ----- arch/mips/Kconfig | 5 --- arch/powerpc/Kconfig | 1 - arch/powerpc/cpu/mpc83xx/Kconfig | 6 ---- arch/powerpc/cpu/mpc85xx/Kconfig | 4 --- arch/powerpc/cpu/mpc86xx/Kconfig | 1 - arch/sh/Kconfig | 3 -- arch/x86/cpu/baytrail/Kconfig | 1 - arch/x86/cpu/broadwell/Kconfig | 1 - arch/x86/cpu/coreboot/Kconfig | 1 - arch/x86/cpu/ivybridge/Kconfig | 1 - arch/x86/cpu/qemu/Kconfig | 1 - arch/x86/cpu/quark/Kconfig | 1 - arch/x86/cpu/queensbay/Kconfig | 1 - board/ti/common/Kconfig | 1 - configs/boston32r2_defconfig | 1 + configs/boston32r2el_defconfig | 1 + configs/boston64r2_defconfig | 1 + configs/boston64r2el_defconfig | 1 + configs/edison_defconfig | 1 + configs/malta64_defconfig | 1 + configs/malta64el_defconfig | 1 + configs/malta_defconfig | 1 + configs/maltael_defconfig | 1 + configs/microblaze-generic_defconfig | 1 + configs/qemu_mips64_defconfig | 1 + configs/qemu_mips64el_defconfig | 1 + configs/qemu_mips_defconfig | 1 + configs/qemu_mipsel_defconfig | 1 + configs/r8a7795_ulcb_defconfig | 1 + configs/r8a7796_ulcb_defconfig | 1 + env/Kconfig | 47 ++++++++++++++++++++++++---- include/configs/edison.h | 1 - include/configs/ulcb.h | 1 - 42 files changed, 57 insertions(+), 61 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 39b001fd53..fe653210ae 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -493,7 +493,6 @@ config ARCH_BCM283X select DM_GPIO select OF_CONTROL imply FAT_WRITE - imply ENV_IS_IN_FAT config TARGET_VEXPRESS_CA15_TC2 bool "Support vexpress_ca15_tc2" @@ -1039,7 +1038,6 @@ config ARCH_UNIPHIER select SPL_PINCTRL if SPL select SUPPORT_SPL imply FAT_WRITE - imply ENV_IS_IN_MMC help Support for UniPhier SoC family developed by Socionext Inc. (formerly, System LSI Business Division of Panasonic Corporation) diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig index 8b1389f30f..2fb84f9453 100644 --- a/arch/arm/mach-exynos/Kconfig +++ b/arch/arm/mach-exynos/Kconfig @@ -8,7 +8,6 @@ config ARCH_EXYNOS4 bool "Exynos4 SoC family" select CPU_V7 select BOARD_EARLY_INIT_F - imply ENV_IS_IN_MMC help Samsung Exynos4 SoC family are based on ARM Cortex-A9 CPU. There are multiple SoCs in this family including Exynos4210, Exynos4412, diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig index 9bae748c67..6461c88b17 100644 --- a/arch/arm/mach-imx/mx6/Kconfig +++ b/arch/arm/mach-imx/mx6/Kconfig @@ -30,7 +30,6 @@ config MX6SL config MX6SX select ROM_UNIFIED_SECTIONS bool - imply ENV_IS_IN_MMC config MX6SLL select ROM_UNIFIED_SECTIONS diff --git a/arch/arm/mach-imx/mx7/Kconfig b/arch/arm/mach-imx/mx7/Kconfig index 7053697f9b..aea85265ef 100644 --- a/arch/arm/mach-imx/mx7/Kconfig +++ b/arch/arm/mach-imx/mx7/Kconfig @@ -13,7 +13,6 @@ config MX7D select ROM_UNIFIED_SECTIONS imply CMD_FUSE bool - imply ENV_IS_IN_MMC choice prompt "MX7 board select" diff --git a/arch/arm/mach-integrator/Kconfig b/arch/arm/mach-integrator/Kconfig index 5146e51f9c..d506ee5b39 100644 --- a/arch/arm/mach-integrator/Kconfig +++ b/arch/arm/mach-integrator/Kconfig @@ -11,13 +11,11 @@ config ARCH_INTEGRATOR_AP config ARCH_INTEGRATOR_CP bool "Support Integrator/CP platform" select ARCH_CINTEGRATOR - imply ENV_IS_IN_FLASH endchoice config ARCH_CINTEGRATOR bool - imply ENV_IS_IN_FLASH choice prompt "Integrator core module select" diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig index 1b12b33060..01d700bf2e 100644 --- a/arch/arm/mach-mvebu/Kconfig +++ b/arch/arm/mach-mvebu/Kconfig @@ -32,7 +32,6 @@ config ARMADA_38X config ARMADA_XP bool select ARMADA_32BIT - imply ENV_IS_IN_SPI_FLASH # ARMv8 SoCs... config ARMADA_3700 diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig index 386befb4e7..2cd7bae078 100644 --- a/arch/arm/mach-sunxi/Kconfig +++ b/arch/arm/mach-sunxi/Kconfig @@ -62,7 +62,6 @@ config MACH_SUNXI_H3_H5 select SUNXI_DRAM_DW_32BIT select SUNXI_GEN_SUN6I select SUPPORT_SPL - imply ENV_IS_IN_MMC choice prompt "Sunxi SoC Variant" @@ -74,7 +73,6 @@ config MACH_SUN4I select ARM_CORTEX_CPU_IS_UP select SUNXI_GEN_SUN4I select SUPPORT_SPL - imply ENV_IS_IN_MMC config MACH_SUN5I bool "sun5i (Allwinner A13)" @@ -92,7 +90,6 @@ config MACH_SUN6I select SUNXI_GEN_SUN6I select SUPPORT_SPL select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT - imply ENV_IS_IN_MMC config MACH_SUN7I bool "sun7i (Allwinner A20)" @@ -103,7 +100,6 @@ config MACH_SUN7I select SUNXI_GEN_SUN4I select SUPPORT_SPL select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT - imply ENV_IS_IN_MMC config MACH_SUN8I_A23 bool "sun8i (Allwinner A23)" @@ -114,7 +110,6 @@ config MACH_SUN8I_A23 select SUNXI_GEN_SUN6I select SUPPORT_SPL select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT - imply ENV_IS_IN_MMC config MACH_SUN8I_A33 bool "sun8i (Allwinner A33)" @@ -140,7 +135,6 @@ config MACH_SUN8I_H3 select ARCH_SUPPORT_PSCI select MACH_SUNXI_H3_H5 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT - imply ENV_IS_IN_MMC config MACH_SUN8I_R40 bool "sun8i (Allwinner R40)" diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig index 58085dc0a3..51e50907d2 100644 --- a/arch/arm/mach-tegra/Kconfig +++ b/arch/arm/mach-tegra/Kconfig @@ -60,7 +60,6 @@ config TEGRA_ARMV8_COMMON bool "Tegra 64-bit common options" select ARM64 select TEGRA_COMMON - imply ENV_IS_IN_MMC choice prompt "Tegra SoC select" @@ -78,7 +77,6 @@ config TEGRA30 select ARM_ERRATA_743622 select ARM_ERRATA_751472 select TEGRA_ARMV7_COMMON - imply ENV_IS_IN_MMC config TEGRA114 bool "Tegra114 family" @@ -87,7 +85,6 @@ config TEGRA114 config TEGRA124 bool "Tegra124 family" select TEGRA_ARMV7_COMMON - imply ENV_IS_IN_MMC imply REGMAP imply SYSCON diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig index 88e7d6a7b6..26509b73c6 100644 --- a/arch/m68k/Kconfig +++ b/arch/m68k/Kconfig @@ -10,7 +10,6 @@ config MCF520x config MCF52x2 bool - imply ENV_IS_IN_FLASH config MCF523x bool @@ -23,7 +22,6 @@ config MCF5301x config MCF532x bool - imply ENV_IS_IN_FLASH config MCF537x bool @@ -39,7 +37,6 @@ config MCF5227x config MCF547x_8x bool - imply ENV_IS_IN_FLASH # processor type config M5208 @@ -73,7 +70,6 @@ config M5275 config M5282 bool select MCF52x2 - imply ENV_IS_IN_FLASH config M5307 bool @@ -111,12 +107,10 @@ config M52277 config M547x bool select MCF547x_8x - imply ENV_IS_IN_FLASH config M548x bool select MCF547x_8x - imply ENV_IS_IN_FLASH choice prompt "Target select" @@ -197,12 +191,10 @@ config TARGET_M54455EVB config TARGET_M5475EVB bool "Support M5475EVB" select M547x - imply ENV_IS_IN_FLASH config TARGET_M5485EVB bool "Support M5485EVB" select M548x - imply ENV_IS_IN_FLASH config TARGET_AMCORE bool "Support AMCORE" diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index b53206bf8e..d07b92d1b4 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -21,7 +21,6 @@ config TARGET_QEMU_MIPS select SUPPORTS_CPU_MIPS64_R1 select SUPPORTS_CPU_MIPS64_R2 select ROM_EXCEPTION_VECTORS - imply ENV_IS_IN_FLASH config TARGET_MALTA bool "Support malta" @@ -43,7 +42,6 @@ config TARGET_MALTA select SWAP_IO_SPACE select MIPS_L1_CACHE_SHIFT_6 select ROM_EXCEPTION_VECTORS - imply ENV_IS_IN_FLASH config TARGET_VCT bool "Support vct" @@ -85,7 +83,6 @@ config ARCH_BMIPS select CPU select RAM select SYSRESET - imply ENV_IS_NOWHERE config MACH_PIC32 bool "Support Microchip PIC32" @@ -110,7 +107,6 @@ config TARGET_BOSTON select SUPPORTS_CPU_MIPS64_R2 select SUPPORTS_CPU_MIPS64_R6 select ROM_EXCEPTION_VECTORS - imply ENV_IS_IN_FLASH config TARGET_XILFPGA bool "Support Imagination Xilfpga" @@ -200,7 +196,6 @@ config CPU_MIPS64_R2 bool "MIPS64 Release 2" depends on SUPPORTS_CPU_MIPS64_R2 select 64BIT - imply ENV_IS_IN_FLASH help Choose this option to build a kernel for release 2 through 5 of the MIPS64 architecture. diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 7ac5cbfca6..e4b3043fa2 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -28,7 +28,6 @@ config MPC86xx bool "MPC86xx" select SYS_FSL_DDR select SYS_FSL_DDR_BE - imply ENV_IS_IN_FLASH imply CMD_REGINFO config 8xx diff --git a/arch/powerpc/cpu/mpc83xx/Kconfig b/arch/powerpc/cpu/mpc83xx/Kconfig index c66d6616a4..a3779734c1 100644 --- a/arch/powerpc/cpu/mpc83xx/Kconfig +++ b/arch/powerpc/cpu/mpc83xx/Kconfig @@ -13,7 +13,6 @@ config TARGET_MPC8308_P1M config TARGET_SBC8349 bool "Support sbc8349" - imply ENV_IS_IN_FLASH config TARGET_VE8313 bool "Support ve8313" @@ -40,7 +39,6 @@ config TARGET_MPC8323ERDB config TARGET_MPC832XEMDS bool "Support MPC832XEMDS" select BOARD_EARLY_INIT_F - imply ENV_IS_IN_FLASH config TARGET_MPC8349EMDS bool "Support MPC8349EMDS" @@ -52,7 +50,6 @@ config TARGET_MPC8349EMDS config TARGET_MPC8349ITX bool "Support MPC8349ITX" imply CMD_IRQ - imply ENV_IS_IN_FLASH config TARGET_MPC837XEMDS bool "Support MPC837XEMDS" @@ -77,13 +74,11 @@ config TARGET_SUVD3 bool "Support suvd3" imply CMD_CRAMFS imply FS_CRAMFS - imply ENV_IS_IN_FLASH config TARGET_TUXX1 bool "Support tuxx1" imply CMD_CRAMFS imply FS_CRAMFS - imply ENV_IS_IN_FLASH config TARGET_TQM834X bool "Support TQM834x" @@ -95,7 +90,6 @@ config TARGET_HRCON config TARGET_STRIDER bool "Support strider" select SYS_FSL_ERRATUM_ESDHC111 - imply ENV_IS_IN_FLASH imply CMD_PCA953X endchoice diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig index ccdf103624..92187d371b 100644 --- a/arch/powerpc/cpu/mpc85xx/Kconfig +++ b/arch/powerpc/cpu/mpc85xx/Kconfig @@ -19,7 +19,6 @@ choice config TARGET_SBC8548 bool "Support sbc8548" select ARCH_MPC8548 - imply ENV_IS_IN_FLASH config TARGET_SOCRATES bool "Support socrates" @@ -105,7 +104,6 @@ config TARGET_MPC8544DS config TARGET_MPC8548CDS bool "Support MPC8548CDS" select ARCH_MPC8548 - imply ENV_IS_IN_FLASH config TARGET_MPC8555CDS bool "Support MPC8555CDS" @@ -565,7 +563,6 @@ config ARCH_MPC8548 select SYS_FSL_SEC_BE select SYS_FSL_SEC_COMPAT_2 select SYS_PPC_E500_USE_DEBUG_TLB - imply ENV_IS_IN_FLASH imply CMD_REGINFO config ARCH_MPC8555 @@ -616,7 +613,6 @@ config ARCH_MPC8572 select SYS_PPC_E500_USE_DEBUG_TLB select FSL_ELBC imply CMD_NAND - imply ENV_IS_IN_FLASH config ARCH_P1010 bool diff --git a/arch/powerpc/cpu/mpc86xx/Kconfig b/arch/powerpc/cpu/mpc86xx/Kconfig index fe56efdf55..2cc180da38 100644 --- a/arch/powerpc/cpu/mpc86xx/Kconfig +++ b/arch/powerpc/cpu/mpc86xx/Kconfig @@ -40,7 +40,6 @@ config ARCH_MPC8641 select FSL_LAW select SYS_FSL_HAS_DDR1 select SYS_FSL_HAS_DDR2 - imply ENV_IS_IN_FLASH config FSL_LAW bool diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index fa32df02fc..d20761e66c 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig @@ -3,16 +3,13 @@ menu "SuperH architecture" config CPU_SH2 bool - imply ENV_IS_IN_FLASH config CPU_SH2A bool select CPU_SH2 - imply ENV_IS_IN_FLASH config CPU_SH3 bool - imply ENV_IS_IN_FLASH config CPU_SH4 bool diff --git a/arch/x86/cpu/baytrail/Kconfig b/arch/x86/cpu/baytrail/Kconfig index 9374c121f9..75dbbc27f1 100644 --- a/arch/x86/cpu/baytrail/Kconfig +++ b/arch/x86/cpu/baytrail/Kconfig @@ -10,7 +10,6 @@ config INTEL_BAYTRAIL select ARCH_MISC_INIT if !EFI imply HAVE_INTEL_ME if !EFI imply ENABLE_MRC_CACHE - imply ENV_IS_IN_SPI_FLASH imply AHCI_PCI imply ICH_SPI imply INTEL_ICH6_GPIO diff --git a/arch/x86/cpu/broadwell/Kconfig b/arch/x86/cpu/broadwell/Kconfig index b421f18202..bc2dba2bd7 100644 --- a/arch/x86/cpu/broadwell/Kconfig +++ b/arch/x86/cpu/broadwell/Kconfig @@ -9,7 +9,6 @@ config INTEL_BROADWELL select ARCH_EARLY_INIT_R imply HAVE_INTEL_ME imply ENABLE_MRC_CACHE - imply ENV_IS_IN_SPI_FLASH imply AHCI_PCI imply ICH_SPI imply INTEL_BROADWELL_GPIO diff --git a/arch/x86/cpu/coreboot/Kconfig b/arch/x86/cpu/coreboot/Kconfig index d4e0587fc5..60eb45f9d0 100644 --- a/arch/x86/cpu/coreboot/Kconfig +++ b/arch/x86/cpu/coreboot/Kconfig @@ -3,7 +3,6 @@ if TARGET_COREBOOT config SYS_COREBOOT bool default y - imply ENV_IS_NOWHERE imply AHCI_PCI imply E1000 imply ICH_SPI diff --git a/arch/x86/cpu/ivybridge/Kconfig b/arch/x86/cpu/ivybridge/Kconfig index 00f99d6b11..c214ea0efe 100644 --- a/arch/x86/cpu/ivybridge/Kconfig +++ b/arch/x86/cpu/ivybridge/Kconfig @@ -10,7 +10,6 @@ config NORTHBRIDGE_INTEL_IVYBRIDGE select CACHE_MRC_BIN if HAVE_MRC imply HAVE_INTEL_ME imply ENABLE_MRC_CACHE - imply ENV_IS_IN_SPI_FLASH imply AHCI_PCI imply ICH_SPI imply INTEL_ICH6_GPIO diff --git a/arch/x86/cpu/qemu/Kconfig b/arch/x86/cpu/qemu/Kconfig index fdf5ae338e..da378128fe 100644 --- a/arch/x86/cpu/qemu/Kconfig +++ b/arch/x86/cpu/qemu/Kconfig @@ -7,7 +7,6 @@ config QEMU bool select ARCH_EARLY_INIT_R - imply ENV_IS_NOWHERE imply AHCI_PCI imply E1000 imply SYS_NS16550 diff --git a/arch/x86/cpu/quark/Kconfig b/arch/x86/cpu/quark/Kconfig index 7ec46e95ef..0ed724813d 100644 --- a/arch/x86/cpu/quark/Kconfig +++ b/arch/x86/cpu/quark/Kconfig @@ -10,7 +10,6 @@ config INTEL_QUARK select ARCH_EARLY_INIT_R select ARCH_MISC_INIT imply ENABLE_MRC_CACHE - imply ENV_IS_IN_SPI_FLASH imply ETH_DESIGNWARE imply ICH_SPI imply INTEL_ICH6_GPIO diff --git a/arch/x86/cpu/queensbay/Kconfig b/arch/x86/cpu/queensbay/Kconfig index d1b04c952a..835de85268 100644 --- a/arch/x86/cpu/queensbay/Kconfig +++ b/arch/x86/cpu/queensbay/Kconfig @@ -9,7 +9,6 @@ config INTEL_QUEENSBAY select HAVE_FSP select HAVE_CMC select ARCH_EARLY_INIT_R - imply ENV_IS_IN_SPI_FLASH imply AHCI_PCI imply ICH_SPI imply INTEL_ICH6_GPIO diff --git a/board/ti/common/Kconfig b/board/ti/common/Kconfig index c81baa12be..c21eb8c2d2 100644 --- a/board/ti/common/Kconfig +++ b/board/ti/common/Kconfig @@ -42,4 +42,3 @@ config TI_COMMON_CMD_OPTIONS imply CMD_SPI imply CMD_TIME imply CMD_USB if USB - imply ENV_IS_IN_FAT if MMC_OMAP_HS diff --git a/configs/boston32r2_defconfig b/configs/boston32r2_defconfig index 312924983d..48983f59a1 100644 --- a/configs/boston32r2_defconfig +++ b/configs/boston32r2_defconfig @@ -38,3 +38,4 @@ CONFIG_DM_PCI=y CONFIG_PCI_XILINX=y CONFIG_SYS_NS16550=y CONFIG_LZ4=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/boston32r2el_defconfig b/configs/boston32r2el_defconfig index ee47e2c738..0e1cf29b43 100644 --- a/configs/boston32r2el_defconfig +++ b/configs/boston32r2el_defconfig @@ -39,3 +39,4 @@ CONFIG_DM_PCI=y CONFIG_PCI_XILINX=y CONFIG_SYS_NS16550=y CONFIG_LZ4=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/boston64r2_defconfig b/configs/boston64r2_defconfig index a98fe97fb5..5010a0e104 100644 --- a/configs/boston64r2_defconfig +++ b/configs/boston64r2_defconfig @@ -39,3 +39,4 @@ CONFIG_DM_PCI=y CONFIG_PCI_XILINX=y CONFIG_SYS_NS16550=y CONFIG_LZ4=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/boston64r2el_defconfig b/configs/boston64r2el_defconfig index a361447b9a..ae090bf4aa 100644 --- a/configs/boston64r2el_defconfig +++ b/configs/boston64r2el_defconfig @@ -40,3 +40,4 @@ CONFIG_DM_PCI=y CONFIG_PCI_XILINX=y CONFIG_SYS_NS16550=y CONFIG_LZ4=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/edison_defconfig b/configs/edison_defconfig index b55cc78e04..0aa7a45a91 100644 --- a/configs/edison_defconfig +++ b/configs/edison_defconfig @@ -24,6 +24,7 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_OF_EMBED=y +CONFIG_ENV_IS_IN_MMC=y CONFIG_CPU=y CONFIG_DFU_MMC=y CONFIG_DFU_RAM=y diff --git a/configs/malta64_defconfig b/configs/malta64_defconfig index c70c1cc6c4..9a4ef2746b 100644 --- a/configs/malta64_defconfig +++ b/configs/malta64_defconfig @@ -21,3 +21,4 @@ CONFIG_OF_EMBED=y CONFIG_MTD_NOR_FLASH=y CONFIG_PCI=y CONFIG_SYS_NS16550=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/malta64el_defconfig b/configs/malta64el_defconfig index a05d76d005..1d076d46fa 100644 --- a/configs/malta64el_defconfig +++ b/configs/malta64el_defconfig @@ -22,3 +22,4 @@ CONFIG_OF_EMBED=y CONFIG_MTD_NOR_FLASH=y CONFIG_PCI=y CONFIG_SYS_NS16550=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/malta_defconfig b/configs/malta_defconfig index f0a0f209d7..6c7034e11d 100644 --- a/configs/malta_defconfig +++ b/configs/malta_defconfig @@ -20,3 +20,4 @@ CONFIG_OF_EMBED=y CONFIG_MTD_NOR_FLASH=y CONFIG_PCI=y CONFIG_SYS_NS16550=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/maltael_defconfig b/configs/maltael_defconfig index dcbd5d0cd7..c19f9256aa 100644 --- a/configs/maltael_defconfig +++ b/configs/maltael_defconfig @@ -21,3 +21,4 @@ CONFIG_OF_EMBED=y CONFIG_MTD_NOR_FLASH=y CONFIG_PCI=y CONFIG_SYS_NS16550=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig index 1036abec57..953801e6d0 100644 --- a/configs/microblaze-generic_defconfig +++ b/configs/microblaze-generic_defconfig @@ -37,6 +37,7 @@ CONFIG_CMD_UBI=y # CONFIG_CMD_UBIFS is not set CONFIG_SPL_OF_CONTROL=y CONFIG_OF_EMBED=y +CONFIG_ENV_IS_IN_FLASH=y CONFIG_NETCONSOLE=y CONFIG_SPL_DM=y CONFIG_MTD_NOR_FLASH=y diff --git a/configs/qemu_mips64_defconfig b/configs/qemu_mips64_defconfig index 6835cf1c5c..4262934939 100644 --- a/configs/qemu_mips64_defconfig +++ b/configs/qemu_mips64_defconfig @@ -16,3 +16,4 @@ CONFIG_CMD_FAT=y CONFIG_MTD_NOR_FLASH=y CONFIG_SYS_NS16550=y CONFIG_LZMA=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/qemu_mips64el_defconfig b/configs/qemu_mips64el_defconfig index 60bd6164fc..60278358a9 100644 --- a/configs/qemu_mips64el_defconfig +++ b/configs/qemu_mips64el_defconfig @@ -17,3 +17,4 @@ CONFIG_CMD_FAT=y CONFIG_MTD_NOR_FLASH=y CONFIG_SYS_NS16550=y CONFIG_LZMA=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/qemu_mips_defconfig b/configs/qemu_mips_defconfig index c6f08b4efb..cedb9060c5 100644 --- a/configs/qemu_mips_defconfig +++ b/configs/qemu_mips_defconfig @@ -14,3 +14,4 @@ CONFIG_CMD_FAT=y CONFIG_MTD_NOR_FLASH=y CONFIG_SYS_NS16550=y CONFIG_LZMA=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/qemu_mipsel_defconfig b/configs/qemu_mipsel_defconfig index b8c206971d..5bb84da5ae 100644 --- a/configs/qemu_mipsel_defconfig +++ b/configs/qemu_mipsel_defconfig @@ -15,3 +15,4 @@ CONFIG_CMD_FAT=y CONFIG_MTD_NOR_FLASH=y CONFIG_SYS_NS16550=y CONFIG_LZMA=y +CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/r8a7795_ulcb_defconfig b/configs/r8a7795_ulcb_defconfig index 6e967f5dd8..8b6b03ba32 100644 --- a/configs/r8a7795_ulcb_defconfig +++ b/configs/r8a7795_ulcb_defconfig @@ -17,6 +17,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_OF_CONTROL=y +CONFIG_ENV_IS_IN_MMC=y CONFIG_CLK=y CONFIG_CLK_RENESAS=y CONFIG_SH_SDHI=y diff --git a/configs/r8a7796_ulcb_defconfig b/configs/r8a7796_ulcb_defconfig index 62ec2a5d94..bc995deea0 100644 --- a/configs/r8a7796_ulcb_defconfig +++ b/configs/r8a7796_ulcb_defconfig @@ -18,6 +18,7 @@ CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_OF_CONTROL=y +CONFIG_ENV_IS_IN_MMC=y CONFIG_CLK=y CONFIG_CLK_RENESAS=y CONFIG_SH_SDHI=y diff --git a/env/Kconfig b/env/Kconfig index c8dd65f3a5..748f534d11 100644 --- a/env/Kconfig +++ b/env/Kconfig @@ -1,5 +1,45 @@ menu "Environment" +choice + prompt "Select the location of the environment" + default ENV_IS_IN_MMC if ARCH_SUNXI + default ENV_IS_IN_FAT if ARCH_BCM283X + default ENV_IS_IN_MMC if ARCH_UNIPHIER + default ENV_IS_IN_MMC if ARCH_EXYNOS4 + default ENV_IS_IN_MMC if MX6SX || MX7D + default ENV_IS_IN_FLASH if ARCH_CINTEGRATOR + default ENV_IS_IN_SPI_FLASH if ARMADA_XP + default ENV_IS_IN_MMC if TEGRA30 || TEGRA124 + default ENV_IS_IN_MMC if TEGRA_ARMV8_COMMON + default ENV_IS_IN_FLASH if ARCH_INTEGRATOR_CP + default ENV_IS_IN_FLASH if M548x || M547x || M5282 || MCF547x_8x + default ENV_IS_IN_FLASH if MCF532x || MCF52x2 + default ENV_IS_IN_FLASH if MPC86xx || MPC83xx + default ENV_IS_IN_FLASH if ARCH_MPC8572 || ARCH_MPC8548 || ARCH_MPC8641 + default ENV_IS_IN_FLASH if SH && !CPU_SH4 + default ENV_IS_IN_SPI_FLASH if INTEL_BAYTRAIL + default ENV_IS_IN_SPI_FLASH if INTEL_BROADWELL + default ENV_IS_IN_SPI_FLASH if NORTHBRIDGE_INTEL_IVYBRIDGE + default ENV_IS_IN_SPI_FLASH if INTEL_QUARK + default ENV_IS_IN_SPI_FLASH if INTEL_QUEENSBAY + default ENV_IS_IN_FAT if MMC_OMAP_HS && TI_COMMON_CMD_OPTIONS + default ENV_IS_NOWHERE + help + At present the environment can be stored in only one place. Use this + option to select the location. This is either a device (where the + environemnt information is simply written to a fixed location or + partition on the device) or a filesystem (where the environment + information is written to a file). + +config ENV_IS_NOWHERE + bool "Environment is not stored" + help + Define this if you don't want to or can't have an environment stored + on a storage medium. In this case the environemnt will still exist + while U-Boot is running, but once U-Boot exits it will not be + stored. U-Boot will therefore always start up with a default + environment. + config ENV_IS_IN_DATAFLASH bool "Environment in dataflash" depends on !CHAIN_OF_TRUST @@ -161,7 +201,6 @@ config ENV_IS_IN_FLASH config ENV_IS_IN_MMC bool "Environment in an MMC device" depends on !CHAIN_OF_TRUST - default y if ARCH_SUNXI help Define this if you have an MMC device which you want to use for the environment. @@ -364,11 +403,7 @@ config ENV_IS_IN_UBI You will probably want to define these to avoid a really noisy system when storing the env in UBI. -config ENV_IS_NOWHERE - bool "Environment is not stored" - help - Define this if you don't want to or can't have an environment stored - on a storage medium +endchoice config ENV_FAT_INTERFACE string "Name of the block device for the environment" diff --git a/include/configs/edison.h b/include/configs/edison.h index dfac340c2f..399fbc7d9c 100644 --- a/include/configs/edison.h +++ b/include/configs/edison.h @@ -42,7 +42,6 @@ #define CONFIG_SYS_MEMTEST_END 0x01000000 /* Environment */ -#define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 0 #define CONFIG_SYS_MMC_ENV_PART 0 #define CONFIG_ENV_SIZE (64 * 1024) diff --git a/include/configs/ulcb.h b/include/configs/ulcb.h index 921b9e5ec6..cce245613d 100644 --- a/include/configs/ulcb.h +++ b/include/configs/ulcb.h @@ -93,7 +93,6 @@ unsigned char ulcb_softspi_read(void); #define CONFIG_SH_SDHI_FREQ 200000000 /* Environment in eMMC, at the end of 2nd "boot sector" */ -#define CONFIG_ENV_IS_IN_MMC #define CONFIG_ENV_OFFSET (-CONFIG_ENV_SIZE) #define CONFIG_SYS_MMC_ENV_DEV 1 #define CONFIG_SYS_MMC_ENV_PART 2 -- 2.39.5