All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
@ 2017-07-09 20:52 Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 01/30] Makefile: Rename 'env' target to 'environ' Simon Glass
                   ` (31 more replies)
  0 siblings, 32 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

The environment code is ripe for improvement in various ways. It has lots
of duplication and inconsistencies between how things work with different
environment locations. It does not properly use Kconfig. Error checking
and handling is patchy.

This series makes a start at improving things:

- moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig
- introduces the concept of a location driver for the environment
- drops some of the duplicated code
- improves error handling a little (more to be done here)
- moves code into a new env/ directory

There is still much more to do:
- complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)
- unify environment settings so that all locations support the same options
- try to rationalise the redundancy code (can we create a common
    implementation used by all drivers?)
- allow environment in multiple locations (e.g. as a fallback)
- figure out why CONFIG_ENV_IS_IN_FLASH enables the environment in flash
    even in SPL, which other locations do not


Simon Glass (30):
  Makefile: Rename 'env' target to 'environ'
  Move environment files from common/ to env/
  Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig
  env: Move help from README to Kconfig
  Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
  Convert CONFIG_ENV_IS_IN_NVRAM to Kconfig
  Convert CONFIG_ENV_IS_IN_EEPROM to Kconfig
  Convert CONFIG_ENV_IS_IN_DATAFLASH to Kconfig
  Convert CONFIG_ENV_IS_IN_SPI_FLASH to Kconfig
  Convert CONFIG_ENV_IS_IN_REMOTE to Kconfig
  Convert CONFIG_ENV_IS_IN_FAT to Kconfig
  env: common: Make env_get_addr/get_char_memory() static
  env: common: Drop env_get_addr()
  env: common: Factor out the common env_valid check
  env: common: Drop env_get_char_init()
  env: common: Drop env_get_char_memory()
  env: Add an enum for environment state
  env: Rename nand env_location to nand_env_location
  env: Create a location driver for each location
  env: Add a new implementation of environment access
  env: Switch over to use environment location drivers
  env: Drop common init() functions
  env: Drop the env_name_spec global
  env: Drop unused env_ptr variables
  env: Drop env_init_new()
  env: Drop env_get_char_spec()
  env: Drop env_relocate_spec() in favour of env_load()
  env: Drop saveenv() in favour of env_save()
  env: Adjust the get_char() method to return an int
  env: Adjust the load() method to return an error

 Kconfig                                            |   2 +
 Makefile                                           |   5 +-
 README                                             | 352 ------------------
 arch/Kconfig                                       |   1 +
 arch/arm/Kconfig                                   |   2 +
 arch/arm/cpu/armv7/mx6/Kconfig                     |   1 +
 arch/arm/cpu/armv7/mx7/Kconfig                     |   1 +
 arch/arm/mach-exynos/Kconfig                       |   1 +
 arch/arm/mach-integrator/Kconfig                   |   2 +
 arch/arm/mach-mvebu/Kconfig                        |   1 +
 arch/arm/mach-omap2/boot-common.c                  |   3 +-
 arch/arm/mach-sunxi/Kconfig                        |   6 +
 arch/arm/mach-tegra/Kconfig                        |   3 +
 arch/m68k/Kconfig                                  |   8 +
 arch/microblaze/Kconfig                            |   1 +
 arch/mips/Kconfig                                  |   7 +
 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/sh/cpu/u-boot.lds                             |   4 +-
 arch/x86/cpu/baytrail/Kconfig                      |   1 +
 board/Arcturus/ucp1020/spl.c                       |   3 +-
 board/birdland/bav335x/board.c                     |   2 +-
 board/freescale/b4860qds/spl.c                     |   3 +-
 board/freescale/c29xpcie/spl.c                     |   3 +-
 board/freescale/mx31ads/u-boot.lds                 |   2 +-
 board/freescale/p1010rdb/spl.c                     |   3 +-
 board/freescale/p1022ds/spl.c                      |   3 +-
 board/freescale/p1_p2_rdb_pc/spl.c                 |   3 +-
 board/freescale/t102xqds/spl.c                     |   3 +-
 board/freescale/t102xrdb/spl.c                     |   3 +-
 board/freescale/t104xrdb/spl.c                     |   3 +-
 board/freescale/t208xqds/spl.c                     |   3 +-
 board/freescale/t208xrdb/spl.c                     |   3 +-
 board/freescale/t4qds/spl.c                        |   3 +-
 board/freescale/t4rdb/spl.c                        |   3 +-
 board/gateworks/gw_ventana/gw_ventana_spl.c        |   2 +-
 board/siemens/taurus/taurus.c                      |   5 +-
 board/tcl/sl50/board.c                             |   2 +-
 board/ti/am335x/board.c                            |   2 +-
 board/ti/am57xx/board.c                            |   2 +-
 board/ti/dra7xx/evm.c                              |   2 +-
 board/toradex/apalis_imx6/apalis_imx6.c            |   3 +-
 cmd/nvedit.c                                       |   6 +-
 common/Kconfig                                     |  69 ----
 common/Makefile                                    |  49 +--
 configs/10m50_defconfig                            |   1 +
 configs/3c120_defconfig                            |   1 +
 configs/B4420QDS_NAND_defconfig                    |   1 +
 configs/B4420QDS_SPIFLASH_defconfig                |   1 +
 configs/B4420QDS_defconfig                         |   1 +
 configs/B4860QDS_NAND_defconfig                    |   1 +
 configs/B4860QDS_SECURE_BOOT_defconfig             |   1 +
 configs/B4860QDS_SPIFLASH_defconfig                |   1 +
 configs/B4860QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
 configs/B4860QDS_defconfig                         |   1 +
 configs/BSC9131RDB_NAND_SYSCLK100_defconfig        |   1 +
 configs/BSC9131RDB_NAND_defconfig                  |   1 +
 configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig    |   1 +
 configs/BSC9131RDB_SPIFLASH_defconfig              |   1 +
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig |   1 +
 configs/BSC9132QDS_NAND_DDRCLK100_defconfig        |   1 +
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig |   1 +
 configs/BSC9132QDS_NAND_DDRCLK133_defconfig        |   1 +
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig  |   1 +
 configs/BSC9132QDS_NOR_DDRCLK100_defconfig         |   1 +
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig  |   1 +
 configs/BSC9132QDS_NOR_DDRCLK133_defconfig         |   1 +
 .../BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |   1 +
 configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig      |   1 +
 .../BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |   1 +
 configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig      |   1 +
 .../BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |   1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig    |   1 +
 .../BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |   1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig    |   1 +
 configs/C29XPCIE_NAND_defconfig                    |   1 +
 configs/C29XPCIE_NOR_SECBOOT_defconfig             |   1 +
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig        |   1 +
 configs/C29XPCIE_SPIFLASH_defconfig                |   1 +
 configs/C29XPCIE_defconfig                         |   1 +
 configs/CHIP_defconfig                             |   2 +
 configs/CHIP_pro_defconfig                         |   1 +
 configs/Cyrus_P5020_defconfig                      |   1 +
 configs/Cyrus_P5040_defconfig                      |   1 +
 configs/M5208EVBE_defconfig                        |   1 +
 configs/M52277EVB_defconfig                        |   1 +
 configs/M52277EVB_stmicro_defconfig                |   1 +
 configs/M5235EVB_Flash32_defconfig                 |   1 +
 configs/M5235EVB_defconfig                         |   1 +
 configs/M53017EVB_defconfig                        |   1 +
 configs/M54418TWR_defconfig                        |   1 +
 configs/M54418TWR_nand_mii_defconfig               |   1 +
 configs/M54418TWR_nand_rmii_defconfig              |   1 +
 configs/M54418TWR_nand_rmii_lowfreq_defconfig      |   1 +
 configs/M54418TWR_serial_mii_defconfig             |   1 +
 configs/M54418TWR_serial_rmii_defconfig            |   1 +
 configs/M54451EVB_defconfig                        |   1 +
 configs/M54451EVB_stmicro_defconfig                |   1 +
 configs/M54455EVB_a66_defconfig                    |   1 +
 configs/M54455EVB_defconfig                        |   1 +
 configs/M54455EVB_i66_defconfig                    |   1 +
 configs/M54455EVB_intel_defconfig                  |   1 +
 configs/M54455EVB_stm33_defconfig                  |   1 +
 configs/MPC8308RDB_defconfig                       |   1 +
 configs/MPC8313ERDB_33_defconfig                   |   1 +
 configs/MPC8313ERDB_66_defconfig                   |   1 +
 configs/MPC8313ERDB_NAND_33_defconfig              |   1 +
 configs/MPC8313ERDB_NAND_66_defconfig              |   1 +
 configs/MPC8315ERDB_defconfig                      |   1 +
 configs/MPC8323ERDB_defconfig                      |   1 +
 configs/MPC8349EMDS_defconfig                      |   1 +
 configs/MPC837XEMDS_HOST_defconfig                 |   1 +
 configs/MPC837XEMDS_defconfig                      |   1 +
 configs/MPC837XERDB_defconfig                      |   1 +
 configs/MPC8536DS_36BIT_defconfig                  |   1 +
 configs/MPC8536DS_SDCARD_defconfig                 |   1 +
 configs/MPC8536DS_SPIFLASH_defconfig               |   1 +
 configs/MPC8536DS_defconfig                        |   1 +
 configs/MPC8541CDS_defconfig                       |   1 +
 configs/MPC8541CDS_legacy_defconfig                |   1 +
 configs/MPC8544DS_defconfig                        |   3 +-
 configs/MPC8555CDS_defconfig                       |   1 +
 configs/MPC8555CDS_legacy_defconfig                |   1 +
 configs/MPC8568MDS_defconfig                       |   1 +
 configs/MPC8569MDS_ATM_defconfig                   |   1 +
 configs/MPC8569MDS_defconfig                       |   1 +
 configs/MPC8610HPCD_defconfig                      |   2 +-
 configs/MigoR_defconfig                            |   1 +
 configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig   |   1 +
 configs/P1010RDB-PA_36BIT_NAND_defconfig           |   1 +
 configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig    |   1 +
 configs/P1010RDB-PA_36BIT_NOR_defconfig            |   1 +
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig         |   1 +
 .../P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |   1 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig       |   1 +
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig         |   1 +
 configs/P1010RDB-PA_NAND_defconfig                 |   1 +
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig          |   1 +
 configs/P1010RDB-PA_NOR_defconfig                  |   1 +
 configs/P1010RDB-PA_SDCARD_defconfig               |   1 +
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig     |   1 +
 configs/P1010RDB-PA_SPIFLASH_defconfig             |   1 +
 configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig   |   1 +
 configs/P1010RDB-PB_36BIT_NAND_defconfig           |   1 +
 configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig    |   1 +
 configs/P1010RDB-PB_36BIT_NOR_defconfig            |   1 +
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig         |   1 +
 .../P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |   1 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig       |   1 +
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig         |   1 +
 configs/P1010RDB-PB_NAND_defconfig                 |   1 +
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig          |   1 +
 configs/P1010RDB-PB_NOR_defconfig                  |   1 +
 configs/P1010RDB-PB_SDCARD_defconfig               |   1 +
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig     |   1 +
 configs/P1010RDB-PB_SPIFLASH_defconfig             |   1 +
 configs/P1020MBG-PC_36BIT_SDCARD_defconfig         |   1 +
 configs/P1020MBG-PC_36BIT_defconfig                |   1 +
 configs/P1020MBG-PC_SDCARD_defconfig               |   1 +
 configs/P1020MBG-PC_defconfig                      |   1 +
 configs/P1020RDB-PC_36BIT_NAND_defconfig           |   1 +
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig         |   1 +
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig       |   1 +
 configs/P1020RDB-PC_36BIT_defconfig                |   1 +
 configs/P1020RDB-PC_NAND_defconfig                 |   1 +
 configs/P1020RDB-PC_SDCARD_defconfig               |   1 +
 configs/P1020RDB-PC_SPIFLASH_defconfig             |   1 +
 configs/P1020RDB-PC_defconfig                      |   1 +
 configs/P1020RDB-PD_NAND_defconfig                 |   1 +
 configs/P1020RDB-PD_SDCARD_defconfig               |   1 +
 configs/P1020RDB-PD_SPIFLASH_defconfig             |   1 +
 configs/P1020RDB-PD_defconfig                      |   1 +
 configs/P1020UTM-PC_36BIT_SDCARD_defconfig         |   1 +
 configs/P1020UTM-PC_36BIT_defconfig                |   1 +
 configs/P1020UTM-PC_SDCARD_defconfig               |   1 +
 configs/P1020UTM-PC_defconfig                      |   1 +
 configs/P1021RDB-PC_36BIT_NAND_defconfig           |   1 +
 configs/P1021RDB-PC_36BIT_SDCARD_defconfig         |   1 +
 configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig       |   1 +
 configs/P1021RDB-PC_36BIT_defconfig                |   1 +
 configs/P1021RDB-PC_NAND_defconfig                 |   1 +
 configs/P1021RDB-PC_SDCARD_defconfig               |   1 +
 configs/P1021RDB-PC_SPIFLASH_defconfig             |   1 +
 configs/P1021RDB-PC_defconfig                      |   1 +
 configs/P1022DS_36BIT_NAND_defconfig               |   1 +
 configs/P1022DS_36BIT_SDCARD_defconfig             |   1 +
 configs/P1022DS_36BIT_SPIFLASH_defconfig           |   1 +
 configs/P1022DS_36BIT_defconfig                    |   1 +
 configs/P1022DS_NAND_defconfig                     |   1 +
 configs/P1022DS_SDCARD_defconfig                   |   1 +
 configs/P1022DS_SPIFLASH_defconfig                 |   1 +
 configs/P1022DS_defconfig                          |   1 +
 configs/P1023RDB_defconfig                         |   1 +
 configs/P1024RDB_36BIT_defconfig                   |   1 +
 configs/P1024RDB_NAND_defconfig                    |   1 +
 configs/P1024RDB_SDCARD_defconfig                  |   1 +
 configs/P1024RDB_SPIFLASH_defconfig                |   1 +
 configs/P1024RDB_defconfig                         |   1 +
 configs/P1025RDB_36BIT_defconfig                   |   1 +
 configs/P1025RDB_NAND_defconfig                    |   1 +
 configs/P1025RDB_SDCARD_defconfig                  |   1 +
 configs/P1025RDB_SPIFLASH_defconfig                |   1 +
 configs/P1025RDB_defconfig                         |   1 +
 configs/P2020RDB-PC_36BIT_NAND_defconfig           |   1 +
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig         |   1 +
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig       |   1 +
 configs/P2020RDB-PC_36BIT_defconfig                |   1 +
 configs/P2020RDB-PC_NAND_defconfig                 |   1 +
 configs/P2020RDB-PC_SDCARD_defconfig               |   1 +
 configs/P2020RDB-PC_SPIFLASH_defconfig             |   1 +
 configs/P2020RDB-PC_defconfig                      |   1 +
 configs/P2041RDB_NAND_defconfig                    |   1 +
 configs/P2041RDB_SDCARD_defconfig                  |   1 +
 configs/P2041RDB_SECURE_BOOT_defconfig             |   1 +
 configs/P2041RDB_SPIFLASH_defconfig                |   1 +
 configs/P2041RDB_SRIO_PCIE_BOOT_defconfig          |   1 +
 configs/P2041RDB_defconfig                         |   1 +
 configs/P3041DS_NAND_SECURE_BOOT_defconfig         |   1 +
 configs/P3041DS_NAND_defconfig                     |   1 +
 configs/P3041DS_SDCARD_defconfig                   |   1 +
 configs/P3041DS_SECURE_BOOT_defconfig              |   1 +
 configs/P3041DS_SPIFLASH_defconfig                 |   1 +
 configs/P3041DS_SRIO_PCIE_BOOT_defconfig           |   1 +
 configs/P3041DS_defconfig                          |   1 +
 configs/P4080DS_SDCARD_defconfig                   |   1 +
 configs/P4080DS_SECURE_BOOT_defconfig              |   1 +
 configs/P4080DS_SPIFLASH_defconfig                 |   1 +
 configs/P4080DS_SRIO_PCIE_BOOT_defconfig           |   1 +
 configs/P4080DS_defconfig                          |   1 +
 configs/P5020DS_NAND_SECURE_BOOT_defconfig         |   1 +
 configs/P5020DS_NAND_defconfig                     |   1 +
 configs/P5020DS_SDCARD_defconfig                   |   1 +
 configs/P5020DS_SECURE_BOOT_defconfig              |   1 +
 configs/P5020DS_SPIFLASH_defconfig                 |   1 +
 configs/P5020DS_SRIO_PCIE_BOOT_defconfig           |   1 +
 configs/P5020DS_defconfig                          |   1 +
 configs/P5040DS_NAND_SECURE_BOOT_defconfig         |   1 +
 configs/P5040DS_NAND_defconfig                     |   1 +
 configs/P5040DS_SDCARD_defconfig                   |   1 +
 configs/P5040DS_SECURE_BOOT_defconfig              |   1 +
 configs/P5040DS_SPIFLASH_defconfig                 |   1 +
 configs/P5040DS_defconfig                          |   1 +
 configs/T1023RDB_NAND_defconfig                    |   1 +
 configs/T1023RDB_SDCARD_defconfig                  |   1 +
 configs/T1023RDB_SECURE_BOOT_defconfig             |   1 +
 configs/T1023RDB_SPIFLASH_defconfig                |   1 +
 configs/T1023RDB_defconfig                         |   1 +
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig        |   1 +
 configs/T1024QDS_DDR4_defconfig                    |   1 +
 configs/T1024QDS_NAND_defconfig                    |   1 +
 configs/T1024QDS_SDCARD_defconfig                  |   1 +
 configs/T1024QDS_SECURE_BOOT_defconfig             |   1 +
 configs/T1024QDS_SPIFLASH_defconfig                |   1 +
 configs/T1024QDS_defconfig                         |   1 +
 configs/T1024RDB_NAND_defconfig                    |   1 +
 configs/T1024RDB_SDCARD_defconfig                  |   1 +
 configs/T1024RDB_SECURE_BOOT_defconfig             |   1 +
 configs/T1024RDB_SPIFLASH_defconfig                |   1 +
 configs/T1024RDB_defconfig                         |   1 +
 configs/T1040D4RDB_NAND_defconfig                  |   1 +
 configs/T1040D4RDB_SDCARD_defconfig                |   1 +
 configs/T1040D4RDB_SECURE_BOOT_defconfig           |   1 +
 configs/T1040D4RDB_SPIFLASH_defconfig              |   1 +
 configs/T1040D4RDB_defconfig                       |   1 +
 configs/T1040QDS_DDR4_defconfig                    |   1 +
 configs/T1040QDS_SECURE_BOOT_defconfig             |   1 +
 configs/T1040QDS_defconfig                         |   1 +
 configs/T1040RDB_NAND_defconfig                    |   1 +
 configs/T1040RDB_SDCARD_defconfig                  |   1 +
 configs/T1040RDB_SECURE_BOOT_defconfig             |   1 +
 configs/T1040RDB_SPIFLASH_defconfig                |   1 +
 configs/T1040RDB_defconfig                         |   1 +
 configs/T1042D4RDB_NAND_defconfig                  |   1 +
 configs/T1042D4RDB_SDCARD_defconfig                |   1 +
 configs/T1042D4RDB_SECURE_BOOT_defconfig           |   1 +
 configs/T1042D4RDB_SPIFLASH_defconfig              |   1 +
 configs/T1042D4RDB_defconfig                       |   1 +
 configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig     |   2 +
 configs/T1042RDB_PI_NAND_defconfig                 |   1 +
 configs/T1042RDB_PI_SDCARD_defconfig               |   1 +
 configs/T1042RDB_PI_SPIFLASH_defconfig             |   1 +
 configs/T1042RDB_PI_defconfig                      |   1 +
 configs/T1042RDB_SECURE_BOOT_defconfig             |   1 +
 configs/T1042RDB_defconfig                         |   1 +
 configs/T2080QDS_NAND_defconfig                    |   1 +
 configs/T2080QDS_SDCARD_defconfig                  |   1 +
 configs/T2080QDS_SECURE_BOOT_defconfig             |   1 +
 configs/T2080QDS_SPIFLASH_defconfig                |   1 +
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
 configs/T2080QDS_defconfig                         |   1 +
 configs/T2080RDB_NAND_defconfig                    |   1 +
 configs/T2080RDB_SDCARD_defconfig                  |   1 +
 configs/T2080RDB_SECURE_BOOT_defconfig             |   1 +
 configs/T2080RDB_SPIFLASH_defconfig                |   1 +
 configs/T2080RDB_SRIO_PCIE_BOOT_defconfig          |   1 +
 configs/T2080RDB_defconfig                         |   1 +
 configs/T2081QDS_NAND_defconfig                    |   1 +
 configs/T2081QDS_SDCARD_defconfig                  |   1 +
 configs/T2081QDS_SPIFLASH_defconfig                |   1 +
 configs/T2081QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
 configs/T2081QDS_defconfig                         |   1 +
 configs/T4160QDS_NAND_defconfig                    |   1 +
 configs/T4160QDS_SDCARD_defconfig                  |   1 +
 configs/T4160QDS_SECURE_BOOT_defconfig             |   1 +
 configs/T4160QDS_defconfig                         |   1 +
 configs/T4160RDB_defconfig                         |   1 +
 configs/T4240QDS_NAND_defconfig                    |   1 +
 configs/T4240QDS_SDCARD_defconfig                  |   1 +
 configs/T4240QDS_SECURE_BOOT_defconfig             |   1 +
 configs/T4240QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
 configs/T4240QDS_defconfig                         |   1 +
 configs/T4240RDB_SDCARD_defconfig                  |   1 +
 configs/T4240RDB_defconfig                         |   1 +
 configs/TQM834x_defconfig                          |   1 +
 configs/TWR-P1025_defconfig                        |   1 +
 configs/UCP1020_SPIFLASH_defconfig                 |   1 +
 configs/UCP1020_defconfig                          |   1 +
 configs/adp-ae3xx_defconfig                        |   1 +
 configs/adp-ag101p_defconfig                       |   1 +
 configs/alt_defconfig                              |   1 +
 configs/am335x_baltos_defconfig                    |   1 +
 configs/am335x_boneblack_defconfig                 |   1 +
 configs/am335x_boneblack_vboot_defconfig           |   1 +
 configs/am335x_evm_defconfig                       |   1 +
 configs/am335x_evm_nor_defconfig                   |   1 +
 configs/am335x_evm_norboot_defconfig               |   1 +
 configs/am335x_evm_spiboot_defconfig               |   1 +
 configs/am335x_evm_usbspl_defconfig                |   1 +
 configs/am335x_hs_evm_defconfig                    |   1 +
 configs/am335x_igep003x_defconfig                  |   1 +
 configs/am335x_shc_defconfig                       |   1 +
 configs/am335x_shc_ict_defconfig                   |   1 +
 configs/am335x_shc_netboot_defconfig               |   1 +
 configs/am335x_shc_prompt_defconfig                |   1 +
 configs/am335x_shc_sdboot_defconfig                |   1 +
 configs/am335x_shc_sdboot_prompt_defconfig         |   1 +
 configs/am335x_sl50_defconfig                      |   1 +
 configs/am3517_crane_defconfig                     |   1 +
 configs/am3517_evm_defconfig                       |   1 +
 configs/am43xx_evm_defconfig                       |   1 +
 configs/am43xx_evm_ethboot_defconfig               |   1 +
 configs/am43xx_evm_qspiboot_defconfig              |   1 +
 configs/am43xx_evm_usbhost_boot_defconfig          |   1 +
 configs/am43xx_hs_evm_defconfig                    |   1 +
 configs/am57xx_evm_defconfig                       |   1 +
 configs/am57xx_evm_nodt_defconfig                  |   1 +
 configs/am57xx_hs_evm_defconfig                    |   1 +
 configs/amcore_defconfig                           |   1 +
 configs/ap121_defconfig                            |   1 +
 configs/ap143_defconfig                            |   1 +
 configs/ap325rxa_defconfig                         |   1 +
 configs/ap_sh4a_4a_defconfig                       |   1 +
 configs/apalis_imx6_defconfig                      |   1 +
 configs/apalis_imx6_nospl_com_defconfig            |   1 +
 configs/apalis_imx6_nospl_it_defconfig             |   1 +
 configs/apf27_defconfig                            |   1 +
 configs/apx4devkit_defconfig                       |   1 +
 configs/aristainetos2_defconfig                    |   1 +
 configs/aristainetos2b_defconfig                   |   1 +
 configs/aristainetos_defconfig                     |   1 +
 configs/armadillo-800eva_defconfig                 |   1 +
 configs/arndale_defconfig                          |   1 +
 configs/aspenite_defconfig                         |   1 +
 configs/at91rm9200ek_defconfig                     |   1 +
 configs/at91rm9200ek_ram_defconfig                 |   1 +
 configs/at91sam9260ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9260ek_dataflash_cs1_defconfig      |   1 +
 configs/at91sam9260ek_nandflash_defconfig          |   1 +
 configs/at91sam9261ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9261ek_dataflash_cs3_defconfig      |   1 +
 configs/at91sam9261ek_nandflash_defconfig          |   1 +
 configs/at91sam9263ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9263ek_dataflash_defconfig          |   1 +
 configs/at91sam9263ek_nandflash_defconfig          |   1 +
 configs/at91sam9263ek_norflash_boot_defconfig      |   1 +
 configs/at91sam9263ek_norflash_defconfig           |   1 +
 configs/at91sam9g10ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9g10ek_dataflash_cs3_defconfig      |   1 +
 configs/at91sam9g10ek_nandflash_defconfig          |   1 +
 configs/at91sam9g20ek_2mmc_defconfig               |   1 +
 configs/at91sam9g20ek_2mmc_nandflash_defconfig     |   1 +
 configs/at91sam9g20ek_dataflash_cs0_defconfig      |   1 +
 configs/at91sam9g20ek_dataflash_cs1_defconfig      |   1 +
 configs/at91sam9g20ek_nandflash_defconfig          |   1 +
 configs/at91sam9m10g45ek_mmc_defconfig             |   1 +
 configs/at91sam9m10g45ek_nandflash_defconfig       |   1 +
 configs/at91sam9n12ek_mmc_defconfig                |   1 +
 configs/at91sam9n12ek_nandflash_defconfig          |   1 +
 configs/at91sam9n12ek_spiflash_defconfig           |   1 +
 configs/at91sam9rlek_dataflash_defconfig           |   1 +
 configs/at91sam9rlek_mmc_defconfig                 |   1 +
 configs/at91sam9rlek_nandflash_defconfig           |   1 +
 configs/at91sam9x5ek_dataflash_defconfig           |   1 +
 configs/at91sam9x5ek_mmc_defconfig                 |   1 +
 configs/at91sam9x5ek_nandflash_defconfig           |   1 +
 configs/at91sam9x5ek_spiflash_defconfig            |   1 +
 configs/at91sam9xeek_dataflash_cs0_defconfig       |   1 +
 configs/at91sam9xeek_dataflash_cs1_defconfig       |   1 +
 configs/at91sam9xeek_nandflash_defconfig           |   1 +
 configs/axm_defconfig                              |   1 +
 configs/axs101_defconfig                           |   1 +
 configs/axs103_defconfig                           |   1 +
 configs/bayleybay_defconfig                        |   2 +-
 configs/bcm11130_defconfig                         |   1 +
 configs/bcm11130_nand_defconfig                    |   1 +
 configs/bcm23550_w1d_defconfig                     |   1 +
 configs/bcm28155_ap_defconfig                      |   1 +
 configs/bcm28155_w1d_defconfig                     |   1 +
 configs/bcm911360_entphn-ns_defconfig              |   1 +
 configs/bcm911360_entphn_defconfig                 |   1 +
 configs/bcm911360k_defconfig                       |   1 +
 configs/bcm958300k-ns_defconfig                    |   1 +
 configs/bcm958300k_defconfig                       |   1 +
 configs/bcm958305k_defconfig                       |   1 +
 configs/bcm958622hr_defconfig                      |   1 +
 configs/bcm958712k_defconfig                       |   1 +
 configs/bg0900_defconfig                           |   1 +
 configs/birdland_bav335a_defconfig                 |   1 +
 configs/birdland_bav335b_defconfig                 |   1 +
 configs/bk4r1_defconfig                            |   3 +-
 configs/blanche_defconfig                          |   1 +
 configs/brppt1_mmc_defconfig                       |   1 +
 configs/brppt1_nand_defconfig                      |   1 +
 configs/brppt1_spi_defconfig                       |   1 +
 configs/brxre1_defconfig                           |   1 +
 configs/caddy2_defconfig                           |   1 +
 configs/cairo_defconfig                            |   1 +
 configs/calimain_defconfig                         |   1 +
 configs/cgtqmx6eval_defconfig                      |   1 +
 configs/chiliboard_defconfig                       |   1 +
 configs/chromebit_mickey_defconfig                 |   1 +
 configs/chromebook_jerry_defconfig                 |   1 +
 configs/chromebook_link64_defconfig                |   5 +-
 configs/chromebook_link_defconfig                  |   5 +-
 configs/chromebook_minnie_defconfig                |   1 +
 configs/chromebook_samus_defconfig                 |   3 +-
 configs/chromebox_panther_defconfig                |   5 +-
 configs/cl-som-am57x_defconfig                     |   1 +
 configs/clearfog_defconfig                         |   1 +
 configs/cm_fx6_defconfig                           |   1 +
 configs/cm_t335_defconfig                          |   1 +
 configs/cm_t3517_defconfig                         |   1 +
 configs/cm_t35_defconfig                           |   1 +
 configs/cm_t43_defconfig                           |   1 +
 configs/cm_t54_defconfig                           |   3 +-
 configs/colibri_imx6_defconfig                     |   1 +
 configs/colibri_imx6_nospl_defconfig               |   1 +
 configs/colibri_imx7_defconfig                     |   1 +
 configs/colibri_pxa270_defconfig                   |   1 +
 configs/colibri_t20_defconfig                      |   1 +
 configs/colibri_vf_defconfig                       |   3 +-
 ...conga-qeval20-qa3-e3845-internal-uart_defconfig |   1 +
 .../controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |   1 +
 configs/controlcenterd_36BIT_SDCARD_defconfig      |   1 +
 .../controlcenterd_TRAILBLAZER_DEVELOP_defconfig   |   1 +
 configs/controlcenterd_TRAILBLAZER_defconfig       |   1 +
 configs/controlcenterdc_defconfig                  |   3 +-
 configs/coreboot-x86_defconfig                     |   1 +
 configs/corvus_defconfig                           |   1 +
 configs/cougarcanyon2_defconfig                    |   3 +-
 configs/crownbay_defconfig                         |   3 +-
 configs/d2net_v2_defconfig                         |   1 +
 configs/da850_am18xxevm_defconfig                  |   1 +
 configs/da850evm_defconfig                         |   1 +
 configs/da850evm_direct_nor_defconfig              |   1 +
 configs/dalmore_defconfig                          |   1 +
 configs/db-88f6720_defconfig                       |   1 +
 configs/db-88f6820-amc_defconfig                   |   1 +
 configs/db-88f6820-gp_defconfig                    |   3 +-
 configs/dbau1000_defconfig                         |   1 +
 configs/dbau1100_defconfig                         |   1 +
 configs/dbau1500_defconfig                         |   1 +
 configs/dbau1550_defconfig                         |   1 +
 configs/dbau1550_el_defconfig                      |   1 +
 configs/devkit3250_defconfig                       |   1 +
 configs/devkit8000_defconfig                       |   1 +
 configs/dms-ba16-1g_defconfig                      |   1 +
 configs/dms-ba16_defconfig                         |   1 +
 configs/dns325_defconfig                           |   1 +
 configs/dockstar_defconfig                         |   1 +
 configs/dra7xx_evm_defconfig                       |   3 +-
 configs/dra7xx_hs_evm_defconfig                    |   3 +-
 configs/draco_defconfig                            |   1 +
 configs/dragonboard410c_defconfig                  |   1 +
 configs/dreamplug_defconfig                        |   1 +
 configs/ds109_defconfig                            |   1 +
 configs/duovero_defconfig                          |   1 +
 configs/ea20_defconfig                             |   1 +
 configs/eco5pk_defconfig                           |   1 +
 configs/ecovec_defconfig                           |   1 +
 configs/edb9315a_defconfig                         |   1 +
 configs/edminiv2_defconfig                         |   1 +
 configs/efi-x86_defconfig                          |   1 +
 configs/espresso7420_defconfig                     |   1 +
 configs/espt_defconfig                             |   1 +
 configs/etamin_defconfig                           |   1 +
 configs/ethernut5_defconfig                        |   1 +
 configs/evb-ast2500_defconfig                      |   1 +
 configs/evb-px5_defconfig                          |   1 +
 configs/evb-rk3036_defconfig                       |   1 +
 configs/evb-rk3288_defconfig                       |   1 +
 configs/evb-rk3328_defconfig                       |   1 +
 configs/evb-rk3399_defconfig                       |   1 +
 configs/evb-rv1108_defconfig                       |   1 +
 configs/fennec-rk3288_defconfig                    |   1 +
 configs/firefly-rk3288_defconfig                   |   1 +
 configs/firefly-rk3399_defconfig                   |   1 +
 configs/flea3_defconfig                            |   1 +
 configs/galileo_defconfig                          |   1 +
 configs/ge_b450v3_defconfig                        |   1 +
 configs/ge_b650v3_defconfig                        |   1 +
 configs/ge_b850v3_defconfig                        |   1 +
 configs/geekbox_defconfig                          |   1 +
 configs/goflexhome_defconfig                       |   1 +
 configs/gose_defconfig                             |   1 +
 configs/gplugd_defconfig                           |   1 +
 configs/gurnard_defconfig                          |   1 +
 configs/guruplug_defconfig                         |   1 +
 configs/gwventana_emmc_defconfig                   |   1 +
 configs/gwventana_gw5904_defconfig                 |   1 +
 configs/gwventana_nand_defconfig                   |   1 +
 configs/h2200_defconfig                            |   1 +
 configs/harmony_defconfig                          |   1 +
 configs/highbank_defconfig                         |   3 +-
 configs/hikey_defconfig                            |   1 +
 configs/hrcon_defconfig                            |   1 +
 configs/hrcon_dh_defconfig                         |   1 +
 configs/hsdk_defconfig                             |   1 +
 configs/ib62x0_defconfig                           |   1 +
 configs/iconnect_defconfig                         |   1 +
 configs/ids8313_defconfig                          |   1 +
 configs/igep0020_defconfig                         |   1 +
 configs/igep0030_defconfig                         |   1 +
 configs/igep0032_defconfig                         |   1 +
 configs/imgtec_xilfpga_defconfig                   |   1 +
 configs/imx31_phycore_defconfig                    |   1 +
 configs/imx31_phycore_eet_defconfig                |   1 +
 configs/imx6q_logic_defconfig                      |   1 +
 configs/imx6qdl_icore_mmc_defconfig                |   7 +-
 configs/imx6qdl_icore_nand_defconfig               |  12 +-
 configs/imx6qdl_icore_rqs_mmc_defconfig            |   9 +-
 configs/imx6ul_geam_mmc_defconfig                  |   7 +-
 configs/imx6ul_geam_nand_defconfig                 |   7 +-
 configs/imx6ul_isiot_emmc_defconfig                |   7 +-
 configs/imx6ul_isiot_mmc_defconfig                 |   7 +-
 configs/imx6ul_isiot_nand_defconfig                |   7 +-
 configs/inetspace_v2_defconfig                     |   1 +
 configs/integratorap_cm720t_defconfig              |   1 +
 configs/integratorap_cm920t_defconfig              |   1 +
 configs/integratorap_cm926ejs_defconfig            |   1 +
 configs/integratorap_cm946es_defconfig             |   1 +
 configs/ipam390_defconfig                          |   1 +
 configs/k2e_evm_defconfig                          |   1 +
 configs/k2e_hs_evm_defconfig                       |   1 +
 configs/k2g_evm_defconfig                          |   1 +
 configs/k2g_hs_evm_defconfig                       |   1 +
 configs/k2hk_evm_defconfig                         |   1 +
 configs/k2hk_hs_evm_defconfig                      |   1 +
 configs/k2l_evm_defconfig                          |   1 +
 configs/kc1_defconfig                              |   1 +
 configs/km_kirkwood_128m16_defconfig               |   1 +
 configs/km_kirkwood_defconfig                      |   1 +
 configs/km_kirkwood_pci_defconfig                  |   1 +
 configs/kmcoge4_defconfig                          |   1 +
 configs/kmcoge5ne_defconfig                        |   1 +
 configs/kmcoge5un_defconfig                        |   1 +
 configs/kmeter1_defconfig                          |   1 +
 configs/kmlion1_defconfig                          |   1 +
 configs/kmnusa_defconfig                           |   1 +
 configs/kmsugp1_defconfig                          |   1 +
 configs/kmsuv31_defconfig                          |   1 +
 configs/koelsch_defconfig                          |   1 +
 configs/kylin-rk3036_defconfig                     |   1 +
 configs/kzm9g_defconfig                            |   1 +
 configs/lager_defconfig                            |   1 +
 configs/legoev3_defconfig                          |   1 +
 configs/liteboard_defconfig                        |   1 +
 configs/ls1012afrdm_qspi_defconfig                 |   1 +
 configs/ls1012aqds_qspi_defconfig                  |   3 +-
 configs/ls1012ardb_qspi_SECURE_BOOT_defconfig      |   1 +
 configs/ls1012ardb_qspi_defconfig                  |   1 +
 configs/ls1021aiot_qspi_defconfig                  |   1 +
 configs/ls1021aiot_sdcard_defconfig                |   1 +
 configs/ls1021aqds_ddr4_nor_defconfig              |   1 +
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig       |   1 +
 configs/ls1021aqds_nand_defconfig                  |   1 +
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig       |   1 +
 configs/ls1021aqds_nor_defconfig                   |   1 +
 configs/ls1021aqds_nor_lpuart_defconfig            |   1 +
 configs/ls1021aqds_qspi_defconfig                  |   1 +
 configs/ls1021aqds_sdcard_ifc_defconfig            |   1 +
 configs/ls1021aqds_sdcard_qspi_defconfig           |   1 +
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig       |   1 +
 configs/ls1021atwr_nor_defconfig                   |   1 +
 configs/ls1021atwr_nor_lpuart_defconfig            |   1 +
 configs/ls1021atwr_qspi_defconfig                  |   1 +
 .../ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig    |   2 +
 configs/ls1021atwr_sdcard_ifc_defconfig            |   1 +
 configs/ls1021atwr_sdcard_qspi_defconfig           |   1 +
 configs/ls1043aqds_defconfig                       |   1 +
 configs/ls1043aqds_lpuart_defconfig                |   1 +
 configs/ls1043aqds_nand_defconfig                  |   1 +
 configs/ls1043aqds_nor_ddr3_defconfig              |   1 +
 configs/ls1043aqds_qspi_defconfig                  |   1 +
 configs/ls1043aqds_sdcard_ifc_defconfig            |   1 +
 configs/ls1043aqds_sdcard_qspi_defconfig           |   1 +
 configs/ls1043ardb_SECURE_BOOT_defconfig           |   1 +
 configs/ls1043ardb_defconfig                       |   1 +
 configs/ls1043ardb_nand_SECURE_BOOT_defconfig      |   2 +
 configs/ls1043ardb_nand_defconfig                  |   1 +
 configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig    |   2 +
 configs/ls1043ardb_sdcard_defconfig                |   1 +
 configs/ls1046aqds_SECURE_BOOT_defconfig           |   1 +
 configs/ls1046aqds_defconfig                       |   1 +
 configs/ls1046aqds_lpuart_defconfig                |   1 +
 configs/ls1046aqds_nand_defconfig                  |   1 +
 configs/ls1046aqds_qspi_defconfig                  |   1 +
 configs/ls1046aqds_sdcard_ifc_defconfig            |   1 +
 configs/ls1046aqds_sdcard_qspi_defconfig           |   1 +
 configs/ls1046ardb_emmc_defconfig                  |   1 +
 configs/ls1046ardb_qspi_SECURE_BOOT_defconfig      |   1 +
 configs/ls1046ardb_qspi_defconfig                  |   1 +
 configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig    |   2 +
 configs/ls1046ardb_sdcard_defconfig                |   1 +
 configs/ls2080a_emu_defconfig                      |   1 +
 configs/ls2080a_simu_defconfig                     |   1 +
 configs/ls2080aqds_SECURE_BOOT_defconfig           |   1 +
 configs/ls2080aqds_defconfig                       |   1 +
 configs/ls2080aqds_nand_defconfig                  |   1 +
 configs/ls2080aqds_qspi_defconfig                  |   1 +
 configs/ls2080aqds_sdcard_defconfig                |   1 +
 configs/ls2080ardb_SECURE_BOOT_defconfig           |   1 +
 configs/ls2080ardb_defconfig                       |   1 +
 configs/ls2080ardb_nand_defconfig                  |   1 +
 configs/ls2081ardb_defconfig                       |   3 +-
 configs/ls2088ardb_qspi_defconfig                  |   1 +
 configs/lschlv2_defconfig                          |   1 +
 configs/lsxhl_defconfig                            |   1 +
 configs/m28evk_defconfig                           |   1 +
 configs/m53evk_defconfig                           |   1 +
 configs/ma5d4evk_defconfig                         |  17 +-
 configs/marsboard_defconfig                        |   3 +-
 configs/mccmon6_nor_defconfig                      |   1 +
 configs/mccmon6_sd_defconfig                       |   1 +
 configs/mcx_defconfig                              |   1 +
 configs/medcom-wide_defconfig                      |   1 +
 configs/meesc_dataflash_defconfig                  |   1 +
 configs/meesc_defconfig                            |   1 +
 configs/mgcoge3un_defconfig                        |   1 +
 configs/microblaze-generic_defconfig               |   1 +
 configs/minnowmax_defconfig                        |   2 +-
 configs/miqi-rk3288_defconfig                      |   1 +
 configs/mpc8308_p1m_defconfig                      |   1 +
 configs/ms7722se_defconfig                         |   1 +
 configs/ms7750se_defconfig                         |   1 +
 configs/mt_ventoux_defconfig                       |   1 +
 configs/mvebu_db-88f3720_defconfig                 |   1 +
 configs/mvebu_db-88f7040-nand_defconfig            |   1 +
 configs/mvebu_db-88f7040_defconfig                 |   1 +
 configs/mvebu_db-88f8040_defconfig                 |   1 +
 configs/mvebu_espressobin-88f3720_defconfig        |   1 +
 configs/mvebu_mcbin-88f8040_defconfig              |   1 +
 configs/mx23_olinuxino_defconfig                   |   1 +
 configs/mx23evk_defconfig                          |   1 +
 configs/mx25pdk_defconfig                          |   1 +
 configs/mx28evk_auart_console_defconfig            |   3 +-
 configs/mx28evk_defconfig                          |   2 +-
 configs/mx28evk_nand_defconfig                     |   2 +-
 configs/mx28evk_spi_defconfig                      |   2 +-
 configs/mx31ads_defconfig                          |   1 +
 configs/mx31pdk_defconfig                          |   1 +
 configs/mx35pdk_defconfig                          |   1 +
 configs/mx51evk_defconfig                          |   1 +
 configs/mx53ard_defconfig                          |   1 +
 configs/mx53cx9020_defconfig                       |   1 +
 configs/mx53evk_defconfig                          |   1 +
 configs/mx53loco_defconfig                         |   1 +
 configs/mx53smd_defconfig                          |   1 +
 configs/mx6cuboxi_defconfig                        |   1 +
 configs/mx6dlarm2_defconfig                        |   1 +
 configs/mx6dlarm2_lpddr2_defconfig                 |   1 +
 configs/mx6dlsabreauto_defconfig                   |   1 +
 configs/mx6qarm2_defconfig                         |   1 +
 configs/mx6qarm2_lpddr2_defconfig                  |   1 +
 configs/mx6qpsabreauto_defconfig                   |   1 +
 configs/mx6qsabreauto_defconfig                    |   1 +
 configs/mx6qsabrelite_defconfig                    |   1 +
 configs/mx6sabresd_defconfig                       |   1 +
 configs/mx6slevk_defconfig                         |   1 +
 configs/mx6slevk_spinor_defconfig                  |   1 +
 configs/mx6slevk_spl_defconfig                     |   1 +
 configs/mx6sllevk_defconfig                        |   1 +
 configs/mx6sllevk_plugin_defconfig                 |   1 +
 configs/mx6ul_14x14_evk_defconfig                  |   1 +
 configs/mx6ul_9x9_evk_defconfig                    |   1 +
 configs/mx6ull_14x14_evk_defconfig                 |   1 +
 configs/mx6ull_14x14_evk_plugin_defconfig          |   1 +
 configs/mx7ulp_evk_defconfig                       |   1 +
 configs/mx7ulp_evk_plugin_defconfig                |   1 +
 configs/nas220_defconfig                           |   1 +
 configs/net2big_v2_defconfig                       |   1 +
 configs/netspace_lite_v2_defconfig                 |   1 +
 configs/netspace_max_v2_defconfig                  |   1 +
 configs/netspace_mini_v2_defconfig                 |   1 +
 configs/netspace_v2_defconfig                      |   1 +
 configs/nitrogen6dl2g_defconfig                    |   1 +
 configs/nitrogen6dl_defconfig                      |   1 +
 configs/nitrogen6q2g_defconfig                     |   1 +
 configs/nitrogen6q_defconfig                       |   1 +
 configs/nitrogen6s1g_defconfig                     |   1 +
 configs/nitrogen6s_defconfig                       |   1 +
 configs/nokia_rx51_defconfig                       |   1 +
 configs/novena_defconfig                           |   1 +
 configs/nsa310s_defconfig                          |   1 +
 configs/nsim_700_defconfig                         |   1 +
 configs/nsim_700be_defconfig                       |   1 +
 configs/nsim_hs38_defconfig                        |   1 +
 configs/nsim_hs38be_defconfig                      |   1 +
 configs/odroid-c2_defconfig                        |   1 +
 configs/odroid-xu3_defconfig                       |   2 +-
 configs/omap3_beagle_defconfig                     |   1 +
 configs/omap3_evm_defconfig                        |   1 +
 configs/omap3_ha_defconfig                         |   1 +
 configs/omap3_logic_defconfig                      |   1 +
 configs/omap3_overo_defconfig                      |   1 +
 configs/omap3_pandora_defconfig                    |   1 +
 configs/omap3_zoom1_defconfig                      |   1 +
 configs/omap4_panda_defconfig                      |   1 +
 configs/omap4_sdp4430_defconfig                    |   1 +
 configs/omap5_uevm_defconfig                       |   3 +-
 configs/omapl138_lcdk_defconfig                    |   1 +
 configs/openrd_base_defconfig                      |   1 +
 configs/openrd_client_defconfig                    |   1 +
 configs/openrd_ultimate_defconfig                  |   1 +
 configs/opos6uldev_defconfig                       |   1 +
 configs/ot1200_defconfig                           |   1 +
 configs/ot1200_spl_defconfig                       |   1 +
 configs/paz00_defconfig                            |   1 +
 configs/pb1000_defconfig                           |   1 +
 configs/pcm051_rev1_defconfig                      |   1 +
 configs/pcm051_rev3_defconfig                      |   1 +
 configs/pcm052_defconfig                           |   3 +-
 configs/pcm058_defconfig                           |   1 +
 configs/peach-pi_defconfig                         |   1 +
 configs/peach-pit_defconfig                        |   1 +
 configs/pengwyn_defconfig                          |   1 +
 configs/pepper_defconfig                           |   1 +
 configs/pic32mzdask_defconfig                      |   1 +
 configs/pico-imx6ul_defconfig                      |   1 +
 configs/pico-imx7d_defconfig                       |   8 +-
 configs/picosam9g45_defconfig                      |   1 +
 configs/platinum_picon_defconfig                   |   1 +
 configs/platinum_titanium_defconfig                |   1 +
 configs/plutux_defconfig                           |   1 +
 configs/pm9261_defconfig                           |   1 +
 configs/pm9263_defconfig                           |   1 +
 configs/pm9g45_defconfig                           |   1 +
 configs/pogo_e02_defconfig                         |   1 +
 configs/popmetal-rk3288_defconfig                  |   1 +
 configs/porter_defconfig                           |   1 +
 configs/portl2_defconfig                           |   1 +
 configs/puma-rk3399_defconfig                      |   1 +
 configs/pxm2_defconfig                             |   1 +
 configs/qemu-ppce500_defconfig                     |   1 +
 configs/qemu-x86_64_defconfig                      |   1 +
 configs/qemu-x86_defconfig                         |   1 +
 configs/qemu-x86_efi_payload32_defconfig           |   1 +
 configs/qemu-x86_efi_payload64_defconfig           |   1 +
 configs/r0p7734_defconfig                          |   1 +
 configs/r2dplus_defconfig                          |   1 +
 configs/r7780mp_defconfig                          |   1 +
 configs/r8a7795_salvator-x_defconfig               |   1 +
 configs/r8a7796_salvator-x_defconfig               |   1 +
 configs/rastaban_defconfig                         |   1 +
 configs/riotboard_defconfig                        |   3 +-
 configs/rock2_defconfig                            |   1 +
 configs/rock_defconfig                             |   1 +
 configs/rut_defconfig                              |   1 +
 configs/s32v234evb_defconfig                       |   1 +
 configs/s5p_goni_defconfig                         |   1 +
 configs/sama5d2_ptc_nandflash_defconfig            |   1 +
 configs/sama5d2_ptc_spiflash_defconfig             |   1 +
 configs/sama5d2_xplained_mmc_defconfig             |   1 +
 configs/sama5d2_xplained_spiflash_defconfig        |   1 +
 configs/sama5d36ek_cmp_mmc_defconfig               |   1 +
 configs/sama5d36ek_cmp_nandflash_defconfig         |   1 +
 configs/sama5d36ek_cmp_spiflash_defconfig          |   1 +
 configs/sama5d3_xplained_mmc_defconfig             |   1 +
 configs/sama5d3_xplained_nandflash_defconfig       |   1 +
 configs/sama5d3xek_mmc_defconfig                   |   1 +
 configs/sama5d3xek_nandflash_defconfig             |   1 +
 configs/sama5d3xek_spiflash_defconfig              |   1 +
 configs/sama5d4_xplained_mmc_defconfig             |   1 +
 configs/sama5d4_xplained_nandflash_defconfig       |   1 +
 configs/sama5d4_xplained_spiflash_defconfig        |   1 +
 configs/sama5d4ek_mmc_defconfig                    |   1 +
 configs/sama5d4ek_nandflash_defconfig              |   1 +
 configs/sama5d4ek_spiflash_defconfig               |   1 +
 configs/sandbox_defconfig                          |   1 +
 configs/sandbox_flattree_defconfig                 |   1 +
 configs/sandbox_noblk_defconfig                    |   1 +
 configs/sandbox_spl_defconfig                      |   1 +
 configs/sansa_fuze_plus_defconfig                  |   1 +
 configs/sc_sps_1_defconfig                         |   1 +
 configs/seaboard_defconfig                         |   1 +
 configs/secomx6quq7_defconfig                      |   2 +-
 configs/sh7752evb_defconfig                        |   1 +
 configs/sh7753evb_defconfig                        |   1 +
 configs/sh7757lcr_defconfig                        |   1 +
 configs/sh7763rdp_defconfig                        |   1 +
 configs/sh7785lcr_32bit_defconfig                  |   1 +
 configs/sh7785lcr_defconfig                        |   1 +
 configs/sheep-rk3368_defconfig                     |   1 +
 configs/sheevaplug_defconfig                       |   1 +
 configs/silk_defconfig                             |   1 +
 configs/smartweb_defconfig                         |   1 +
 configs/smdk5250_defconfig                         |   1 +
 configs/smdk5420_defconfig                         |   1 +
 configs/snapper9260_defconfig                      |   1 +
 configs/snapper9g20_defconfig                      |   1 +
 configs/sniper_defconfig                           |   1 +
 configs/snow_defconfig                             |   1 +
 configs/socfpga_arria10_defconfig                  |   1 +
 configs/socfpga_arria5_defconfig                   |   1 +
 configs/socfpga_cyclone5_defconfig                 |   1 +
 configs/socfpga_de0_nano_soc_defconfig             |   1 +
 configs/socfpga_de10_nano_defconfig                |   1 +
 configs/socfpga_de1_soc_defconfig                  |   1 +
 configs/socfpga_is1_defconfig                      |   1 +
 configs/socfpga_mcvevk_defconfig                   |   1 +
 configs/socfpga_sockit_defconfig                   |   1 +
 configs/socfpga_socrates_defconfig                 |   1 +
 configs/socfpga_sr1500_defconfig                   |   1 +
 configs/socfpga_vining_fpga_defconfig              |   1 +
 configs/socrates_defconfig                         |   1 +
 configs/som-db5800-som-6867_defconfig              |   2 +-
 configs/spear300_defconfig                         |   1 +
 configs/spear300_nand_defconfig                    |   1 +
 configs/spear300_usbtty_defconfig                  |   1 +
 configs/spear300_usbtty_nand_defconfig             |   1 +
 configs/spear310_defconfig                         |   1 +
 configs/spear310_nand_defconfig                    |   1 +
 configs/spear310_pnor_defconfig                    |   1 +
 configs/spear310_usbtty_defconfig                  |   1 +
 configs/spear310_usbtty_nand_defconfig             |   1 +
 configs/spear310_usbtty_pnor_defconfig             |   1 +
 configs/spear320_defconfig                         |   1 +
 configs/spear320_nand_defconfig                    |   1 +
 configs/spear320_pnor_defconfig                    |   1 +
 configs/spear320_usbtty_defconfig                  |   1 +
 configs/spear320_usbtty_nand_defconfig             |   1 +
 configs/spear320_usbtty_pnor_defconfig             |   1 +
 configs/spear600_defconfig                         |   1 +
 configs/spear600_nand_defconfig                    |   1 +
 configs/spear600_usbtty_defconfig                  |   1 +
 configs/spear600_usbtty_nand_defconfig             |   1 +
 configs/spring_defconfig                           |   1 +
 configs/stih410-b2260_defconfig                    |   1 +
 configs/stm32f429-discovery_defconfig              |   1 +
 configs/stm32f746-disco_defconfig                  |   1 +
 configs/stout_defconfig                            |   1 +
 configs/stv0991_defconfig                          |   1 +
 configs/tao3530_defconfig                          |   1 +
 configs/taurus_defconfig                           |   1 +
 configs/tb100_defconfig                            |   1 +
 configs/tbs2910_defconfig                          |   1 +
 configs/tec_defconfig                              |   1 +
 configs/thuban_defconfig                           |   1 +
 configs/thunderx_88xx_defconfig                    |   1 +
 configs/ti814x_evm_defconfig                       |   1 +
 configs/ti816x_evm_defconfig                       |   6 +-
 configs/tinker-rk3288_defconfig                    |   1 +
 configs/titanium_defconfig                         |   1 +
 configs/topic_miami_defconfig                      |   1 +
 configs/topic_miamilite_defconfig                  |   5 +-
 configs/topic_miamiplus_defconfig                  |   3 +-
 configs/tplink_wdr4300_defconfig                   |   1 +
 configs/tqma6dl_mba6_mmc_defconfig                 |   1 +
 configs/tqma6dl_mba6_spi_defconfig                 |   1 +
 configs/tqma6q_mba6_mmc_defconfig                  |   1 +
 configs/tqma6q_mba6_spi_defconfig                  |   1 +
 configs/tqma6s_mba6_mmc_defconfig                  |   1 +
 configs/tqma6s_mba6_spi_defconfig                  |   1 +
 configs/tqma6s_wru4_mmc_defconfig                  |   1 +
 configs/tricorder_defconfig                        |   1 +
 configs/tricorder_flash_defconfig                  |   1 +
 configs/trimslice_defconfig                        |   1 +
 configs/ts4600_defconfig                           |   2 +-
 configs/ts4800_defconfig                           |   1 +
 configs/twister_defconfig                          |   1 +
 configs/udoo_defconfig                             |   1 +
 configs/usb_a9263_dataflash_defconfig              |   1 +
 configs/usbarmory_defconfig                        |   1 +
 configs/vct_platinum_defconfig                     |   1 +
 configs/vct_platinum_small_defconfig               |   1 +
 configs/vct_platinumavc_defconfig                  |   1 +
 configs/vct_platinumavc_small_defconfig            |   1 +
 configs/vct_premium_defconfig                      |   1 +
 configs/vct_premium_small_defconfig                |   1 +
 configs/ve8313_defconfig                           |   1 +
 configs/ventana_defconfig                          |   1 +
 configs/vexpress_aemv8a_dram_defconfig             |   1 +
 configs/vexpress_aemv8a_juno_defconfig             |   1 +
 configs/vexpress_aemv8a_semi_defconfig             |   1 +
 configs/vexpress_ca15_tc2_defconfig                |   1 +
 configs/vexpress_ca5x2_defconfig                   |   1 +
 configs/vexpress_ca9x4_defconfig                   |   1 +
 configs/vf610twr_defconfig                         |   3 +-
 configs/vf610twr_nand_defconfig                    |   3 +-
 configs/vinco_defconfig                            |   1 +
 configs/vme8349_defconfig                          |   1 +
 configs/wandboard_defconfig                        |   1 +
 configs/warp_defconfig                             |   1 +
 configs/woodburn_defconfig                         |   1 +
 configs/woodburn_sd_defconfig                      |   1 +
 configs/work_92105_defconfig                       |   1 +
 configs/x600_defconfig                             |   1 +
 configs/xfi3_defconfig                             |   1 +
 configs/xilinx_zynqmp_ep_defconfig                 |   5 +-
 configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig   |   1 +
 configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig   |   1 +
 configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig   |   1 +
 configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig   |   1 +
 configs/xilinx_zynqmp_zcu102_defconfig             |   5 +-
 configs/xilinx_zynqmp_zcu102_revB_defconfig        |   5 +-
 configs/xpedite550x_defconfig                      |   1 +
 configs/xpress_defconfig                           |   1 +
 configs/xpress_spl_defconfig                       |   1 +
 configs/xtfpga_defconfig                           |   1 +
 configs/zc5202_defconfig                           |   1 +
 configs/zc5601_defconfig                           |   1 +
 configs/zipitz2_defconfig                          |   1 +
 configs/zmx25_defconfig                            |   1 +
 configs/zynq_microzed_defconfig                    |   1 +
 configs/zynq_picozed_defconfig                     |   1 +
 configs/zynq_zc702_defconfig                       |   1 +
 configs/zynq_zc706_defconfig                       |   1 +
 configs/zynq_zc770_xm010_defconfig                 |   1 +
 configs/zynq_zc770_xm011_defconfig                 |   1 +
 configs/zynq_zc770_xm012_defconfig                 |   1 +
 configs/zynq_zc770_xm013_defconfig                 |   1 +
 configs/zynq_zed_defconfig                         |   1 +
 configs/zynq_zybo_defconfig                        |   1 +
 drivers/bootcount/bootcount_env.c                  |   3 +-
 env/Kconfig                                        | 403 +++++++++++++++++++++
 env/Makefile                                       |  57 +++
 common/env_attr.c => env/attr.c                    |   0
 common/env_callback.c => env/callback.c            |   0
 common/env_common.c => env/common.c                |  38 +-
 common/env_dataflash.c => env/dataflash.c          |  33 +-
 common/env_eeprom.c => env/eeprom.c                |  61 ++--
 common/env_embedded.c => env/embedded.c            |   0
 env/env.c                                          | 151 ++++++++
 common/env_ext4.c => env/ext4.c                    |  28 +-
 common/env_fat.c => env/fat.c                      |  34 +-
 common/env_flags.c => env/flags.c                  |   0
 common/env_flash.c => env/flash.c                  |  92 +++--
 common/env_mmc.c => env/mmc.c                      |  81 ++---
 common/env_nand.c => env/nand.c                    |  86 +++--
 common/env_nowhere.c => env/nowhere.c              |  22 +-
 common/env_nvram.c => env/nvram.c                  |  26 +-
 common/env_onenand.c => env/onenand.c              |  24 +-
 common/env_remote.c => env/remote.c                |  24 +-
 common/env_sata.c => env/sata.c                    |  37 +-
 common/env_sf.c => env/sf.c                        |  76 ++--
 common/env_ubi.c => env/ubi.c                      |  59 ++-
 include/asm-generic/global_data.h                  |   2 +-
 include/common.h                                   |   1 -
 include/config_fsl_chain_trust.h                   |  11 -
 include/configs/10m50_devboard.h                   |   1 -
 include/configs/3c120_devboard.h                   |   1 -
 include/configs/B4860QDS.h                         |   8 -
 include/configs/BSC9131RDB.h                       |   3 -
 include/configs/BSC9132QDS.h                       |   5 -
 include/configs/C29XPCIE.h                         |   3 -
 include/configs/M5208EVBE.h                        |   5 +-
 include/configs/M52277EVB.h                        |   3 -
 include/configs/M5235EVB.h                         |   3 +-
 include/configs/M5249EVB.h                         |   6 +-
 include/configs/M5253DEMO.h                        |   6 +-
 include/configs/M5253EVBE.h                        |   4 +-
 include/configs/M5272C3.h                          |   6 +-
 include/configs/M5275EVB.h                         |   6 +-
 include/configs/M5282EVB.h                         |   3 +-
 include/configs/M53017EVB.h                        |   3 +-
 include/configs/M5329EVB.h                         |   5 +-
 include/configs/M5373EVB.h                         |   5 +-
 include/configs/M54418TWR.h                        |   2 -
 include/configs/M54451EVB.h                        |   2 -
 include/configs/M54455EVB.h                        |   3 -
 include/configs/M5475EVB.h                         |   1 -
 include/configs/M5485EVB.h                         |   1 -
 include/configs/MPC8308RDB.h                       |   1 -
 include/configs/MPC8313ERDB.h                      |   3 -
 include/configs/MPC8315ERDB.h                      |   2 -
 include/configs/MPC8323ERDB.h                      |   2 -
 include/configs/MPC832XEMDS.h                      |   2 -
 include/configs/MPC8349EMDS.h                      |   2 -
 include/configs/MPC8349ITX.h                       |   2 -
 include/configs/MPC837XEMDS.h                      |   2 -
 include/configs/MPC837XERDB.h                      |   2 -
 include/configs/MPC8536DS.h                        |   4 -
 include/configs/MPC8540ADS.h                       |   2 -
 include/configs/MPC8541CDS.h                       |   1 -
 include/configs/MPC8544DS.h                        |   1 -
 include/configs/MPC8548CDS.h                       |   1 -
 include/configs/MPC8555CDS.h                       |   1 -
 include/configs/MPC8560ADS.h                       |   2 -
 include/configs/MPC8568MDS.h                       |   1 -
 include/configs/MPC8569MDS.h                       |   1 -
 include/configs/MPC8572DS.h                        |   1 -
 include/configs/MPC8610HPCD.h                      |   2 -
 include/configs/MPC8641HPCN.h                      |   2 -
 include/configs/MigoR.h                            |   1 -
 include/configs/P1010RDB.h                         |   5 -
 include/configs/P1022DS.h                          |   5 -
 include/configs/P1023RDB.h                         |   1 -
 include/configs/P2041RDB.h                         |   8 -
 include/configs/T102xQDS.h                         |   5 -
 include/configs/T102xRDB.h                         |   5 -
 include/configs/T1040QDS.h                         |   5 -
 include/configs/T104xRDB.h                         |   4 -
 include/configs/T208xQDS.h                         |   5 -
 include/configs/T208xRDB.h                         |   5 -
 include/configs/T4240QDS.h                         |   8 -
 include/configs/T4240RDB.h                         |   7 -
 include/configs/TQM834x.h                          |   1 -
 include/configs/UCP1020.h                          |   5 -
 include/configs/adp-ae3xx.h                        |   1 -
 include/configs/adp-ag101p.h                       |   1 -
 include/configs/advantech_dms-ba16.h               |   1 -
 include/configs/am335x_evm.h                       |   6 -
 include/configs/am335x_igep003x.h                  |   1 -
 include/configs/am335x_shc.h                       |   9 -
 include/configs/am335x_sl50.h                      |   4 -
 include/configs/am3517_crane.h                     |   1 -
 include/configs/am3517_evm.h                       |   1 -
 include/configs/am43xx_evm.h                       |   8 -
 include/configs/am57xx_evm.h                       |   1 -
 include/configs/amcore.h                           |   5 +-
 include/configs/ap121.h                            |   1 -
 include/configs/ap143.h                            |   1 -
 include/configs/ap325rxa.h                         |   1 -
 include/configs/ap_sh4a_4a.h                       |   1 -
 include/configs/apalis-tk1.h                       |   1 -
 include/configs/apalis_imx6.h                      |   2 -
 include/configs/apalis_t30.h                       |   1 -
 include/configs/apf27.h                            |   1 -
 include/configs/apx4devkit.h                       |   1 -
 include/configs/aristainetos-common.h              |   1 -
 include/configs/armadillo-800eva.h                 |   1 -
 include/configs/arndale.h                          |   1 -
 include/configs/aspenite.h                         |   1 -
 include/configs/astro_mcf5373l.h                   |   4 +-
 include/configs/at91-sama5_common.h                |   3 -
 include/configs/at91rm9200ek.h                     |   1 -
 include/configs/at91sam9260ek.h                    |   4 -
 include/configs/at91sam9261ek.h                    |   3 -
 include/configs/at91sam9263ek.h                    |   3 -
 include/configs/at91sam9m10g45ek.h                 |   2 -
 include/configs/at91sam9n12ek.h                    |   3 -
 include/configs/at91sam9rlek.h                     |   3 -
 include/configs/at91sam9x5ek.h                     |   4 -
 include/configs/atngw100.h                         |   1 -
 include/configs/atngw100mkii.h                     |   1 -
 include/configs/atstk1002.h                        |   1 -
 include/configs/axs10x.h                           |   1 -
 include/configs/baltos.h                           |   1 -
 include/configs/bav335x.h                          |   7 -
 include/configs/bcm23550_w1d.h                     |   1 -
 include/configs/bcm28155_ap.h                      |   1 -
 include/configs/bcm_ep_board.h                     |   1 -
 include/configs/bcm_northstar2.h                   |   1 -
 include/configs/beaver.h                           |   1 -
 include/configs/bg0900.h                           |   1 -
 include/configs/blanche.h                          |   2 -
 include/configs/boston.h                           |   1 -
 include/configs/brppt1.h                           |   9 -
 include/configs/brxre1.h                           |   2 -
 include/configs/calimain.h                         |   1 -
 include/configs/cardhu.h                           |   1 -
 include/configs/cei-tk1-som.h                      |   1 -
 include/configs/cgtqmx6eval.h                      |   1 -
 include/configs/chiliboard.h                       |   1 -
 include/configs/cl-som-am57x.h                     |   1 -
 include/configs/clearfog.h                         |   1 -
 include/configs/cm_fx6.h                           |   1 -
 include/configs/cm_t335.h                          |   1 -
 include/configs/cm_t35.h                           |   1 -
 include/configs/cm_t3517.h                         |   1 -
 include/configs/cm_t43.h                           |   1 -
 include/configs/cm_t54.h                           |   1 -
 include/configs/cobra5272.h                        |   6 +-
 include/configs/colibri_imx6.h                     |   2 -
 include/configs/colibri_imx7.h                     |   1 -
 include/configs/colibri_pxa270.h                   |   5 -
 include/configs/colibri_t20.h                      |   1 -
 include/configs/colibri_t30.h                      |   1 -
 include/configs/comtrend_ar5387un.h                |   1 -
 include/configs/comtrend_ct5361.h                  |   1 -
 include/configs/comtrend_vr3032u.h                 |   1 -
 include/configs/controlcenterd.h                   |   3 -
 include/configs/controlcenterdc.h                  |   1 -
 include/configs/corenet_ds.h                       |   8 -
 include/configs/corvus.h                           |   1 -
 include/configs/cyrus.h                            |   1 -
 include/configs/da850evm.h                         |   7 -
 include/configs/dalmore.h                          |   1 -
 include/configs/db-88f6720.h                       |   1 -
 include/configs/db-88f6820-amc.h                   |   1 -
 include/configs/db-88f6820-gp.h                    |   1 -
 include/configs/db-mv784mp-gp.h                    |   1 -
 include/configs/dbau1x00.h                         |   2 -
 include/configs/devkit3250.h                       |   1 -
 include/configs/devkit8000.h                       |   1 -
 include/configs/dns325.h                           |   3 -
 include/configs/dockstar.h                         |   3 -
 include/configs/dra7xx_evm.h                       |   3 -
 include/configs/dragonboard410c.h                  |   1 -
 include/configs/dreamplug.h                        |   3 -
 include/configs/ds109.h                            |   3 -
 include/configs/ds414.h                            |   1 -
 include/configs/duovero.h                          |   1 -
 include/configs/e2220-1170.h                       |   1 -
 include/configs/ea20.h                             |   4 -
 include/configs/eb_cpu5282.h                       |   1 -
 include/configs/ecovec.h                           |   1 -
 include/configs/edb93xx.h                          |   1 -
 include/configs/edminiv2.h                         |   1 -
 include/configs/efi-x86.h                          |   2 -
 include/configs/el6x_common.h                      |   2 -
 include/configs/espresso7420.h                     |   1 -
 include/configs/espt.h                             |   1 -
 include/configs/ethernut5.h                        |   1 -
 include/configs/evb_ast2500.h                      |   2 -
 include/configs/evb_px5.h                          |   1 -
 include/configs/evb_rk3288.h                       |   1 -
 include/configs/evb_rk3328.h                       |   1 -
 include/configs/evb_rk3399.h                       |   1 -
 include/configs/exynos5-dt-common.h                |   1 -
 include/configs/fennec_rk3288.h                    |   1 -
 include/configs/firefly-rk3288.h                   |   1 -
 include/configs/flea3.h                            |   2 -
 include/configs/ge_bx50v3.h                        |   1 -
 include/configs/geekbox.h                          |   1 -
 include/configs/goflexhome.h                       |   3 -
 include/configs/gplugd.h                           |   1 -
 include/configs/grasshopper.h                      |   1 -
 include/configs/guruplug.h                         |   3 -
 include/configs/gw_ventana.h                       |   7 -
 include/configs/h2200.h                            |   1 -
 include/configs/harmony.h                          |   1 -
 include/configs/highbank.h                         |   1 -
 include/configs/hikey.h                            |   1 -
 include/configs/hrcon.h                            |   2 -
 include/configs/hsdk.h                             |   1 -
 include/configs/huawei_hg556a.h                    |   1 -
 include/configs/ib62x0.h                           |   3 -
 include/configs/iconnect.h                         |   3 -
 include/configs/ids8313.h                          |   1 -
 include/configs/imgtec_xilfpga.h                   |   1 -
 include/configs/imx27lite-common.h                 |   1 -
 include/configs/imx31_phycore.h                    |   1 -
 include/configs/imx6_logic.h                       |   1 -
 include/configs/integratorap.h                     |   1 -
 include/configs/integratorcp.h                     |   1 -
 include/configs/ipam390.h                          |   1 -
 include/configs/jetson-tk1.h                       |   1 -
 include/configs/k2e_evm.h                          |   1 -
 include/configs/k2g_evm.h                          |   1 -
 include/configs/k2hk_evm.h                         |   1 -
 include/configs/k2l_evm.h                          |   1 -
 include/configs/kc1.h                              |   1 -
 include/configs/km/km83xx-common.h                 |   2 -
 include/configs/km/km_arm.h                        |   2 -
 include/configs/km/kmp204x-common.h                |   1 -
 include/configs/kylin_rk3036.h                     |   2 -
 include/configs/kzm9g.h                            |   1 -
 include/configs/lacie_kw.h                         |   1 -
 include/configs/legoev3.h                          |   1 -
 include/configs/liteboard.h                        |   1 -
 include/configs/ls1012a_common.h                   |   1 -
 include/configs/ls1021aiot.h                       |   2 -
 include/configs/ls1021aqds.h                       |   4 -
 include/configs/ls1021atwr.h                       |   3 -
 include/configs/ls1043aqds.h                       |   4 -
 include/configs/ls1043ardb.h                       |   3 -
 include/configs/ls1046aqds.h                       |   4 -
 include/configs/ls1046ardb.h                       |   2 -
 include/configs/ls2080a_common.h                   |   1 -
 include/configs/ls2080a_emu.h                      |   1 -
 include/configs/ls2080a_simu.h                     |   1 -
 include/configs/ls2080aqds.h                       |   3 -
 include/configs/ls2080ardb.h                       |   2 -
 include/configs/lsxl.h                             |   3 -
 include/configs/m28evk.h                           |   3 -
 include/configs/m53evk.h                           |   3 -
 include/configs/ma5d4evk.h                         |   1 -
 include/configs/malta.h                            |   1 -
 include/configs/maxbcm.h                           |   1 -
 include/configs/mccmon6.h                          |   1 -
 include/configs/mcx.h                              |   1 -
 include/configs/medcom-wide.h                      |   1 -
 include/configs/meesc.h                            |   2 -
 include/configs/meson-gxbb-common.h                |   1 -
 include/configs/microblaze-generic.h               |   5 -
 include/configs/miqi_rk3288.h                      |   1 -
 include/configs/mpc8308_p1m.h                      |   1 -
 include/configs/mpr2.h                             |   1 -
 include/configs/ms7720se.h                         |   1 -
 include/configs/ms7722se.h                         |   1 -
 include/configs/ms7750se.h                         |   1 -
 include/configs/mvebu_armada-37xx.h                |   1 -
 include/configs/mvebu_armada-8k.h                  |   3 -
 include/configs/mx23_olinuxino.h                   |   1 -
 include/configs/mx23evk.h                          |   1 -
 include/configs/mx25pdk.h                          |   1 -
 include/configs/mx31ads.h                          |   1 -
 include/configs/mx31pdk.h                          |   1 -
 include/configs/mx35pdk.h                          |   3 -
 include/configs/mx51evk.h                          |   1 -
 include/configs/mx53ard.h                          |   1 -
 include/configs/mx53cx9020.h                       |   1 -
 include/configs/mx53evk.h                          |   1 -
 include/configs/mx53loco.h                         |   1 -
 include/configs/mx53smd.h                          |   1 -
 include/configs/mx6cuboxi.h                        |   1 -
 include/configs/mx6qarm2.h                         |   1 -
 include/configs/mx6sabre_common.h                  |   2 -
 include/configs/mx6slevk.h                         |   2 -
 include/configs/mx6sllevk.h                        |   1 -
 include/configs/mx6sxsabreauto.h                   |   1 -
 include/configs/mx6sxsabresd.h                     |   1 -
 include/configs/mx6ul_14x14_evk.h                  |   1 -
 include/configs/mx6ullevk.h                        |   1 -
 include/configs/mx7dsabresd.h                      |   1 -
 include/configs/mx7ulp_evk.h                       |   1 -
 include/configs/nas220.h                           |   3 -
 include/configs/netgear_cg3100d.h                  |   1 -
 include/configs/nitrogen6x.h                       |   6 -
 include/configs/nokia_rx51.h                       |   2 -
 include/configs/novena.h                           |   3 -
 include/configs/nsa310s.h                          |   3 -
 include/configs/nsim.h                             |   1 -
 include/configs/nyan-big.h                         |   1 -
 include/configs/odroid.h                           |   1 -
 include/configs/odroid_xu3.h                       |   4 -
 include/configs/omap3_beagle.h                     |   1 -
 include/configs/omap3_cairo.h                      |   1 -
 include/configs/omap3_evm.h                        |   1 -
 include/configs/omap3_igep00x0.h                   |   1 -
 include/configs/omap3_logic.h                      |   1 -
 include/configs/omap3_overo.h                      |   1 -
 include/configs/omap3_pandora.h                    |   1 -
 include/configs/omap3_zoom1.h                      |   1 -
 include/configs/omap4_panda.h                      |   1 -
 include/configs/omap4_sdp4430.h                    |   1 -
 include/configs/omap5_uevm.h                       |   1 -
 include/configs/omapl138_lcdk.h                    |  13 -
 include/configs/openrd.h                           |   3 -
 include/configs/opos6uldev.h                       |   1 -
 include/configs/origen.h                           |   1 -
 include/configs/ot1200.h                           |   1 -
 include/configs/p1_p2_rdb_pc.h                     |   5 -
 include/configs/p1_twr.h                           |   3 -
 include/configs/p2371-0000.h                       |   1 -
 include/configs/p2371-2180.h                       |   1 -
 include/configs/p2571.h                            |   1 -
 include/configs/p2771-0000.h                       |   1 -
 include/configs/paz00.h                            |   1 -
 include/configs/pb1x00.h                           |   2 -
 include/configs/pcm051.h                           |   1 -
 include/configs/pcm058.h                           |   1 -
 include/configs/pengwyn.h                          |   1 -
 include/configs/pepper.h                           |   1 -
 include/configs/pic32mzdask.h                      |   1 -
 include/configs/pico-imx6ul.h                      |   1 -
 include/configs/pico-imx7d.h                       |   1 -
 include/configs/picosam9g45.h                      |   1 -
 include/configs/platinum.h                         |   2 -
 include/configs/plutux.h                           |   1 -
 include/configs/pm9261.h                           |   3 -
 include/configs/pm9263.h                           |   3 -
 include/configs/pm9g45.h                           |   1 -
 include/configs/pogo_e02.h                         |   3 -
 include/configs/popmetal_rk3288.h                  |   1 -
 include/configs/puma_rk3399.h                      |   1 -
 include/configs/qemu-mips.h                        |   2 -
 include/configs/qemu-mips64.h                      |   2 -
 include/configs/qemu-ppce500.h                     |   2 -
 include/configs/qemu-x86.h                         |   2 -
 include/configs/r0p7734.h                          |   1 -
 include/configs/r2dplus.h                          |   1 -
 include/configs/r7780mp.h                          |   1 -
 include/configs/rcar-gen2-common.h                 |   1 -
 include/configs/rk3036_common.h                    |   1 -
 include/configs/rock.h                             |   1 -
 include/configs/rock2.h                            |   1 -
 include/configs/rpi.h                              |   1 -
 include/configs/rsk7203.h                          |   1 -
 include/configs/rsk7264.h                          |   1 -
 include/configs/rsk7269.h                          |   1 -
 include/configs/rv1108_common.h                    |   1 -
 include/configs/s32v234evb.h                       |   1 -
 include/configs/s5p_goni.h                         |   1 -
 include/configs/s5pc210_universal.h                |   1 -
 include/configs/sagem_f at st1704.h                   |   1 -
 include/configs/salvator-x.h                       |   1 -
 include/configs/sama5d2_ptc.h                      |   1 -
 include/configs/sama5d3_xplained.h                 |   2 -
 include/configs/sama5d3xek.h                       |   2 -
 include/configs/sandbox.h                          |   1 -
 include/configs/sansa_fuze_plus.h                  |   1 -
 include/configs/sbc8349.h                          |   2 -
 include/configs/sbc8548.h                          |   1 -
 include/configs/sbc8641d.h                         |   1 -
 include/configs/sc_sps_1.h                         |   3 -
 include/configs/seaboard.h                         |   1 -
 include/configs/sfr_nb4_ser.h                      |   1 -
 include/configs/sh7752evb.h                        |   1 -
 include/configs/sh7753evb.h                        |   1 -
 include/configs/sh7757lcr.h                        |   1 -
 include/configs/sh7763rdp.h                        |   1 -
 include/configs/sh7785lcr.h                        |   1 -
 include/configs/sheep_rk3368.h                     |   1 -
 include/configs/sheevaplug.h                       |   3 -
 include/configs/shmin.h                            |   1 -
 include/configs/siemens-am33x-common.h             |   5 -
 include/configs/smartweb.h                         |   1 -
 include/configs/smdkv310.h                         |   1 -
 include/configs/snapper9260.h                      |   1 -
 include/configs/snapper9g45.h                      |   1 -
 include/configs/sniper.h                           |   1 -
 include/configs/socfpga_arria10_socdk.h            |   1 -
 include/configs/socfpga_arria5_socdk.h             |   2 -
 include/configs/socfpga_cyclone5_socdk.h           |   2 -
 include/configs/socfpga_de0_nano_soc.h             |   2 -
 include/configs/socfpga_de10_nano.h                |   2 -
 include/configs/socfpga_de1_soc.h                  |   2 -
 include/configs/socfpga_is1.h                      |   1 -
 include/configs/socfpga_mcvevk.h                   |   1 -
 include/configs/socfpga_sockit.h                   |   2 -
 include/configs/socfpga_socrates.h                 |   2 -
 include/configs/socfpga_sr1500.h                   |   1 -
 include/configs/socfpga_vining_fpga.h              |   1 -
 include/configs/socrates.h                         |   1 -
 include/configs/spear3xx_evb.h                     |   6 -
 include/configs/spear6xx_evb.h                     |   6 -
 include/configs/stih410-b2260.h                    |   1 -
 include/configs/stm32f429-discovery.h              |   1 -
 include/configs/stm32f746-disco.h                  |   1 -
 include/configs/strider.h                          |   2 -
 include/configs/stv0991.h                          |   1 -
 include/configs/tam3517-common.h                   |   1 -
 include/configs/tao3530.h                          |   1 -
 include/configs/taurus.h                           |   1 -
 include/configs/tb100.h                            |   1 -
 include/configs/tbs2910.h                          |   1 -
 include/configs/tec-ng.h                           |   1 -
 include/configs/tec.h                              |   1 -
 include/configs/theadorable.h                      |   1 -
 include/configs/thunderx_88xx.h                    |   1 -
 include/configs/ti814x_evm.h                       |   2 -
 include/configs/ti816x_evm.h                       |   1 -
 include/configs/tinker_rk3288.h                    |   1 -
 include/configs/titanium.h                         |   2 -
 include/configs/topic_miami.h                      |   1 -
 include/configs/tplink_wdr4300.h                   |   1 -
 include/configs/tqma6.h                            |   2 -
 include/configs/trats.h                            |   1 -
 include/configs/trats2.h                           |   1 -
 include/configs/tricorder.h                        |   5 -
 include/configs/trimslice.h                        |   1 -
 include/configs/ts4800.h                           |   1 -
 include/configs/udoo.h                             |   1 -
 include/configs/udoo_neo.h                         |   1 -
 include/configs/uniphier.h                         |   3 -
 include/configs/usb_a9263.h                        |   1 -
 include/configs/usbarmory.h                        |   1 -
 include/configs/vct.h                              |   1 -
 include/configs/ve8313.h                           |   1 -
 include/configs/venice2.h                          |   1 -
 include/configs/ventana.h                          |   1 -
 include/configs/vexpress_aemv8a.h                  |   1 -
 include/configs/vexpress_common.h                  |   1 -
 include/configs/veyron.h                           |   1 -
 include/configs/vining_2000.h                      |   1 -
 include/configs/vme8349.h                          |   2 -
 include/configs/wandboard.h                        |   1 -
 include/configs/warp.h                             |   1 -
 include/configs/warp7.h                            |   1 -
 include/configs/woodburn_common.h                  |   2 -
 include/configs/work_92105.h                       |   1 -
 include/configs/x600.h                             |   2 -
 include/configs/x86-chromebook.h                   |   2 -
 include/configs/x86-common.h                       |   1 -
 include/configs/xfi3.h                             |   1 -
 include/configs/xilinx-ppc.h                       |   2 -
 include/configs/xilinx_zynqmp.h                    |   4 -
 include/configs/xpedite517x.h                      |   1 -
 include/configs/xpedite520x.h                      |   1 -
 include/configs/xpedite537x.h                      |   1 -
 include/configs/xpedite550x.h                      |   1 -
 include/configs/xpress.h                           |   1 -
 include/configs/xtfpga.h                           |   1 -
 include/configs/zipitz2.h                          |   1 -
 include/configs/zmx25.h                            |   1 -
 include/configs/zynq-common.h                      |   4 -
 include/environment.h                              | 131 ++++++-
 scripts/Makefile.spl                               |   4 +-
 scripts/config_whitelist.txt                       |   7 -
 tools/Makefile                                     |   4 +-
 1415 files changed, 2196 insertions(+), 1797 deletions(-)
 create mode 100644 env/Kconfig
 create mode 100644 env/Makefile
 rename common/env_attr.c => env/attr.c (100%)
 rename common/env_callback.c => env/callback.c (100%)
 rename common/env_common.c => env/common.c (88%)
 rename common/env_dataflash.c => env/dataflash.c (75%)
 rename common/env_eeprom.c => env/eeprom.c (86%)
 rename common/env_embedded.c => env/embedded.c (100%)
 create mode 100644 env/env.c
 rename common/env_ext4.c => env/ext4.c (91%)
 rename common/env_fat.c => env/fat.c (84%)
 rename common/env_flags.c => env/flags.c (100%)
 rename common/env_flash.c => env/flash.c (80%)
 rename common/env_mmc.c => env/mmc.c (88%)
 rename common/env_nand.c => env/nand.c (86%)
 rename common/env_nowhere.c => env/nowhere.c (58%)
 rename common/env_nvram.c => env/nvram.c (86%)
 rename common/env_onenand.c => env/onenand.c (89%)
 rename common/env_remote.c => env/remote.c (73%)
 rename common/env_sata.c => env/sata.c (84%)
 rename common/env_sf.c => env/sf.c (87%)
 rename common/env_ubi.c => env/ubi.c (87%)

-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 01/30] Makefile: Rename 'env' target to 'environ'
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 02/30] Move environment files from common/ to env/ Simon Glass
                   ` (30 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This target stops us using 'env' as a subdirectory. It is not mentioned in
the help so seems to be an internal target. Rename it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index 97a70ccfd2..0b502638cb 100644
--- a/Makefile
+++ b/Makefile
@@ -1441,14 +1441,14 @@ checkarmreloc: u-boot
 		false; \
 	fi
 
-env: scripts_basic
+environ: scripts_basic
 	$(Q)$(MAKE) $(build)=tools/$@
 
 tools-only: scripts_basic $(version_h) $(timestamp_h)
 	$(Q)$(MAKE) $(build)=tools
 
 tools-all: export HOST_TOOLS_ALL=y
-tools-all: env tools ;
+tools-all: environ tools ;
 
 cross_tools: export CROSS_BUILD_TOOLS=y
 cross_tools: tools ;
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 02/30] Move environment files from common/ to env/
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 01/30] Makefile: Rename 'env' target to 'environ' Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 03/30] Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig Simon Glass
                   ` (29 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

About a quarter of the files in common/ relate to the environment. It
seems better to put these into their own subdirectory and remove the
prefix.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 Kconfig                                   |  2 +
 Makefile                                  |  1 +
 arch/sh/cpu/u-boot.lds                    |  4 +-
 board/freescale/mx31ads/u-boot.lds        |  2 +-
 common/Kconfig                            | 69 -------------------------------
 common/Makefile                           | 49 +---------------------
 env/Kconfig                               | 68 ++++++++++++++++++++++++++++++
 env/Makefile                              | 57 +++++++++++++++++++++++++
 common/env_attr.c => env/attr.c           |  0
 common/env_callback.c => env/callback.c   |  0
 common/env_common.c => env/common.c       |  0
 common/env_dataflash.c => env/dataflash.c |  0
 common/env_eeprom.c => env/eeprom.c       |  0
 common/env_embedded.c => env/embedded.c   |  0
 common/env_ext4.c => env/ext4.c           |  0
 common/env_fat.c => env/fat.c             |  0
 common/env_flags.c => env/flags.c         |  0
 common/env_flash.c => env/flash.c         |  0
 common/env_mmc.c => env/mmc.c             |  0
 common/env_nand.c => env/nand.c           |  0
 common/env_nowhere.c => env/nowhere.c     |  0
 common/env_nvram.c => env/nvram.c         |  0
 common/env_onenand.c => env/onenand.c     |  0
 common/env_remote.c => env/remote.c       |  0
 common/env_sata.c => env/sata.c           |  0
 common/env_sf.c => env/sf.c               |  0
 common/env_ubi.c => env/ubi.c             |  0
 include/configs/M5208EVBE.h               |  4 +-
 include/configs/M5235EVB.h                |  2 +-
 include/configs/M5249EVB.h                |  4 +-
 include/configs/M5253DEMO.h               |  4 +-
 include/configs/M5253EVBE.h               |  2 +-
 include/configs/M5272C3.h                 |  4 +-
 include/configs/M5275EVB.h                |  4 +-
 include/configs/M5282EVB.h                |  2 +-
 include/configs/M53017EVB.h               |  2 +-
 include/configs/M5329EVB.h                |  4 +-
 include/configs/M5373EVB.h                |  4 +-
 include/configs/amcore.h                  |  4 +-
 include/configs/astro_mcf5373l.h          |  2 +-
 include/configs/cobra5272.h               |  4 +-
 scripts/Makefile.spl                      |  4 +-
 tools/Makefile                            |  4 +-
 43 files changed, 159 insertions(+), 147 deletions(-)
 create mode 100644 env/Kconfig
 create mode 100644 env/Makefile
 rename common/env_attr.c => env/attr.c (100%)
 rename common/env_callback.c => env/callback.c (100%)
 rename common/env_common.c => env/common.c (100%)
 rename common/env_dataflash.c => env/dataflash.c (100%)
 rename common/env_eeprom.c => env/eeprom.c (100%)
 rename common/env_embedded.c => env/embedded.c (100%)
 rename common/env_ext4.c => env/ext4.c (100%)
 rename common/env_fat.c => env/fat.c (100%)
 rename common/env_flags.c => env/flags.c (100%)
 rename common/env_flash.c => env/flash.c (100%)
 rename common/env_mmc.c => env/mmc.c (100%)
 rename common/env_nand.c => env/nand.c (100%)
 rename common/env_nowhere.c => env/nowhere.c (100%)
 rename common/env_nvram.c => env/nvram.c (100%)
 rename common/env_onenand.c => env/onenand.c (100%)
 rename common/env_remote.c => env/remote.c (100%)
 rename common/env_sata.c => env/sata.c (100%)
 rename common/env_sf.c => env/sf.c (100%)
 rename common/env_ubi.c => env/ubi.c (100%)

diff --git a/Kconfig b/Kconfig
index bb80adacf4..f48912b7df 100644
--- a/Kconfig
+++ b/Kconfig
@@ -358,6 +358,8 @@ source "disk/Kconfig"
 
 source "dts/Kconfig"
 
+source "env/Kconfig"
+
 source "net/Kconfig"
 
 source "drivers/Kconfig"
diff --git a/Makefile b/Makefile
index 0b502638cb..e8fcc1938a 100644
--- a/Makefile
+++ b/Makefile
@@ -687,6 +687,7 @@ libs-y += drivers/usb/phy/
 libs-y += drivers/usb/ulpi/
 libs-y += cmd/
 libs-y += common/
+libs-y += env/
 libs-$(CONFIG_API) += api/
 libs-$(CONFIG_HAS_POST) += post/
 libs-y += test/
diff --git a/arch/sh/cpu/u-boot.lds b/arch/sh/cpu/u-boot.lds
index bbf9ff485f..7fc91bc4aa 100644
--- a/arch/sh/cpu/u-boot.lds
+++ b/arch/sh/cpu/u-boot.lds
@@ -33,9 +33,9 @@ SECTIONS
 		KEEP(CONFIG_BOARDDIR/lowlevel_init.o	(.text .spiboot1.text))
 		KEEP(*(.spiboot2.text))
 		. = ALIGN(8192);
-		common/env_embedded.o	(.ppcenv)
+		env/embedded.o	(.ppcenv)
 		. = ALIGN(8192);
-		common/env_embedded.o	(.ppcenvr)
+		env/embedded.o	(.ppcenvr)
 		. = ALIGN(8192);
 		*(.text)
 		. = ALIGN(4);
diff --git a/board/freescale/mx31ads/u-boot.lds b/board/freescale/mx31ads/u-boot.lds
index 8a4a8a2f07..71a63f188e 100644
--- a/board/freescale/mx31ads/u-boot.lds
+++ b/board/freescale/mx31ads/u-boot.lds
@@ -30,7 +30,7 @@ SECTIONS
 	  drivers/mtd/built-in.o		(.text*)
 
 	  . = DEFINED(env_offset) ? env_offset : .;
-	  common/env_embedded.o(.text*)
+	  env/embedded.o(.text*)
 
 	  *(.text*)
 	}
diff --git a/common/Kconfig b/common/Kconfig
index 27dde11b14..29804e6ff5 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -174,75 +174,6 @@ config SPI_BOOT
 
 endmenu
 
-menu "Environment"
-
-if ARCH_SUNXI
-
-choice
-	prompt "Environment Device"
-	default ENV_IS_IN_MMC if ARCH_SUNXI
-
-config ENV_IS_IN_MMC
-	bool "Environment in an MMC device"
-	depends on CMD_MMC
-	help
-	  Define this if you have an MMC device which you want to use for the
-	  environment.
-
-config ENV_IS_IN_NAND
-	bool "Environment in a NAND device"
-	depends on CMD_NAND
-	help
-	  Define this if you have a NAND device which you want to use for the
-	  environment.
-
-config ENV_IS_IN_UBI
-	bool "Environment in a UBI volume"
-	depends on CMD_UBI
-	depends on CMD_MTDPARTS
-	help
-	  Define this if you have a UBI volume which you want to use for the
-	  environment.
-
-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_OFFSET
-	hex "Environment Offset"
-	depends on !ENV_IS_IN_UBI
-	depends on !ENV_IS_NOWHERE
-	default 0x88000 if ARCH_SUNXI
-	help
-	  Offset from the start of the device (or partition)
-
-config ENV_SIZE
-	hex "Environment Size"
-	depends on !ENV_IS_NOWHERE
-	default 0x20000 if ARCH_SUNXI
-	help
-	  Size of the environment storage area
-
-config ENV_UBI_PART
-	string "UBI partition name"
-	depends on ENV_IS_IN_UBI
-	help
-	  MTD partition containing the UBI device
-
-config ENV_UBI_VOLUME
-	string "UBI volume name"
-	depends on ENV_IS_IN_UBI
-	help
-	  Name of the volume that you want to store the environment in.
-
-endif
-
-endmenu
-
 config BOOTDELAY
 	int "delay in seconds before automatically booting"
 	default 2
diff --git a/common/Makefile b/common/Makefile
index ad3697f492..ac040eb2ce 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -19,7 +19,7 @@ ifdef CONFIG_BOOT_RETRY_TIME
 obj-y += bootretry.o
 endif
 
-# boards
+# # boards
 obj-y += board_f.o
 obj-y += board_r.o
 obj-$(CONFIG_DISPLAY_BOARDINFO) += board_info.o
@@ -29,29 +29,6 @@ obj-$(CONFIG_CMD_BOOTM) += bootm.o bootm_os.o
 obj-$(CONFIG_CMD_BOOTZ) += bootm.o bootm_os.o
 obj-$(CONFIG_CMD_BOOTI) += bootm.o bootm_os.o
 
-# environment
-obj-y += env_attr.o
-obj-y += env_callback.o
-obj-y += env_flags.o
-obj-$(CONFIG_ENV_IS_IN_DATAFLASH) += env_dataflash.o
-obj-$(CONFIG_ENV_IS_IN_EEPROM) += env_eeprom.o
-extra-$(CONFIG_ENV_IS_EMBEDDED) += env_embedded.o
-obj-$(CONFIG_ENV_IS_IN_EEPROM) += env_embedded.o
-extra-$(CONFIG_ENV_IS_IN_FLASH) += env_embedded.o
-obj-$(CONFIG_ENV_IS_IN_NVRAM) += env_embedded.o
-obj-$(CONFIG_ENV_IS_IN_FLASH) += env_flash.o
-obj-$(CONFIG_ENV_IS_IN_MMC) += env_mmc.o
-obj-$(CONFIG_ENV_IS_IN_FAT) += env_fat.o
-obj-$(CONFIG_ENV_IS_IN_EXT4) += env_ext4.o
-obj-$(CONFIG_ENV_IS_IN_NAND) += env_nand.o
-obj-$(CONFIG_ENV_IS_IN_NVRAM) += env_nvram.o
-obj-$(CONFIG_ENV_IS_IN_ONENAND) += env_onenand.o
-obj-$(CONFIG_ENV_IS_IN_SATA) += env_sata.o
-obj-$(CONFIG_ENV_IS_IN_SPI_FLASH) += env_sf.o
-obj-$(CONFIG_ENV_IS_IN_REMOTE) += env_remote.o
-obj-$(CONFIG_ENV_IS_IN_UBI) += env_ubi.o
-obj-$(CONFIG_ENV_IS_NOWHERE) += env_nowhere.o
-
 obj-$(CONFIG_CMD_BEDBUG) += bedbug.o
 obj-$(CONFIG_$(SPL_)OF_LIBFDT) += fdt_support.o
 
@@ -92,7 +69,6 @@ ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_SPL_DFU_SUPPORT) += dfu.o
 obj-$(CONFIG_SPL_DFU_SUPPORT) += cli_hush.o
 obj-$(CONFIG_SPL_HASH_SUPPORT) += hash.o
-obj-$(CONFIG_ENV_IS_IN_FLASH) += env_flash.o
 obj-$(CONFIG_SPL_YMODEM_SUPPORT) += xyzModem.o
 obj-$(CONFIG_SPL_NET_SUPPORT) += miiphyutil.o
 obj-$(CONFIG_SPL_OF_LIBFDT) += fdt_support.o
@@ -100,28 +76,7 @@ ifdef CONFIG_SPL_USB_HOST_SUPPORT
 obj-$(CONFIG_SPL_USB_SUPPORT) += usb.o usb_hub.o
 obj-$(CONFIG_USB_STORAGE) += usb_storage.o
 endif
-# environment
-ifdef CONFIG_TPL_BUILD
-obj-$(CONFIG_TPL_ENV_SUPPORT) += env_attr.o
-obj-$(CONFIG_TPL_ENV_SUPPORT) += env_flags.o
-obj-$(CONFIG_TPL_ENV_SUPPORT) += env_callback.o
-else
-obj-$(CONFIG_SPL_ENV_SUPPORT) += env_attr.o
-obj-$(CONFIG_SPL_ENV_SUPPORT) += env_flags.o
-obj-$(CONFIG_SPL_ENV_SUPPORT) += env_callback.o
-endif
-ifneq ($(CONFIG_TPL_ENV_SUPPORT)$(CONFIG_SPL_ENV_SUPPORT),)
-obj-$(CONFIG_ENV_IS_NOWHERE) += env_nowhere.o
-obj-$(CONFIG_ENV_IS_IN_MMC) += env_mmc.o
-obj-$(CONFIG_ENV_IS_IN_FAT) += env_fat.o
-obj-$(CONFIG_ENV_IS_IN_EXT4) += env_ext4.o
-obj-$(CONFIG_ENV_IS_IN_NAND) += env_nand.o
-obj-$(CONFIG_ENV_IS_IN_SPI_FLASH) += env_sf.o
-obj-$(CONFIG_ENV_IS_IN_FLASH) += env_flash.o
-endif
 endif
-#environment
-obj-y += env_common.o
 #others
 obj-$(CONFIG_DDR_SPD) += ddr_spd.o
 obj-$(CONFIG_SPD_EEPROM) += ddr_spd.o
@@ -171,5 +126,3 @@ obj-$(CONFIG_CMD_DFU) += dfu.o
 obj-y += command.o
 obj-y += s_record.o
 obj-y += xyzModem.o
-
-CFLAGS_env_embedded.o := -Wa,--no-warn -DENV_CRC=$(shell tools/envcrc 2>/dev/null)
diff --git a/env/Kconfig b/env/Kconfig
new file mode 100644
index 0000000000..b622da71d1
--- /dev/null
+++ b/env/Kconfig
@@ -0,0 +1,68 @@
+menu "Environment"
+
+if ARCH_SUNXI
+
+choice
+	prompt "Environment Device"
+	default ENV_IS_IN_MMC if ARCH_SUNXI
+
+config ENV_IS_IN_MMC
+	bool "Environment in an MMC device"
+	depends on CMD_MMC
+	help
+	  Define this if you have an MMC device which you want to use for the
+	  environment.
+
+config ENV_IS_IN_NAND
+	bool "Environment in a NAND device"
+	depends on CMD_NAND
+	help
+	  Define this if you have a NAND device which you want to use for the
+	  environment.
+
+config ENV_IS_IN_UBI
+	bool "Environment in a UBI volume"
+	depends on CMD_UBI
+	depends on CMD_MTDPARTS
+	help
+	  Define this if you have a UBI volume which you want to use for the
+	  environment.
+
+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_OFFSET
+	hex "Environment Offset"
+	depends on !ENV_IS_IN_UBI
+	depends on !ENV_IS_NOWHERE
+	default 0x88000 if ARCH_SUNXI
+	help
+	  Offset from the start of the device (or partition)
+
+config ENV_SIZE
+	hex "Environment Size"
+	depends on !ENV_IS_NOWHERE
+	default 0x20000 if ARCH_SUNXI
+	help
+	  Size of the environment storage area
+
+config ENV_UBI_PART
+	string "UBI partition name"
+	depends on ENV_IS_IN_UBI
+	help
+	  MTD partition containing the UBI device
+
+config ENV_UBI_VOLUME
+	string "UBI volume name"
+	depends on ENV_IS_IN_UBI
+	help
+	  Name of the volume that you want to store the environment in.
+
+endif
+
+endmenu
diff --git a/env/Makefile b/env/Makefile
new file mode 100644
index 0000000000..4c1bdcfdf4
--- /dev/null
+++ b/env/Makefile
@@ -0,0 +1,57 @@
+#
+# (C) Copyright 2004-2006
+# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+#
+# SPDX-License-Identifier:	GPL-2.0+
+#
+
+obj-y += common.o
+
+ifndef CONFIG_SPL_BUILD
+obj-y += attr.o
+obj-y += callback.o
+obj-y += flags.o
+obj-$(CONFIG_ENV_IS_IN_DATAFLASH) += dataflash.o
+obj-$(CONFIG_ENV_IS_IN_EEPROM) += eeprom.o
+extra-$(CONFIG_ENV_IS_EMBEDDED) += embedded.o
+obj-$(CONFIG_ENV_IS_IN_EEPROM) += embedded.o
+extra-$(CONFIG_ENV_IS_IN_FLASH) += embedded.o
+obj-$(CONFIG_ENV_IS_IN_NVRAM) += embedded.o
+obj-$(CONFIG_ENV_IS_IN_FLASH) += flash.o
+obj-$(CONFIG_ENV_IS_IN_MMC) += mmc.o
+obj-$(CONFIG_ENV_IS_IN_FAT) += fat.o
+obj-$(CONFIG_ENV_IS_IN_EXT4) += ext4.o
+obj-$(CONFIG_ENV_IS_IN_NAND) += nand.o
+obj-$(CONFIG_ENV_IS_IN_NVRAM) += nvram.o
+obj-$(CONFIG_ENV_IS_IN_ONENAND) += onenand.o
+obj-$(CONFIG_ENV_IS_IN_SATA) += sata.o
+obj-$(CONFIG_ENV_IS_IN_SPI_FLASH) += sf.o
+obj-$(CONFIG_ENV_IS_IN_REMOTE) += remote.o
+obj-$(CONFIG_ENV_IS_IN_UBI) += ubi.o
+obj-$(CONFIG_ENV_IS_NOWHERE) += nowhere.o
+endif
+
+ifdef CONFIG_SPL_BUILD
+obj-$(CONFIG_ENV_IS_IN_FLASH) += flash.o
+# environment
+ifdef CONFIG_TPL_BUILD
+obj-$(CONFIG_TPL_ENV_SUPPORT) += attr.o
+obj-$(CONFIG_TPL_ENV_SUPPORT) += flags.o
+obj-$(CONFIG_TPL_ENV_SUPPORT) += callback.o
+else
+obj-$(CONFIG_SPL_ENV_SUPPORT) += attr.o
+obj-$(CONFIG_SPL_ENV_SUPPORT) += flags.o
+obj-$(CONFIG_SPL_ENV_SUPPORT) += callback.o
+endif
+ifneq ($(CONFIG_TPL_ENV_SUPPORT)$(CONFIG_SPL_ENV_SUPPORT),)
+obj-$(CONFIG_ENV_IS_NOWHERE) += nowhere.o
+obj-$(CONFIG_ENV_IS_IN_MMC) += mmc.o
+obj-$(CONFIG_ENV_IS_IN_FAT) += fat.o
+obj-$(CONFIG_ENV_IS_IN_EXT4) += ext4.o
+obj-$(CONFIG_ENV_IS_IN_NAND) += nand.o
+obj-$(CONFIG_ENV_IS_IN_SPI_FLASH) += sf.o
+obj-$(CONFIG_ENV_IS_IN_FLASH) += flash.o
+endif
+endif
+
+CFLAGS_embedded.o := -Wa,--no-warn -DENV_CRC=$(shell tools/envcrc 2>/dev/null)
diff --git a/common/env_attr.c b/env/attr.c
similarity index 100%
rename from common/env_attr.c
rename to env/attr.c
diff --git a/common/env_callback.c b/env/callback.c
similarity index 100%
rename from common/env_callback.c
rename to env/callback.c
diff --git a/common/env_common.c b/env/common.c
similarity index 100%
rename from common/env_common.c
rename to env/common.c
diff --git a/common/env_dataflash.c b/env/dataflash.c
similarity index 100%
rename from common/env_dataflash.c
rename to env/dataflash.c
diff --git a/common/env_eeprom.c b/env/eeprom.c
similarity index 100%
rename from common/env_eeprom.c
rename to env/eeprom.c
diff --git a/common/env_embedded.c b/env/embedded.c
similarity index 100%
rename from common/env_embedded.c
rename to env/embedded.c
diff --git a/common/env_ext4.c b/env/ext4.c
similarity index 100%
rename from common/env_ext4.c
rename to env/ext4.c
diff --git a/common/env_fat.c b/env/fat.c
similarity index 100%
rename from common/env_fat.c
rename to env/fat.c
diff --git a/common/env_flags.c b/env/flags.c
similarity index 100%
rename from common/env_flags.c
rename to env/flags.c
diff --git a/common/env_flash.c b/env/flash.c
similarity index 100%
rename from common/env_flash.c
rename to env/flash.c
diff --git a/common/env_mmc.c b/env/mmc.c
similarity index 100%
rename from common/env_mmc.c
rename to env/mmc.c
diff --git a/common/env_nand.c b/env/nand.c
similarity index 100%
rename from common/env_nand.c
rename to env/nand.c
diff --git a/common/env_nowhere.c b/env/nowhere.c
similarity index 100%
rename from common/env_nowhere.c
rename to env/nowhere.c
diff --git a/common/env_nvram.c b/env/nvram.c
similarity index 100%
rename from common/env_nvram.c
rename to env/nvram.c
diff --git a/common/env_onenand.c b/env/onenand.c
similarity index 100%
rename from common/env_onenand.c
rename to env/onenand.c
diff --git a/common/env_remote.c b/env/remote.c
similarity index 100%
rename from common/env_remote.c
rename to env/remote.c
diff --git a/common/env_sata.c b/env/sata.c
similarity index 100%
rename from common/env_sata.c
rename to env/sata.c
diff --git a/common/env_sf.c b/env/sf.c
similarity index 100%
rename from common/env_sf.c
rename to env/sf.c
diff --git a/common/env_ubi.c b/env/ubi.c
similarity index 100%
rename from common/env_ubi.c
rename to env/ubi.c
diff --git a/include/configs/M5208EVBE.h b/include/configs/M5208EVBE.h
index f8b1d4af38..2cf05a0978 100644
--- a/include/configs/M5208EVBE.h
+++ b/include/configs/M5208EVBE.h
@@ -165,8 +165,8 @@
 #define CONFIG_ENV_IS_IN_FLASH		1
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text*);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text*);
 
 /* Cache Configuration */
 #define CONFIG_SYS_CACHELINE_SIZE	16
diff --git a/include/configs/M5235EVB.h b/include/configs/M5235EVB.h
index 7247111cf5..0546afda69 100644
--- a/include/configs/M5235EVB.h
+++ b/include/configs/M5235EVB.h
@@ -181,7 +181,7 @@
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
-	common/env_embedded.o (.text);
+	env/embedded.o(.text);
 
 #ifdef NORFLASH_PS32BIT
 #	define CONFIG_ENV_OFFSET		(0x8000)
diff --git a/include/configs/M5249EVB.h b/include/configs/M5249EVB.h
index 4ef83f7862..7e70a3b045 100644
--- a/include/configs/M5249EVB.h
+++ b/include/configs/M5249EVB.h
@@ -87,8 +87,8 @@
 #define CONFIG_ENV_IS_IN_FLASH	1
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text);
 
 #define CONFIG_ENV_OFFSET		0x4000	/* Address of Environment Sector*/
 #define CONFIG_ENV_SIZE		0x2000	/* Total Size of Environment Sector	*/
diff --git a/include/configs/M5253DEMO.h b/include/configs/M5253DEMO.h
index 3efd7e59cf..ef5deb869c 100644
--- a/include/configs/M5253DEMO.h
+++ b/include/configs/M5253DEMO.h
@@ -31,8 +31,8 @@
 #endif
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text*);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text*);
 
 /*
  * Command line configuration.
diff --git a/include/configs/M5253EVBE.h b/include/configs/M5253EVBE.h
index 4f7a19b5d3..433f8327cc 100644
--- a/include/configs/M5253EVBE.h
+++ b/include/configs/M5253EVBE.h
@@ -33,7 +33,7 @@
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
-	common/env_embedded.o      (.text)
+	env/embedded.o(.text)
 
 /*
  * BOOTP options
diff --git a/include/configs/M5272C3.h b/include/configs/M5272C3.h
index 0b0e4e60c7..094973a168 100644
--- a/include/configs/M5272C3.h
+++ b/include/configs/M5272C3.h
@@ -41,8 +41,8 @@
 #endif
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text);
 
 /*
  * BOOTP options
diff --git a/include/configs/M5275EVB.h b/include/configs/M5275EVB.h
index 5d324ba5bf..1a8f973e39 100644
--- a/include/configs/M5275EVB.h
+++ b/include/configs/M5275EVB.h
@@ -42,8 +42,8 @@
 #endif
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text);
 
 /*
  * BOOTP options
diff --git a/include/configs/M5282EVB.h b/include/configs/M5282EVB.h
index 061a632c98..604daf577a 100644
--- a/include/configs/M5282EVB.h
+++ b/include/configs/M5282EVB.h
@@ -33,7 +33,7 @@
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
-	common/env_embedded.o (.text*);
+	env/embedded.o(.text*);
 
 /*
  * BOOTP options
diff --git a/include/configs/M53017EVB.h b/include/configs/M53017EVB.h
index b88c3709c6..86fb277897 100644
--- a/include/configs/M53017EVB.h
+++ b/include/configs/M53017EVB.h
@@ -189,7 +189,7 @@
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
-	common/env_embedded.o       (.text*)
+	env/embedded.o(.text*)
 
 /*-----------------------------------------------------------------------
  * Cache Configuration
diff --git a/include/configs/M5329EVB.h b/include/configs/M5329EVB.h
index 999bcd9495..7e7f1ee918 100644
--- a/include/configs/M5329EVB.h
+++ b/include/configs/M5329EVB.h
@@ -193,8 +193,8 @@
 #define CONFIG_ENV_IS_IN_FLASH	1
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text*);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text*);
 
 /*-----------------------------------------------------------------------
  * Cache Configuration
diff --git a/include/configs/M5373EVB.h b/include/configs/M5373EVB.h
index 3a39e5031d..ee621f03be 100644
--- a/include/configs/M5373EVB.h
+++ b/include/configs/M5373EVB.h
@@ -193,8 +193,8 @@
 #define CONFIG_ENV_IS_IN_FLASH	1
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text*);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text*);
 
 /*-----------------------------------------------------------------------
  * Cache Configuration
diff --git a/include/configs/amcore.h b/include/configs/amcore.h
index acae6914e5..02a0ad9e7e 100644
--- a/include/configs/amcore.h
+++ b/include/configs/amcore.h
@@ -94,8 +94,8 @@
 #define CONFIG_ENV_SECT_SIZE		0x1000
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text*);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text*);
 
 /* memory map space for linux boot data */
 #define CONFIG_SYS_BOOTMAPSZ		(8 << 20)
diff --git a/include/configs/astro_mcf5373l.h b/include/configs/astro_mcf5373l.h
index 61989d6bab..722f8c79fa 100644
--- a/include/configs/astro_mcf5373l.h
+++ b/include/configs/astro_mcf5373l.h
@@ -307,7 +307,7 @@
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
-	common/env_embedded.o       (.text*)
+	env/embedded.o(.text*)
 
 #if ENABLE_JFFS
 /* JFFS Partition offset set */
diff --git a/include/configs/cobra5272.h b/include/configs/cobra5272.h
index b078e10475..aff7af7d52 100644
--- a/include/configs/cobra5272.h
+++ b/include/configs/cobra5272.h
@@ -104,8 +104,8 @@
 #endif
 
 #define LDS_BOARD_TEXT \
-        . = DEFINED(env_offset) ? env_offset : .; \
-        common/env_embedded.o (.text);
+	. = DEFINED(env_offset) ? env_offset : .; \
+	env/embedded.o(.text);
 
 /*
  * BOOTP options
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index ac3c2c7f13..f25a8bf725 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -69,10 +69,10 @@ libs-y += common/init/
 
 # Special handling for a few options which support SPL/TPL
 ifeq ($(CONFIG_TPL_BUILD),y)
-libs-$(CONFIG_TPL_LIBCOMMON_SUPPORT) += common/ cmd/
+libs-$(CONFIG_TPL_LIBCOMMON_SUPPORT) += common/ cmd/ env/
 libs-$(CONFIG_TPL_LIBGENERIC_SUPPORT) += lib/
 else
-libs-$(CONFIG_SPL_LIBCOMMON_SUPPORT) += common/ cmd/
+libs-$(CONFIG_SPL_LIBCOMMON_SUPPORT) += common/ cmd/ env/
 libs-$(CONFIG_SPL_LIBGENERIC_SUPPORT) += lib/
 endif
 
diff --git a/tools/Makefile b/tools/Makefile
index cb1683e153..2ce858d2b1 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -37,7 +37,7 @@ hostprogs-$(CONFIG_VIDEO_LOGO) += bmp_logo
 HOSTCFLAGS_bmp_logo.o := -pedantic
 
 hostprogs-$(CONFIG_BUILD_ENVCRC) += envcrc
-envcrc-objs := envcrc.o lib/crc32.o common/env_embedded.o lib/sha1.o
+envcrc-objs := envcrc.o lib/crc32.o env/embedded.o lib/sha1.o
 
 hostprogs-$(CONFIG_CMD_NET) += gen_eth_addr
 HOSTCFLAGS_gen_eth_addr.o := -pedantic
@@ -221,7 +221,7 @@ HOSTCFLAGS_sha256.o := -pedantic
 quiet_cmd_wrap = WRAP    $@
 cmd_wrap = echo "\#include <../$(patsubst $(obj)/%,%,$@)>" >$@
 
-$(obj)/lib/%.c $(obj)/common/%.c:
+$(obj)/lib/%.c $(obj)/common/%.c $(obj)/env/%.c:
 	$(call cmd,wrap)
 
 clean-dirs := lib common
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 03/30] Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 01/30] Makefile: Rename 'env' target to 'environ' Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 02/30] Move environment files from common/ to env/ Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 04/30] env: Move help from README " Simon Glass
                   ` (28 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_MMC
   CONFIG_ENV_IS_IN_NAND
   CONFIG_ENV_IS_IN_UBI
   CONFIG_ENV_IS_NOWHERE

In fact this already exists for sunxi as a 'choice' config. However not
all the choices are available in Kconfig yet so we cannot use that. It
would lead to more than one option being set.

In addition, one purpose of this series is to allow the environment to be
stored in more than one place. So the existing choice is converted to a
normal config allowing each option to be set independently.

There are not many opportunities for Kconfig updates to reduce the size of
this patch. This was tested with

   ./tools/moveconfig.py -i CONFIG_ENV_IS_IN_MMC

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/arm/Kconfig                                       |  1 +
 arch/arm/cpu/armv7/mx6/Kconfig                         |  1 +
 arch/arm/cpu/armv7/mx7/Kconfig                         |  1 +
 arch/arm/mach-exynos/Kconfig                           |  1 +
 arch/arm/mach-sunxi/Kconfig                            |  6 ++++++
 arch/arm/mach-tegra/Kconfig                            |  3 +++
 arch/mips/Kconfig                                      |  1 +
 configs/B4420QDS_NAND_defconfig                        |  1 +
 configs/B4860QDS_NAND_defconfig                        |  1 +
 configs/B4860QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/BSC9131RDB_NAND_SYSCLK100_defconfig            |  1 +
 configs/BSC9131RDB_NAND_defconfig                      |  1 +
 configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig     |  1 +
 configs/BSC9132QDS_NAND_DDRCLK100_defconfig            |  1 +
 configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig     |  1 +
 configs/BSC9132QDS_NAND_DDRCLK133_defconfig            |  1 +
 configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig      |  1 +
 configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig      |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig          |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |  1 +
 configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig          |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |  1 +
 configs/C29XPCIE_NAND_defconfig                        |  1 +
 configs/C29XPCIE_NOR_SECBOOT_defconfig                 |  1 +
 configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig            |  1 +
 configs/CHIP_defconfig                                 |  2 ++
 configs/CHIP_pro_defconfig                             |  2 ++
 configs/Cyrus_P5020_defconfig                          |  1 +
 configs/Cyrus_P5040_defconfig                          |  1 +
 configs/M54418TWR_nand_mii_defconfig                   |  1 +
 configs/M54418TWR_nand_rmii_defconfig                  |  1 +
 configs/M54418TWR_nand_rmii_lowfreq_defconfig          |  1 +
 configs/MPC8313ERDB_NAND_33_defconfig                  |  1 +
 configs/MPC8313ERDB_NAND_66_defconfig                  |  1 +
 configs/MPC8536DS_SDCARD_defconfig                     |  1 +
 configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig       |  1 +
 configs/P1010RDB-PA_36BIT_NAND_defconfig               |  1 +
 configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig        |  1 +
 configs/P1010RDB-PA_36BIT_SDCARD_defconfig             |  1 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |  1 +
 configs/P1010RDB-PA_NAND_SECBOOT_defconfig             |  1 +
 configs/P1010RDB-PA_NAND_defconfig                     |  1 +
 configs/P1010RDB-PA_NOR_SECBOOT_defconfig              |  1 +
 configs/P1010RDB-PA_SDCARD_defconfig                   |  1 +
 configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig         |  1 +
 configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig       |  1 +
 configs/P1010RDB-PB_36BIT_NAND_defconfig               |  1 +
 configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig        |  1 +
 configs/P1010RDB-PB_36BIT_SDCARD_defconfig             |  1 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |  1 +
 configs/P1010RDB-PB_NAND_SECBOOT_defconfig             |  1 +
 configs/P1010RDB-PB_NAND_defconfig                     |  1 +
 configs/P1010RDB-PB_NOR_SECBOOT_defconfig              |  1 +
 configs/P1010RDB-PB_SDCARD_defconfig                   |  1 +
 configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig         |  1 +
 configs/P1020MBG-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1020MBG-PC_SDCARD_defconfig                   |  1 +
 configs/P1020RDB-PC_36BIT_NAND_defconfig               |  1 +
 configs/P1020RDB-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1020RDB-PC_NAND_defconfig                     |  1 +
 configs/P1020RDB-PC_SDCARD_defconfig                   |  1 +
 configs/P1020RDB-PD_NAND_defconfig                     |  1 +
 configs/P1020RDB-PD_SDCARD_defconfig                   |  1 +
 configs/P1020UTM-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1020UTM-PC_SDCARD_defconfig                   |  1 +
 configs/P1021RDB-PC_36BIT_NAND_defconfig               |  1 +
 configs/P1021RDB-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P1021RDB-PC_NAND_defconfig                     |  1 +
 configs/P1021RDB-PC_SDCARD_defconfig                   |  1 +
 configs/P1022DS_36BIT_NAND_defconfig                   |  1 +
 configs/P1022DS_36BIT_SDCARD_defconfig                 |  1 +
 configs/P1022DS_NAND_defconfig                         |  1 +
 configs/P1022DS_SDCARD_defconfig                       |  1 +
 configs/P1024RDB_NAND_defconfig                        |  1 +
 configs/P1024RDB_SDCARD_defconfig                      |  1 +
 configs/P1025RDB_NAND_defconfig                        |  1 +
 configs/P1025RDB_SDCARD_defconfig                      |  1 +
 configs/P2020RDB-PC_36BIT_NAND_defconfig               |  1 +
 configs/P2020RDB-PC_36BIT_SDCARD_defconfig             |  1 +
 configs/P2020RDB-PC_NAND_defconfig                     |  1 +
 configs/P2020RDB-PC_SDCARD_defconfig                   |  1 +
 configs/P2041RDB_NAND_defconfig                        |  1 +
 configs/P2041RDB_SDCARD_defconfig                      |  1 +
 configs/P2041RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/P3041DS_NAND_SECURE_BOOT_defconfig             |  1 +
 configs/P3041DS_NAND_defconfig                         |  1 +
 configs/P3041DS_SDCARD_defconfig                       |  1 +
 configs/P3041DS_SECURE_BOOT_defconfig                  |  1 +
 configs/P4080DS_SDCARD_defconfig                       |  1 +
 configs/P4080DS_SECURE_BOOT_defconfig                  |  1 +
 configs/P5020DS_NAND_SECURE_BOOT_defconfig             |  1 +
 configs/P5020DS_NAND_defconfig                         |  1 +
 configs/P5020DS_SDCARD_defconfig                       |  1 +
 configs/P5020DS_SECURE_BOOT_defconfig                  |  1 +
 configs/P5040DS_NAND_SECURE_BOOT_defconfig             |  1 +
 configs/P5040DS_NAND_defconfig                         |  1 +
 configs/P5040DS_SDCARD_defconfig                       |  1 +
 configs/P5040DS_SECURE_BOOT_defconfig                  |  1 +
 configs/T1023RDB_NAND_defconfig                        |  1 +
 configs/T1023RDB_SDCARD_defconfig                      |  1 +
 configs/T1023RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T1024QDS_DDR4_SECURE_BOOT_defconfig            |  1 +
 configs/T1024QDS_NAND_defconfig                        |  1 +
 configs/T1024QDS_SDCARD_defconfig                      |  1 +
 configs/T1024QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T1024RDB_NAND_defconfig                        |  1 +
 configs/T1024RDB_SDCARD_defconfig                      |  1 +
 configs/T1024RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T1040D4RDB_NAND_defconfig                      |  1 +
 configs/T1040D4RDB_SDCARD_defconfig                    |  1 +
 configs/T1040D4RDB_SECURE_BOOT_defconfig               |  1 +
 configs/T1040QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T1040RDB_NAND_defconfig                        |  1 +
 configs/T1040RDB_SDCARD_defconfig                      |  1 +
 configs/T1040RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T1042D4RDB_NAND_defconfig                      |  1 +
 configs/T1042D4RDB_SDCARD_defconfig                    |  1 +
 configs/T1042D4RDB_SECURE_BOOT_defconfig               |  1 +
 configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig         |  2 ++
 configs/T1042RDB_PI_NAND_defconfig                     |  1 +
 configs/T1042RDB_PI_SDCARD_defconfig                   |  1 +
 configs/T1042RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T2080QDS_NAND_defconfig                        |  1 +
 configs/T2080QDS_SDCARD_defconfig                      |  1 +
 configs/T2080QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T2080RDB_NAND_defconfig                        |  1 +
 configs/T2080RDB_SDCARD_defconfig                      |  1 +
 configs/T2080RDB_SECURE_BOOT_defconfig                 |  1 +
 configs/T2081QDS_NAND_defconfig                        |  1 +
 configs/T2081QDS_SDCARD_defconfig                      |  1 +
 configs/T4160QDS_NAND_defconfig                        |  1 +
 configs/T4160QDS_SDCARD_defconfig                      |  1 +
 configs/T4160QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T4240QDS_NAND_defconfig                        |  1 +
 configs/T4240QDS_SDCARD_defconfig                      |  1 +
 configs/T4240QDS_SECURE_BOOT_defconfig                 |  1 +
 configs/T4240RDB_SDCARD_defconfig                      |  1 +
 configs/am335x_baltos_defconfig                        |  1 +
 configs/am335x_boneblack_defconfig                     |  1 +
 configs/am335x_boneblack_vboot_defconfig               |  1 +
 configs/am335x_igep003x_defconfig                      |  1 +
 configs/am335x_shc_defconfig                           |  1 +
 configs/am335x_shc_ict_defconfig                       |  1 +
 configs/am335x_shc_netboot_defconfig                   |  1 +
 configs/am335x_shc_prompt_defconfig                    |  1 +
 configs/am335x_shc_sdboot_defconfig                    |  1 +
 configs/am335x_shc_sdboot_prompt_defconfig             |  1 +
 configs/am335x_sl50_defconfig                          |  1 +
 configs/am3517_crane_defconfig                         |  1 +
 configs/am3517_evm_defconfig                           |  1 +
 configs/am57xx_evm_defconfig                           |  1 +
 configs/am57xx_evm_nodt_defconfig                      |  1 +
 configs/am57xx_hs_evm_defconfig                        |  1 +
 configs/apalis_imx6_defconfig                          |  1 +
 configs/apalis_imx6_nospl_com_defconfig                |  1 +
 configs/apalis_imx6_nospl_it_defconfig                 |  1 +
 configs/apf27_defconfig                                |  1 +
 configs/apx4devkit_defconfig                           |  1 +
 configs/arndale_defconfig                              |  1 +
 configs/aspenite_defconfig                             |  1 +
 configs/at91sam9260ek_nandflash_defconfig              |  1 +
 configs/at91sam9261ek_nandflash_defconfig              |  1 +
 configs/at91sam9263ek_nandflash_defconfig              |  1 +
 configs/at91sam9g10ek_nandflash_defconfig              |  1 +
 configs/at91sam9g20ek_2mmc_defconfig                   |  1 +
 configs/at91sam9g20ek_2mmc_nandflash_defconfig         |  1 +
 configs/at91sam9g20ek_nandflash_defconfig              |  1 +
 configs/at91sam9m10g45ek_nandflash_defconfig           |  1 +
 configs/at91sam9n12ek_nandflash_defconfig              |  1 +
 configs/at91sam9rlek_nandflash_defconfig               |  1 +
 configs/at91sam9x5ek_nandflash_defconfig               |  1 +
 configs/at91sam9xeek_nandflash_defconfig               |  1 +
 configs/axm_defconfig                                  |  1 +
 configs/bcm11130_defconfig                             |  1 +
 configs/bcm11130_nand_defconfig                        |  1 +
 configs/bcm23550_w1d_defconfig                         |  1 +
 configs/bcm28155_ap_defconfig                          |  1 +
 configs/bcm28155_w1d_defconfig                         |  1 +
 configs/bcm911360_entphn-ns_defconfig                  |  1 +
 configs/bcm911360_entphn_defconfig                     |  1 +
 configs/bcm911360k_defconfig                           |  1 +
 configs/bcm958300k-ns_defconfig                        |  1 +
 configs/bcm958300k_defconfig                           |  1 +
 configs/bcm958305k_defconfig                           |  1 +
 configs/bcm958622hr_defconfig                          |  1 +
 configs/bcm958712k_defconfig                           |  1 +
 configs/bg0900_defconfig                               |  1 +
 configs/birdland_bav335a_defconfig                     |  1 +
 configs/birdland_bav335b_defconfig                     |  1 +
 configs/bk4r1_defconfig                                |  3 ++-
 configs/brppt1_mmc_defconfig                           |  1 +
 configs/brppt1_nand_defconfig                          |  1 +
 configs/brxre1_defconfig                               |  1 +
 configs/cairo_defconfig                                |  1 +
 configs/chiliboard_defconfig                           |  1 +
 configs/chromebit_mickey_defconfig                     |  1 +
 configs/chromebook_jerry_defconfig                     |  1 +
 configs/chromebook_minnie_defconfig                    |  1 +
 configs/clearfog_defconfig                             |  1 +
 configs/cm_t335_defconfig                              |  1 +
 configs/cm_t3517_defconfig                             |  1 +
 configs/cm_t35_defconfig                               |  1 +
 configs/cm_t54_defconfig                               |  3 ++-
 configs/colibri_imx6_defconfig                         |  1 +
 configs/colibri_imx6_nospl_defconfig                   |  1 +
 configs/colibri_imx7_defconfig                         |  1 +
 configs/colibri_t20_defconfig                          |  1 +
 configs/colibri_vf_defconfig                           |  3 ++-
 configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |  1 +
 configs/controlcenterd_36BIT_SDCARD_defconfig          |  1 +
 configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig   |  1 +
 configs/controlcenterd_TRAILBLAZER_defconfig           |  1 +
 configs/coreboot-x86_defconfig                         |  1 +
 configs/corvus_defconfig                               |  1 +
 configs/dalmore_defconfig                              |  1 +
 configs/dbau1000_defconfig                             |  1 +
 configs/dbau1100_defconfig                             |  1 +
 configs/dbau1500_defconfig                             |  1 +
 configs/dbau1550_defconfig                             |  1 +
 configs/dbau1550_el_defconfig                          |  1 +
 configs/devkit3250_defconfig                           |  1 +
 configs/devkit8000_defconfig                           |  1 +
 configs/dns325_defconfig                               |  1 +
 configs/dockstar_defconfig                             |  1 +
 configs/dra7xx_evm_defconfig                           |  3 ++-
 configs/dra7xx_hs_evm_defconfig                        |  3 ++-
 configs/draco_defconfig                                |  1 +
 configs/dragonboard410c_defconfig                      |  1 +
 configs/duovero_defconfig                              |  1 +
 configs/eco5pk_defconfig                               |  1 +
 configs/efi-x86_defconfig                              |  1 +
 configs/espresso7420_defconfig                         |  1 +
 configs/etamin_defconfig                               |  1 +
 configs/evb-ast2500_defconfig                          |  1 +
 configs/evb-px5_defconfig                              |  1 +
 configs/evb-rk3036_defconfig                           |  1 +
 configs/evb-rk3288_defconfig                           |  1 +
 configs/evb-rk3328_defconfig                           |  1 +
 configs/evb-rk3399_defconfig                           |  1 +
 configs/evb-rv1108_defconfig                           |  1 +
 configs/fennec-rk3288_defconfig                        |  1 +
 configs/firefly-rk3288_defconfig                       |  1 +
 configs/firefly-rk3399_defconfig                       |  1 +
 configs/geekbox_defconfig                              |  1 +
 configs/goflexhome_defconfig                           |  1 +
 configs/gplugd_defconfig                               |  1 +
 configs/gurnard_defconfig                              |  1 +
 configs/guruplug_defconfig                             |  1 +
 configs/gwventana_emmc_defconfig                       |  1 +
 configs/gwventana_gw5904_defconfig                     |  1 +
 configs/gwventana_nand_defconfig                       |  1 +
 configs/h2200_defconfig                                |  1 +
 configs/harmony_defconfig                              |  1 +
 configs/ib62x0_defconfig                               |  1 +
 configs/iconnect_defconfig                             |  1 +
 configs/igep0020_defconfig                             |  1 +
 configs/igep0030_defconfig                             |  1 +
 configs/igep0032_defconfig                             |  1 +
 configs/imgtec_xilfpga_defconfig                       |  1 +
 configs/imx6q_logic_defconfig                          |  1 +
 configs/imx6qdl_icore_mmc_defconfig                    |  7 ++++---
 configs/imx6qdl_icore_nand_defconfig                   | 12 ++++++------
 configs/imx6qdl_icore_rqs_mmc_defconfig                |  9 +++++----
 configs/imx6ul_geam_mmc_defconfig                      |  7 ++++---
 configs/imx6ul_geam_nand_defconfig                     |  7 ++++---
 configs/imx6ul_isiot_emmc_defconfig                    |  7 ++++---
 configs/imx6ul_isiot_mmc_defconfig                     |  7 ++++---
 configs/imx6ul_isiot_nand_defconfig                    |  7 ++++---
 configs/integratorap_cm720t_defconfig                  |  1 +
 configs/integratorap_cm920t_defconfig                  |  1 +
 configs/integratorap_cm926ejs_defconfig                |  1 +
 configs/integratorap_cm946es_defconfig                 |  1 +
 configs/ipam390_defconfig                              |  1 +
 configs/k2e_evm_defconfig                              |  1 +
 configs/k2e_hs_evm_defconfig                           |  1 +
 configs/k2hk_evm_defconfig                             |  1 +
 configs/k2hk_hs_evm_defconfig                          |  1 +
 configs/k2l_evm_defconfig                              |  1 +
 configs/kc1_defconfig                                  |  1 +
 configs/kylin-rk3036_defconfig                         |  1 +
 configs/legoev3_defconfig                              |  1 +
 configs/liteboard_defconfig                            |  1 +
 configs/ls1012ardb_qspi_SECURE_BOOT_defconfig          |  1 +
 configs/ls1021aiot_sdcard_defconfig                    |  1 +
 configs/ls1021aqds_nand_defconfig                      |  1 +
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig           |  1 +
 configs/ls1021aqds_sdcard_ifc_defconfig                |  1 +
 configs/ls1021aqds_sdcard_qspi_defconfig               |  1 +
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig           |  1 +
 configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig    |  2 ++
 configs/ls1021atwr_sdcard_ifc_defconfig                |  1 +
 configs/ls1021atwr_sdcard_qspi_defconfig               |  1 +
 configs/ls1043aqds_nand_defconfig                      |  1 +
 configs/ls1043aqds_sdcard_ifc_defconfig                |  1 +
 configs/ls1043aqds_sdcard_qspi_defconfig               |  1 +
 configs/ls1043ardb_SECURE_BOOT_defconfig               |  1 +
 configs/ls1043ardb_nand_SECURE_BOOT_defconfig          |  2 ++
 configs/ls1043ardb_nand_defconfig                      |  1 +
 configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig        |  2 ++
 configs/ls1043ardb_sdcard_defconfig                    |  1 +
 configs/ls1046aqds_SECURE_BOOT_defconfig               |  1 +
 configs/ls1046aqds_nand_defconfig                      |  1 +
 configs/ls1046aqds_sdcard_ifc_defconfig                |  1 +
 configs/ls1046aqds_sdcard_qspi_defconfig               |  1 +
 configs/ls1046ardb_emmc_defconfig                      |  1 +
 configs/ls1046ardb_qspi_SECURE_BOOT_defconfig          |  1 +
 configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig        |  2 ++
 configs/ls1046ardb_sdcard_defconfig                    |  1 +
 configs/ls2080a_emu_defconfig                          |  1 +
 configs/ls2080a_simu_defconfig                         |  1 +
 configs/ls2080aqds_SECURE_BOOT_defconfig               |  1 +
 configs/ls2080aqds_nand_defconfig                      |  1 +
 configs/ls2080aqds_sdcard_defconfig                    |  1 +
 configs/ls2080ardb_SECURE_BOOT_defconfig               |  1 +
 configs/ls2080ardb_nand_defconfig                      |  1 +
 configs/m28evk_defconfig                               |  1 +
 configs/m53evk_defconfig                               |  1 +
 configs/ma5d4evk_defconfig                             | 17 +++++++++--------
 configs/mcx_defconfig                                  |  1 +
 configs/medcom-wide_defconfig                          |  1 +
 configs/meesc_defconfig                                |  1 +
 configs/miqi-rk3288_defconfig                          |  1 +
 configs/mt_ventoux_defconfig                           |  1 +
 configs/mvebu_db-88f7040-nand_defconfig                |  1 +
 configs/mx23_olinuxino_defconfig                       |  1 +
 configs/mx23evk_defconfig                              |  1 +
 configs/mx25pdk_defconfig                              |  1 +
 configs/mx28evk_auart_console_defconfig                |  3 ++-
 configs/mx28evk_defconfig                              |  2 +-
 configs/mx28evk_nand_defconfig                         |  2 +-
 configs/mx31pdk_defconfig                              |  1 +
 configs/mx51evk_defconfig                              |  1 +
 configs/mx53ard_defconfig                              |  1 +
 configs/mx53cx9020_defconfig                           |  1 +
 configs/mx53evk_defconfig                              |  1 +
 configs/mx53loco_defconfig                             |  1 +
 configs/mx53smd_defconfig                              |  1 +
 configs/mx6cuboxi_defconfig                            |  1 +
 configs/mx6dlarm2_defconfig                            |  1 +
 configs/mx6dlarm2_lpddr2_defconfig                     |  1 +
 configs/mx6dlsabreauto_defconfig                       |  1 +
 configs/mx6qarm2_defconfig                             |  1 +
 configs/mx6qarm2_lpddr2_defconfig                      |  1 +
 configs/mx6qpsabreauto_defconfig                       |  1 +
 configs/mx6qsabreauto_defconfig                        |  1 +
 configs/mx6qsabrelite_defconfig                        |  1 +
 configs/mx6sabresd_defconfig                           |  1 +
 configs/mx6slevk_defconfig                             |  1 +
 configs/mx6slevk_spl_defconfig                         |  1 +
 configs/mx6sllevk_defconfig                            |  1 +
 configs/mx6sllevk_plugin_defconfig                     |  1 +
 configs/mx6ul_14x14_evk_defconfig                      |  1 +
 configs/mx6ul_9x9_evk_defconfig                        |  1 +
 configs/mx6ull_14x14_evk_defconfig                     |  1 +
 configs/mx6ull_14x14_evk_plugin_defconfig              |  1 +
 configs/mx7ulp_evk_defconfig                           |  1 +
 configs/mx7ulp_evk_plugin_defconfig                    |  1 +
 configs/nas220_defconfig                               |  1 +
 configs/nokia_rx51_defconfig                           |  1 +
 configs/novena_defconfig                               |  1 +
 configs/nsa310s_defconfig                              |  1 +
 configs/nsim_700_defconfig                             |  1 +
 configs/nsim_700be_defconfig                           |  1 +
 configs/nsim_hs38_defconfig                            |  1 +
 configs/nsim_hs38be_defconfig                          |  1 +
 configs/odroid-c2_defconfig                            |  1 +
 configs/odroid-xu3_defconfig                           |  2 +-
 configs/omap3_beagle_defconfig                         |  1 +
 configs/omap3_evm_defconfig                            |  1 +
 configs/omap3_ha_defconfig                             |  1 +
 configs/omap3_logic_defconfig                          |  1 +
 configs/omap3_overo_defconfig                          |  1 +
 configs/omap3_pandora_defconfig                        |  1 +
 configs/omap3_zoom1_defconfig                          |  1 +
 configs/omap4_sdp4430_defconfig                        |  1 +
 configs/omap5_uevm_defconfig                           |  3 ++-
 configs/omapl138_lcdk_defconfig                        |  1 +
 configs/openrd_base_defconfig                          |  1 +
 configs/openrd_client_defconfig                        |  1 +
 configs/openrd_ultimate_defconfig                      |  1 +
 configs/opos6uldev_defconfig                           |  1 +
 configs/paz00_defconfig                                |  1 +
 configs/pb1000_defconfig                               |  1 +
 configs/pcm051_rev1_defconfig                          |  1 +
 configs/pcm051_rev3_defconfig                          |  1 +
 configs/pcm052_defconfig                               |  3 ++-
 configs/pengwyn_defconfig                              |  1 +
 configs/pepper_defconfig                               |  1 +
 configs/pic32mzdask_defconfig                          |  1 +
 configs/pico-imx6ul_defconfig                          |  1 +
 configs/pico-imx7d_defconfig                           |  8 ++++----
 configs/platinum_picon_defconfig                       |  1 +
 configs/platinum_titanium_defconfig                    |  1 +
 configs/plutux_defconfig                               |  1 +
 configs/pm9g45_defconfig                               |  1 +
 configs/pogo_e02_defconfig                             |  1 +
 configs/popmetal-rk3288_defconfig                      |  1 +
 configs/puma-rk3399_defconfig                          |  1 +
 configs/pxm2_defconfig                                 |  1 +
 configs/qemu-ppce500_defconfig                         |  1 +
 configs/qemu-x86_64_defconfig                          |  1 +
 configs/qemu-x86_defconfig                             |  1 +
 configs/qemu-x86_efi_payload32_defconfig               |  1 +
 configs/qemu-x86_efi_payload64_defconfig               |  1 +
 configs/r8a7795_salvator-x_defconfig                   |  1 +
 configs/r8a7796_salvator-x_defconfig                   |  1 +
 configs/rastaban_defconfig                             |  1 +
 configs/riotboard_defconfig                            |  3 ++-
 configs/rock2_defconfig                                |  1 +
 configs/rock_defconfig                                 |  1 +
 configs/rut_defconfig                                  |  1 +
 configs/s32v234evb_defconfig                           |  1 +
 configs/s5p_goni_defconfig                             |  1 +
 configs/sama5d2_ptc_nandflash_defconfig                |  1 +
 configs/sama5d36ek_cmp_nandflash_defconfig             |  1 +
 configs/sama5d3_xplained_nandflash_defconfig           |  1 +
 configs/sama5d3xek_nandflash_defconfig                 |  1 +
 configs/sama5d4_xplained_nandflash_defconfig           |  1 +
 configs/sama5d4ek_nandflash_defconfig                  |  1 +
 configs/sandbox_defconfig                              |  1 +
 configs/sandbox_flattree_defconfig                     |  1 +
 configs/sandbox_noblk_defconfig                        |  1 +
 configs/sandbox_spl_defconfig                          |  1 +
 configs/sansa_fuze_plus_defconfig                      |  1 +
 configs/sc_sps_1_defconfig                             |  1 +
 configs/seaboard_defconfig                             |  1 +
 configs/secomx6quq7_defconfig                          |  2 +-
 configs/sheep-rk3368_defconfig                         |  1 +
 configs/sheevaplug_defconfig                           |  1 +
 configs/smartweb_defconfig                             |  1 +
 configs/snapper9260_defconfig                          |  1 +
 configs/snapper9g20_defconfig                          |  1 +
 configs/sniper_defconfig                               |  1 +
 configs/socfpga_arria10_defconfig                      |  1 +
 configs/socfpga_arria5_defconfig                       |  1 +
 configs/socfpga_cyclone5_defconfig                     |  1 +
 configs/socfpga_de0_nano_soc_defconfig                 |  1 +
 configs/socfpga_de10_nano_defconfig                    |  1 +
 configs/socfpga_de1_soc_defconfig                      |  1 +
 configs/socfpga_mcvevk_defconfig                       |  1 +
 configs/socfpga_sockit_defconfig                       |  1 +
 configs/socfpga_socrates_defconfig                     |  1 +
 configs/spear300_nand_defconfig                        |  1 +
 configs/spear300_usbtty_nand_defconfig                 |  1 +
 configs/spear310_nand_defconfig                        |  1 +
 configs/spear310_usbtty_nand_defconfig                 |  1 +
 configs/spear320_nand_defconfig                        |  1 +
 configs/spear320_usbtty_nand_defconfig                 |  1 +
 configs/spear600_nand_defconfig                        |  1 +
 configs/spear600_usbtty_nand_defconfig                 |  1 +
 configs/stih410-b2260_defconfig                        |  1 +
 configs/stm32f746-disco_defconfig                      |  1 +
 configs/tao3530_defconfig                              |  1 +
 configs/taurus_defconfig                               |  1 +
 configs/tb100_defconfig                                |  1 +
 configs/tbs2910_defconfig                              |  1 +
 configs/tec_defconfig                                  |  1 +
 configs/thuban_defconfig                               |  1 +
 configs/thunderx_88xx_defconfig                        |  1 +
 configs/ti814x_evm_defconfig                           |  1 +
 configs/ti816x_evm_defconfig                           |  6 +-----
 configs/tinker-rk3288_defconfig                        |  1 +
 configs/titanium_defconfig                             |  1 +
 configs/topic_miami_defconfig                          |  1 +
 configs/topic_miamilite_defconfig                      |  5 +++--
 configs/topic_miamiplus_defconfig                      |  3 ++-
 configs/tplink_wdr4300_defconfig                       |  1 +
 configs/tqma6dl_mba6_mmc_defconfig                     |  1 +
 configs/tqma6q_mba6_mmc_defconfig                      |  1 +
 configs/tqma6s_mba6_mmc_defconfig                      |  1 +
 configs/tqma6s_wru4_mmc_defconfig                      |  1 +
 configs/tricorder_defconfig                            |  1 +
 configs/tricorder_flash_defconfig                      |  1 +
 configs/ts4600_defconfig                               |  2 +-
 configs/ts4800_defconfig                               |  1 +
 configs/twister_defconfig                              |  1 +
 configs/udoo_defconfig                                 |  1 +
 configs/usbarmory_defconfig                            |  1 +
 configs/ventana_defconfig                              |  1 +
 configs/vf610twr_defconfig                             |  3 ++-
 configs/vf610twr_nand_defconfig                        |  3 ++-
 configs/wandboard_defconfig                            |  1 +
 configs/warp_defconfig                                 |  1 +
 configs/work_92105_defconfig                           |  1 +
 configs/xfi3_defconfig                                 |  1 +
 configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig       |  1 +
 configs/xpress_defconfig                               |  1 +
 configs/xpress_spl_defconfig                           |  1 +
 configs/zc5202_defconfig                               |  1 +
 configs/zc5601_defconfig                               |  1 +
 configs/zynq_picozed_defconfig                         |  1 +
 configs/zynq_zc770_xm011_defconfig                     |  1 +
 configs/zynq_zc770_xm013_defconfig                     |  1 +
 env/Kconfig                                            | 13 ++-----------
 include/config_fsl_chain_trust.h                       |  4 ----
 include/configs/B4860QDS.h                             |  5 -----
 include/configs/BSC9131RDB.h                           |  2 --
 include/configs/BSC9132QDS.h                           |  3 ---
 include/configs/C29XPCIE.h                             |  1 -
 include/configs/M54418TWR.h                            |  1 -
 include/configs/MPC8313ERDB.h                          |  2 --
 include/configs/MPC8315ERDB.h                          |  1 -
 include/configs/MPC8323ERDB.h                          |  1 -
 include/configs/MPC832XEMDS.h                          |  1 -
 include/configs/MPC8349EMDS.h                          |  1 -
 include/configs/MPC8349ITX.h                           |  1 -
 include/configs/MPC837XEMDS.h                          |  1 -
 include/configs/MPC837XERDB.h                          |  1 -
 include/configs/MPC8536DS.h                            |  2 --
 include/configs/MPC8540ADS.h                           |  1 -
 include/configs/MPC8560ADS.h                           |  1 -
 include/configs/MPC8610HPCD.h                          |  1 -
 include/configs/MPC8641HPCN.h                          |  1 -
 include/configs/P1010RDB.h                             |  3 ---
 include/configs/P1022DS.h                              |  3 ---
 include/configs/P2041RDB.h                             |  5 -----
 include/configs/T102xQDS.h                             |  2 --
 include/configs/T102xRDB.h                             |  2 --
 include/configs/T1040QDS.h                             |  3 ---
 include/configs/T104xRDB.h                             |  2 --
 include/configs/T208xQDS.h                             |  2 --
 include/configs/T208xRDB.h                             |  2 --
 include/configs/T4240QDS.h                             |  5 -----
 include/configs/T4240RDB.h                             |  5 -----
 include/configs/UCP1020.h                              |  2 --
 include/configs/am335x_evm.h                           |  3 ---
 include/configs/am335x_igep003x.h                      |  1 -
 include/configs/am335x_shc.h                           |  9 ---------
 include/configs/am335x_sl50.h                          |  4 ----
 include/configs/am3517_crane.h                         |  1 -
 include/configs/am3517_evm.h                           |  1 -
 include/configs/am43xx_evm.h                           |  1 -
 include/configs/am57xx_evm.h                           |  1 -
 include/configs/apalis-tk1.h                           |  1 -
 include/configs/apalis_imx6.h                          |  2 --
 include/configs/apalis_t30.h                           |  1 -
 include/configs/apf27.h                                |  1 -
 include/configs/apx4devkit.h                           |  1 -
 include/configs/arndale.h                              |  1 -
 include/configs/aspenite.h                             |  1 -
 include/configs/at91-sama5_common.h                    |  1 -
 include/configs/at91sam9260ek.h                        |  2 --
 include/configs/at91sam9261ek.h                        |  1 -
 include/configs/at91sam9263ek.h                        |  1 -
 include/configs/at91sam9m10g45ek.h                     |  1 -
 include/configs/at91sam9n12ek.h                        |  1 -
 include/configs/at91sam9rlek.h                         |  1 -
 include/configs/at91sam9x5ek.h                         |  1 -
 include/configs/baltos.h                               |  1 -
 include/configs/bav335x.h                              |  5 -----
 include/configs/bcm23550_w1d.h                         |  1 -
 include/configs/bcm28155_ap.h                          |  1 -
 include/configs/bcm_ep_board.h                         |  1 -
 include/configs/bcm_northstar2.h                       |  1 -
 include/configs/beaver.h                               |  1 -
 include/configs/bg0900.h                               |  1 -
 include/configs/brppt1.h                               |  8 --------
 include/configs/brxre1.h                               |  2 --
 include/configs/cardhu.h                               |  1 -
 include/configs/cei-tk1-som.h                          |  1 -
 include/configs/chiliboard.h                           |  1 -
 include/configs/clearfog.h                             |  1 -
 include/configs/cm_t335.h                              |  1 -
 include/configs/cm_t35.h                               |  1 -
 include/configs/cm_t3517.h                             |  1 -
 include/configs/cm_t54.h                               |  1 -
 include/configs/colibri_imx6.h                         |  2 --
 include/configs/colibri_imx7.h                         |  1 -
 include/configs/colibri_pxa270.h                       |  3 ---
 include/configs/colibri_t20.h                          |  1 -
 include/configs/colibri_t30.h                          |  1 -
 include/configs/comtrend_ar5387un.h                    |  1 -
 include/configs/comtrend_ct5361.h                      |  1 -
 include/configs/comtrend_vr3032u.h                     |  1 -
 include/configs/controlcenterd.h                       |  2 --
 include/configs/corenet_ds.h                           |  5 -----
 include/configs/corvus.h                               |  1 -
 include/configs/cyrus.h                                |  1 -
 include/configs/da850evm.h                             |  3 ---
 include/configs/dalmore.h                              |  1 -
 include/configs/dbau1x00.h                             |  2 --
 include/configs/devkit3250.h                           |  1 -
 include/configs/devkit8000.h                           |  1 -
 include/configs/dns325.h                               |  3 ---
 include/configs/dockstar.h                             |  3 ---
 include/configs/dra7xx_evm.h                           |  1 -
 include/configs/dragonboard410c.h                      |  1 -
 include/configs/dreamplug.h                            |  2 --
 include/configs/ds109.h                                |  2 --
 include/configs/duovero.h                              |  1 -
 include/configs/e2220-1170.h                           |  1 -
 include/configs/ea20.h                                 |  2 --
 include/configs/efi-x86.h                              |  1 -
 include/configs/el6x_common.h                          |  2 --
 include/configs/espresso7420.h                         |  1 -
 include/configs/evb_ast2500.h                          |  2 --
 include/configs/evb_px5.h                              |  1 -
 include/configs/evb_rk3288.h                           |  1 -
 include/configs/evb_rk3328.h                           |  1 -
 include/configs/evb_rk3399.h                           |  1 -
 include/configs/fennec_rk3288.h                        |  1 -
 include/configs/firefly-rk3288.h                       |  1 -
 include/configs/geekbox.h                              |  1 -
 include/configs/goflexhome.h                           |  3 ---
 include/configs/gplugd.h                               |  1 -
 include/configs/guruplug.h                             |  3 ---
 include/configs/gw_ventana.h                           |  4 ----
 include/configs/h2200.h                                |  1 -
 include/configs/harmony.h                              |  1 -
 include/configs/hrcon.h                                |  1 -
 include/configs/huawei_hg556a.h                        |  1 -
 include/configs/ib62x0.h                               |  3 ---
 include/configs/iconnect.h                             |  3 ---
 include/configs/imgtec_xilfpga.h                       |  1 -
 include/configs/imx6_logic.h                           |  1 -
 include/configs/integratorap.h                         |  1 -
 include/configs/ipam390.h                              |  1 -
 include/configs/jetson-tk1.h                           |  1 -
 include/configs/k2e_evm.h                              |  1 -
 include/configs/k2hk_evm.h                             |  1 -
 include/configs/k2l_evm.h                              |  1 -
 include/configs/kc1.h                                  |  1 -
 include/configs/km/km83xx-common.h                     |  1 -
 include/configs/kylin_rk3036.h                         |  2 --
 include/configs/legoev3.h                              |  1 -
 include/configs/liteboard.h                            |  1 -
 include/configs/ls1021aiot.h                           |  1 -
 include/configs/ls1021aqds.h                           |  2 --
 include/configs/ls1021atwr.h                           |  1 -
 include/configs/ls1043aqds.h                           |  2 --
 include/configs/ls1043ardb.h                           |  2 --
 include/configs/ls1046aqds.h                           |  2 --
 include/configs/ls1046ardb.h                           |  1 -
 include/configs/ls2080a_emu.h                          |  1 -
 include/configs/ls2080a_simu.h                         |  1 -
 include/configs/ls2080aqds.h                           |  2 --
 include/configs/ls2080ardb.h                           |  1 -
 include/configs/lsxl.h                                 |  2 --
 include/configs/m28evk.h                               |  3 ---
 include/configs/m53evk.h                               |  3 ---
 include/configs/ma5d4evk.h                             |  1 -
 include/configs/mcx.h                                  |  1 -
 include/configs/medcom-wide.h                          |  1 -
 include/configs/meesc.h                                |  1 -
 include/configs/meson-gxbb-common.h                    |  1 -
 include/configs/microblaze-generic.h                   |  3 ---
 include/configs/miqi_rk3288.h                          |  1 -
 include/configs/mvebu_armada-8k.h                      |  2 --
 include/configs/mx23_olinuxino.h                       |  1 -
 include/configs/mx23evk.h                              |  1 -
 include/configs/mx25pdk.h                              |  1 -
 include/configs/mx31pdk.h                              |  1 -
 include/configs/mx35pdk.h                              |  1 -
 include/configs/mx51evk.h                              |  1 -
 include/configs/mx53ard.h                              |  1 -
 include/configs/mx53cx9020.h                           |  1 -
 include/configs/mx53evk.h                              |  1 -
 include/configs/mx53loco.h                             |  1 -
 include/configs/mx53smd.h                              |  1 -
 include/configs/mx6cuboxi.h                            |  1 -
 include/configs/mx6qarm2.h                             |  1 -
 include/configs/mx6sabre_common.h                      |  2 --
 include/configs/mx6slevk.h                             |  1 -
 include/configs/mx6sllevk.h                            |  1 -
 include/configs/mx6sxsabreauto.h                       |  1 -
 include/configs/mx6sxsabresd.h                         |  1 -
 include/configs/mx6ul_14x14_evk.h                      |  1 -
 include/configs/mx6ullevk.h                            |  1 -
 include/configs/mx7dsabresd.h                          |  1 -
 include/configs/mx7ulp_evk.h                           |  1 -
 include/configs/nas220.h                               |  3 ---
 include/configs/netgear_cg3100d.h                      |  1 -
 include/configs/nitrogen6x.h                           |  1 -
 include/configs/nokia_rx51.h                           |  2 --
 include/configs/novena.h                               |  3 ---
 include/configs/nsa310s.h                              |  3 ---
 include/configs/nsim.h                                 |  1 -
 include/configs/nyan-big.h                             |  1 -
 include/configs/odroid.h                               |  1 -
 include/configs/odroid_xu3.h                           |  2 --
 include/configs/omap3_beagle.h                         |  1 -
 include/configs/omap3_cairo.h                          |  1 -
 include/configs/omap3_evm.h                            |  1 -
 include/configs/omap3_igep00x0.h                       |  1 -
 include/configs/omap3_logic.h                          |  1 -
 include/configs/omap3_overo.h                          |  1 -
 include/configs/omap3_pandora.h                        |  1 -
 include/configs/omap3_zoom1.h                          |  1 -
 include/configs/omap4_sdp4430.h                        |  1 -
 include/configs/omap5_uevm.h                           |  1 -
 include/configs/omapl138_lcdk.h                        |  7 -------
 include/configs/openrd.h                               |  3 ---
 include/configs/opos6uldev.h                           |  1 -
 include/configs/origen.h                               |  1 -
 include/configs/p1_p2_rdb_pc.h                         |  3 ---
 include/configs/p1_twr.h                               |  2 --
 include/configs/p2371-0000.h                           |  1 -
 include/configs/p2371-2180.h                           |  1 -
 include/configs/p2571.h                                |  1 -
 include/configs/p2771-0000.h                           |  1 -
 include/configs/paz00.h                                |  1 -
 include/configs/pb1x00.h                               |  2 --
 include/configs/pcm051.h                               |  1 -
 include/configs/pengwyn.h                              |  1 -
 include/configs/pepper.h                               |  1 -
 include/configs/pic32mzdask.h                          |  1 -
 include/configs/pico-imx6ul.h                          |  1 -
 include/configs/pico-imx7d.h                           |  1 -
 include/configs/platinum.h                             |  2 --
 include/configs/plutux.h                               |  1 -
 include/configs/pm9261.h                               |  1 -
 include/configs/pm9263.h                               |  1 -
 include/configs/pm9g45.h                               |  1 -
 include/configs/pogo_e02.h                             |  3 ---
 include/configs/popmetal_rk3288.h                      |  1 -
 include/configs/puma_rk3399.h                          |  1 -
 include/configs/qemu-ppce500.h                         |  2 --
 include/configs/qemu-x86.h                             |  1 -
 include/configs/rk3036_common.h                        |  1 -
 include/configs/rock.h                                 |  1 -
 include/configs/rock2.h                                |  1 -
 include/configs/rv1108_common.h                        |  1 -
 include/configs/s32v234evb.h                           |  1 -
 include/configs/s5p_goni.h                             |  1 -
 include/configs/s5pc210_universal.h                    |  1 -
 include/configs/sagem_f at st1704.h                       |  1 -
 include/configs/salvator-x.h                           |  1 -
 include/configs/sama5d2_ptc.h                          |  1 -
 include/configs/sama5d3_xplained.h                     |  2 --
 include/configs/sama5d3xek.h                           |  2 --
 include/configs/sandbox.h                              |  1 -
 include/configs/sansa_fuze_plus.h                      |  1 -
 include/configs/sbc8349.h                              |  1 -
 include/configs/sc_sps_1.h                             |  3 ---
 include/configs/seaboard.h                             |  1 -
 include/configs/sfr_nb4_ser.h                          |  1 -
 include/configs/sheep_rk3368.h                         |  1 -
 include/configs/sheevaplug.h                           |  3 ---
 include/configs/siemens-am33x-common.h                 |  4 ----
 include/configs/smartweb.h                             |  1 -
 include/configs/smdkv310.h                             |  1 -
 include/configs/snapper9260.h                          |  1 -
 include/configs/snapper9g45.h                          |  1 -
 include/configs/sniper.h                               |  1 -
 include/configs/socfpga_arria10_socdk.h                |  1 -
 include/configs/socfpga_arria5_socdk.h                 |  2 --
 include/configs/socfpga_cyclone5_socdk.h               |  2 --
 include/configs/socfpga_de0_nano_soc.h                 |  2 --
 include/configs/socfpga_de10_nano.h                    |  2 --
 include/configs/socfpga_de1_soc.h                      |  2 --
 include/configs/socfpga_mcvevk.h                       |  1 -
 include/configs/socfpga_sockit.h                       |  2 --
 include/configs/socfpga_socrates.h                     |  2 --
 include/configs/spear3xx_evb.h                         |  1 -
 include/configs/spear6xx_evb.h                         |  1 -
 include/configs/stih410-b2260.h                        |  1 -
 include/configs/stm32f746-disco.h                      |  1 -
 include/configs/strider.h                              |  1 -
 include/configs/tam3517-common.h                       |  1 -
 include/configs/tao3530.h                              |  1 -
 include/configs/taurus.h                               |  1 -
 include/configs/tb100.h                                |  1 -
 include/configs/tbs2910.h                              |  1 -
 include/configs/tec-ng.h                               |  1 -
 include/configs/tec.h                                  |  1 -
 include/configs/thunderx_88xx.h                        |  1 -
 include/configs/ti814x_evm.h                           |  2 --
 include/configs/ti816x_evm.h                           |  1 -
 include/configs/tinker_rk3288.h                        |  1 -
 include/configs/titanium.h                             |  2 --
 include/configs/topic_miami.h                          |  1 -
 include/configs/tplink_wdr4300.h                       |  1 -
 include/configs/tqma6.h                                |  1 -
 include/configs/trats.h                                |  1 -
 include/configs/trats2.h                               |  1 -
 include/configs/tricorder.h                            |  5 -----
 include/configs/ts4800.h                               |  1 -
 include/configs/udoo.h                                 |  1 -
 include/configs/udoo_neo.h                             |  1 -
 include/configs/uniphier.h                             |  3 ---
 include/configs/usbarmory.h                            |  1 -
 include/configs/venice2.h                              |  1 -
 include/configs/ventana.h                              |  1 -
 include/configs/veyron.h                               |  1 -
 include/configs/vining_2000.h                          |  1 -
 include/configs/vme8349.h                              |  1 -
 include/configs/wandboard.h                            |  1 -
 include/configs/warp.h                                 |  1 -
 include/configs/warp7.h                                |  1 -
 include/configs/work_92105.h                           |  1 -
 include/configs/x86-chromebook.h                       |  1 -
 include/configs/xfi3.h                                 |  1 -
 include/configs/xilinx-ppc.h                           |  2 --
 include/configs/xilinx_zynqmp.h                        |  3 ---
 include/configs/xpress.h                               |  1 -
 include/configs/zynq-common.h                          |  2 --
 798 files changed, 563 insertions(+), 538 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 49aac42980..74791394a5 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1005,6 +1005,7 @@ 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/cpu/armv7/mx6/Kconfig b/arch/arm/cpu/armv7/mx6/Kconfig
index 1e5dc9afd9..bec920f2ee 100644
--- a/arch/arm/cpu/armv7/mx6/Kconfig
+++ b/arch/arm/cpu/armv7/mx6/Kconfig
@@ -30,6 +30,7 @@ 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/cpu/armv7/mx7/Kconfig b/arch/arm/cpu/armv7/mx7/Kconfig
index aea85265ef..7053697f9b 100644
--- a/arch/arm/cpu/armv7/mx7/Kconfig
+++ b/arch/arm/cpu/armv7/mx7/Kconfig
@@ -13,6 +13,7 @@ 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-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index c57935e44d..d1aa68db20 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -8,6 +8,7 @@ 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-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
index bd3e7d3b3f..94412bac0c 100644
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
@@ -59,6 +59,7 @@ 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"
@@ -70,6 +71,7 @@ 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)"
@@ -87,6 +89,7 @@ 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)"
@@ -97,6 +100,7 @@ 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)"
@@ -107,6 +111,7 @@ 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)"
@@ -132,6 +137,7 @@ 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 89d2a499e4..48387589d5 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -60,6 +60,7 @@ 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"
@@ -77,6 +78,7 @@ config TEGRA30
 	select ARM_ERRATA_743622
 	select ARM_ERRATA_751472
 	select TEGRA_ARMV7_COMMON
+	imply ENV_IS_IN_MMC
 
 config TEGRA114
 	bool "Tegra114 family"
@@ -85,6 +87,7 @@ config TEGRA114
 config TEGRA124
 	bool "Tegra124 family"
 	select TEGRA_ARMV7_COMMON
+	imply ENV_IS_IN_MMC
 
 config TEGRA210
 	bool "Tegra210 family"
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index d07b92d1b4..579371e8ee 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -83,6 +83,7 @@ config ARCH_BMIPS
 	select CPU
 	select RAM
 	select SYSRESET
+	imply ENV_IS_NOWHERE
 
 config MACH_PIC32
 	bool "Support Microchip PIC32"
diff --git a/configs/B4420QDS_NAND_defconfig b/configs/B4420QDS_NAND_defconfig
index a33c8ea4f6..b7dde217e9 100644
--- a/configs/B4420QDS_NAND_defconfig
+++ b/configs/B4420QDS_NAND_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/B4860QDS_NAND_defconfig b/configs/B4860QDS_NAND_defconfig
index ce18507373..46365722bd 100644
--- a/configs/B4860QDS_NAND_defconfig
+++ b/configs/B4860QDS_NAND_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/B4860QDS_SECURE_BOOT_defconfig b/configs/B4860QDS_SECURE_BOOT_defconfig
index e679d0a618..7e7c4bb775 100644
--- a/configs/B4860QDS_SECURE_BOOT_defconfig
+++ b/configs/B4860QDS_SECURE_BOOT_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
index 62c436898d..800d29e941 100644
--- a/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
+++ b/configs/BSC9131RDB_NAND_SYSCLK100_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9131RDB_NAND_defconfig b/configs/BSC9131RDB_NAND_defconfig
index c5d9b9ba48..a08b433d48 100644
--- a/configs/BSC9131RDB_NAND_defconfig
+++ b/configs/BSC9131RDB_NAND_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
index aea470cfbe..872977d0e6 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
index 42ee22741d..7de6d4d3de 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK100_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
index 51e19946d8..d160ef5c18 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
index 81ace7bda4..e10d6f9971 100644
--- a/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_NAND_DDRCLK133_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
index cea3cb44b8..d084e7647a 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
index c5642abd90..e583bc615c 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
index e8c548286b..d5409f39ae 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
index 22413b4812..7ebe310f97 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
index 3afb011012..2522e62ef2 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
index 10cbd222d2..d9e5a66afd 100644
--- a/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
index c5d17bc516..4ba94a70d2 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
index ba0772c07d..f38fa9ce6d 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/C29XPCIE_NAND_defconfig b/configs/C29XPCIE_NAND_defconfig
index 42f085a47c..3e0157b152 100644
--- a/configs/C29XPCIE_NAND_defconfig
+++ b/configs/C29XPCIE_NAND_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/C29XPCIE_NOR_SECBOOT_defconfig b/configs/C29XPCIE_NOR_SECBOOT_defconfig
index 99e2b33ac7..8563b5ac27 100644
--- a/configs/C29XPCIE_NOR_SECBOOT_defconfig
+++ b/configs/C29XPCIE_NOR_SECBOOT_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
index 26544f4ab6..9214b8ce26 100644
--- a/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
+++ b/configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig
index 9b9e0b7e62..e5c0db4778 100644
--- a/configs/CHIP_defconfig
+++ b/configs/CHIP_defconfig
@@ -10,6 +10,8 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_DFU=y
 CONFIG_CMD_USB_MASS_STORAGE=y
+# CONFIG_ENV_IS_IN_MMC is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
diff --git a/configs/CHIP_pro_defconfig b/configs/CHIP_pro_defconfig
index 52572bd055..f151d1a67c 100644
--- a/configs/CHIP_pro_defconfig
+++ b/configs/CHIP_pro_defconfig
@@ -17,6 +17,8 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_MTDPARTS=y
+# CONFIG_ENV_IS_IN_MMC is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTDIDS_DEFAULT="nand0=sunxi-nand.0"
 CONFIG_MTDPARTS_DEFAULT="mtdparts=sunxi-nand.0:256k(spl),256k(spl-backup),2m(uboot),2m(uboot-backup),-(UBI)"
 # CONFIG_MMC is not set
diff --git a/configs/Cyrus_P5020_defconfig b/configs/Cyrus_P5020_defconfig
index 8e036d223b..474c412dfc 100644
--- a/configs/Cyrus_P5020_defconfig
+++ b/configs/Cyrus_P5020_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/Cyrus_P5040_defconfig b/configs/Cyrus_P5040_defconfig
index ee4da81d3e..1b717089f0 100644
--- a/configs/Cyrus_P5040_defconfig
+++ b/configs/Cyrus_P5040_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/M54418TWR_nand_mii_defconfig b/configs/M54418TWR_nand_mii_defconfig
index 1151fdeb18..eeb09b0ad6 100644
--- a/configs/M54418TWR_nand_mii_defconfig
+++ b/configs/M54418TWR_nand_mii_defconfig
@@ -16,5 +16,6 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/M54418TWR_nand_rmii_defconfig b/configs/M54418TWR_nand_rmii_defconfig
index 1dcdfbf355..3c55a4757c 100644
--- a/configs/M54418TWR_nand_rmii_defconfig
+++ b/configs/M54418TWR_nand_rmii_defconfig
@@ -16,5 +16,6 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/M54418TWR_nand_rmii_lowfreq_defconfig b/configs/M54418TWR_nand_rmii_lowfreq_defconfig
index 4bb31d75f6..50d692f626 100644
--- a/configs/M54418TWR_nand_rmii_lowfreq_defconfig
+++ b/configs/M54418TWR_nand_rmii_lowfreq_defconfig
@@ -16,5 +16,6 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/MPC8313ERDB_NAND_33_defconfig b/configs/MPC8313ERDB_NAND_33_defconfig
index 64247a5335..8d2ee1497a 100644
--- a/configs/MPC8313ERDB_NAND_33_defconfig
+++ b/configs/MPC8313ERDB_NAND_33_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8313ERDB_NAND_66_defconfig b/configs/MPC8313ERDB_NAND_66_defconfig
index 363d849efc..ad0e72ebe1 100644
--- a/configs/MPC8313ERDB_NAND_66_defconfig
+++ b/configs/MPC8313ERDB_NAND_66_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8536DS_SDCARD_defconfig b/configs/MPC8536DS_SDCARD_defconfig
index 761c1652b1..1c6d0a3536 100644
--- a/configs/MPC8536DS_SDCARD_defconfig
+++ b/configs/MPC8536DS_SDCARD_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SYS_FSL_DDR2=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
index 28029b8a74..cce9a47d30 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_36BIT_NAND_defconfig b/configs/P1010RDB-PA_36BIT_NAND_defconfig
index fb8ccd8ec4..5f079bb78b 100644
--- a/configs/P1010RDB-PA_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
index f9109e495a..892a430070 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
index 29738f3126..edb3dc0b9e 100644
--- a/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SDCARD_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
index a5cec4b8b1..5d338b589e 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
index d720c229e2..84f7a96672 100644
--- a/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NAND_SECBOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_NAND_defconfig b/configs/P1010RDB-PA_NAND_defconfig
index 81a083edb3..ad4673dc70 100644
--- a/configs/P1010RDB-PA_NAND_defconfig
+++ b/configs/P1010RDB-PA_NAND_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
index d473d6ddaa..11ec042f54 100644
--- a/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_NOR_SECBOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_SDCARD_defconfig b/configs/P1010RDB-PA_SDCARD_defconfig
index d0e5de8331..8dec4a095c 100644
--- a/configs/P1010RDB-PA_SDCARD_defconfig
+++ b/configs/P1010RDB-PA_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
index aa94431094..62f7fabf6c 100644
--- a/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
index 137a9ff90b..ee1f26868a 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_36BIT_NAND_defconfig b/configs/P1010RDB-PB_36BIT_NAND_defconfig
index 93bd550cff..0c4bc0aca6 100644
--- a/configs/P1010RDB-PB_36BIT_NAND_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
index d1c728b01e..41154fa9f6 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
index 343f225f68..2b8e1bdd48 100644
--- a/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SDCARD_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
index 2c1f471c61..7b27ac9215 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
index 765e460d64..e188c3feb5 100644
--- a/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NAND_SECBOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_NAND_defconfig b/configs/P1010RDB-PB_NAND_defconfig
index f238caee15..ffc710a57f 100644
--- a/configs/P1010RDB-PB_NAND_defconfig
+++ b/configs/P1010RDB-PB_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
index 76f28fd817..7569ca05d2 100644
--- a/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_NOR_SECBOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_SDCARD_defconfig b/configs/P1010RDB-PB_SDCARD_defconfig
index 1c1781b289..dda54a3649 100644
--- a/configs/P1010RDB-PB_SDCARD_defconfig
+++ b/configs/P1010RDB-PB_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
index a0c9a716ae..d993dfd677 100644
--- a/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
index e297a0da5b..cf72170d45 100644
--- a/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020MBG-PC_36BIT_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1020MBG-PC_SDCARD_defconfig b/configs/P1020MBG-PC_SDCARD_defconfig
index a5bdec3de2..efbf51dc77 100644
--- a/configs/P1020MBG-PC_SDCARD_defconfig
+++ b/configs/P1020MBG-PC_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1020RDB-PC_36BIT_NAND_defconfig b/configs/P1020RDB-PC_36BIT_NAND_defconfig
index 56a0297520..db1a45a9f1 100644
--- a/configs/P1020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1020RDB-PC_36BIT_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
index 4d882264bb..2c59fb4aca 100644
--- a/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SDCARD_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PC_NAND_defconfig b/configs/P1020RDB-PC_NAND_defconfig
index 71c0c2d4bf..5bffd5bdaa 100644
--- a/configs/P1020RDB-PC_NAND_defconfig
+++ b/configs/P1020RDB-PC_NAND_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PC_SDCARD_defconfig b/configs/P1020RDB-PC_SDCARD_defconfig
index 9d994810cc..f9d4f6824b 100644
--- a/configs/P1020RDB-PC_SDCARD_defconfig
+++ b/configs/P1020RDB-PC_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PD_NAND_defconfig b/configs/P1020RDB-PD_NAND_defconfig
index eb9d2635b9..d62988ee76 100644
--- a/configs/P1020RDB-PD_NAND_defconfig
+++ b/configs/P1020RDB-PD_NAND_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PD_SDCARD_defconfig b/configs/P1020RDB-PD_SDCARD_defconfig
index e6373f4200..fbb2392755 100644
--- a/configs/P1020RDB-PD_SDCARD_defconfig
+++ b/configs/P1020RDB-PD_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
index 1d31e0fdc5..23499dd213 100644
--- a/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1020UTM-PC_36BIT_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1020UTM-PC_SDCARD_defconfig b/configs/P1020UTM-PC_SDCARD_defconfig
index d401a8ce3e..c473f42c80 100644
--- a/configs/P1020UTM-PC_SDCARD_defconfig
+++ b/configs/P1020UTM-PC_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1021RDB-PC_36BIT_NAND_defconfig b/configs/P1021RDB-PC_36BIT_NAND_defconfig
index f6bbf7db4b..3991a169e2 100644
--- a/configs/P1021RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P1021RDB-PC_36BIT_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
index bbeeba0bc8..12680db0de 100644
--- a/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P1021RDB-PC_36BIT_SDCARD_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1021RDB-PC_NAND_defconfig b/configs/P1021RDB-PC_NAND_defconfig
index a9af7462a1..3fbfabb149 100644
--- a/configs/P1021RDB-PC_NAND_defconfig
+++ b/configs/P1021RDB-PC_NAND_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1021RDB-PC_SDCARD_defconfig b/configs/P1021RDB-PC_SDCARD_defconfig
index ca77237cf4..3a91572698 100644
--- a/configs/P1021RDB-PC_SDCARD_defconfig
+++ b/configs/P1021RDB-PC_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_36BIT_NAND_defconfig b/configs/P1022DS_36BIT_NAND_defconfig
index 9c83a469a8..89340d55a7 100644
--- a/configs/P1022DS_36BIT_NAND_defconfig
+++ b/configs/P1022DS_36BIT_NAND_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_36BIT_SDCARD_defconfig b/configs/P1022DS_36BIT_SDCARD_defconfig
index e1f9a9888d..32342cde09 100644
--- a/configs/P1022DS_36BIT_SDCARD_defconfig
+++ b/configs/P1022DS_36BIT_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_NAND_defconfig b/configs/P1022DS_NAND_defconfig
index 04bb7a13cd..3bff54675a 100644
--- a/configs/P1022DS_NAND_defconfig
+++ b/configs/P1022DS_NAND_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_SDCARD_defconfig b/configs/P1022DS_SDCARD_defconfig
index af7b4dbd5e..052845299b 100644
--- a/configs/P1022DS_SDCARD_defconfig
+++ b/configs/P1022DS_SDCARD_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1024RDB_NAND_defconfig b/configs/P1024RDB_NAND_defconfig
index 3a563f5c32..8c58cc90c3 100644
--- a/configs/P1024RDB_NAND_defconfig
+++ b/configs/P1024RDB_NAND_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1024RDB_SDCARD_defconfig b/configs/P1024RDB_SDCARD_defconfig
index 69348a6069..57a8f06f81 100644
--- a/configs/P1024RDB_SDCARD_defconfig
+++ b/configs/P1024RDB_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1025RDB_NAND_defconfig b/configs/P1025RDB_NAND_defconfig
index 221d4ae9f2..ed1d4fe4f2 100644
--- a/configs/P1025RDB_NAND_defconfig
+++ b/configs/P1025RDB_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1025RDB_SDCARD_defconfig b/configs/P1025RDB_SDCARD_defconfig
index 43fed3530e..83efa583fa 100644
--- a/configs/P1025RDB_SDCARD_defconfig
+++ b/configs/P1025RDB_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_36BIT_NAND_defconfig b/configs/P2020RDB-PC_36BIT_NAND_defconfig
index 86a38b85e2..6313fd4f22 100644
--- a/configs/P2020RDB-PC_36BIT_NAND_defconfig
+++ b/configs/P2020RDB-PC_36BIT_NAND_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
index f67d7cd586..70124476e1 100644
--- a/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SDCARD_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_NAND_defconfig b/configs/P2020RDB-PC_NAND_defconfig
index 4b2651c8e6..be10844614 100644
--- a/configs/P2020RDB-PC_NAND_defconfig
+++ b/configs/P2020RDB-PC_NAND_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_SDCARD_defconfig b/configs/P2020RDB-PC_SDCARD_defconfig
index f4cb697687..dcb5548c4f 100644
--- a/configs/P2020RDB-PC_SDCARD_defconfig
+++ b/configs/P2020RDB-PC_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2041RDB_NAND_defconfig b/configs/P2041RDB_NAND_defconfig
index 1ae51831ae..9a28aad091 100644
--- a/configs/P2041RDB_NAND_defconfig
+++ b/configs/P2041RDB_NAND_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P2041RDB_SDCARD_defconfig b/configs/P2041RDB_SDCARD_defconfig
index 15d87e90a9..b9ed94fcb4 100644
--- a/configs/P2041RDB_SDCARD_defconfig
+++ b/configs/P2041RDB_SDCARD_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P2041RDB_SECURE_BOOT_defconfig b/configs/P2041RDB_SECURE_BOOT_defconfig
index 1bc514c882..40fa472418 100644
--- a/configs/P2041RDB_SECURE_BOOT_defconfig
+++ b/configs/P2041RDB_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P3041DS_NAND_SECURE_BOOT_defconfig b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
index 1aad2a61e6..78afd64792 100644
--- a/configs/P3041DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_NAND_SECURE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P3041DS_NAND_defconfig b/configs/P3041DS_NAND_defconfig
index f7ef553f9a..351e81311a 100644
--- a/configs/P3041DS_NAND_defconfig
+++ b/configs/P3041DS_NAND_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P3041DS_SDCARD_defconfig b/configs/P3041DS_SDCARD_defconfig
index e0a5ae05ca..209abc799c 100644
--- a/configs/P3041DS_SDCARD_defconfig
+++ b/configs/P3041DS_SDCARD_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P3041DS_SECURE_BOOT_defconfig b/configs/P3041DS_SECURE_BOOT_defconfig
index c5766ce2f9..6359cf179d 100644
--- a/configs/P3041DS_SECURE_BOOT_defconfig
+++ b/configs/P3041DS_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P4080DS_SDCARD_defconfig b/configs/P4080DS_SDCARD_defconfig
index 2444a664ae..188fd5fc23 100644
--- a/configs/P4080DS_SDCARD_defconfig
+++ b/configs/P4080DS_SDCARD_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P4080DS_SECURE_BOOT_defconfig b/configs/P4080DS_SECURE_BOOT_defconfig
index 81b14dd9c3..ec678762b5 100644
--- a/configs/P4080DS_SECURE_BOOT_defconfig
+++ b/configs/P4080DS_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5020DS_NAND_SECURE_BOOT_defconfig b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
index 0200c18816..b92acc0ce2 100644
--- a/configs/P5020DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_NAND_SECURE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5020DS_NAND_defconfig b/configs/P5020DS_NAND_defconfig
index eb4b3875c0..0b723a0f5c 100644
--- a/configs/P5020DS_NAND_defconfig
+++ b/configs/P5020DS_NAND_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5020DS_SDCARD_defconfig b/configs/P5020DS_SDCARD_defconfig
index af9c2b50a3..4ac1457e57 100644
--- a/configs/P5020DS_SDCARD_defconfig
+++ b/configs/P5020DS_SDCARD_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5020DS_SECURE_BOOT_defconfig b/configs/P5020DS_SECURE_BOOT_defconfig
index 03b1843c96..3539c82df3 100644
--- a/configs/P5020DS_SECURE_BOOT_defconfig
+++ b/configs/P5020DS_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5040DS_NAND_SECURE_BOOT_defconfig b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
index 3c0335e8b1..4f4e8d9c48 100644
--- a/configs/P5040DS_NAND_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_NAND_SECURE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5040DS_NAND_defconfig b/configs/P5040DS_NAND_defconfig
index a468b2bf63..9a1535df6c 100644
--- a/configs/P5040DS_NAND_defconfig
+++ b/configs/P5040DS_NAND_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5040DS_SDCARD_defconfig b/configs/P5040DS_SDCARD_defconfig
index f9fd14c29c..0f183079c5 100644
--- a/configs/P5040DS_SDCARD_defconfig
+++ b/configs/P5040DS_SDCARD_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5040DS_SECURE_BOOT_defconfig b/configs/P5040DS_SECURE_BOOT_defconfig
index 5d7e1d0502..0e8090f1ec 100644
--- a/configs/P5040DS_SECURE_BOOT_defconfig
+++ b/configs/P5040DS_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_NAND_defconfig b/configs/T1023RDB_NAND_defconfig
index dcd3b3fb67..313d6c6439 100644
--- a/configs/T1023RDB_NAND_defconfig
+++ b/configs/T1023RDB_NAND_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_SDCARD_defconfig b/configs/T1023RDB_SDCARD_defconfig
index 581d044f98..f655eccb6c 100644
--- a/configs/T1023RDB_SDCARD_defconfig
+++ b/configs/T1023RDB_SDCARD_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_SECURE_BOOT_defconfig b/configs/T1023RDB_SECURE_BOOT_defconfig
index f760f4dc34..1067e36e90 100644
--- a/configs/T1023RDB_SECURE_BOOT_defconfig
+++ b/configs/T1023RDB_SECURE_BOOT_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
index 19f1000657..43fddebbae 100644
--- a/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_DDR4_SECURE_BOOT_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1024QDS_NAND_defconfig b/configs/T1024QDS_NAND_defconfig
index ac429f6a85..bf941b361e 100644
--- a/configs/T1024QDS_NAND_defconfig
+++ b/configs/T1024QDS_NAND_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1024QDS_SDCARD_defconfig b/configs/T1024QDS_SDCARD_defconfig
index 0b75721da2..b81ccb9e6d 100644
--- a/configs/T1024QDS_SDCARD_defconfig
+++ b/configs/T1024QDS_SDCARD_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1024QDS_SECURE_BOOT_defconfig b/configs/T1024QDS_SECURE_BOOT_defconfig
index f1d04889ff..fe54c4035a 100644
--- a/configs/T1024QDS_SECURE_BOOT_defconfig
+++ b/configs/T1024QDS_SECURE_BOOT_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1024RDB_NAND_defconfig b/configs/T1024RDB_NAND_defconfig
index eeca0a6718..aea64c1b12 100644
--- a/configs/T1024RDB_NAND_defconfig
+++ b/configs/T1024RDB_NAND_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1024RDB_SDCARD_defconfig b/configs/T1024RDB_SDCARD_defconfig
index d742a32651..6a7ddb8096 100644
--- a/configs/T1024RDB_SDCARD_defconfig
+++ b/configs/T1024RDB_SDCARD_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1024RDB_SECURE_BOOT_defconfig b/configs/T1024RDB_SECURE_BOOT_defconfig
index 968d8a8941..f0d088695c 100644
--- a/configs/T1024RDB_SECURE_BOOT_defconfig
+++ b/configs/T1024RDB_SECURE_BOOT_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1040D4RDB_NAND_defconfig b/configs/T1040D4RDB_NAND_defconfig
index c22bf9ce8c..3fa9d7a640 100644
--- a/configs/T1040D4RDB_NAND_defconfig
+++ b/configs/T1040D4RDB_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1040D4RDB_SDCARD_defconfig b/configs/T1040D4RDB_SDCARD_defconfig
index 63010c546c..025ef1baac 100644
--- a/configs/T1040D4RDB_SDCARD_defconfig
+++ b/configs/T1040D4RDB_SDCARD_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1040D4RDB_SECURE_BOOT_defconfig b/configs/T1040D4RDB_SECURE_BOOT_defconfig
index 47582578cf..09e90043ec 100644
--- a/configs/T1040D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040D4RDB_SECURE_BOOT_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1040QDS_SECURE_BOOT_defconfig b/configs/T1040QDS_SECURE_BOOT_defconfig
index a75ee03bcf..5fcca8d4df 100644
--- a/configs/T1040QDS_SECURE_BOOT_defconfig
+++ b/configs/T1040QDS_SECURE_BOOT_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1040RDB_NAND_defconfig b/configs/T1040RDB_NAND_defconfig
index b3e9c412b9..375dea03fe 100644
--- a/configs/T1040RDB_NAND_defconfig
+++ b/configs/T1040RDB_NAND_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1040RDB_SDCARD_defconfig b/configs/T1040RDB_SDCARD_defconfig
index 7b2187cf9c..8c77e24ea0 100644
--- a/configs/T1040RDB_SDCARD_defconfig
+++ b/configs/T1040RDB_SDCARD_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1040RDB_SECURE_BOOT_defconfig b/configs/T1040RDB_SECURE_BOOT_defconfig
index f16834b85c..208d9aa231 100644
--- a/configs/T1040RDB_SECURE_BOOT_defconfig
+++ b/configs/T1040RDB_SECURE_BOOT_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1042D4RDB_NAND_defconfig b/configs/T1042D4RDB_NAND_defconfig
index fed89fd5f5..38c3f4f08a 100644
--- a/configs/T1042D4RDB_NAND_defconfig
+++ b/configs/T1042D4RDB_NAND_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1042D4RDB_SDCARD_defconfig b/configs/T1042D4RDB_SDCARD_defconfig
index 52bb08f653..c09fef981a 100644
--- a/configs/T1042D4RDB_SDCARD_defconfig
+++ b/configs/T1042D4RDB_SDCARD_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1042D4RDB_SECURE_BOOT_defconfig b/configs/T1042D4RDB_SECURE_BOOT_defconfig
index 4a94e30117..ce8990f609 100644
--- a/configs/T1042D4RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042D4RDB_SECURE_BOOT_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig b/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig
index 513bfd39ca..acd05a5c64 100644
--- a/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig
+++ b/configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig
@@ -37,6 +37,8 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/T1042RDB_PI_NAND_defconfig b/configs/T1042RDB_PI_NAND_defconfig
index f2e72c229e..e1d8e2e444 100644
--- a/configs/T1042RDB_PI_NAND_defconfig
+++ b/configs/T1042RDB_PI_NAND_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1042RDB_PI_SDCARD_defconfig b/configs/T1042RDB_PI_SDCARD_defconfig
index 3e28c56334..8526b0a7a9 100644
--- a/configs/T1042RDB_PI_SDCARD_defconfig
+++ b/configs/T1042RDB_PI_SDCARD_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1042RDB_SECURE_BOOT_defconfig b/configs/T1042RDB_SECURE_BOOT_defconfig
index cdea7857b6..89c1e1bb72 100644
--- a/configs/T1042RDB_SECURE_BOOT_defconfig
+++ b/configs/T1042RDB_SECURE_BOOT_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 650293c948..de4ad5e736 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080QDS_SDCARD_defconfig b/configs/T2080QDS_SDCARD_defconfig
index af336dff0b..b128e04e82 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig b/configs/T2080QDS_SECURE_BOOT_defconfig
index 80ad085b1e..564788214c 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080RDB_NAND_defconfig b/configs/T2080RDB_NAND_defconfig
index 8e7b677725..d8939bb7eb 100644
--- a/configs/T2080RDB_NAND_defconfig
+++ b/configs/T2080RDB_NAND_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080RDB_SDCARD_defconfig b/configs/T2080RDB_SDCARD_defconfig
index fac743f55c..fb18a66caa 100644
--- a/configs/T2080RDB_SDCARD_defconfig
+++ b/configs/T2080RDB_SDCARD_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080RDB_SECURE_BOOT_defconfig b/configs/T2080RDB_SECURE_BOOT_defconfig
index f8296387c4..aaf3acaea6 100644
--- a/configs/T2080RDB_SECURE_BOOT_defconfig
+++ b/configs/T2080RDB_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2081QDS_NAND_defconfig b/configs/T2081QDS_NAND_defconfig
index 4653515682..b51e28da0b 100644
--- a/configs/T2081QDS_NAND_defconfig
+++ b/configs/T2081QDS_NAND_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2081QDS_SDCARD_defconfig b/configs/T2081QDS_SDCARD_defconfig
index 749d87bac9..3081e63559 100644
--- a/configs/T2081QDS_SDCARD_defconfig
+++ b/configs/T2081QDS_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4160QDS_NAND_defconfig b/configs/T4160QDS_NAND_defconfig
index d13d330dca..27fbaebb89 100644
--- a/configs/T4160QDS_NAND_defconfig
+++ b/configs/T4160QDS_NAND_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4160QDS_SDCARD_defconfig b/configs/T4160QDS_SDCARD_defconfig
index a11667c5eb..2d6cf2328d 100644
--- a/configs/T4160QDS_SDCARD_defconfig
+++ b/configs/T4160QDS_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4160QDS_SECURE_BOOT_defconfig b/configs/T4160QDS_SECURE_BOOT_defconfig
index ea79cc2cb5..8469909fcf 100644
--- a/configs/T4160QDS_SECURE_BOOT_defconfig
+++ b/configs/T4160QDS_SECURE_BOOT_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4240QDS_NAND_defconfig b/configs/T4240QDS_NAND_defconfig
index ce51fb9674..c640e804c9 100644
--- a/configs/T4240QDS_NAND_defconfig
+++ b/configs/T4240QDS_NAND_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4240QDS_SDCARD_defconfig b/configs/T4240QDS_SDCARD_defconfig
index 836f2d942b..976c018813 100644
--- a/configs/T4240QDS_SDCARD_defconfig
+++ b/configs/T4240QDS_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4240QDS_SECURE_BOOT_defconfig b/configs/T4240QDS_SECURE_BOOT_defconfig
index 3219b0c8b3..444d00c381 100644
--- a/configs/T4240QDS_SECURE_BOOT_defconfig
+++ b/configs/T4240QDS_SECURE_BOOT_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4240RDB_SDCARD_defconfig b/configs/T4240RDB_SDCARD_defconfig
index ddb8cacee7..6b7e2e4b31 100644
--- a/configs/T4240RDB_SDCARD_defconfig
+++ b/configs/T4240RDB_SDCARD_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/am335x_baltos_defconfig b/configs/am335x_baltos_defconfig
index b69ba8fefa..ab9c3f383b 100644
--- a/configs/am335x_baltos_defconfig
+++ b/configs/am335x_baltos_defconfig
@@ -49,6 +49,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig
index 7bfdfa8341..0c7c90da05 100644
--- a/configs/am335x_boneblack_defconfig
+++ b/configs/am335x_boneblack_defconfig
@@ -20,6 +20,7 @@ CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_TFTP=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig
index ef5a3f184d..72a89b77fa 100644
--- a/configs/am335x_boneblack_vboot_defconfig
+++ b/configs/am335x_boneblack_vboot_defconfig
@@ -24,6 +24,7 @@ CONFIG_AUTOBOOT_STOP_STR=" "
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
diff --git a/configs/am335x_igep003x_defconfig b/configs/am335x_igep003x_defconfig
index df7d1c69af..50b335b4e8 100644
--- a/configs/am335x_igep003x_defconfig
+++ b/configs/am335x_igep003x_defconfig
@@ -46,6 +46,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_UBI=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_MTD_UBI_FASTMAP=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/am335x_shc_defconfig b/configs/am335x_shc_defconfig
index 4bd1b65880..b3a1faa794 100644
--- a/configs/am335x_shc_defconfig
+++ b/configs/am335x_shc_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ISO_PARTITION=y
 # CONFIG_SPL_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/am335x_shc_ict_defconfig b/configs/am335x_shc_ict_defconfig
index 1025cd1d5c..ad92afc439 100644
--- a/configs/am335x_shc_ict_defconfig
+++ b/configs/am335x_shc_ict_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ISO_PARTITION=y
 # CONFIG_SPL_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/am335x_shc_netboot_defconfig b/configs/am335x_shc_netboot_defconfig
index 0011234d55..a7faad27c7 100644
--- a/configs/am335x_shc_netboot_defconfig
+++ b/configs/am335x_shc_netboot_defconfig
@@ -38,6 +38,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ISO_PARTITION=y
 # CONFIG_SPL_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/am335x_shc_prompt_defconfig b/configs/am335x_shc_prompt_defconfig
index a6c617f87e..c0b13b8e2f 100644
--- a/configs/am335x_shc_prompt_defconfig
+++ b/configs/am335x_shc_prompt_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ISO_PARTITION=y
 # CONFIG_SPL_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/am335x_shc_sdboot_defconfig b/configs/am335x_shc_sdboot_defconfig
index fa231543a2..c7a13ae00d 100644
--- a/configs/am335x_shc_sdboot_defconfig
+++ b/configs/am335x_shc_sdboot_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ISO_PARTITION=y
 # CONFIG_SPL_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/am335x_shc_sdboot_prompt_defconfig b/configs/am335x_shc_sdboot_prompt_defconfig
index fa231543a2..c7a13ae00d 100644
--- a/configs/am335x_shc_sdboot_prompt_defconfig
+++ b/configs/am335x_shc_sdboot_prompt_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ISO_PARTITION=y
 # CONFIG_SPL_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/am335x_sl50_defconfig b/configs/am335x_sl50_defconfig
index 02ce013004..dc5b65e117 100644
--- a/configs/am335x_sl50_defconfig
+++ b/configs/am335x_sl50_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/am3517_crane_defconfig b/configs/am3517_crane_defconfig
index c51313fc19..73c348e0ac 100644
--- a/configs/am3517_crane_defconfig
+++ b/configs/am3517_crane_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig
index 7e9ea0ee51..d1ca466960 100644
--- a/configs/am3517_evm_defconfig
+++ b/configs/am3517_evm_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
 CONFIG_SPL_PARTITION_UUIDS=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig
index 658ab92487..e731715c6a 100644
--- a/configs/am57xx_evm_defconfig
+++ b/configs/am57xx_evm_defconfig
@@ -38,6 +38,7 @@ CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_LIST="am57xx-beagle-x15 am57xx-beagle-x15-revb1 am572x-idk am571x-idk"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 # CONFIG_BLK is not set
diff --git a/configs/am57xx_evm_nodt_defconfig b/configs/am57xx_evm_nodt_defconfig
index 6048e6c911..6ae5d501c8 100644
--- a/configs/am57xx_evm_nodt_defconfig
+++ b/configs/am57xx_evm_nodt_defconfig
@@ -43,6 +43,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
diff --git a/configs/am57xx_hs_evm_defconfig b/configs/am57xx_hs_evm_defconfig
index b3833303aa..9cde1d30d8 100644
--- a/configs/am57xx_hs_evm_defconfig
+++ b/configs/am57xx_hs_evm_defconfig
@@ -42,6 +42,7 @@ CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_LIST="am57xx-beagle-x15 am57xx-beagle-x15-revb1 am572x-idk am571x-idk"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 # CONFIG_BLK is not set
diff --git a/configs/apalis_imx6_defconfig b/configs/apalis_imx6_defconfig
index d171cf0754..46dfdee152 100644
--- a/configs/apalis_imx6_defconfig
+++ b/configs/apalis_imx6_defconfig
@@ -41,6 +41,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_GADGET=y
diff --git a/configs/apalis_imx6_nospl_com_defconfig b/configs/apalis_imx6_nospl_com_defconfig
index 6611c4306d..1c0bbb8b7f 100644
--- a/configs/apalis_imx6_nospl_com_defconfig
+++ b/configs/apalis_imx6_nospl_com_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_GADGET=y
diff --git a/configs/apalis_imx6_nospl_it_defconfig b/configs/apalis_imx6_nospl_it_defconfig
index dba0a7c670..00f6b5dc4e 100644
--- a/configs/apalis_imx6_nospl_it_defconfig
+++ b/configs/apalis_imx6_nospl_it_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_GADGET=y
diff --git a/configs/apf27_defconfig b/configs/apf27_defconfig
index 7474fdd994..81ebd4595f 100644
--- a/configs/apf27_defconfig
+++ b/configs/apf27_defconfig
@@ -25,5 +25,6 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_MXC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/apx4devkit_defconfig b/configs/apx4devkit_defconfig
index 8bc1770ec2..28b3aa31bf 100644
--- a/configs/apx4devkit_defconfig
+++ b/configs/apx4devkit_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/arndale_defconfig b/configs/arndale_defconfig
index 0f2aa16e0e..e4731ecb1e 100644
--- a/configs/arndale_defconfig
+++ b/configs/arndale_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_SOUND=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_MMC_DW=y
 CONFIG_MMC_SDHCI=y
diff --git a/configs/aspenite_defconfig b/configs/aspenite_defconfig
index 0ac39eabd2..5da2cde2c5 100644
--- a/configs/aspenite_defconfig
+++ b/configs/aspenite_defconfig
@@ -9,6 +9,7 @@ CONFIG_BOARD_EARLY_INIT_F=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/at91sam9260ek_nandflash_defconfig b/configs/at91sam9260ek_nandflash_defconfig
index 7df2e06942..8c47534e31 100644
--- a/configs/at91sam9260ek_nandflash_defconfig
+++ b/configs/at91sam9260ek_nandflash_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9261ek_nandflash_defconfig b/configs/at91sam9261ek_nandflash_defconfig
index 16f5defa43..a10bee00df 100644
--- a/configs/at91sam9261ek_nandflash_defconfig
+++ b/configs/at91sam9261ek_nandflash_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/at91sam9263ek_nandflash_defconfig b/configs/at91sam9263ek_nandflash_defconfig
index aef21b8125..ad14e8dcef 100644
--- a/configs/at91sam9263ek_nandflash_defconfig
+++ b/configs/at91sam9263ek_nandflash_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9g10ek_nandflash_defconfig b/configs/at91sam9g10ek_nandflash_defconfig
index 46217efb39..83c75c72d6 100644
--- a/configs/at91sam9g10ek_nandflash_defconfig
+++ b/configs/at91sam9g10ek_nandflash_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/at91sam9g20ek_2mmc_defconfig b/configs/at91sam9g20ek_2mmc_defconfig
index 2a696d49c0..8e10ef2299 100644
--- a/configs/at91sam9g20ek_2mmc_defconfig
+++ b/configs/at91sam9g20ek_2mmc_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9g20ek_2mmc_nandflash_defconfig b/configs/at91sam9g20ek_2mmc_nandflash_defconfig
index 55923ca6bd..bc20de347a 100644
--- a/configs/at91sam9g20ek_2mmc_nandflash_defconfig
+++ b/configs/at91sam9g20ek_2mmc_nandflash_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9g20ek_nandflash_defconfig b/configs/at91sam9g20ek_nandflash_defconfig
index 359ee54646..613a9f34b7 100644
--- a/configs/at91sam9g20ek_nandflash_defconfig
+++ b/configs/at91sam9g20ek_nandflash_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9m10g45ek_nandflash_defconfig b/configs/at91sam9m10g45ek_nandflash_defconfig
index ddc26bea20..2ccc3f775b 100644
--- a/configs/at91sam9m10g45ek_nandflash_defconfig
+++ b/configs/at91sam9m10g45ek_nandflash_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9n12ek_nandflash_defconfig b/configs/at91sam9n12ek_nandflash_defconfig
index 08887c4cfe..b0eb35c03d 100644
--- a/configs/at91sam9n12ek_nandflash_defconfig
+++ b/configs/at91sam9n12ek_nandflash_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9rlek_nandflash_defconfig b/configs/at91sam9rlek_nandflash_defconfig
index 851867e8a1..efb363b2ac 100644
--- a/configs/at91sam9rlek_nandflash_defconfig
+++ b/configs/at91sam9rlek_nandflash_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_MMC=y
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9x5ek_nandflash_defconfig b/configs/at91sam9x5ek_nandflash_defconfig
index e31b659b22..213104c0af 100644
--- a/configs/at91sam9x5ek_nandflash_defconfig
+++ b/configs/at91sam9x5ek_nandflash_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9xeek_nandflash_defconfig b/configs/at91sam9xeek_nandflash_defconfig
index e304fd6072..d70443ba6b 100644
--- a/configs/at91sam9xeek_nandflash_defconfig
+++ b/configs/at91sam9xeek_nandflash_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/axm_defconfig b/configs/axm_defconfig
index 14ec8a1f11..e3fec34836 100644
--- a/configs/axm_defconfig
+++ b/configs/axm_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/bcm11130_defconfig b/configs/bcm11130_defconfig
index 28e399ea9f..81892a053d 100644
--- a/configs/bcm11130_defconfig
+++ b/configs/bcm11130_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
 CONFIG_MMC_SDHCI_KONA=y
diff --git a/configs/bcm11130_nand_defconfig b/configs/bcm11130_nand_defconfig
index 61caa9be75..9ea9b2fa98 100644
--- a/configs/bcm11130_nand_defconfig
+++ b/configs/bcm11130_nand_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
 CONFIG_MMC_SDHCI_KONA=y
diff --git a/configs/bcm23550_w1d_defconfig b/configs/bcm23550_w1d_defconfig
index 73c238e152..759e1c4001 100644
--- a/configs/bcm23550_w1d_defconfig
+++ b/configs/bcm23550_w1d_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
 CONFIG_MMC_SDHCI_KONA=y
diff --git a/configs/bcm28155_ap_defconfig b/configs/bcm28155_ap_defconfig
index e3cdf98f98..7c6cece26a 100644
--- a/configs/bcm28155_ap_defconfig
+++ b/configs/bcm28155_ap_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
 CONFIG_MMC_SDHCI_KONA=y
diff --git a/configs/bcm28155_w1d_defconfig b/configs/bcm28155_w1d_defconfig
index aa5216e696..1fa41ce6c9 100644
--- a/configs/bcm28155_w1d_defconfig
+++ b/configs/bcm28155_w1d_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
 CONFIG_MMC_SDHCI_KONA=y
diff --git a/configs/bcm911360_entphn-ns_defconfig b/configs/bcm911360_entphn-ns_defconfig
index 61336d38f0..4d1a9636ed 100644
--- a/configs/bcm911360_entphn-ns_defconfig
+++ b/configs/bcm911360_entphn-ns_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_SHA1=y
diff --git a/configs/bcm911360_entphn_defconfig b/configs/bcm911360_entphn_defconfig
index cbef3d8365..c803322b4d 100644
--- a/configs/bcm911360_entphn_defconfig
+++ b/configs/bcm911360_entphn_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_SHA1=y
diff --git a/configs/bcm911360k_defconfig b/configs/bcm911360k_defconfig
index b124206361..6ca833a9f5 100644
--- a/configs/bcm911360k_defconfig
+++ b/configs/bcm911360k_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_SHA1=y
diff --git a/configs/bcm958300k-ns_defconfig b/configs/bcm958300k-ns_defconfig
index f271fa06e5..63620c1630 100644
--- a/configs/bcm958300k-ns_defconfig
+++ b/configs/bcm958300k-ns_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_SHA1=y
diff --git a/configs/bcm958300k_defconfig b/configs/bcm958300k_defconfig
index b124206361..6ca833a9f5 100644
--- a/configs/bcm958300k_defconfig
+++ b/configs/bcm958300k_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_SHA1=y
diff --git a/configs/bcm958305k_defconfig b/configs/bcm958305k_defconfig
index b124206361..6ca833a9f5 100644
--- a/configs/bcm958305k_defconfig
+++ b/configs/bcm958305k_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_SHA1=y
diff --git a/configs/bcm958622hr_defconfig b/configs/bcm958622hr_defconfig
index ffda22ed49..e0ad23fa58 100644
--- a/configs/bcm958622hr_defconfig
+++ b/configs/bcm958622hr_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_TIME=y
 CONFIG_CMD_HASH=y
 CONFIG_HASH_VERIFY=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/bcm958712k_defconfig b/configs/bcm958712k_defconfig
index 96e4bce972..5966f89030 100644
--- a/configs/bcm958712k_defconfig
+++ b/configs/bcm958712k_defconfig
@@ -6,5 +6,6 @@ CONFIG_BOOTDELAY=5
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SYS_PROMPT="u-boot> "
 # CONFIG_CMD_IMLS is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig
index 90fce0b4e3..fd810fb884 100644
--- a/configs/bg0900_defconfig
+++ b/configs/bg0900_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
diff --git a/configs/birdland_bav335a_defconfig b/configs/birdland_bav335a_defconfig
index 073a58d94e..078a8768c6 100644
--- a/configs/birdland_bav335a_defconfig
+++ b/configs/birdland_bav335a_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_OMAP_HS=y
diff --git a/configs/birdland_bav335b_defconfig b/configs/birdland_bav335b_defconfig
index 5269c177d4..807d66a6c5 100644
--- a/configs/birdland_bav335b_defconfig
+++ b/configs/birdland_bav335b_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_OMAP_HS=y
diff --git a/configs/bk4r1_defconfig b/configs/bk4r1_defconfig
index c5b1e9c062..797bdd1c6c 100644
--- a/configs/bk4r1_defconfig
+++ b/configs/bk4r1_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_VF610=y
 CONFIG_TARGET_BK4R1=y
 CONFIG_DEFAULT_DEVICE_TREE="bk4r1"
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/phytec/pcm052/imximage.cfg,ENV_IS_IN_NAND"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/phytec/pcm052/imximage.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_DM_GPIO=y
diff --git a/configs/brppt1_mmc_defconfig b/configs/brppt1_mmc_defconfig
index e2a009edd9..ffad20659d 100644
--- a/configs/brppt1_mmc_defconfig
+++ b/configs/brppt1_mmc_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NETCONSOLE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/brppt1_nand_defconfig b/configs/brppt1_nand_defconfig
index ba03758b3c..4b16728acb 100644
--- a/configs/brppt1_nand_defconfig
+++ b/configs/brppt1_nand_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NETCONSOLE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/brxre1_defconfig b/configs/brxre1_defconfig
index 05ceba8fd6..4aff4e1af3 100644
--- a/configs/brxre1_defconfig
+++ b/configs/brxre1_defconfig
@@ -49,6 +49,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NETCONSOLE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/cairo_defconfig b/configs/cairo_defconfig
index 6b10abb690..8a60b25b81 100644
--- a/configs/cairo_defconfig
+++ b/configs/cairo_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/chiliboard_defconfig b/configs/chiliboard_defconfig
index 82b527641d..2d911c36ac 100644
--- a/configs/chiliboard_defconfig
+++ b/configs/chiliboard_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM_GPIO=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/chromebit_mickey_defconfig b/configs/chromebit_mickey_defconfig
index 7d0351e324..06afc49608 100644
--- a/configs/chromebit_mickey_defconfig
+++ b/configs/chromebit_mickey_defconfig
@@ -31,6 +31,7 @@ CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
 CONFIG_SPL_OF_PLATDATA=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig
index 8f33bb8316..46c7254434 100644
--- a/configs/chromebook_jerry_defconfig
+++ b/configs/chromebook_jerry_defconfig
@@ -33,6 +33,7 @@ CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
 CONFIG_SPL_OF_PLATDATA=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/chromebook_minnie_defconfig b/configs/chromebook_minnie_defconfig
index db1488a2ad..9ee0dae6f1 100644
--- a/configs/chromebook_minnie_defconfig
+++ b/configs/chromebook_minnie_defconfig
@@ -32,6 +32,7 @@ CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
 CONFIG_SPL_OF_PLATDATA=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/clearfog_defconfig b/configs/clearfog_defconfig
index 3bb6c6bf65..9597c01ddb 100644
--- a/configs/clearfog_defconfig
+++ b/configs/clearfog_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_TFTPPUT=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_OF_TRANSLATE=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
diff --git a/configs/cm_t335_defconfig b/configs/cm_t335_defconfig
index be0536a272..b55b530eeb 100644
--- a/configs/cm_t335_defconfig
+++ b/configs/cm_t335_defconfig
@@ -42,6 +42,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
 CONFIG_LED_STATUS0=y
diff --git a/configs/cm_t3517_defconfig b/configs/cm_t3517_defconfig
index dbe34eb59e..12c6801a34 100644
--- a/configs/cm_t3517_defconfig
+++ b/configs/cm_t3517_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
 CONFIG_LED_STATUS0=y
diff --git a/configs/cm_t35_defconfig b/configs/cm_t35_defconfig
index 50f6c6498c..c0f80029bf 100644
--- a/configs/cm_t35_defconfig
+++ b/configs/cm_t35_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
 CONFIG_LED_STATUS0=y
diff --git a/configs/cm_t54_defconfig b/configs/cm_t54_defconfig
index 6d18eac559..42776c5fab 100644
--- a/configs/cm_t54_defconfig
+++ b/configs/cm_t54_defconfig
@@ -38,8 +38,9 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
-CONFIG_SCSI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/colibri_imx6_defconfig b/configs/colibri_imx6_defconfig
index d8307b0836..c54938cca3 100644
--- a/configs/colibri_imx6_defconfig
+++ b/configs/colibri_imx6_defconfig
@@ -41,6 +41,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_GADGET=y
diff --git a/configs/colibri_imx6_nospl_defconfig b/configs/colibri_imx6_nospl_defconfig
index df24f17b2d..298605500b 100644
--- a/configs/colibri_imx6_nospl_defconfig
+++ b/configs/colibri_imx6_nospl_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_GADGET=y
diff --git a/configs/colibri_imx7_defconfig b/configs/colibri_imx7_defconfig
index 2ba6aea312..4a536609bc 100644
--- a/configs/colibri_imx7_defconfig
+++ b/configs/colibri_imx7_defconfig
@@ -39,6 +39,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DFU_MMC=y
 CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
index 1d00055a83..34768aa64e 100644
--- a/configs/colibri_t20_defconfig
+++ b/configs/colibri_t20_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_UBI=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SPL_DM=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
diff --git a/configs/colibri_vf_defconfig b/configs/colibri_vf_defconfig
index 3b510c3e6d..5dd8e535fc 100644
--- a/configs/colibri_vf_defconfig
+++ b/configs/colibri_vf_defconfig
@@ -4,7 +4,7 @@ CONFIG_ARCH_VF610=y
 CONFIG_VIDEO=y
 CONFIG_TARGET_COLIBRI_VF=y
 CONFIG_DEFAULT_DEVICE_TREE="vf610-colibri"
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/toradex/colibri_vf/imximage.cfg,ENV_IS_IN_NAND,IMX_NAND"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/toradex/colibri_vf/imximage.cfg,IMX_NAND"
 CONFIG_BOOTDELAY=1
 CONFIG_VERSION_VARIABLE=y
 # CONFIG_DISPLAY_BOARDINFO is not set
@@ -32,6 +32,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_DFU_MMC=y
diff --git a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
index d05f35d967..4fa05d18ac 100644
--- a/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
+++ b/configs/controlcenterd_36BIT_SDCARD_DEVELOP_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/controlcenterd_36BIT_SDCARD_defconfig b/configs/controlcenterd_36BIT_SDCARD_defconfig
index d2af507054..833963a975 100644
--- a/configs/controlcenterd_36BIT_SDCARD_defconfig
+++ b/configs/controlcenterd_36BIT_SDCARD_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig
index 614cdb6201..b5df3253f7 100644
--- a/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig
+++ b/configs/controlcenterd_TRAILBLAZER_DEVELOP_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MMC=y
 CONFIG_CMD_TPM=y
 # CONFIG_CMD_IRQ is not set
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 # CONFIG_PCI is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/controlcenterd_TRAILBLAZER_defconfig b/configs/controlcenterd_TRAILBLAZER_defconfig
index da657f142f..5ed20dc28e 100644
--- a/configs/controlcenterd_TRAILBLAZER_defconfig
+++ b/configs/controlcenterd_TRAILBLAZER_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MMC=y
 CONFIG_CMD_TPM=y
 # CONFIG_CMD_IRQ is not set
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 # CONFIG_PCI is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/coreboot-x86_defconfig b/configs/coreboot-x86_defconfig
index 8b51073030..d7b2c75cfa 100644
--- a/configs/coreboot-x86_defconfig
+++ b/configs/coreboot-x86_defconfig
@@ -31,6 +31,7 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/corvus_defconfig b/configs/corvus_defconfig
index ac5eefd0d8..1e01fa1457 100644
--- a/configs/corvus_defconfig
+++ b/configs/corvus_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
 CONFIG_AT91_UTMI=y
diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
index 02fceaacd2..a306d53201 100644
--- a/configs/dalmore_defconfig
+++ b/configs/dalmore_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
diff --git a/configs/dbau1000_defconfig b/configs/dbau1000_defconfig
index bb65369aaa..b3508fd8da 100644
--- a/configs/dbau1000_defconfig
+++ b/configs/dbau1000_defconfig
@@ -15,4 +15,5 @@ CONFIG_CMD_IDE=y
 CONFIG_CMD_DHCP=y
 CONFIG_MAC_PARTITION=y
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/dbau1100_defconfig b/configs/dbau1100_defconfig
index 98b0d40c7b..f7661d7d65 100644
--- a/configs/dbau1100_defconfig
+++ b/configs/dbau1100_defconfig
@@ -15,4 +15,5 @@ CONFIG_CMD_IDE=y
 CONFIG_CMD_DHCP=y
 CONFIG_MAC_PARTITION=y
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/dbau1500_defconfig b/configs/dbau1500_defconfig
index cdf5477407..8ad3823683 100644
--- a/configs/dbau1500_defconfig
+++ b/configs/dbau1500_defconfig
@@ -15,4 +15,5 @@ CONFIG_CMD_IDE=y
 CONFIG_CMD_DHCP=y
 CONFIG_MAC_PARTITION=y
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/dbau1550_defconfig b/configs/dbau1550_defconfig
index 6a0c8e8c8a..94efd88857 100644
--- a/configs/dbau1550_defconfig
+++ b/configs/dbau1550_defconfig
@@ -10,4 +10,5 @@ CONFIG_SYS_PROMPT="DbAu1xx0 # "
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/dbau1550_el_defconfig b/configs/dbau1550_el_defconfig
index e2e5eef38b..1cb7a06da3 100644
--- a/configs/dbau1550_el_defconfig
+++ b/configs/dbau1550_el_defconfig
@@ -11,4 +11,5 @@ CONFIG_SYS_PROMPT="DbAu1xx0 # "
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig
index 06874c9da0..cf482153e9 100644
--- a/configs/devkit3250_defconfig
+++ b/configs/devkit3250_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_DM_GPIO=y
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index f5871909ce..8832ac4ad8 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/dns325_defconfig b/configs/dns325_defconfig
index abe6a6379f..8e4c2365b3 100644
--- a/configs/dns325_defconfig
+++ b/configs/dns325_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/dockstar_defconfig b/configs/dockstar_defconfig
index a70458872d..16d1f941a2 100644
--- a/configs/dockstar_defconfig
+++ b/configs/dockstar_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
index 6dd1baf6e9..280b7d5233 100644
--- a/configs/dra7xx_evm_defconfig
+++ b/configs/dra7xx_evm_defconfig
@@ -36,6 +36,7 @@ CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_LIST="dra7-evm dra72-evm dra72-evm-revc dra71-evm"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
@@ -44,7 +45,6 @@ CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_SPL_SYSCON=y
 CONFIG_SPL_OF_TRANSLATE=y
-CONFIG_DM_SCSI=y
 CONFIG_DWC_AHCI=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
@@ -68,6 +68,7 @@ CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_DM_REGULATOR_GPIO=y
 CONFIG_DM_REGULATOR_PALMAS=y
 CONFIG_DM_REGULATOR_LP873X=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_DM_SPI=y
diff --git a/configs/dra7xx_hs_evm_defconfig b/configs/dra7xx_hs_evm_defconfig
index 3008a1fd2c..6252ebffd7 100644
--- a/configs/dra7xx_hs_evm_defconfig
+++ b/configs/dra7xx_hs_evm_defconfig
@@ -41,13 +41,13 @@ CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_LIST="dra7-evm dra72-evm dra72-evm-revc dra71-evm"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_SPL_SYSCON=y
-CONFIG_DM_SCSI=y
 CONFIG_DWC_AHCI=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
@@ -71,6 +71,7 @@ CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_DM_REGULATOR_GPIO=y
 CONFIG_DM_REGULATOR_PALMAS=y
 CONFIG_DM_REGULATOR_LP873X=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
 CONFIG_DM_SPI=y
diff --git a/configs/draco_defconfig b/configs/draco_defconfig
index 1d32220179..fa1d84b4a3 100644
--- a/configs/draco_defconfig
+++ b/configs/draco_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_UBI=y
 # CONFIG_DOS_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DFU_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/dragonboard410c_defconfig b/configs/dragonboard410c_defconfig
index 90c145aa15..a0cfab6b1a 100644
--- a/configs/dragonboard410c_defconfig
+++ b/configs/dragonboard410c_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIMER=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_CLK=y
 CONFIG_MSM_GPIO=y
 CONFIG_PM8916_GPIO=y
diff --git a/configs/duovero_defconfig b/configs/duovero_defconfig
index b945875adf..e051456635 100644
--- a/configs/duovero_defconfig
+++ b/configs/duovero_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_SPL_PARTITION_UUIDS=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/eco5pk_defconfig b/configs/eco5pk_defconfig
index 1501368317..6401876169 100644
--- a/configs/eco5pk_defconfig
+++ b/configs/eco5pk_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/efi-x86_defconfig b/configs/efi-x86_defconfig
index 2fae904589..beeca53b4a 100644
--- a/configs/efi-x86_defconfig
+++ b/configs/efi-x86_defconfig
@@ -31,6 +31,7 @@ CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM_PCI=y
 CONFIG_DEBUG_EFI_CONSOLE=y
 CONFIG_DEBUG_UART_BASE=0
diff --git a/configs/espresso7420_defconfig b/configs/espresso7420_defconfig
index 66f0d63a35..ca3837e97e 100644
--- a/configs/espresso7420_defconfig
+++ b/configs/espresso7420_defconfig
@@ -11,4 +11,5 @@ CONFIG_SYS_PROMPT="ESPRESSO7420 # "
 # CONFIG_AUTOBOOT is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
diff --git a/configs/etamin_defconfig b/configs/etamin_defconfig
index 5781974396..143de46925 100644
--- a/configs/etamin_defconfig
+++ b/configs/etamin_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_UBI=y
 # CONFIG_DOS_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DFU_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/evb-ast2500_defconfig b/configs/evb-ast2500_defconfig
index f71d0c10c3..a52bc53769 100644
--- a/configs/evb-ast2500_defconfig
+++ b/configs/evb-ast2500_defconfig
@@ -9,6 +9,7 @@ CONFIG_PRE_CON_BUF_ADDR=0x1e720000
 # CONFIG_DISPLAY_CPUINFO is not set
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_I2C=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_CLK=y
 CONFIG_DM_I2C=y
diff --git a/configs/evb-px5_defconfig b/configs/evb-px5_defconfig
index 2c8c894746..41fb45790a 100644
--- a/configs/evb-px5_defconfig
+++ b/configs/evb-px5_defconfig
@@ -11,6 +11,7 @@ CONFIG_ANDROID_BOOT_IMAGE=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CLK=y
diff --git a/configs/evb-rk3036_defconfig b/configs/evb-rk3036_defconfig
index c60d17515e..89ce162914 100644
--- a/configs/evb-rk3036_defconfig
+++ b/configs/evb-rk3036_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_TIME=y
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_SPL_PARTITION_UUIDS=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CLK=y
diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
index 0d2831158d..7647dd089f 100644
--- a/configs/evb-rk3288_defconfig
+++ b/configs/evb-rk3288_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/evb-rk3328_defconfig b/configs/evb-rk3328_defconfig
index 1384e87bd0..88aad91140 100644
--- a/configs/evb-rk3328_defconfig
+++ b/configs/evb-rk3328_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_SF=y
 CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_TIME=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CLK=y
diff --git a/configs/evb-rk3399_defconfig b/configs/evb-rk3399_defconfig
index bdab07b56b..883305c5ad 100644
--- a/configs/evb-rk3399_defconfig
+++ b/configs/evb-rk3399_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_TIME=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
 CONFIG_SPL_OF_PLATDATA=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/evb-rv1108_defconfig b/configs/evb-rv1108_defconfig
index 1c404e514d..7d50c83fbf 100644
--- a/configs/evb-rv1108_defconfig
+++ b/configs/evb-rv1108_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_SF=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/fennec-rk3288_defconfig b/configs/fennec-rk3288_defconfig
index aacf808266..599004dd8e 100644
--- a/configs/fennec-rk3288_defconfig
+++ b/configs/fennec-rk3288_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
index 619002422d..6282edcf39 100644
--- a/configs/firefly-rk3288_defconfig
+++ b/configs/firefly-rk3288_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/firefly-rk3399_defconfig b/configs/firefly-rk3399_defconfig
index 5c2d92514b..364199905e 100644
--- a/configs/firefly-rk3399_defconfig
+++ b/configs/firefly-rk3399_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_TIME=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
 CONFIG_SPL_OF_PLATDATA=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/geekbox_defconfig b/configs/geekbox_defconfig
index 0a1e1dc72d..f5cbd4c90a 100644
--- a/configs/geekbox_defconfig
+++ b/configs/geekbox_defconfig
@@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEVICE_TREE="rk3368-geekbox"
 CONFIG_DEBUG_UART=y
 # CONFIG_DISPLAY_CPUINFO is not set
 # CONFIG_CMD_IMLS is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CLK=y
diff --git a/configs/goflexhome_defconfig b/configs/goflexhome_defconfig
index 4dfb895351..a660b5c80a 100644
--- a/configs/goflexhome_defconfig
+++ b/configs/goflexhome_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/gplugd_defconfig b/configs/gplugd_defconfig
index 75e980979c..d81ed740be 100644
--- a/configs/gplugd_defconfig
+++ b/configs/gplugd_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/gurnard_defconfig b/configs/gurnard_defconfig
index d43fd14a8a..67551e4999 100644
--- a/configs/gurnard_defconfig
+++ b/configs/gurnard_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/guruplug_defconfig b/configs/guruplug_defconfig
index 570819d3e5..460682c020 100644
--- a/configs/guruplug_defconfig
+++ b/configs/guruplug_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index a476dc2af2..201dc7825d 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_PHYLIB=y
 CONFIG_NETDEVICES=y
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index bd38e6d5e1..27334005e6 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_PHYLIB=y
 CONFIG_MV88E61XX_SWITCH=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index 296f015a50..9d71301dbf 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -49,6 +49,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_PHYLIB=y
 CONFIG_NETDEVICES=y
diff --git a/configs/h2200_defconfig b/configs/h2200_defconfig
index 9d3698c555..70c304ada4 100644
--- a/configs/h2200_defconfig
+++ b/configs/h2200_defconfig
@@ -25,5 +25,6 @@ CONFIG_SYS_PROMPT="> "
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_PXA_SERIAL=y
diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
index fce3eeef1e..4b6c0db169 100644
--- a/configs/harmony_defconfig
+++ b/configs/harmony_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SPL_DM=y
 CONFIG_PCI=y
 CONFIG_DM_PCI=y
diff --git a/configs/ib62x0_defconfig b/configs/ib62x0_defconfig
index cc9011d05c..272f108efe 100644
--- a/configs/ib62x0_defconfig
+++ b/configs/ib62x0_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/iconnect_defconfig b/configs/iconnect_defconfig
index 3e48380bc7..cb4fa93a5f 100644
--- a/configs/iconnect_defconfig
+++ b/configs/iconnect_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/igep0020_defconfig b/configs/igep0020_defconfig
index 3856d3faec..0bd27c837d 100644
--- a/configs/igep0020_defconfig
+++ b/configs/igep0020_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
diff --git a/configs/igep0030_defconfig b/configs/igep0030_defconfig
index 2616fb2e1a..0d7c1196f8 100644
--- a/configs/igep0030_defconfig
+++ b/configs/igep0030_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
diff --git a/configs/igep0032_defconfig b/configs/igep0032_defconfig
index 5859e6e95e..407ad99091 100644
--- a/configs/igep0032_defconfig
+++ b/configs/igep0032_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/imgtec_xilfpga_defconfig b/configs/imgtec_xilfpga_defconfig
index 02969da909..c720a9f757 100644
--- a/configs/imgtec_xilfpga_defconfig
+++ b/configs/imgtec_xilfpga_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_TIME=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_CLK=y
diff --git a/configs/imx6q_logic_defconfig b/configs/imx6q_logic_defconfig
index aa54b959f0..fb95518f21 100644
--- a/configs/imx6q_logic_defconfig
+++ b/configs/imx6q_logic_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
 CONFIG_NAND_MXS=y
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index da521628da..50e9173196 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -13,7 +13,7 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6q-icore"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_EXT_SUPPORT=y
@@ -33,14 +33,15 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIST="imx6q-icore imx6dl-icore"
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
+CONFIG_PHYLIB=y
+CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
 CONFIG_VIDEO_IPUV3=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_SMSC=y
diff --git a/configs/imx6qdl_icore_nand_defconfig b/configs/imx6qdl_icore_nand_defconfig
index 4bc661ec66..468cb1520d 100644
--- a/configs/imx6qdl_icore_nand_defconfig
+++ b/configs/imx6qdl_icore_nand_defconfig
@@ -6,14 +6,13 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_TARGET_MX6Q_ICORE=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_WATCHDOG_SUPPORT=y
-# CONFIG_CMD_BMODE is not set
 CONFIG_VIDEO=y
+# CONFIG_CMD_BMODE is not set
 CONFIG_DEFAULT_DEVICE_TREE="imx6q-icore"
-CONFIG_OF_LIST="imx6q-icore imx6dl-icore"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_NAND"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_DMA_SUPPORT=y
@@ -33,15 +32,16 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
+CONFIG_OF_LIST="imx6q-icore imx6dl-icore"
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
-# CONFIG_DM_MMC_OPS is not set
 CONFIG_NAND_MXS=y
+CONFIG_PHYLIB=y
+CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
 CONFIG_VIDEO_IPUV3=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_SMSC=y
diff --git a/configs/imx6qdl_icore_rqs_mmc_defconfig b/configs/imx6qdl_icore_rqs_mmc_defconfig
index daeca5d470..33badae4fd 100644
--- a/configs/imx6qdl_icore_rqs_mmc_defconfig
+++ b/configs/imx6qdl_icore_rqs_mmc_defconfig
@@ -12,7 +12,7 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6q-icore-rqs"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_EXT_SUPPORT=y
@@ -32,13 +32,14 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIST="imx6q-icore-rqs imx6dl-icore-rqs"
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
+CONFIG_PHYLIB=y
+CONFIG_PHY_MICREL=y
+CONFIG_PHY_MICREL_KSZ9021=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_MICREL=y
-CONFIG_PHY_MICREL_KSZ9021=y
diff --git a/configs/imx6ul_geam_mmc_defconfig b/configs/imx6ul_geam_mmc_defconfig
index 8ac71931be..ade15604bb 100644
--- a/configs/imx6ul_geam_mmc_defconfig
+++ b/configs/imx6ul_geam_mmc_defconfig
@@ -12,7 +12,7 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6ul-geam-kit"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_EXT_SUPPORT=y
@@ -32,12 +32,13 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
+CONFIG_PHYLIB=y
+CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_SMSC=y
diff --git a/configs/imx6ul_geam_nand_defconfig b/configs/imx6ul_geam_nand_defconfig
index dc775538a1..7e01bc31d0 100644
--- a/configs/imx6ul_geam_nand_defconfig
+++ b/configs/imx6ul_geam_nand_defconfig
@@ -11,7 +11,7 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6ul-geam-kit"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_NAND"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_DMA_SUPPORT=y
@@ -32,13 +32,14 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
 CONFIG_NAND_MXS=y
+CONFIG_PHYLIB=y
+CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_SMSC=y
diff --git a/configs/imx6ul_isiot_emmc_defconfig b/configs/imx6ul_isiot_emmc_defconfig
index 2a0d0d09b9..d87bfc82aa 100644
--- a/configs/imx6ul_isiot_emmc_defconfig
+++ b/configs/imx6ul_isiot_emmc_defconfig
@@ -12,7 +12,7 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6ul-isiot-emmc"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_EXT_SUPPORT=y
@@ -31,11 +31,12 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
+CONFIG_PHYLIB=y
+CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_SMSC=y
diff --git a/configs/imx6ul_isiot_mmc_defconfig b/configs/imx6ul_isiot_mmc_defconfig
index d002b1e4cf..3b94d6620d 100644
--- a/configs/imx6ul_isiot_mmc_defconfig
+++ b/configs/imx6ul_isiot_mmc_defconfig
@@ -12,7 +12,7 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6ul-isiot-mmc"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_EXT_SUPPORT=y
@@ -32,12 +32,13 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
+CONFIG_PHYLIB=y
+CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_SMSC=y
diff --git a/configs/imx6ul_isiot_nand_defconfig b/configs/imx6ul_isiot_nand_defconfig
index e1ee65588b..4dca3489d1 100644
--- a/configs/imx6ul_isiot_nand_defconfig
+++ b/configs/imx6ul_isiot_nand_defconfig
@@ -11,7 +11,7 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6ul-isiot-nand"
 CONFIG_FIT=y
 CONFIG_FIT_SIGNATURE=y
 CONFIG_FIT_VERBOSE=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg,ENV_IS_IN_NAND"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/imx-common/spl_sd.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_SPL=y
 CONFIG_SPL_DMA_SUPPORT=y
@@ -32,13 +32,14 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
 CONFIG_NAND_MXS=y
+CONFIG_PHYLIB=y
+CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
-CONFIG_PHYLIB=y
-CONFIG_PHY_SMSC=y
diff --git a/configs/integratorap_cm720t_defconfig b/configs/integratorap_cm720t_defconfig
index cace5adcb2..a82935177e 100644
--- a/configs/integratorap_cm720t_defconfig
+++ b/configs/integratorap_cm720t_defconfig
@@ -8,6 +8,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 CONFIG_CMD_ARMFLASH=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PCI=y
diff --git a/configs/integratorap_cm920t_defconfig b/configs/integratorap_cm920t_defconfig
index a1639ada33..708c26b9af 100644
--- a/configs/integratorap_cm920t_defconfig
+++ b/configs/integratorap_cm920t_defconfig
@@ -8,6 +8,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 CONFIG_CMD_ARMFLASH=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PCI=y
diff --git a/configs/integratorap_cm926ejs_defconfig b/configs/integratorap_cm926ejs_defconfig
index f288dc88e2..55615611da 100644
--- a/configs/integratorap_cm926ejs_defconfig
+++ b/configs/integratorap_cm926ejs_defconfig
@@ -8,6 +8,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 CONFIG_CMD_ARMFLASH=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PCI=y
diff --git a/configs/integratorap_cm946es_defconfig b/configs/integratorap_cm946es_defconfig
index c13af27def..b19a020d84 100644
--- a/configs/integratorap_cm946es_defconfig
+++ b/configs/integratorap_cm946es_defconfig
@@ -8,6 +8,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="Integrator-AP # "
 CONFIG_CMD_ARMFLASH=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PCI=y
diff --git a/configs/ipam390_defconfig b/configs/ipam390_defconfig
index 3c32a6b0ec..e6e0b54448 100644
--- a/configs/ipam390_defconfig
+++ b/configs/ipam390_defconfig
@@ -25,5 +25,6 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DIAG=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig
index f09eb84ebc..3a4da84491 100644
--- a/configs/k2e_evm_defconfig
+++ b/configs/k2e_evm_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
diff --git a/configs/k2e_hs_evm_defconfig b/configs/k2e_hs_evm_defconfig
index 55eab61cc3..92338b1dab 100644
--- a/configs/k2e_hs_evm_defconfig
+++ b/configs/k2e_hs_evm_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig
index 0afdb6e2cb..398ea1e07c 100644
--- a/configs/k2hk_evm_defconfig
+++ b/configs/k2hk_evm_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
diff --git a/configs/k2hk_hs_evm_defconfig b/configs/k2hk_hs_evm_defconfig
index a66a256346..b592a24dfb 100644
--- a/configs/k2hk_hs_evm_defconfig
+++ b/configs/k2hk_hs_evm_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig
index fd8c173185..eb990b2630 100644
--- a/configs/k2l_evm_defconfig
+++ b/configs/k2l_evm_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_TI_AEMIF=y
diff --git a/configs/kc1_defconfig b/configs/kc1_defconfig
index c5ecdda92f..ad8839db9f 100644
--- a/configs/kc1_defconfig
+++ b/configs/kc1_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/kylin-rk3036_defconfig b/configs/kylin-rk3036_defconfig
index ba65bc9498..664fcef88e 100644
--- a/configs/kylin-rk3036_defconfig
+++ b/configs/kylin-rk3036_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_TIME=y
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_SPL_PARTITION_UUIDS=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CLK=y
diff --git a/configs/legoev3_defconfig b/configs/legoev3_defconfig
index 589e8cf880..d04b45fcee 100644
--- a/configs/legoev3_defconfig
+++ b/configs/legoev3_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_DIAG=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/liteboard_defconfig b/configs/liteboard_defconfig
index e550cf250a..b991424b9a 100644
--- a/configs/liteboard_defconfig
+++ b/configs/liteboard_defconfig
@@ -27,5 +27,6 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig b/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig
index ec6ed377d4..7c39f4e9f2 100644
--- a/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1012ardb_qspi_SECURE_BOOT_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_DM_SPI_FLASH=y
diff --git a/configs/ls1021aiot_sdcard_defconfig b/configs/ls1021aiot_sdcard_defconfig
index e412024349..663808172d 100644
--- a/configs/ls1021aiot_sdcard_defconfig
+++ b/configs/ls1021aiot_sdcard_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_GPT=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1021aqds_nand_defconfig b/configs/ls1021aqds_nand_defconfig
index e1ddd293dc..f00feb7b5a 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_nand_defconfig
@@ -42,6 +42,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
index 6b5477fbd6..aef90f1c48 100644
--- a/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021aqds_nor_SECURE_BOOT_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1021aqds_sdcard_ifc_defconfig b/configs/ls1021aqds_sdcard_ifc_defconfig
index b349fea4d6..9d01392f54 100644
--- a/configs/ls1021aqds_sdcard_ifc_defconfig
+++ b/configs/ls1021aqds_sdcard_ifc_defconfig
@@ -40,6 +40,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/ls1021aqds_sdcard_qspi_defconfig b/configs/ls1021aqds_sdcard_qspi_defconfig
index ea8738fa90..27615339c5 100644
--- a/configs/ls1021aqds_sdcard_qspi_defconfig
+++ b/configs/ls1021aqds_sdcard_qspi_defconfig
@@ -42,6 +42,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
index cf99770a60..7e0b6ac9a6 100644
--- a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
diff --git a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
index d13652a2f5..e63f97b452 100644
--- a/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig
@@ -43,6 +43,8 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1021atwr_sdcard_ifc_defconfig b/configs/ls1021atwr_sdcard_ifc_defconfig
index 9809c60d35..c97d46c9df 100644
--- a/configs/ls1021atwr_sdcard_ifc_defconfig
+++ b/configs/ls1021atwr_sdcard_ifc_defconfig
@@ -40,6 +40,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1021atwr_sdcard_qspi_defconfig b/configs/ls1021atwr_sdcard_qspi_defconfig
index 5ccfc96e9d..e579275bc3 100644
--- a/configs/ls1021atwr_sdcard_qspi_defconfig
+++ b/configs/ls1021atwr_sdcard_qspi_defconfig
@@ -42,6 +42,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043aqds_nand_defconfig b/configs/ls1043aqds_nand_defconfig
index b9246234b2..f7924e3d7d 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -38,6 +38,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig b/configs/ls1043aqds_sdcard_ifc_defconfig
index 2680892276..526221ee48 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -38,6 +38,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig b/configs/ls1043aqds_sdcard_qspi_defconfig
index 88c99a2216..ba00c45572 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -39,6 +39,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043ardb_SECURE_BOOT_defconfig b/configs/ls1043ardb_SECURE_BOOT_defconfig
index d914be2309..c72639d8dd 100644
--- a/configs/ls1043ardb_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
index 957f2c7fbb..970acdf509 100644
--- a/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_nand_SECURE_BOOT_defconfig
@@ -36,6 +36,8 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043ardb_nand_defconfig b/configs/ls1043ardb_nand_defconfig
index 0144db585f..7e09b48561 100644
--- a/configs/ls1043ardb_nand_defconfig
+++ b/configs/ls1043ardb_nand_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
index 4e959bfe60..f69f5c7125 100644
--- a/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig
@@ -36,6 +36,8 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043ardb_sdcard_defconfig b/configs/ls1043ardb_sdcard_defconfig
index ea674c8b2c..ad3eb9c46b 100644
--- a/configs/ls1043ardb_sdcard_defconfig
+++ b/configs/ls1043ardb_sdcard_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1046aqds_SECURE_BOOT_defconfig b/configs/ls1046aqds_SECURE_BOOT_defconfig
index cead5afe03..e119205ce5 100644
--- a/configs/ls1046aqds_SECURE_BOOT_defconfig
+++ b/configs/ls1046aqds_SECURE_BOOT_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1046aqds_nand_defconfig b/configs/ls1046aqds_nand_defconfig
index a3c60651ec..190a610962 100644
--- a/configs/ls1046aqds_nand_defconfig
+++ b/configs/ls1046aqds_nand_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig b/configs/ls1046aqds_sdcard_ifc_defconfig
index 19b80777fb..21b492483b 100644
--- a/configs/ls1046aqds_sdcard_ifc_defconfig
+++ b/configs/ls1046aqds_sdcard_ifc_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1046aqds_sdcard_qspi_defconfig b/configs/ls1046aqds_sdcard_qspi_defconfig
index e49de18746..3c6e7d6219 100644
--- a/configs/ls1046aqds_sdcard_qspi_defconfig
+++ b/configs/ls1046aqds_sdcard_qspi_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1046ardb_emmc_defconfig b/configs/ls1046ardb_emmc_defconfig
index c50931a339..d315a490fd 100644
--- a/configs/ls1046ardb_emmc_defconfig
+++ b/configs/ls1046ardb_emmc_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig b/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig
index de14dc1a33..34c64df5ec 100644
--- a/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_qspi_SECURE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_NETDEVICES=y
diff --git a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
index 5162c2cadc..4f0a625561 100644
--- a/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
+++ b/configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig
@@ -27,6 +27,8 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1046ardb_sdcard_defconfig b/configs/ls1046ardb_sdcard_defconfig
index da8c5b815b..0b1d7e7640 100644
--- a/configs/ls1046ardb_sdcard_defconfig
+++ b/configs/ls1046ardb_sdcard_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls2080a_emu_defconfig b/configs/ls2080a_emu_defconfig
index 6211b6b5af..0890997d40 100644
--- a/configs/ls2080a_emu_defconfig
+++ b/configs/ls2080a_emu_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_CACHE=y
 # CONFIG_DOS_PARTITION is not set
 # CONFIG_ISO_PARTITION is not set
 # CONFIG_EFI_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/ls2080a_simu_defconfig b/configs/ls2080a_simu_defconfig
index b6f7709af2..8b141cb49c 100644
--- a/configs/ls2080a_simu_defconfig
+++ b/configs/ls2080a_simu_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_CACHE=y
 # CONFIG_CMD_MISC is not set
 # CONFIG_ISO_PARTITION is not set
 # CONFIG_EFI_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls2080aqds_SECURE_BOOT_defconfig b/configs/ls2080aqds_SECURE_BOOT_defconfig
index 617c522851..8760547c5c 100644
--- a/configs/ls2080aqds_SECURE_BOOT_defconfig
+++ b/configs/ls2080aqds_SECURE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig
index 6548bc099f..9b6ddda664 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
diff --git a/configs/ls2080aqds_sdcard_defconfig b/configs/ls2080aqds_sdcard_defconfig
index f933b8fa2c..bbe07a9fe1 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_DM_SPI_FLASH=y
diff --git a/configs/ls2080ardb_SECURE_BOOT_defconfig b/configs/ls2080ardb_SECURE_BOOT_defconfig
index 70839e6f01..127bf0abe7 100644
--- a/configs/ls2080ardb_SECURE_BOOT_defconfig
+++ b/configs/ls2080ardb_SECURE_BOOT_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig
index 58eb4c68ef..d084e77e74 100644
--- a/configs/ls2080ardb_nand_defconfig
+++ b/configs/ls2080ardb_nand_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
diff --git a/configs/m28evk_defconfig b/configs/m28evk_defconfig
index 944e39dda1..8aeb236e0a 100644
--- a/configs/m28evk_defconfig
+++ b/configs/m28evk_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/m53evk_defconfig b/configs/m53evk_defconfig
index afcaf58530..f7945100b6 100644
--- a/configs/m53evk_defconfig
+++ b/configs/m53evk_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/ma5d4evk_defconfig b/configs/ma5d4evk_defconfig
index 668816066a..6484c9b2ab 100644
--- a/configs/ma5d4evk_defconfig
+++ b/configs/ma5d4evk_defconfig
@@ -15,7 +15,6 @@ CONFIG_VERSION_VARIABLE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL=y
 CONFIG_HUSH_PARSER=y
-CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
@@ -26,6 +25,8 @@ CONFIG_CMD_GREPENV=y
 CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_USB=y
+CONFIG_CMD_DFU=y
+CONFIG_CMD_USB_MASS_STORAGE=y
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
@@ -35,20 +36,20 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
+CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_DFU_MMC=y
+CONFIG_DFU_SF=y
 CONFIG_SPI_FLASH=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_ATMEL_USBA=y
-CONFIG_FAT_WRITE=y
-CONFIG_OF_LIBFDT=y
-# CONFIG_EFI_LOADER is not set
-CONFIG_CMD_DFU=y
-CONFIG_CMD_USB_MASS_STORAGE=y
-CONFIG_DFU_MMC=y
-CONFIG_DFU_SF=y
 CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_G_DNL_MANUFACTURER="AriesEmbedded"
 CONFIG_G_DNL_VENDOR_NUM=0x0525
 CONFIG_G_DNL_PRODUCT_NUM=0xa4a5
+CONFIG_FAT_WRITE=y
+CONFIG_OF_LIBFDT=y
+# CONFIG_EFI_LOADER is not set
diff --git a/configs/mcx_defconfig b/configs/mcx_defconfig
index d0f361f6bb..c40dd02636 100644
--- a/configs/mcx_defconfig
+++ b/configs/mcx_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
index 80e3ed86c9..599ed8c180 100644
--- a/configs/medcom-wide_defconfig
+++ b/configs/medcom-wide_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
diff --git a/configs/meesc_defconfig b/configs/meesc_defconfig
index 12482bf795..160448f303 100644
--- a/configs/meesc_defconfig
+++ b/configs/meesc_defconfig
@@ -14,5 +14,6 @@ CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig
index ffb68f73ac..3e76d62966 100644
--- a/configs/miqi-rk3288_defconfig
+++ b/configs/miqi-rk3288_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/mt_ventoux_defconfig b/configs/mt_ventoux_defconfig
index edd9e68862..4566d44b71 100644
--- a/configs/mt_ventoux_defconfig
+++ b/configs/mt_ventoux_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/mvebu_db-88f7040-nand_defconfig b/configs/mvebu_db-88f7040-nand_defconfig
index 2aba8de0b0..c301c057b1 100644
--- a/configs/mvebu_db-88f7040-nand_defconfig
+++ b/configs/mvebu_db-88f7040-nand_defconfig
@@ -39,6 +39,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_BLOCK_CACHE=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig
index 795de14740..7d96dd41de 100644
--- a/configs/mx23_olinuxino_defconfig
+++ b/configs/mx23_olinuxino_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
 CONFIG_LED_STATUS0=y
diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig
index 7eb1791d6c..55bad255fb 100644
--- a/configs/mx23evk_defconfig
+++ b/configs/mx23evk_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/mx25pdk_defconfig b/configs/mx25pdk_defconfig
index c3a0091ce4..1c1b0bd8b0 100644
--- a/configs/mx25pdk_defconfig
+++ b/configs/mx25pdk_defconfig
@@ -17,4 +17,5 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx28evk_auart_console_defconfig b/configs/mx28evk_auart_console_defconfig
index 710ae4711d..d6f0d00a23 100644
--- a/configs/mx28evk_auart_console_defconfig
+++ b/configs/mx28evk_auart_console_defconfig
@@ -5,7 +5,7 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_VIDEO=y
-CONFIG_SYS_EXTRA_OPTIONS="MXS_AUART,MXS_AUART_BASE=MXS_UARTAPP3_BASE,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="MXS_AUART,MXS_AUART_BASE=MXS_UARTAPP3_BASE"
 CONFIG_BOOTDELAY=1
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
@@ -33,6 +33,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
index 95ac31adaf..fcc98a26fa 100644
--- a/configs/mx28evk_defconfig
+++ b/configs/mx28evk_defconfig
@@ -6,7 +6,6 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_VIDEO=y
 CONFIG_FIT=y
-CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_MMC"
 CONFIG_BOOTDELAY=1
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
@@ -34,6 +33,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/configs/mx28evk_nand_defconfig b/configs/mx28evk_nand_defconfig
index 3b955401ca..0bdac689e4 100644
--- a/configs/mx28evk_nand_defconfig
+++ b/configs/mx28evk_nand_defconfig
@@ -5,7 +5,6 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_VIDEO=y
-CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_NAND"
 CONFIG_BOOTDELAY=1
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
@@ -33,6 +32,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/configs/mx31pdk_defconfig b/configs/mx31pdk_defconfig
index e704dfd5f8..2193aee59b 100644
--- a/configs/mx31pdk_defconfig
+++ b/configs/mx31pdk_defconfig
@@ -15,4 +15,5 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
diff --git a/configs/mx51evk_defconfig b/configs/mx51evk_defconfig
index 8f09c04ceb..49eabef19c 100644
--- a/configs/mx51evk_defconfig
+++ b/configs/mx51evk_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/mx53ard_defconfig b/configs/mx53ard_defconfig
index 146e7de7e3..a6bc708f88 100644
--- a/configs/mx53ard_defconfig
+++ b/configs/mx53ard_defconfig
@@ -14,4 +14,5 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx53cx9020_defconfig b/configs/mx53cx9020_defconfig
index e0c597cbe2..a3115e0e65 100644
--- a/configs/mx53cx9020_defconfig
+++ b/configs/mx53cx9020_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_FPGA_ALTERA=y
 CONFIG_FPGA_CYCLON2=y
 CONFIG_NETDEVICES=y
diff --git a/configs/mx53evk_defconfig b/configs/mx53evk_defconfig
index eed381b2fa..518e028953 100644
--- a/configs/mx53evk_defconfig
+++ b/configs/mx53evk_defconfig
@@ -13,4 +13,5 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx53loco_defconfig b/configs/mx53loco_defconfig
index 6e2f585960..3d44463703 100644
--- a/configs/mx53loco_defconfig
+++ b/configs/mx53loco_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/mx53smd_defconfig b/configs/mx53smd_defconfig
index 2a481a399e..51f3618773 100644
--- a/configs/mx53smd_defconfig
+++ b/configs/mx53smd_defconfig
@@ -13,4 +13,5 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6cuboxi_defconfig b/configs/mx6cuboxi_defconfig
index 7530de1519..ccb57e2464 100644
--- a/configs/mx6cuboxi_defconfig
+++ b/configs/mx6cuboxi_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_DM_THERMAL=y
 CONFIG_USB=y
diff --git a/configs/mx6dlarm2_defconfig b/configs/mx6dlarm2_defconfig
index 82e9a069a3..825cb32e2c 100644
--- a/configs/mx6dlarm2_defconfig
+++ b/configs/mx6dlarm2_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6dlarm2_lpddr2_defconfig b/configs/mx6dlarm2_lpddr2_defconfig
index 19fede6961..ff3aed0bda 100644
--- a/configs/mx6dlarm2_lpddr2_defconfig
+++ b/configs/mx6dlarm2_lpddr2_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6dlsabreauto_defconfig b/configs/mx6dlsabreauto_defconfig
index ba5ab8aa08..24c39afe7a 100644
--- a/configs/mx6dlsabreauto_defconfig
+++ b/configs/mx6dlsabreauto_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_SF=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/mx6qarm2_defconfig b/configs/mx6qarm2_defconfig
index cee1300a2d..8be6b8643f 100644
--- a/configs/mx6qarm2_defconfig
+++ b/configs/mx6qarm2_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qarm2_lpddr2_defconfig b/configs/mx6qarm2_lpddr2_defconfig
index f150e3287e..9629dc3044 100644
--- a/configs/mx6qarm2_lpddr2_defconfig
+++ b/configs/mx6qarm2_lpddr2_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/mx6qpsabreauto_defconfig b/configs/mx6qpsabreauto_defconfig
index 96a248ef76..903495dd73 100644
--- a/configs/mx6qpsabreauto_defconfig
+++ b/configs/mx6qpsabreauto_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_SF=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/mx6qsabreauto_defconfig b/configs/mx6qsabreauto_defconfig
index 015207d445..c086926b87 100644
--- a/configs/mx6qsabreauto_defconfig
+++ b/configs/mx6qsabreauto_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_SF=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/mx6qsabrelite_defconfig b/configs/mx6qsabrelite_defconfig
index 32bd271209..cd8b30abe8 100644
--- a/configs/mx6qsabrelite_defconfig
+++ b/configs/mx6qsabrelite_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/configs/mx6sabresd_defconfig b/configs/mx6sabresd_defconfig
index 0e0edefab7..6afb1d1083 100644
--- a/configs/mx6sabresd_defconfig
+++ b/configs/mx6sabresd_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_PCI=y
diff --git a/configs/mx6slevk_defconfig b/configs/mx6slevk_defconfig
index 1ccd088db5..f161f38405 100644
--- a/configs/mx6slevk_defconfig
+++ b/configs/mx6slevk_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
diff --git a/configs/mx6slevk_spl_defconfig b/configs/mx6slevk_spl_defconfig
index 1fd86fc7f1..462dfcd639 100644
--- a/configs/mx6slevk_spl_defconfig
+++ b/configs/mx6slevk_spl_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/mx6sllevk_defconfig b/configs/mx6sllevk_defconfig
index e6faf8d552..064f708d5a 100644
--- a/configs/mx6sllevk_defconfig
+++ b/configs/mx6sllevk_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
diff --git a/configs/mx6sllevk_plugin_defconfig b/configs/mx6sllevk_plugin_defconfig
index 7b008650b3..16dda34e22 100644
--- a/configs/mx6sllevk_plugin_defconfig
+++ b/configs/mx6sllevk_plugin_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
diff --git a/configs/mx6ul_14x14_evk_defconfig b/configs/mx6ul_14x14_evk_defconfig
index 56e66eef3d..165d41e0e5 100644
--- a/configs/mx6ul_14x14_evk_defconfig
+++ b/configs/mx6ul_14x14_evk_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/mx6ul_9x9_evk_defconfig b/configs/mx6ul_9x9_evk_defconfig
index aa6cc08a4f..a0a2b1cf41 100644
--- a/configs/mx6ul_9x9_evk_defconfig
+++ b/configs/mx6ul_9x9_evk_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/mx6ull_14x14_evk_defconfig b/configs/mx6ull_14x14_evk_defconfig
index cec2d2238f..2bfdc1f5b9 100644
--- a/configs/mx6ull_14x14_evk_defconfig
+++ b/configs/mx6ull_14x14_evk_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
 CONFIG_DM_74X164=y
diff --git a/configs/mx6ull_14x14_evk_plugin_defconfig b/configs/mx6ull_14x14_evk_plugin_defconfig
index 9acc0aa9e2..45ab53ac5c 100644
--- a/configs/mx6ull_14x14_evk_plugin_defconfig
+++ b/configs/mx6ull_14x14_evk_plugin_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
 CONFIG_DM_74X164=y
diff --git a/configs/mx7ulp_evk_defconfig b/configs/mx7ulp_evk_defconfig
index 67bc653038..ba1f935dd4 100644
--- a/configs/mx7ulp_evk_defconfig
+++ b/configs/mx7ulp_evk_defconfig
@@ -9,6 +9,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
diff --git a/configs/mx7ulp_evk_plugin_defconfig b/configs/mx7ulp_evk_plugin_defconfig
index 67bc653038..ba1f935dd4 100644
--- a/configs/mx7ulp_evk_plugin_defconfig
+++ b/configs/mx7ulp_evk_plugin_defconfig
@@ -9,6 +9,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
diff --git a/configs/nas220_defconfig b/configs/nas220_defconfig
index a57cc9724c..4547d2bc8d 100644
--- a/configs/nas220_defconfig
+++ b/configs/nas220_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
index 3ca00b9899..4804f6354c 100644
--- a/configs/nokia_rx51_defconfig
+++ b/configs/nokia_rx51_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_CFB_CONSOLE_ANSI=y
diff --git a/configs/novena_defconfig b/configs/novena_defconfig
index 3f8b98ebb9..073028a922 100644
--- a/configs/novena_defconfig
+++ b/configs/novena_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_PCI=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/nsa310s_defconfig b/configs/nsa310s_defconfig
index ae39818e4b..ca1a1c97ed 100644
--- a/configs/nsa310s_defconfig
+++ b/configs/nsa310s_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/nsim_700_defconfig b/configs/nsim_700_defconfig
index d815434127..f969419d41 100644
--- a/configs/nsim_700_defconfig
+++ b/configs/nsim_700_defconfig
@@ -10,6 +10,7 @@ CONFIG_SYS_PROMPT="nsim# "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/nsim_700be_defconfig b/configs/nsim_700be_defconfig
index 991d509d2f..f34a031276 100644
--- a/configs/nsim_700be_defconfig
+++ b/configs/nsim_700be_defconfig
@@ -11,6 +11,7 @@ CONFIG_SYS_PROMPT="nsim# "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/nsim_hs38_defconfig b/configs/nsim_hs38_defconfig
index 16e3911152..067839f1d9 100644
--- a/configs/nsim_hs38_defconfig
+++ b/configs/nsim_hs38_defconfig
@@ -11,6 +11,7 @@ CONFIG_SYS_PROMPT="nsim# "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/nsim_hs38be_defconfig b/configs/nsim_hs38be_defconfig
index d87833e9cc..67c1dde0b9 100644
--- a/configs/nsim_hs38be_defconfig
+++ b/configs/nsim_hs38be_defconfig
@@ -12,6 +12,7 @@ CONFIG_SYS_PROMPT="nsim# "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_DM_SERIAL=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/odroid-c2_defconfig b/configs/odroid-c2_defconfig
index 547cd52ec2..2615019db7 100644
--- a/configs/odroid-c2_defconfig
+++ b/configs/odroid-c2_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_MMC=y
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM_MMC=y
 CONFIG_MMC_MESON_GX=y
diff --git a/configs/odroid-xu3_defconfig b/configs/odroid-xu3_defconfig
index d040af310a..39a387ab4c 100644
--- a/configs/odroid-xu3_defconfig
+++ b/configs/odroid-xu3_defconfig
@@ -22,10 +22,10 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_PMIC=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_ADC=y
 CONFIG_ADC_EXYNOS=y
 CONFIG_DFU_MMC=y
-CONFIG_SYS_I2C_S3C24X0=y
 CONFIG_MMC_DW=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_S5P=y
diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig
index 3e4dee747b..efe41031c4 100644
--- a/configs/omap3_beagle_defconfig
+++ b/configs/omap3_beagle_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS0=y
 CONFIG_LED_STATUS_BIT=1
diff --git a/configs/omap3_evm_defconfig b/configs/omap3_evm_defconfig
index 8d5bc8e1fc..064211e505 100644
--- a/configs/omap3_evm_defconfig
+++ b/configs/omap3_evm_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_JFFS2=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/omap3_ha_defconfig b/configs/omap3_ha_defconfig
index fa09a53fa8..13275ff0ae 100644
--- a/configs/omap3_ha_defconfig
+++ b/configs/omap3_ha_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index db8f4683e2..6278dd6041 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_BLK is not set
 CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
diff --git a/configs/omap3_overo_defconfig b/configs/omap3_overo_defconfig
index f4c3d3233d..0c6e28dd9b 100644
--- a/configs/omap3_overo_defconfig
+++ b/configs/omap3_overo_defconfig
@@ -38,6 +38,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/omap3_pandora_defconfig b/configs/omap3_pandora_defconfig
index b86dfadc52..0d119a2cb1 100644
--- a/configs/omap3_pandora_defconfig
+++ b/configs/omap3_pandora_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/omap3_zoom1_defconfig b/configs/omap3_zoom1_defconfig
index a76ac6f2d8..09d48b4a83 100644
--- a/configs/omap3_zoom1_defconfig
+++ b/configs/omap3_zoom1_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/omap4_sdp4430_defconfig b/configs/omap4_sdp4430_defconfig
index dda4030ecc..31950624ad 100644
--- a/configs/omap4_sdp4430_defconfig
+++ b/configs/omap4_sdp4430_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/omap5_uevm_defconfig b/configs/omap5_uevm_defconfig
index 0af00b14be..4a91dd954d 100644
--- a/configs/omap5_uevm_defconfig
+++ b/configs/omap5_uevm_defconfig
@@ -32,10 +32,11 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
-CONFIG_SCSI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_OMAP_HS=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig
index c6f474a9b2..83aadda5fe 100644
--- a/configs/omapl138_lcdk_defconfig
+++ b/configs/omapl138_lcdk_defconfig
@@ -24,6 +24,7 @@ CONFIG_CRC32_VERIFY=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DIAG=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y
 CONFIG_SYS_NAND_U_BOOT_OFFS=0x28000
diff --git a/configs/openrd_base_defconfig b/configs/openrd_base_defconfig
index 1471872833..4e11898eef 100644
--- a/configs/openrd_base_defconfig
+++ b/configs/openrd_base_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/openrd_client_defconfig b/configs/openrd_client_defconfig
index b62852a10c..63087394bf 100644
--- a/configs/openrd_client_defconfig
+++ b/configs/openrd_client_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/openrd_ultimate_defconfig b/configs/openrd_ultimate_defconfig
index d57b6962d5..a63be6872d 100644
--- a/configs/openrd_ultimate_defconfig
+++ b/configs/openrd_ultimate_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/opos6uldev_defconfig b/configs/opos6uldev_defconfig
index 9ffcbef372..d2b9c46ed3 100644
--- a/configs/opos6uldev_defconfig
+++ b/configs/opos6uldev_defconfig
@@ -52,6 +52,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
index 3fd171379f..3179e6d1f7 100644
--- a/configs/paz00_defconfig
+++ b/configs/paz00_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
diff --git a/configs/pb1000_defconfig b/configs/pb1000_defconfig
index 7146a2702c..9b26ea4d90 100644
--- a/configs/pb1000_defconfig
+++ b/configs/pb1000_defconfig
@@ -15,4 +15,5 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/pcm051_rev1_defconfig b/configs/pcm051_rev1_defconfig
index 466aa511ba..cabee86194 100644
--- a/configs/pcm051_rev1_defconfig
+++ b/configs/pcm051_rev1_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/pcm051_rev3_defconfig b/configs/pcm051_rev3_defconfig
index 7150e79ed6..1a59ff3a6b 100644
--- a/configs/pcm051_rev3_defconfig
+++ b/configs/pcm051_rev3_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/pcm052_defconfig b/configs/pcm052_defconfig
index 1e72e91ede..217df82dbb 100644
--- a/configs/pcm052_defconfig
+++ b/configs/pcm052_defconfig
@@ -3,7 +3,7 @@ CONFIG_SYS_THUMB_BUILD=y
 CONFIG_ARCH_VF610=y
 CONFIG_TARGET_PCM052=y
 CONFIG_DEFAULT_DEVICE_TREE="pcm052"
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/phytec/pcm052/imximage.cfg,ENV_IS_IN_NAND"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/phytec/pcm052/imximage.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_DM_GPIO=y
diff --git a/configs/pengwyn_defconfig b/configs/pengwyn_defconfig
index 973f3cd53b..ed5a877196 100644
--- a/configs/pengwyn_defconfig
+++ b/configs/pengwyn_defconfig
@@ -49,6 +49,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_DIAG=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/pepper_defconfig b/configs/pepper_defconfig
index 11570a8126..434c4da8c6 100644
--- a/configs/pepper_defconfig
+++ b/configs/pepper_defconfig
@@ -38,6 +38,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_FAT_WRITE=y
diff --git a/configs/pic32mzdask_defconfig b/configs/pic32mzdask_defconfig
index 688b989419..74bb5f966f 100644
--- a/configs/pic32mzdask_defconfig
+++ b/configs/pic32mzdask_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_ISO_PARTITION is not set
 # CONFIG_EFI_PARTITION is not set
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 # CONFIG_BLK is not set
 CONFIG_CLK=y
diff --git a/configs/pico-imx6ul_defconfig b/configs/pico-imx6ul_defconfig
index d18a96e18e..1994da3ab6 100644
--- a/configs/pico-imx6ul_defconfig
+++ b/configs/pico-imx6ul_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/pico-imx7d_defconfig b/configs/pico-imx7d_defconfig
index 35d448602c..f011b5c253 100644
--- a/configs/pico-imx7d_defconfig
+++ b/configs/pico-imx7d_defconfig
@@ -4,24 +4,24 @@ CONFIG_TARGET_PICO_IMX7D=y
 CONFIG_IMX_RDC=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/technexion/pico-imx7d/imximage.cfg"
 CONFIG_HUSH_PARSER=y
-CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_BOOTD is not set
+CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_XIMG is not set
-# CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_PART=y
 CONFIG_CMD_I2C=y
+CONFIG_CMD_USB=y
+CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_CMD_GPIO=y
+# CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
-CONFIG_CMD_USB=y
-CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_MXC_USB_OTG_HACTIVE=y
diff --git a/configs/platinum_picon_defconfig b/configs/platinum_picon_defconfig
index 38423dce98..113de0f374 100644
--- a/configs/platinum_picon_defconfig
+++ b/configs/platinum_picon_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/platinum_titanium_defconfig b/configs/platinum_titanium_defconfig
index 3813b98ada..b0c9b5a75b 100644
--- a/configs/platinum_titanium_defconfig
+++ b/configs/platinum_titanium_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
index 46d30fdf51..4f1d4ac4b0 100644
--- a/configs/plutux_defconfig
+++ b/configs/plutux_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SPL_DM=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/pm9g45_defconfig b/configs/pm9g45_defconfig
index 954908e9aa..d7449c5633 100644
--- a/configs/pm9g45_defconfig
+++ b/configs/pm9g45_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/pogo_e02_defconfig b/configs/pogo_e02_defconfig
index 57ebc0694c..f07c42cb4a 100644
--- a/configs/pogo_e02_defconfig
+++ b/configs/pogo_e02_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
index 64d38b0112..f6043f8dba 100644
--- a/configs/popmetal-rk3288_defconfig
+++ b/configs/popmetal-rk3288_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/puma-rk3399_defconfig b/configs/puma-rk3399_defconfig
index 89f1620023..5e1399f008 100644
--- a/configs/puma-rk3399_defconfig
+++ b/configs/puma-rk3399_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_PMIC=y
 CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/pxm2_defconfig b/configs/pxm2_defconfig
index 58de0d48dd..0b260eb7c8 100644
--- a/configs/pxm2_defconfig
+++ b/configs/pxm2_defconfig
@@ -52,6 +52,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DFU_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/qemu-ppce500_defconfig b/configs/qemu-ppce500_defconfig
index f4640b906a..ba8205358a 100644
--- a/configs/qemu-ppce500_defconfig
+++ b/configs/qemu-ppce500_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 # CONFIG_MMC is not set
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/qemu-x86_64_defconfig b/configs/qemu-x86_64_defconfig
index 2b43827254..a05200e8fc 100644
--- a/configs/qemu-x86_64_defconfig
+++ b/configs/qemu-x86_64_defconfig
@@ -52,6 +52,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPL_DM=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
index b648326041..16609cd137 100644
--- a/configs/qemu-x86_defconfig
+++ b/configs/qemu-x86_defconfig
@@ -35,6 +35,7 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
diff --git a/configs/qemu-x86_efi_payload32_defconfig b/configs/qemu-x86_efi_payload32_defconfig
index e092dbdef6..907325223f 100644
--- a/configs/qemu-x86_efi_payload32_defconfig
+++ b/configs/qemu-x86_efi_payload32_defconfig
@@ -32,6 +32,7 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
diff --git a/configs/qemu-x86_efi_payload64_defconfig b/configs/qemu-x86_efi_payload64_defconfig
index f8f6295617..a9b7da8c4e 100644
--- a/configs/qemu-x86_efi_payload64_defconfig
+++ b/configs/qemu-x86_efi_payload64_defconfig
@@ -33,6 +33,7 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
diff --git a/configs/r8a7795_salvator-x_defconfig b/configs/r8a7795_salvator-x_defconfig
index c0e3999f96..9f61718162 100644
--- a/configs/r8a7795_salvator-x_defconfig
+++ b/configs/r8a7795_salvator-x_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SH_SDHI=y
 CONFIG_DM_ETH=y
 CONFIG_RENESAS_RAVB=y
diff --git a/configs/r8a7796_salvator-x_defconfig b/configs/r8a7796_salvator-x_defconfig
index d57305112b..430812be88 100644
--- a/configs/r8a7796_salvator-x_defconfig
+++ b/configs/r8a7796_salvator-x_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SH_SDHI=y
 CONFIG_DM_ETH=y
 CONFIG_RENESAS_RAVB=y
diff --git a/configs/rastaban_defconfig b/configs/rastaban_defconfig
index 6ba984f6ae..14cbbacb51 100644
--- a/configs/rastaban_defconfig
+++ b/configs/rastaban_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_UBI=y
 # CONFIG_DOS_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DFU_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
index d00666bef0..8f4f273eba 100644
--- a/configs/riotboard_defconfig
+++ b/configs/riotboard_defconfig
@@ -3,7 +3,7 @@ CONFIG_ARCH_MX6=y
 CONFIG_TARGET_EMBESTMX6BOARDS=y
 CONFIG_VIDEO=y
 CONFIG_DISTRO_DEFAULTS=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s1g.cfg,MX6S,DDR_MB=1024,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6s1g.cfg,MX6S,DDR_MB=1024"
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
@@ -17,6 +17,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
index eec0613505..35b4f2739e 100644
--- a/configs/rock2_defconfig
+++ b/configs/rock2_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/rock_defconfig b/configs/rock_defconfig
index 5d9b63bd37..9158643959 100644
--- a/configs/rock_defconfig
+++ b/configs/rock_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
 CONFIG_SPL_OF_PLATDATA=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 # CONFIG_SPL_SIMPLE_BUS is not set
diff --git a/configs/rut_defconfig b/configs/rut_defconfig
index 9edc4a500d..404f2896a8 100644
--- a/configs/rut_defconfig
+++ b/configs/rut_defconfig
@@ -53,6 +53,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DFU_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/s32v234evb_defconfig b/configs/s32v234evb_defconfig
index 302ec6d030..466c44a913 100644
--- a/configs/s32v234evb_defconfig
+++ b/configs/s32v234evb_defconfig
@@ -5,4 +5,5 @@ CONFIG_SYS_MALLOC_F=y
 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/s32v234evb/s32v234evb.cfg"
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_CMD_BOOTZ=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/s5p_goni_defconfig b/configs/s5p_goni_defconfig
index 8aeab15bfb..01dd4967e9 100644
--- a/configs/s5p_goni_defconfig
+++ b/configs/s5p_goni_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_MMC=y
 CONFIG_DM_I2C_GPIO=y
 CONFIG_MMC_SDHCI=y
diff --git a/configs/sama5d2_ptc_nandflash_defconfig b/configs/sama5d2_ptc_nandflash_defconfig
index 66edd31bfe..5522f70ec6 100644
--- a/configs/sama5d2_ptc_nandflash_defconfig
+++ b/configs/sama5d2_ptc_nandflash_defconfig
@@ -17,6 +17,7 @@ CONFIG_SPL=y
 CONFIG_CMD_SF=y
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_USB=y
diff --git a/configs/sama5d36ek_cmp_nandflash_defconfig b/configs/sama5d36ek_cmp_nandflash_defconfig
index e312bbf472..12a868e014 100644
--- a/configs/sama5d36ek_cmp_nandflash_defconfig
+++ b/configs/sama5d36ek_cmp_nandflash_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig
index 0d5d2be2eb..47acdceec7 100644
--- a/configs/sama5d3_xplained_nandflash_defconfig
+++ b/configs/sama5d3_xplained_nandflash_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dmas dma-names"
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig
index a8f09ed340..89e9e36341 100644
--- a/configs/sama5d3xek_nandflash_defconfig
+++ b/configs/sama5d3xek_nandflash_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dmas dma-names"
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig
index bb791a3a97..59ee1eca47 100644
--- a/configs/sama5d4_xplained_nandflash_defconfig
+++ b/configs/sama5d4_xplained_nandflash_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dma-names dmas"
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_CLK=y
diff --git a/configs/sama5d4ek_nandflash_defconfig b/configs/sama5d4ek_nandflash_defconfig
index 5d43ce925c..3b36d7f7f9 100644
--- a/configs/sama5d4ek_nandflash_defconfig
+++ b/configs/sama5d4ek_nandflash_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dma-names dmas"
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index 6a6e7741d8..4eb77fbd81 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -63,6 +63,7 @@ CONFIG_AMIGA_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_LIVE=y
 CONFIG_OF_HOSTFILE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NETCONSOLE=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/sandbox_flattree_defconfig b/configs/sandbox_flattree_defconfig
index c5ef69f241..d01bde69b9 100644
--- a/configs/sandbox_flattree_defconfig
+++ b/configs/sandbox_flattree_defconfig
@@ -55,6 +55,7 @@ CONFIG_MAC_PARTITION=y
 CONFIG_AMIGA_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_HOSTFILE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NETCONSOLE=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/sandbox_noblk_defconfig b/configs/sandbox_noblk_defconfig
index 747d4b1bba..391efc1d1d 100644
--- a/configs/sandbox_noblk_defconfig
+++ b/configs/sandbox_noblk_defconfig
@@ -69,6 +69,7 @@ CONFIG_ISO_PARTITION=y
 CONFIG_AMIGA_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_HOSTFILE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NETCONSOLE=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig
index 6889206c1b..3cc595db0a 100644
--- a/configs/sandbox_spl_defconfig
+++ b/configs/sandbox_spl_defconfig
@@ -72,6 +72,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_HOSTFILE=y
 CONFIG_SPL_OF_PLATDATA=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NETCONSOLE=y
 CONFIG_SPL_DM=y
 CONFIG_REGMAP=y
diff --git a/configs/sansa_fuze_plus_defconfig b/configs/sansa_fuze_plus_defconfig
index 80531fe6d4..5c5b8df934 100644
--- a/configs/sansa_fuze_plus_defconfig
+++ b/configs/sansa_fuze_plus_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig
index 827f4eeccb..312e1f5c01 100644
--- a/configs/sc_sps_1_defconfig
+++ b/configs/sc_sps_1_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
index 6900b77fe9..5c3056ed7e 100644
--- a/configs/seaboard_defconfig
+++ b/configs/seaboard_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
diff --git a/configs/secomx6quq7_defconfig b/configs/secomx6quq7_defconfig
index 2866bb02f5..22c25548c5 100644
--- a/configs/secomx6quq7_defconfig
+++ b/configs/secomx6quq7_defconfig
@@ -4,7 +4,6 @@ CONFIG_TARGET_SECOMX6=y
 CONFIG_SECOMX6_UQ7=y
 CONFIG_SECOMX6Q=y
 CONFIG_SECOMX6_2GB=y
-CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_MMC"
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
@@ -23,4 +22,5 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sheep-rk3368_defconfig b/configs/sheep-rk3368_defconfig
index 9167e9d2ea..af9d1d2f08 100644
--- a/configs/sheep-rk3368_defconfig
+++ b/configs/sheep-rk3368_defconfig
@@ -8,6 +8,7 @@ CONFIG_FASTBOOT=y
 CONFIG_ANDROID_BOOT_IMAGE=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_MMC=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CLK=y
diff --git a/configs/sheevaplug_defconfig b/configs/sheevaplug_defconfig
index ac7217dcba..4a2ebc6fcf 100644
--- a/configs/sheevaplug_defconfig
+++ b/configs/sheevaplug_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/smartweb_defconfig b/configs/smartweb_defconfig
index a769fc5535..fbcdc394db 100644
--- a/configs/smartweb_defconfig
+++ b/configs/smartweb_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_FAT=y
 # CONFIG_DOS_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
 CONFIG_DFU_NAND=y
diff --git a/configs/snapper9260_defconfig b/configs/snapper9260_defconfig
index 2fbd7d2a8d..f6fb86f761 100644
--- a/configs/snapper9260_defconfig
+++ b/configs/snapper9260_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/snapper9g20_defconfig b/configs/snapper9g20_defconfig
index 12cafd9815..86ff832c90 100644
--- a/configs/snapper9g20_defconfig
+++ b/configs/snapper9g20_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
index 83df0bd9a1..8103ccf287 100644
--- a/configs/sniper_defconfig
+++ b/configs/sniper_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/socfpga_arria10_defconfig b/configs/socfpga_arria10_defconfig
index 46bda478d5..df418dcf31 100644
--- a/configs/socfpga_arria10_defconfig
+++ b/configs/socfpga_arria10_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_DOS_PARTITION=y
 # CONFIG_SPL_DOS_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DM_GPIO=y
diff --git a/configs/socfpga_arria5_defconfig b/configs/socfpga_arria5_defconfig
index a565384ea1..ab23b52e10 100644
--- a/configs/socfpga_arria5_defconfig
+++ b/configs/socfpga_arria5_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/socfpga_cyclone5_defconfig b/configs/socfpga_cyclone5_defconfig
index 06fc82c261..9c48a9380e 100644
--- a/configs/socfpga_cyclone5_defconfig
+++ b/configs/socfpga_cyclone5_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/socfpga_de0_nano_soc_defconfig b/configs/socfpga_de0_nano_soc_defconfig
index 0697e2ec37..f18090a05a 100644
--- a/configs/socfpga_de0_nano_soc_defconfig
+++ b/configs/socfpga_de0_nano_soc_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DFU_MMC=y
 CONFIG_DM_GPIO=y
diff --git a/configs/socfpga_de10_nano_defconfig b/configs/socfpga_de10_nano_defconfig
index cd64fb90c3..427c59f44f 100644
--- a/configs/socfpga_de10_nano_defconfig
+++ b/configs/socfpga_de10_nano_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DFU_MMC=y
 CONFIG_DM_GPIO=y
diff --git a/configs/socfpga_de1_soc_defconfig b/configs/socfpga_de1_soc_defconfig
index bba90bef28..83025acc6c 100644
--- a/configs/socfpga_de1_soc_defconfig
+++ b/configs/socfpga_de1_soc_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DM_GPIO=y
 CONFIG_DWAPB_GPIO=y
diff --git a/configs/socfpga_mcvevk_defconfig b/configs/socfpga_mcvevk_defconfig
index 627b90f771..46b95c06bb 100644
--- a/configs/socfpga_mcvevk_defconfig
+++ b/configs/socfpga_mcvevk_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DFU_MMC=y
 CONFIG_DM_GPIO=y
diff --git a/configs/socfpga_sockit_defconfig b/configs/socfpga_sockit_defconfig
index bf5d63db3c..0b3cb48d83 100644
--- a/configs/socfpga_sockit_defconfig
+++ b/configs/socfpga_sockit_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/socfpga_socrates_defconfig b/configs/socfpga_socrates_defconfig
index 5915fafbbb..f56b0b7076 100644
--- a/configs/socfpga_socrates_defconfig
+++ b/configs/socfpga_socrates_defconfig
@@ -38,6 +38,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/spear300_nand_defconfig b/configs/spear300_nand_defconfig
index 2d37bafa1c..21f7ac6c37 100644
--- a/configs/spear300_nand_defconfig
+++ b/configs/spear300_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear300_usbtty_nand_defconfig b/configs/spear300_usbtty_nand_defconfig
index 6b694b1182..84df6201e4 100644
--- a/configs/spear300_usbtty_nand_defconfig
+++ b/configs/spear300_usbtty_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear310_nand_defconfig b/configs/spear310_nand_defconfig
index d2d25d0c34..ac9ce8b03c 100644
--- a/configs/spear310_nand_defconfig
+++ b/configs/spear310_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear310_usbtty_nand_defconfig b/configs/spear310_usbtty_nand_defconfig
index 02b05f9c6e..1498a65f60 100644
--- a/configs/spear310_usbtty_nand_defconfig
+++ b/configs/spear310_usbtty_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear320_nand_defconfig b/configs/spear320_nand_defconfig
index cb312bfd1f..76e201d31c 100644
--- a/configs/spear320_nand_defconfig
+++ b/configs/spear320_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear320_usbtty_nand_defconfig b/configs/spear320_usbtty_nand_defconfig
index a346084c58..1e082c5322 100644
--- a/configs/spear320_usbtty_nand_defconfig
+++ b/configs/spear320_usbtty_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear600_nand_defconfig b/configs/spear600_nand_defconfig
index f438575bbd..ac0035f3e3 100644
--- a/configs/spear600_nand_defconfig
+++ b/configs/spear600_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear600_usbtty_nand_defconfig b/configs/spear600_usbtty_nand_defconfig
index a31fee8e93..3e06fd18c8 100644
--- a/configs/spear600_usbtty_nand_defconfig
+++ b/configs/spear600_usbtty_nand_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/stih410-b2260_defconfig b/configs/stih410-b2260_defconfig
index 4e6942f56c..f94b5118bc 100644
--- a/configs/stih410-b2260_defconfig
+++ b/configs/stih410-b2260_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_MMC_SDHCI=y
diff --git a/configs/stm32f746-disco_defconfig b/configs/stm32f746-disco_defconfig
index f76d3c521c..083456d68a 100644
--- a/configs/stm32f746-disco_defconfig
+++ b/configs/stm32f746-disco_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DNS=y
 CONFIG_CMD_LINK_LOCAL=y
 CONFIG_CMD_TIMER=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_NETCONSOLE=y
 CONFIG_CLK=y
diff --git a/configs/tao3530_defconfig b/configs/tao3530_defconfig
index 93714d13c5..8ef18d14b9 100644
--- a/configs/tao3530_defconfig
+++ b/configs/tao3530_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index 70d44a760b..59a2108396 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_PING=y
 # CONFIG_DOS_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
 CONFIG_DFU_NAND=y
diff --git a/configs/tb100_defconfig b/configs/tb100_defconfig
index 294ae63f4c..8bcfee9561 100644
--- a/configs/tb100_defconfig
+++ b/configs/tb100_defconfig
@@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 CONFIG_NETDEVICES=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/tbs2910_defconfig b/configs/tbs2910_defconfig
index 90a238cacf..9166675cc4 100644
--- a/configs/tbs2910_defconfig
+++ b/configs/tbs2910_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_PCI=y
 CONFIG_DM_THERMAL=y
diff --git a/configs/tec_defconfig b/configs/tec_defconfig
index 6d1bde8492..423f8d7e2b 100644
--- a/configs/tec_defconfig
+++ b/configs/tec_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
diff --git a/configs/thuban_defconfig b/configs/thuban_defconfig
index e2dc71b02c..9cff32f56a 100644
--- a/configs/thuban_defconfig
+++ b/configs/thuban_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_UBI=y
 # CONFIG_DOS_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DFU_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/thunderx_88xx_defconfig b/configs/thunderx_88xx_defconfig
index a9b095ccd3..6e15c78298 100644
--- a/configs/thunderx_88xx_defconfig
+++ b/configs/thunderx_88xx_defconfig
@@ -18,6 +18,7 @@ CONFIG_SYS_PROMPT="ThunderX_88XX> "
 # CONFIG_CMD_FPGA is not set
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
 CONFIG_DM_SERIAL=y
diff --git a/configs/ti814x_evm_defconfig b/configs/ti814x_evm_defconfig
index 1b127b8609..6284b2b6c4 100644
--- a/configs/ti814x_evm_defconfig
+++ b/configs/ti814x_evm_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ti816x_evm_defconfig b/configs/ti816x_evm_defconfig
index 7f43ecb7eb..23e5ab55ab 100644
--- a/configs/ti816x_evm_defconfig
+++ b/configs/ti816x_evm_defconfig
@@ -32,14 +32,10 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_ISO_PARTITION is not set
 # CONFIG_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
-CONFIG_CMD_DHCP=y
-CONFIG_CMD_MII=y
-CONFIG_CMD_PING=y
-CONFIG_CMD_EXT2=y
-CONFIG_CMD_FAT=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 # CONFIG_USE_PRIVATE_LIBGCC is not set
diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig
index 35046a924b..8d24a9fa26 100644
--- a/configs/tinker-rk3288_defconfig
+++ b/configs/tinker-rk3288_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_SPL_PARTITION_UUIDS=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/titanium_defconfig b/configs/titanium_defconfig
index d772ec5777..3d22c85987 100644
--- a/configs/titanium_defconfig
+++ b/configs/titanium_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/topic_miami_defconfig b/configs/topic_miami_defconfig
index 8df2fb13ce..922386660e 100644
--- a/configs/topic_miami_defconfig
+++ b/configs/topic_miami_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_SDHCI=y
diff --git a/configs/topic_miamilite_defconfig b/configs/topic_miamilite_defconfig
index a01a82a9a2..efeb9bad18 100644
--- a/configs/topic_miamilite_defconfig
+++ b/configs/topic_miamilite_defconfig
@@ -5,6 +5,7 @@ CONFIG_ARCH_ZYNQ=y
 CONFIG_SYS_TEXT_BASE=0x4000000
 CONFIG_BOOT_INIT_FILE="board/topic/zynq/zynq-topic-miamilite/ps7_regs.txt"
 CONFIG_DEFAULT_DEVICE_TREE="zynq-topic-miamilite"
+CONFIG_DEBUG_UART=y
 CONFIG_BOOTDELAY=0
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_SPL=y
@@ -26,16 +27,16 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_ZYNQ=y
-CONFIG_SF_DUAL_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
+CONFIG_SF_DUAL_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 # CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
-CONFIG_DEBUG_UART=y
 CONFIG_DEBUG_UART_ZYNQ=y
 CONFIG_DEBUG_UART_BASE=0xe0000000
 CONFIG_DEBUG_UART_CLOCK=100000000
diff --git a/configs/topic_miamiplus_defconfig b/configs/topic_miamiplus_defconfig
index f49cbcbf9b..ba5900051e 100644
--- a/configs/topic_miamiplus_defconfig
+++ b/configs/topic_miamiplus_defconfig
@@ -25,13 +25,14 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_ZYNQ=y
-CONFIG_SF_DUAL_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
+CONFIG_SF_DUAL_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 # CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
 # CONFIG_NETDEVICES is not set
diff --git a/configs/tplink_wdr4300_defconfig b/configs/tplink_wdr4300_defconfig
index 65314df133..33c7bd215d 100644
--- a/configs/tplink_wdr4300_defconfig
+++ b/configs/tplink_wdr4300_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_CLK=y
 CONFIG_DM_SPI_FLASH=y
diff --git a/configs/tqma6dl_mba6_mmc_defconfig b/configs/tqma6dl_mba6_mmc_defconfig
index cd31cf39aa..c3a552806b 100644
--- a/configs/tqma6dl_mba6_mmc_defconfig
+++ b/configs/tqma6dl_mba6_mmc_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/tqma6q_mba6_mmc_defconfig b/configs/tqma6q_mba6_mmc_defconfig
index 6e8e84225e..f53d13445d 100644
--- a/configs/tqma6q_mba6_mmc_defconfig
+++ b/configs/tqma6q_mba6_mmc_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/tqma6s_mba6_mmc_defconfig b/configs/tqma6s_mba6_mmc_defconfig
index eb609e12a4..83796973e8 100644
--- a/configs/tqma6s_mba6_mmc_defconfig
+++ b/configs/tqma6s_mba6_mmc_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/tqma6s_wru4_mmc_defconfig b/configs/tqma6s_wru4_mmc_defconfig
index 4dc6b9e291..8a6e6cceb6 100644
--- a/configs/tqma6s_wru4_mmc_defconfig
+++ b/configs/tqma6s_wru4_mmc_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS0=y
 CONFIG_LED_STATUS_BIT=0
diff --git a/configs/tricorder_defconfig b/configs/tricorder_defconfig
index 03b99ec1b7..e8961b75da 100644
--- a/configs/tricorder_defconfig
+++ b/configs/tricorder_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS0=y
 CONFIG_LED_STATUS_BIT=1
diff --git a/configs/tricorder_flash_defconfig b/configs/tricorder_flash_defconfig
index b777e84314..d9b768443b 100644
--- a/configs/tricorder_flash_defconfig
+++ b/configs/tricorder_flash_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS0=y
 CONFIG_LED_STATUS_BIT=1
diff --git a/configs/ts4600_defconfig b/configs/ts4600_defconfig
index ab4f730a3f..a22d611a3e 100644
--- a/configs/ts4600_defconfig
+++ b/configs/ts4600_defconfig
@@ -3,7 +3,6 @@ CONFIG_TARGET_TS4600=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_FIT=y
-CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_MMC"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 # CONFIG_DISPLAY_CPUINFO is not set
 CONFIG_ARCH_MISC_INIT=y
@@ -18,5 +17,6 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_MMC_MXS=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ts4800_defconfig b/configs/ts4800_defconfig
index 4d4aebd06f..8bdbcf3a72 100644
--- a/configs/ts4800_defconfig
+++ b/configs/ts4800_defconfig
@@ -13,4 +13,5 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/twister_defconfig b/configs/twister_defconfig
index f7c933630b..a12eb688c3 100644
--- a/configs/twister_defconfig
+++ b/configs/twister_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/udoo_defconfig b/configs/udoo_defconfig
index 7e52bdc917..ef272284ba 100644
--- a/configs/udoo_defconfig
+++ b/configs/udoo_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_DM_THERMAL=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/usbarmory_defconfig b/configs/usbarmory_defconfig
index a71a75751f..65c5e69629 100644
--- a/configs/usbarmory_defconfig
+++ b/configs/usbarmory_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_USB=y
 CONFIG_CMD_FUSE=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
index 5b88b20706..7d0bce457a 100644
--- a/configs/ventana_defconfig
+++ b/configs/ventana_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPL_DM=y
 CONFIG_DM_PMIC=y
 CONFIG_DM_REGULATOR=y
diff --git a/configs/vf610twr_defconfig b/configs/vf610twr_defconfig
index 47193094dd..c50b18ab97 100644
--- a/configs/vf610twr_defconfig
+++ b/configs/vf610twr_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_VF610=y
 CONFIG_DEFAULT_DEVICE_TREE="vf610-twr"
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/vf610twr/imximage.cfg,ENV_IS_IN_MMC"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/vf610twr/imximage.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_DM_GPIO=y
 CONFIG_VYBRID_GPIO=y
diff --git a/configs/vf610twr_nand_defconfig b/configs/vf610twr_nand_defconfig
index f1dc19a543..80a48369f2 100644
--- a/configs/vf610twr_nand_defconfig
+++ b/configs/vf610twr_nand_defconfig
@@ -1,7 +1,7 @@
 CONFIG_ARM=y
 CONFIG_ARCH_VF610=y
 CONFIG_DEFAULT_DEVICE_TREE="vf610-twr"
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/vf610twr/imximage.cfg,ENV_IS_IN_NAND"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/vf610twr/imximage.cfg"
 CONFIG_BOOTDELAY=3
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_OF_CONTROL=y
 CONFIG_DM=y
 CONFIG_DM_GPIO=y
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index 95a14cabc7..1083815d4f 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_SATA=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
 CONFIG_DM_THERMAL=y
 CONFIG_USB=y
diff --git a/configs/warp_defconfig b/configs/warp_defconfig
index e29afe7b4a..83aab3a97a 100644
--- a/configs/warp_defconfig
+++ b/configs/warp_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DFU_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/work_92105_defconfig b/configs/work_92105_defconfig
index 06b31baeea..a8f905c219 100644
--- a/configs/work_92105_defconfig
+++ b/configs/work_92105_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_DM_GPIO=y
diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig
index 398d32f701..f0503cce3c 100644
--- a/configs/xfi3_defconfig
+++ b/configs/xfi3_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig b/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig
index 3ac743bedb..80b8530a13 100644
--- a/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/xpress_defconfig b/configs/xpress_defconfig
index 5b8c4eeb6d..549a736e94 100644
--- a/configs/xpress_defconfig
+++ b/configs/xpress_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/xpress_spl_defconfig b/configs/xpress_spl_defconfig
index 6f4f4bffb9..37e7be9737 100644
--- a/configs/xpress_spl_defconfig
+++ b/configs/xpress_spl_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/zc5202_defconfig b/configs/zc5202_defconfig
index a2e01e6132..1134cca273 100644
--- a/configs/zc5202_defconfig
+++ b/configs/zc5202_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_PCI=y
diff --git a/configs/zc5601_defconfig b/configs/zc5601_defconfig
index e28652b21c..d633e6b608 100644
--- a/configs/zc5601_defconfig
+++ b/configs/zc5601_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/zynq_picozed_defconfig b/configs/zynq_picozed_defconfig
index 7ca69a973c..39eb6b3015 100644
--- a/configs/zynq_picozed_defconfig
+++ b/configs/zynq_picozed_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/zynq_zc770_xm011_defconfig b/configs/zynq_zc770_xm011_defconfig
index 148f70360b..0445a986b7 100644
--- a/configs/zynq_zc770_xm011_defconfig
+++ b/configs/zynq_zc770_xm011_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 # CONFIG_MMC is not set
diff --git a/configs/zynq_zc770_xm013_defconfig b/configs/zynq_zc770_xm013_defconfig
index 5c029109e2..074b420d59 100644
--- a/configs/zynq_zc770_xm013_defconfig
+++ b/configs/zynq_zc770_xm013_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_NOWHERE=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 # CONFIG_MMC is not set
diff --git a/env/Kconfig b/env/Kconfig
index b622da71d1..a555546899 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -1,29 +1,20 @@
 menu "Environment"
 
-if ARCH_SUNXI
-
-choice
-	prompt "Environment Device"
-	default ENV_IS_IN_MMC if ARCH_SUNXI
-
 config ENV_IS_IN_MMC
 	bool "Environment in an MMC device"
-	depends on CMD_MMC
+	default y if ARCH_SUNXI
 	help
 	  Define this if you have an MMC device which you want to use for the
 	  environment.
 
 config ENV_IS_IN_NAND
 	bool "Environment in a NAND device"
-	depends on CMD_NAND
 	help
 	  Define this if you have a NAND device which you want to use for the
 	  environment.
 
 config ENV_IS_IN_UBI
 	bool "Environment in a UBI volume"
-	depends on CMD_UBI
-	depends on CMD_MTDPARTS
 	help
 	  Define this if you have a UBI volume which you want to use for the
 	  environment.
@@ -34,7 +25,7 @@ config ENV_IS_NOWHERE
 	  Define this if you don't want to or can't have an environment stored
 	  on a storage medium
 
-endchoice
+if ARCH_SUNXI
 
 config ENV_OFFSET
 	hex "Environment Offset"
diff --git a/include/config_fsl_chain_trust.h b/include/config_fsl_chain_trust.h
index 40d323e004..5a1a287992 100644
--- a/include/config_fsl_chain_trust.h
+++ b/include/config_fsl_chain_trust.h
@@ -14,13 +14,9 @@
 #ifdef CONFIG_SECURE_BOOT
 
 #undef CONFIG_ENV_IS_IN_EEPROM
-#undef CONFIG_ENV_IS_IN_NAND
-#undef CONFIG_ENV_IS_IN_MMC
 #undef CONFIG_ENV_IS_IN_SPI_FLASH
 #undef CONFIG_ENV_IS_IN_FLASH
 
-#define CONFIG_ENV_IS_NOWHERE
-
 #endif
 
 #ifdef CONFIG_CHAIN_OF_TRUST
diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h
index 2226aba674..61a1fa48ae 100644
--- a/include/configs/B4860QDS.h
+++ b/include/configs/B4860QDS.h
@@ -107,9 +107,6 @@
 #define CONFIG_ENV_OVERWRITE
 
 #ifndef CONFIG_MTD_NOR_FLASH
-#if !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) && !defined(CONFIG_RAMBOOT_PBL)
-#define CONFIG_ENV_IS_NOWHERE
-#endif
 #else
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
@@ -128,13 +125,11 @@
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 1097)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
diff --git a/include/configs/BSC9131RDB.h b/include/configs/BSC9131RDB.h
index 59b2252e6f..5dd112c0c6 100644
--- a/include/configs/BSC9131RDB.h
+++ b/include/configs/BSC9131RDB.h
@@ -276,13 +276,11 @@ extern unsigned long get_sdram_size(void);
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_NAND)
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_SYS_EXTRA_ENV_RELOC
 #define CONFIG_ENV_SIZE		CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET	((768 * 1024) + CONFIG_SYS_NAND_BLOCK_SIZE)
 #define CONFIG_ENV_RANGE	(3 * CONFIG_ENV_SIZE)
 #elif defined(CONFIG_SYS_RAMBOOT)
-#define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h
index 407e499de1..2aec01ec54 100644
--- a/include/configs/BSC9132QDS.h
+++ b/include/configs/BSC9132QDS.h
@@ -485,7 +485,6 @@ combinations. this should be removed later
  * Environment
  */
 #if defined(CONFIG_RAMBOOT_SDCARD)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
@@ -499,12 +498,10 @@ combinations. this should be removed later
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_NAND) || defined(CONFIG_NAND_SECBOOT)
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE		CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET	((768 * 1024) + CONFIG_SYS_NAND_BLOCK_SIZE)
 #define CONFIG_ENV_RANGE	(3 * CONFIG_ENV_SIZE)
 #elif defined(CONFIG_SYS_RAMBOOT)
-#define CONFIG_ENV_IS_NOWHERE		/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE			0x2000
 #else
diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h
index 398d0e0550..a8bc2abcab 100644
--- a/include/configs/C29XPCIE.h
+++ b/include/configs/C29XPCIE.h
@@ -414,7 +414,6 @@
 #define CONFIG_ENV_SIZE		0x2000
 #endif
 #elif defined(CONFIG_NAND)
-#define CONFIG_ENV_IS_IN_NAND
 #ifdef CONFIG_TPL_BUILD
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_INIT_L2_ADDR + (160 << 10))
diff --git a/include/configs/M54418TWR.h b/include/configs/M54418TWR.h
index f4d970d0d8..985df810cb 100644
--- a/include/configs/M54418TWR.h
+++ b/include/configs/M54418TWR.h
@@ -286,7 +286,6 @@
 #define CONFIG_ENV_SECT_SIZE		0x10000
 #endif
 #if defined(CONFIG_SYS_NAND_BOOT)
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_OFFSET	0x80000
 #define CONFIG_ENV_SIZE	0x20000
 #define CONFIG_ENV_SECT_SIZE	0x20000
diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h
index 38a4a6220b..b767401fc1 100644
--- a/include/configs/MPC8313ERDB.h
+++ b/include/configs/MPC8313ERDB.h
@@ -432,7 +432,6 @@
  * Environment
  */
 #if defined(CONFIG_NAND)
-	#define CONFIG_ENV_IS_IN_NAND	1
 	#define CONFIG_ENV_OFFSET		(512 * 1024)
 	#define CONFIG_ENV_SECT_SIZE	CONFIG_SYS_NAND_BLOCK_SIZE
 	#define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
@@ -449,7 +448,6 @@
 
 /* Address and size of Redundant Environment Sector */
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8315ERDB.h b/include/configs/MPC8315ERDB.h
index 522f12ceec..b281c216cb 100644
--- a/include/configs/MPC8315ERDB.h
+++ b/include/configs/MPC8315ERDB.h
@@ -427,7 +427,6 @@
 	#define CONFIG_ENV_SECT_SIZE	0x10000 /* 64K(one sector) for env */
 	#define CONFIG_ENV_SIZE		0x2000
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8323ERDB.h b/include/configs/MPC8323ERDB.h
index ea99aead45..d34eacbad3 100644
--- a/include/configs/MPC8323ERDB.h
+++ b/include/configs/MPC8323ERDB.h
@@ -301,7 +301,6 @@
 	#define CONFIG_ENV_SECT_SIZE	0x20000
 	#define CONFIG_ENV_SIZE		0x2000
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC832XEMDS.h b/include/configs/MPC832XEMDS.h
index 716fc3822e..28b9478d04 100644
--- a/include/configs/MPC832XEMDS.h
+++ b/include/configs/MPC832XEMDS.h
@@ -385,7 +385,6 @@
 	#define CONFIG_ENV_SECT_SIZE	0x20000
 	#define CONFIG_ENV_SIZE		0x2000
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8349EMDS.h b/include/configs/MPC8349EMDS.h
index 2f91dd57bb..2835d42b93 100644
--- a/include/configs/MPC8349EMDS.h
+++ b/include/configs/MPC8349EMDS.h
@@ -444,7 +444,6 @@
 #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
 
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8349ITX.h b/include/configs/MPC8349ITX.h
index 53e089a82a..4b9bc1fbd1 100644
--- a/include/configs/MPC8349ITX.h
+++ b/include/configs/MPC8349ITX.h
@@ -459,7 +459,6 @@ boards, we say we have two, but don't display a message if we find only one. */
   #define CONFIG_ENV_SIZE	0x2000
 #else
   #undef  CONFIG_FLASH_CFI_DRIVER
-  #define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */
   #define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - 0x1000)
   #define CONFIG_ENV_SIZE	0x2000
 #endif
diff --git a/include/configs/MPC837XEMDS.h b/include/configs/MPC837XEMDS.h
index 459efb560c..781a93ab14 100644
--- a/include/configs/MPC837XEMDS.h
+++ b/include/configs/MPC837XEMDS.h
@@ -448,7 +448,6 @@ extern int board_pci_host_broken(void);
 	#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K(one sector) for env */
 	#define CONFIG_ENV_SIZE		0x2000
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h
index 7afbc9096f..ada85c7964 100644
--- a/include/configs/MPC837XERDB.h
+++ b/include/configs/MPC837XERDB.h
@@ -461,7 +461,6 @@
 	#define CONFIG_ENV_SECT_SIZE	0x10000	/* 64K (one sector) for env */
 	#define CONFIG_ENV_SIZE		0x4000
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE-0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index 470bb72fcb..1456648d6a 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -566,12 +566,10 @@
 #define CONFIG_ENV_OFFSET	0xF0000
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #elif defined(CONFIG_RAMBOOT_SDCARD)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_SYS_MMC_ENV_DEV  0
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8540ADS.h b/include/configs/MPC8540ADS.h
index 0f96ac0242..decb57404a 100644
--- a/include/configs/MPC8540ADS.h
+++ b/include/configs/MPC8540ADS.h
@@ -296,7 +296,6 @@
   #define CONFIG_ENV_SECT_SIZE	0x40000	/* 256K(one sector) for env */
   #define CONFIG_ENV_SIZE		0x2000
 #else
-  #define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
   #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
   #define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8560ADS.h b/include/configs/MPC8560ADS.h
index 8d026addb3..47b97d1554 100644
--- a/include/configs/MPC8560ADS.h
+++ b/include/configs/MPC8560ADS.h
@@ -335,7 +335,6 @@
   #define CONFIG_ENV_SECT_SIZE	0x40000	/* 256K(one sector) for env */
   #define CONFIG_ENV_SIZE		0x2000
 #else
-  #define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
   #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
   #define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8610HPCD.h b/include/configs/MPC8610HPCD.h
index 1db3a633ef..46b9b7a67d 100644
--- a/include/configs/MPC8610HPCD.h
+++ b/include/configs/MPC8610HPCD.h
@@ -408,7 +408,6 @@
 #define CONFIG_ENV_SECT_SIZE	0x20000	/* 126k (one sector) for env */
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/MPC8641HPCN.h b/include/configs/MPC8641HPCN.h
index e87b11180a..4a4a76d2d4 100644
--- a/include/configs/MPC8641HPCN.h
+++ b/include/configs/MPC8641HPCN.h
@@ -568,7 +568,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
     #define CONFIG_ENV_SECT_SIZE		0x10000	/* 64K(one sector) for env */
 #else
-    #define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
     #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #endif
 #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 0dc062a094..1bbdf2258b 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -678,7 +678,6 @@ extern unsigned long get_sdram_size(void);
  * Environment
  */
 #if defined(CONFIG_SDCARD)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
@@ -692,7 +691,6 @@ extern unsigned long get_sdram_size(void);
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_NAND)
-#define CONFIG_ENV_IS_IN_NAND
 #ifdef CONFIG_TPL_BUILD
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_INIT_L2_ADDR + (160 << 10))
@@ -707,7 +705,6 @@ extern unsigned long get_sdram_size(void);
 #endif
 #define CONFIG_ENV_OFFSET	(1024 * 1024)
 #elif defined(CONFIG_SYS_RAMBOOT)
-#define CONFIG_ENV_IS_NOWHERE		/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE			0x2000
 #else
diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h
index 2ee6c6442f..e9c755b47d 100644
--- a/include/configs/P1022DS.h
+++ b/include/configs/P1022DS.h
@@ -561,7 +561,6 @@
 #define CONFIG_ENV_OFFSET	0x100000	/* 1MB */
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #elif defined(CONFIG_SDCARD)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_SYS_MMC_ENV_DEV	0
@@ -572,11 +571,9 @@
 #else
 #define CONFIG_ENV_SIZE		CONFIG_SYS_NAND_BLOCK_SIZE
 #endif
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET	(1024 * 1024)
 #define CONFIG_ENV_RANGE	(3 * CONFIG_ENV_SIZE)
 #elif defined(CONFIG_SYS_RAMBOOT)
-#define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #else
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index 967c83c53b..d3b655fda9 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -55,9 +55,6 @@
 #define CONFIG_ENV_OVERWRITE
 
 #ifndef CONFIG_MTD_NOR_FLASH
-#if !defined(CONFIG_RAMBOOT_PBL) && !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_NOWHERE
-#endif
 #else
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
@@ -76,14 +73,12 @@
 	#define CONFIG_ENV_SECT_SIZE            0x10000
 #elif defined(CONFIG_SDCARD)
 	#define CONFIG_SYS_EXTRA_ENV_RELOC
-	#define CONFIG_ENV_IS_IN_MMC
 	#define CONFIG_FSL_FIXED_MMC_LOCATION
 	#define CONFIG_SYS_MMC_ENV_DEV          0
 	#define CONFIG_ENV_SIZE			0x2000
 	#define CONFIG_ENV_OFFSET		(512 * 1658)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h
index 2e3a8c1184..ef8e7b678f 100644
--- a/include/configs/T102xQDS.h
+++ b/include/configs/T102xQDS.h
@@ -155,13 +155,11 @@
 #define CONFIG_ENV_SECT_SIZE		0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 0x800)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 025e7de8d0..4f2b208219 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -174,13 +174,11 @@
 #endif
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 0x800)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #if defined(CONFIG_TARGET_T1024RDB)
 #define CONFIG_ENV_OFFSET		(2 * CONFIG_SYS_NAND_BLOCK_SIZE)
diff --git a/include/configs/T1040QDS.h b/include/configs/T1040QDS.h
index 86f7880ff1..6077bf470c 100644
--- a/include/configs/T1040QDS.h
+++ b/include/configs/T1040QDS.h
@@ -63,7 +63,6 @@
 #define CONFIG_ENV_OVERWRITE
 
 #ifndef CONFIG_MTD_NOR_FLASH
-#define CONFIG_ENV_IS_NOWHERE
 #else
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
@@ -83,13 +82,11 @@
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 1658)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #else
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index 350dacaa38..fa50502922 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -186,7 +186,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_sd_rcw.cfg
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 0x800)
@@ -196,7 +195,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_sd_rcw.cfg
 #define CONFIG_BOOTSCRIPT_COPY_RAM
 #endif
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(3 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #else
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index 9edf19081c..5d049d1e8f 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -151,13 +151,11 @@
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV	0
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_OFFSET	(512 * 0x800)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_OFFSET	(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 0e70aa83ea..2cea8c8505 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -137,13 +137,11 @@
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV	0
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_OFFSET	(512 * 0x800)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_OFFSET	(2 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h
index f69746b4da..287c722e2f 100644
--- a/include/configs/T4240QDS.h
+++ b/include/configs/T4240QDS.h
@@ -78,9 +78,6 @@
 #include "t4qds.h"
 
 #ifndef CONFIG_MTD_NOR_FLASH
-#if !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) && !defined(CONFIG_RAMBOOT_PBL)
-#define CONFIG_ENV_IS_NOWHERE
-#endif
 #else
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
@@ -99,13 +96,11 @@
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 0x800)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index ed3b0f7202..d06c5b574e 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -319,9 +319,6 @@
 	"bootm 0x01000000 - 0x00f00000"
 
 #ifndef CONFIG_MTD_NOR_FLASH
-#ifndef CONFIG_RAMBOOT_PBL
-#define CONFIG_ENV_IS_NOWHERE
-#endif
 #else
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
@@ -340,13 +337,11 @@
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 0x800)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/UCP1020.h b/include/configs/UCP1020.h
index 9a7aa81196..2bf3a5686a 100644
--- a/include/configs/UCP1020.h
+++ b/include/configs/UCP1020.h
@@ -388,13 +388,11 @@
 #endif
 
 #elif defined(CONFIG_RAMBOOT_SDCARD)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_SYS_MMC_ENV_DEV	0
 
 #elif defined(CONFIG_SYS_RAMBOOT)
-#define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index 9760f31e65..b262c5b8ff 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -297,8 +297,6 @@
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT)
 /* Remove other SPL modes. */
-#define CONFIG_ENV_IS_NOWHERE
-#undef CONFIG_ENV_IS_IN_NAND
 /* disable host part of MUSB in SPL */
 /* disable EFI partitions and partition UUID support */
 #endif
@@ -338,7 +336,6 @@
 					"128k(u-boot-env2),3464k(kernel)," \
 					"-(rootfs)"
 #elif defined(CONFIG_EMMC_BOOT)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		0x0
diff --git a/include/configs/am335x_igep003x.h b/include/configs/am335x_igep003x.h
index b1ffcc8872..41cd6e5116 100644
--- a/include/configs/am335x_igep003x.h
+++ b/include/configs/am335x_igep003x.h
@@ -144,7 +144,6 @@
 #define CONFIG_SPL_UBI_INFO_ADDR	0x88080000
 
 /* environment organization */
-#define CONFIG_ENV_IS_IN_UBI		1
 #define CONFIG_ENV_UBI_PART		"UBI"
 #define CONFIG_ENV_UBI_VOLUME		"config"
 #define CONFIG_ENV_UBI_VOLUME_REDUND	"config_r"
diff --git a/include/configs/am335x_shc.h b/include/configs/am335x_shc.h
index bc0943fdfd..05c5ffc10b 100644
--- a/include/configs/am335x_shc.h
+++ b/include/configs/am335x_shc.h
@@ -35,8 +35,6 @@
 #define V_OSCK				24000000  /* Clock output from T2 */
 #define V_SCLK				(V_OSCK)
 
-#define CONFIG_ENV_IS_IN_MMC		1
-
 /*
  * in case of SD Card or Network boot we want to have a possibility to
  * debrick the shc, therefore do not read environment from eMMC
@@ -289,11 +287,4 @@
 #define CONFIG_SYS_I2C_SLAVE		1
 
 #define CONFIG_SHOW_BOOT_PROGRESS
-
-#if defined CONFIG_SHC_NETBOOT
-#ifdef CONFIG_SPL_BUILD
-#define CONFIG_ENV_IS_NOWHERE
-#undef CONFIG_ENV_IS_IN_MMC
-#endif
-#endif
 #endif	/* ! __CONFIG_AM335X_SHC_H */
diff --git a/include/configs/am335x_sl50.h b/include/configs/am335x_sl50.h
index 2c4033ca59..5e7bb2331e 100644
--- a/include/configs/am335x_sl50.h
+++ b/include/configs/am335x_sl50.h
@@ -87,16 +87,12 @@
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT)
 /* Remove other SPL modes. */
-#define CONFIG_ENV_IS_NOWHERE
-#undef CONFIG_ENV_IS_IN_NAND
 /* disable host part of MUSB in SPL */
 #undef CONFIG_MUSB_HOST
 /* disable EFI partitions and partition UUID support */
 #endif
 
 #if defined(CONFIG_EMMC_BOOT)
-#undef CONFIG_ENV_IS_NOWHERE
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		0x0
diff --git a/include/configs/am3517_crane.h b/include/configs/am3517_crane.h
index eb768b9e97..77d9ba1899 100644
--- a/include/configs/am3517_crane.h
+++ b/include/configs/am3517_crane.h
@@ -218,7 +218,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 
 #define CONFIG_NAND_OMAP_GPMC
-#define CONFIG_ENV_IS_IN_NAND		1
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 
 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB sector */
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index 829dd3ecb9..78c7a2b775 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -296,7 +296,6 @@
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 #define CONFIG_ENV_OFFSET		SMNAND_ENV_OFFSET
 #define CONFIG_ENV_ADDR			SMNAND_ENV_OFFSET
-#define CONFIG_ENV_IS_IN_NAND
 
 /* Defines for SPL */
 #define CONFIG_SPL_FRAMEWORK
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index 1d8e39c203..b72aeda851 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -259,7 +259,6 @@
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_ETH_SUPPORT)
 #undef CONFIG_ENV_IS_IN_FAT
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 #define CONFIG_SYS_RX_ETH_BUFFER	64
diff --git a/include/configs/am57xx_evm.h b/include/configs/am57xx_evm.h
index 98ce6c52da..9216998486 100644
--- a/include/configs/am57xx_evm.h
+++ b/include/configs/am57xx_evm.h
@@ -22,7 +22,6 @@
 #define CONFIG_NR_DRAM_BANKS		2
 
 /* MMC ENV related defines */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1		/* eMMC */
 #define CONFIG_SYS_MMC_ENV_PART		0
 #define CONFIG_ENV_SIZE			SZ_128K
diff --git a/include/configs/apalis-tk1.h b/include/configs/apalis-tk1.h
index c3cade9ea6..d6b226c425 100644
--- a/include/configs/apalis-tk1.h
+++ b/include/configs/apalis-tk1.h
@@ -29,7 +29,6 @@
 #define CONFIG_SUPPORT_EMMC_BOOT	/* eMMC specific */
 
 /* Environment in eMMC, before config block at the end of 1st "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE + \
 					 CONFIG_TDX_CFG_BLOCK_OFFSET)
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/apalis_imx6.h b/include/configs/apalis_imx6.h
index b4006a37e0..2fa0480560 100644
--- a/include/configs/apalis_imx6.h
+++ b/include/configs/apalis_imx6.h
@@ -300,8 +300,6 @@
 
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#define CONFIG_ENV_IS_IN_MMC
-
 #if defined(CONFIG_ENV_IS_IN_MMC)
 /* Environment in eMMC, before config block at the end of 1st "boot sector" */
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE + \
diff --git a/include/configs/apalis_t30.h b/include/configs/apalis_t30.h
index 9772d8b5c3..daa3be0999 100644
--- a/include/configs/apalis_t30.h
+++ b/include/configs/apalis_t30.h
@@ -26,7 +26,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, before config block@the end of 1st "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE + \
 					 CONFIG_TDX_CFG_BLOCK_OFFSET)
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/apf27.h b/include/configs/apf27.h
index 073f3b4fef..3f22ce3501 100644
--- a/include/configs/apf27.h
+++ b/include/configs/apf27.h
@@ -85,7 +85,6 @@
  */
 #define	ACFG_MONITOR_OFFSET		0x00000000
 #define	CONFIG_SYS_MONITOR_LEN		0x00100000	/* 1MiB */
-#define CONFIG_ENV_IS_IN_NAND
 #define	CONFIG_ENV_OVERWRITE
 #define	CONFIG_ENV_OFFSET		0x00100000	/* NAND offset */
 #define	CONFIG_ENV_SIZE			0x00020000	/* 128kB  */
diff --git a/include/configs/apx4devkit.h b/include/configs/apx4devkit.h
index cce39f27c7..b54c05353e 100644
--- a/include/configs/apx4devkit.h
+++ b/include/configs/apx4devkit.h
@@ -30,7 +30,6 @@
 
 /* Environment */
 #define CONFIG_ENV_OVERWRITE
-#define CONFIG_ENV_IS_IN_NAND
 
 /* Environment is in MMC */
 #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC)
diff --git a/include/configs/arndale.h b/include/configs/arndale.h
index 4d770e6077..8f0422943b 100644
--- a/include/configs/arndale.h
+++ b/include/configs/arndale.h
@@ -27,7 +27,6 @@
 /* Miscellaneous configurable options */
 #define CONFIG_DEFAULT_CONSOLE		"console=ttySAC2,115200n8\0"
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET	(CONFIG_BL2_OFFSET + CONFIG_BL2_SIZE)
 
 #define CONFIG_IRAM_STACK	0x02050000
diff --git a/include/configs/aspenite.h b/include/configs/aspenite.h
index e6cddc13ac..36d74f3b26 100644
--- a/include/configs/aspenite.h
+++ b/include/configs/aspenite.h
@@ -38,7 +38,6 @@
 /*
  * Environment variables configurations
  */
-#define CONFIG_ENV_IS_NOWHERE	1	/* if env in SDRAM */
 #define CONFIG_ENV_SIZE	0x20000	/* 64k */
 
 #endif	/* __CONFIG_ASPENITE_H */
diff --git a/include/configs/at91-sama5_common.h b/include/configs/at91-sama5_common.h
index dea8130046..e511d18234 100644
--- a/include/configs/at91-sama5_common.h
+++ b/include/configs/at91-sama5_common.h
@@ -79,7 +79,6 @@
 
 #ifdef CONFIG_SYS_USE_NANDFLASH
 /* u-boot env in nand flash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0xc0000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE			0x20000
diff --git a/include/configs/at91sam9260ek.h b/include/configs/at91sam9260ek.h
index 48d7f6a5e6..8b0105c017 100644
--- a/include/configs/at91sam9260ek.h
+++ b/include/configs/at91sam9260ek.h
@@ -174,7 +174,6 @@
 #elif defined(CONFIG_SYS_USE_NANDFLASH)
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND	1
 #define CONFIG_ENV_OFFSET		0x120000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
@@ -188,7 +187,6 @@
 
 #else	/* CONFIG_SYS_USE_MMC */
 /* bootstrap + u-boot + env + linux in mmc */
-#define CONFIG_ENV_IS_IN_MMC
 /* For FAT system, most cases it should be in the reserved sector */
 #define CONFIG_ENV_OFFSET		0x2000
 #define CONFIG_ENV_SIZE			0x1000
diff --git a/include/configs/at91sam9261ek.h b/include/configs/at91sam9261ek.h
index 505f945bd3..d86f07b982 100644
--- a/include/configs/at91sam9261ek.h
+++ b/include/configs/at91sam9261ek.h
@@ -167,7 +167,6 @@
 #else /* CONFIG_SYS_USE_NANDFLASH */
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0xc0000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/at91sam9263ek.h b/include/configs/at91sam9263ek.h
index e45e4dbddc..a8337cdf43 100644
--- a/include/configs/at91sam9263ek.h
+++ b/include/configs/at91sam9263ek.h
@@ -264,7 +264,6 @@
 #elif CONFIG_SYS_USE_NANDFLASH
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_OFFSET		0x120000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index a0c5b9afae..9e7fd1e1ae 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -90,7 +90,6 @@
 
 #ifdef CONFIG_SYS_USE_NANDFLASH
 /* bootstrap + u-boot + env in nandflash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x120000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE			0x20000
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index 50ddbd6475..7bccee905e 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -138,7 +138,6 @@
 #elif defined(CONFIG_SYS_USE_NANDFLASH)
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x120000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE			0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/at91sam9rlek.h b/include/configs/at91sam9rlek.h
index 8a8eb7c34f..05ba542382 100644
--- a/include/configs/at91sam9rlek.h
+++ b/include/configs/at91sam9rlek.h
@@ -109,7 +109,6 @@
 #elif CONFIG_SYS_USE_NANDFLASH
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_OFFSET		0x120000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index fd2dbed137..a01072f059 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -117,7 +117,6 @@
 
 #ifdef CONFIG_SYS_USE_NANDFLASH
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x120000
 #define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/baltos.h b/include/configs/baltos.h
index fe4ac05f38..8ef7e348aa 100644
--- a/include/configs/baltos.h
+++ b/include/configs/baltos.h
@@ -325,7 +325,6 @@
 					"128k(SPL.backup3)," \
 					"1920k(u-boot)," \
 					"-(UBI)"
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 #endif
 
diff --git a/include/configs/bav335x.h b/include/configs/bav335x.h
index 71b1b96ec4..a37433e03f 100644
--- a/include/configs/bav335x.h
+++ b/include/configs/bav335x.h
@@ -18,7 +18,6 @@
 #define __CONFIG_BAV335X_H
 
 #include <configs/ti_am335x_common.h>
-#define CONFIG_ENV_IS_NOWHERE
 
 #ifndef CONFIG_SPL_BUILD
 # define CONFIG_TIMESTAMP
@@ -389,8 +388,6 @@ DEFAULT_LINUX_BOOT_ENV \
 	"8m(NAND.kernel)," \
 	"-(NAND.rootfs)"
 #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x000c0000
-#undef CONFIG_ENV_IS_NOWHERE
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x001c0000
 #define CONFIG_ENV_OFFSET_REDUND	0x001e0000
 #define CONFIG_SYS_ENV_SECT_SIZE	CONFIG_SYS_NAND_BLOCK_SIZE
@@ -515,8 +512,6 @@ DEFAULT_LINUX_BOOT_ENV \
 					"128k(u-boot-env2),3464k(kernel)," \
 					"-(rootfs)"
 #elif defined(CONFIG_EMMC_BOOT)
-#undef CONFIG_ENV_IS_NOWHERE
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		0x0
diff --git a/include/configs/bcm23550_w1d.h b/include/configs/bcm23550_w1d.h
index 02ae65ff57..049b4e0a43 100644
--- a/include/configs/bcm23550_w1d.h
+++ b/include/configs/bcm23550_w1d.h
@@ -81,7 +81,6 @@
 #define CONFIG_SYS_NS16550_COM1		0x3e000000
 
 /* must fit into GPT:u-boot-env partition */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_OFFSET		(0x00011a00 * 512)
 #define CONFIG_ENV_SIZE			(8 * 512)
diff --git a/include/configs/bcm28155_ap.h b/include/configs/bcm28155_ap.h
index 5a85f7fa9c..08d1e4e69f 100644
--- a/include/configs/bcm28155_ap.h
+++ b/include/configs/bcm28155_ap.h
@@ -80,7 +80,6 @@
 #define CONFIG_SYS_NS16550_COM1		0x3e000000
 
 /* must fit into GPT:u-boot-env partition */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_OFFSET		(0x00011a00 * 512)
 #define CONFIG_ENV_SIZE			(8 * 512)
diff --git a/include/configs/bcm_ep_board.h b/include/configs/bcm_ep_board.h
index 2afbbea140..8bd1e301a9 100644
--- a/include/configs/bcm_ep_board.h
+++ b/include/configs/bcm_ep_board.h
@@ -46,7 +46,6 @@
 #define CONFIG_SYS_NS16550_SERIAL
 
 #define CONFIG_ENV_SIZE			0x2000
-#define CONFIG_ENV_IS_NOWHERE
 
 /* console configuration */
 #define CONFIG_SYS_CBSIZE		1024	/* Console buffer size */
diff --git a/include/configs/bcm_northstar2.h b/include/configs/bcm_northstar2.h
index dc2860382d..2352b98f62 100644
--- a/include/configs/bcm_northstar2.h
+++ b/include/configs/bcm_northstar2.h
@@ -38,7 +38,6 @@
 #define CONFIG_BAUDRATE				115200
 
 #define CONFIG_ENV_SIZE				SZ_8K
-#define CONFIG_ENV_IS_NOWHERE
 
 /* console configuration */
 #define CONFIG_SYS_CBSIZE			SZ_1K
diff --git a/include/configs/beaver.h b/include/configs/beaver.h
index f3d7a2fad2..6afa1e8c04 100644
--- a/include/configs/beaver.h
+++ b/include/configs/beaver.h
@@ -27,7 +27,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* 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		0
 #define CONFIG_SYS_MMC_ENV_PART		2
diff --git a/include/configs/bg0900.h b/include/configs/bg0900.h
index 40f1538789..c76053e49a 100644
--- a/include/configs/bg0900.h
+++ b/include/configs/bg0900.h
@@ -23,7 +23,6 @@
 /* Environment */
 #define CONFIG_ENV_SIZE			(16 * 1024)
 #define CONFIG_ENV_OVERWRITE
-#define CONFIG_ENV_IS_NOWHERE
 
 /* FEC Ethernet on SoC */
 #ifdef	CONFIG_CMD_NET
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index 10e8f88810..dba0ee6820 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -242,7 +242,6 @@ MMCARGS
 
 #define CONFIG_SPL_SPI_LOAD
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	0x20000
-#undef CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
@@ -251,8 +250,6 @@ MMCARGS
 #define CONFIG_ENV_OFFSET_REDUND	(896 << 10) /* 896 KiB in */
 
 #elif defined(CONFIG_EMMC_BOOT)
-#undef CONFIG_ENV_IS_NOWHERE
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		0x40000	/* TODO: Adresse definieren */
@@ -261,11 +258,6 @@ MMCARGS
 
 #elif defined(CONFIG_NAND)
 /* No NAND env support in SPL */
-#ifdef CONFIG_SPL_BUILD
-#define CONFIG_ENV_IS_NOWHERE
-#else
-#define CONFIG_ENV_IS_IN_NAND
-#endif
 #define CONFIG_ENV_OFFSET		0x60000
 #define CONFIG_SYS_ENV_SECT_SIZE	CONFIG_ENV_SIZE
 #else
diff --git a/include/configs/brxre1.h b/include/configs/brxre1.h
index f7d736939b..8f92d7a958 100644
--- a/include/configs/brxre1.h
+++ b/include/configs/brxre1.h
@@ -88,8 +88,6 @@ BUR_COMMON_ENV \
 #define CONFIG_AM335X_USB1
 #define CONFIG_AM335X_USB1_MODE	MUSB_HOST
 
-#undef CONFIG_ENV_IS_NOWHERE
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		0x40000	/* TODO: Adresse definieren */
diff --git a/include/configs/cardhu.h b/include/configs/cardhu.h
index f1b5a71edf..a490d06619 100644
--- a/include/configs/cardhu.h
+++ b/include/configs/cardhu.h
@@ -31,7 +31,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* 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		0
 #define CONFIG_SYS_MMC_ENV_PART		2
diff --git a/include/configs/cei-tk1-som.h b/include/configs/cei-tk1-som.h
index fd8df46776..768669ff12 100644
--- a/include/configs/cei-tk1-som.h
+++ b/include/configs/cei-tk1-som.h
@@ -27,7 +27,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* 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		0
 #define CONFIG_SYS_MMC_ENV_PART		2
diff --git a/include/configs/chiliboard.h b/include/configs/chiliboard.h
index f515db038d..430b319de2 100644
--- a/include/configs/chiliboard.h
+++ b/include/configs/chiliboard.h
@@ -198,7 +198,6 @@
 #define CONFIG_ENV_SIZE			SZ_128K
 #define CONFIG_SYS_ENV_SECT_SIZE	CONFIG_SYS_NAND_BLOCK_SIZE
 #else
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_OFFSET		SZ_128K
 #define CONFIG_ENV_OFFSET_REDUND	(CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)
diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index 77c2493e66..bd80222149 100644
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -54,7 +54,6 @@
 #define CONFIG_ENV_MIN_ENTRIES		128
 
 /* Environment in MMC */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SECT_SIZE		0x200
 #define CONFIG_ENV_SIZE			0x10000
diff --git a/include/configs/cm_t335.h b/include/configs/cm_t335.h
index 3fb9daebbc..a1b8e141a9 100644
--- a/include/configs/cm_t335.h
+++ b/include/configs/cm_t335.h
@@ -136,7 +136,6 @@
 					"1m(u-boot),1m(u-boot-env)," \
 					"1m(dtb),4m(splash)," \
 					"6m(kernel),-(rootfs)"
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x300000 /* environment starts here */
 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
 #define CONFIG_SYS_NAND_ONFI_DETECTION
diff --git a/include/configs/cm_t35.h b/include/configs/cm_t35.h
index ee7c9de969..2c524b295b 100644
--- a/include/configs/cm_t35.h
+++ b/include/configs/cm_t35.h
@@ -218,7 +218,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_MONITOR_LEN		(256 << 10)	/* Reserve 2 sectors */
 
-#define CONFIG_ENV_IS_IN_NAND
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 #define CONFIG_ENV_OFFSET		SMNAND_ENV_OFFSET
 #define CONFIG_ENV_ADDR			SMNAND_ENV_OFFSET
diff --git a/include/configs/cm_t3517.h b/include/configs/cm_t3517.h
index dd78b0c7e8..f3b7f3d512 100644
--- a/include/configs/cm_t3517.h
+++ b/include/configs/cm_t3517.h
@@ -218,7 +218,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_MONITOR_LEN		(256 << 10)	/* Reserve 2 sectors */
 
-#define CONFIG_ENV_IS_IN_NAND
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 #define CONFIG_ENV_OFFSET		SMNAND_ENV_OFFSET
 #define CONFIG_ENV_ADDR			SMNAND_ENV_OFFSET
diff --git a/include/configs/cm_t54.h b/include/configs/cm_t54.h
index 36475734fc..69706d254e 100644
--- a/include/configs/cm_t54.h
+++ b/include/configs/cm_t54.h
@@ -33,7 +33,6 @@
 #undef CONFIG_ENV_OFFSET
 #undef CONFIG_ENV_SIZE
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1		/* SLOT2: eMMC(1) */
 #define CONFIG_SYS_MMC_ENV_PART		0
 #define CONFIG_ENV_OFFSET		0xc0000		/* (in bytes) 768 KB */
diff --git a/include/configs/colibri_imx6.h b/include/configs/colibri_imx6.h
index 82812e577a..a7345543c3 100644
--- a/include/configs/colibri_imx6.h
+++ b/include/configs/colibri_imx6.h
@@ -271,8 +271,6 @@
 /* environment organization */
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#define CONFIG_ENV_IS_IN_MMC
-
 #if defined(CONFIG_ENV_IS_IN_MMC)
 /* Environment in eMMC, before config block at the end of 1st "boot sector" */
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE + \
diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
index 3388a95ed3..5637a98050 100644
--- a/include/configs/colibri_imx7.h
+++ b/include/configs/colibri_imx7.h
@@ -148,7 +148,6 @@
 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 
 /* environment organization */
-#define CONFIG_ENV_IS_IN_NAND
 
 #if defined(CONFIG_ENV_IS_IN_MMC)
 #define CONFIG_SYS_MMC_ENV_DEV		0   /* USDHC1 */
diff --git a/include/configs/colibri_pxa270.h b/include/configs/colibri_pxa270.h
index 587963963a..9efe74b593 100644
--- a/include/configs/colibri_pxa270.h
+++ b/include/configs/colibri_pxa270.h
@@ -140,9 +140,6 @@
 #define	CONFIG_SYS_FLASH_PROTECTION		1
 
 #define CONFIG_ENV_IS_IN_FLASH		1
-
-#else	/* No flash */
-#define	CONFIG_ENV_IS_NOWHERE
 #endif
 
 #define	CONFIG_SYS_MONITOR_BASE		0x0
diff --git a/include/configs/colibri_t20.h b/include/configs/colibri_t20.h
index 7355f78fcf..1171359424 100644
--- a/include/configs/colibri_t20.h
+++ b/include/configs/colibri_t20.h
@@ -57,7 +57,6 @@
 				"-(ubi)"
 
 /* Environment in NAND, 64K is a bit excessive but erase block is 512K anyway */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(SZ_2M)
 #undef CONFIG_ENV_SIZE		/* undef size from tegra20-common.h */
 #define CONFIG_ENV_SIZE			(SZ_64K)
diff --git a/include/configs/colibri_t30.h b/include/configs/colibri_t30.h
index 53ff33e4b9..91433afacc 100644
--- a/include/configs/colibri_t30.h
+++ b/include/configs/colibri_t30.h
@@ -26,7 +26,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, before config block at the end of 1st "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE + \
 					 CONFIG_TDX_CFG_BLOCK_OFFSET)
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/comtrend_ar5387un.h b/include/configs/comtrend_ar5387un.h
index 5d8f968c4d..99630c0822 100644
--- a/include/configs/comtrend_ar5387un.h
+++ b/include/configs/comtrend_ar5387un.h
@@ -9,7 +9,6 @@
 
 #define CONFIG_REMAKE_ELF
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #define CONFIG_AUTO_COMPLETE
diff --git a/include/configs/comtrend_ct5361.h b/include/configs/comtrend_ct5361.h
index 099684ddd2..94ec498af1 100644
--- a/include/configs/comtrend_ct5361.h
+++ b/include/configs/comtrend_ct5361.h
@@ -9,7 +9,6 @@
 
 #define CONFIG_REMAKE_ELF
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #define CONFIG_AUTO_COMPLETE
diff --git a/include/configs/comtrend_vr3032u.h b/include/configs/comtrend_vr3032u.h
index d45f8b32da..6d46041af6 100644
--- a/include/configs/comtrend_vr3032u.h
+++ b/include/configs/comtrend_vr3032u.h
@@ -9,7 +9,6 @@
 
 #define CONFIG_REMAKE_ELF
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #define CONFIG_AUTO_COMPLETE
diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h
index 072650dfae..f9245e06ba 100644
--- a/include/configs/controlcenterd.h
+++ b/include/configs/controlcenterd.h
@@ -298,7 +298,6 @@
  * Environment
  */
 #if defined(CONFIG_TRAILBLAZER)
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE		0x2000		/* 8KB */
 #elif defined(CONFIG_RAMBOOT_SPIFLASH)
 #define CONFIG_ENV_IS_IN_SPI_FLASH
@@ -310,7 +309,6 @@
 #define CONFIG_ENV_OFFSET	0x100000	/* 1MB */
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #elif defined(CONFIG_RAMBOOT_SDCARD)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_SYS_MMC_ENV_DEV	0
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index 92e6ee0033..abd09ca1ed 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -66,9 +66,6 @@
 #define CONFIG_ENV_OVERWRITE
 
 #ifndef CONFIG_MTD_NOR_FLASH
-#if !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) && !defined(CONFIG_RAMBOOT_PBL)
-#define CONFIG_ENV_IS_NOWHERE
-#endif
 #else
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
@@ -87,14 +84,12 @@
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #elif defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(512 * 1658)
 #elif defined(CONFIG_NAND)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
diff --git a/include/configs/corvus.h b/include/configs/corvus.h
index 8b8b1220b4..f814e3e2dd 100644
--- a/include/configs/corvus.h
+++ b/include/configs/corvus.h
@@ -109,7 +109,6 @@
 #define CONFIG_SYS_LOAD_ADDR	ATMEL_BASE_CS6
 
 /* bootstrap + u-boot + env in nandflash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x100000
 #define CONFIG_ENV_OFFSET_REDUND	0x180000
 #define CONFIG_ENV_SIZE			SZ_128K
diff --git a/include/configs/cyrus.h b/include/configs/cyrus.h
index 6079540bc9..ddbaf327d8 100644
--- a/include/configs/cyrus.h
+++ b/include/configs/cyrus.h
@@ -58,7 +58,6 @@
 
 #if defined(CONFIG_SDCARD)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_ENV_SIZE			0x2000
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index b7199bb9e0..b69303fdba 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -164,7 +164,6 @@
 #ifdef CONFIG_USE_NAND
 #undef CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_NAND_DAVINCI
-#define CONFIG_ENV_IS_IN_NAND		/* U-Boot env in NAND Flash  */
 #define CONFIG_ENV_OFFSET		0x0 /* Block 0--not used by bootcode */
 #define CONFIG_ENV_SIZE			(128 << 10)
 #define	CONFIG_SYS_NAND_USE_FLASH_BBT
@@ -235,7 +234,6 @@
 
 #ifdef CONFIG_USE_SPIFLASH
 #undef CONFIG_ENV_IS_IN_FLASH
-#undef CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(64 << 10)
 #define CONFIG_ENV_OFFSET		(512 << 10)
@@ -298,7 +296,6 @@
 #if !defined(CONFIG_USE_NAND) && \
 	!defined(CONFIG_USE_NOR) && \
 	!defined(CONFIG_USE_SPIFLASH)
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE		(16 << 10)
 #endif
 
diff --git a/include/configs/dalmore.h b/include/configs/dalmore.h
index 96a2df806a..41ab61aa7c 100644
--- a/include/configs/dalmore.h
+++ b/include/configs/dalmore.h
@@ -24,7 +24,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, at the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/dbau1x00.h b/include/configs/dbau1x00.h
index 9db3380a95..970e214e07 100644
--- a/include/configs/dbau1x00.h
+++ b/include/configs/dbau1x00.h
@@ -138,8 +138,6 @@
 #define CONFIG_SYS_FLASH_ERASE_TOUT	(2 * CONFIG_SYS_HZ) /* Timeout for Flash Erase */
 #define CONFIG_SYS_FLASH_WRITE_TOUT	(2 * CONFIG_SYS_HZ) /* Timeout for Flash Write */
 
-#define	CONFIG_ENV_IS_NOWHERE	1
-
 /* Address and size of Primary Environment Sector	*/
 #define CONFIG_ENV_ADDR		0xB0030000
 #define CONFIG_ENV_SIZE		0x10000
diff --git a/include/configs/devkit3250.h b/include/configs/devkit3250.h
index a8b6802235..dfe9935520 100644
--- a/include/configs/devkit3250.h
+++ b/include/configs/devkit3250.h
@@ -138,7 +138,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SIZE			SZ_128K
 #define CONFIG_ENV_OFFSET		0x000A0000
 
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index 92ce1273c6..5476961847 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -182,7 +182,6 @@
 					0x01000000) /* 16MB */
 
 /* NAND and environment organization  */
-#define CONFIG_ENV_IS_IN_NAND		1
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 
 #define CONFIG_ENV_OFFSET		SMNAND_ENV_OFFSET
diff --git a/include/configs/dns325.h b/include/configs/dns325.h
index 470e26256a..3e931edc71 100644
--- a/include/configs/dns325.h
+++ b/include/configs/dns325.h
@@ -73,10 +73,7 @@
  * Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SECT_SIZE		0x20000	/* 128KB */
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 #define CONFIG_ENV_SIZE			0x20000	/* 128KB */
diff --git a/include/configs/dockstar.h b/include/configs/dockstar.h
index 3b56fd6739..d7ff3f485f 100644
--- a/include/configs/dockstar.h
+++ b/include/configs/dockstar.h
@@ -34,10 +34,7 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SECT_SIZE		0x20000	/* 128K */
-#else
-#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */
 #endif
 /*
  * max 4k env size is enough, but in case of nand
diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h
index d2f7c7cfff..40beb17574 100644
--- a/include/configs/dra7xx_evm.h
+++ b/include/configs/dra7xx_evm.h
@@ -24,7 +24,6 @@
 
 #ifndef CONFIG_QSPI_BOOT
 /* MMC ENV related defines */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1	/* SLOT2: eMMC(1) */
 #define CONFIG_ENV_SIZE			(128 << 10)
 #define CONFIG_ENV_OFFSET		0x260000
diff --git a/include/configs/dragonboard410c.h b/include/configs/dragonboard410c.h
index 11c842d952..09e39b3031 100644
--- a/include/configs/dragonboard410c.h
+++ b/include/configs/dragonboard410c.h
@@ -111,7 +111,6 @@ REFLASH(dragonboard/u-boot.img, 8)\
 	"pxefile_addr_r=0x90100000\0"\
 	BOOTENV
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_VARS_UBOOT_CONFIG
 
diff --git a/include/configs/dreamplug.h b/include/configs/dreamplug.h
index 003cf0e1f3..9715f297a9 100644
--- a/include/configs/dreamplug.h
+++ b/include/configs/dreamplug.h
@@ -34,8 +34,6 @@
 #ifdef CONFIG_SPI_FLASH
 #define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #define CONFIG_ENV_SECT_SIZE		0x10000	/* 64k */
-#else
-#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */
 #endif
 
 #ifdef CONFIG_CMD_SF
diff --git a/include/configs/ds109.h b/include/configs/ds109.h
index 133b2b023c..ad7fce84e8 100644
--- a/include/configs/ds109.h
+++ b/include/configs/ds109.h
@@ -37,8 +37,6 @@
 #ifdef CONFIG_SPI_FLASH
 #define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #define CONFIG_ENV_SECT_SIZE		0x10000	/* 64k */
-#else
-#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */
 #endif
 
 #ifdef CONFIG_CMD_SF
diff --git a/include/configs/duovero.h b/include/configs/duovero.h
index f142231689..8efcc94945 100644
--- a/include/configs/duovero.h
+++ b/include/configs/duovero.h
@@ -39,7 +39,6 @@
 /* GPIO */
 
 /* ENV related config options */
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
 
diff --git a/include/configs/e2220-1170.h b/include/configs/e2220-1170.h
index f88045436f..f8a5993326 100644
--- a/include/configs/e2220-1170.h
+++ b/include/configs/e2220-1170.h
@@ -22,7 +22,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC,@the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index 6fc6ec90af..e00f9648fe 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -88,7 +88,6 @@
 
 #ifdef CONFIG_USE_SPIFLASH
 #undef CONFIG_ENV_IS_IN_FLASH
-#undef CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(8 << 10)
 #define CONFIG_ENV_OFFSET		0x80000
@@ -165,7 +164,6 @@
 #if !defined(CONFIG_SYS_USE_NAND) && \
 	!defined(CONFIG_USE_NOR) && \
 	!defined(CONFIG_USE_SPIFLASH)
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE		(16 << 10)
 #endif
 
diff --git a/include/configs/efi-x86.h b/include/configs/efi-x86.h
index 9dcb481707..7763365fe1 100644
--- a/include/configs/efi-x86.h
+++ b/include/configs/efi-x86.h
@@ -14,7 +14,6 @@
 #undef CONFIG_TPM_TIS_BASE_ADDRESS
 
 #undef CONFIG_ENV_IS_IN_SPI_FLASH
-#define CONFIG_ENV_IS_NOWHERE
 #undef CONFIG_SCSI_AHCI
 #undef CONFIG_INTEL_ICH6_GPIO
 #undef CONFIG_USB_EHCI_PCI
diff --git a/include/configs/el6x_common.h b/include/configs/el6x_common.h
index 575610d410..531f5bf5aa 100644
--- a/include/configs/el6x_common.h
+++ b/include/configs/el6x_common.h
@@ -114,8 +114,6 @@
 
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#define CONFIG_ENV_IS_IN_MMC
-
 #if defined(CONFIG_ENV_IS_IN_MMC)
 #define CONFIG_SYS_MMC_ENV_DEV		1
 #define CONFIG_SYS_MMC_ENV_PART		2
diff --git a/include/configs/espresso7420.h b/include/configs/espresso7420.h
index 0a50154dda..0115d398a7 100644
--- a/include/configs/espresso7420.h
+++ b/include/configs/espresso7420.h
@@ -14,7 +14,6 @@
 #define CONFIG_BOARD_COMMON
 
 #define CONFIG_ESPRESSO7420
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_SYS_SDRAM_BASE		0x40000000
 #define CONFIG_SYS_TEXT_BASE		0x43E00000
diff --git a/include/configs/evb_ast2500.h b/include/configs/evb_ast2500.h
index a571f2a749..552cd366bc 100644
--- a/include/configs/evb_ast2500.h
+++ b/include/configs/evb_ast2500.h
@@ -20,8 +20,6 @@
 /* Memory Info */
 #define CONFIG_SYS_LOAD_ADDR		0x83000000
 
-#define CONFIG_ENV_IS_NOWHERE
-
 #define CONFIG_ENV_SIZE			0x20000
 
 #endif	/* __CONFIG_H */
diff --git a/include/configs/evb_px5.h b/include/configs/evb_px5.h
index 228683739b..d008539eb1 100644
--- a/include/configs/evb_px5.h
+++ b/include/configs/evb_px5.h
@@ -9,7 +9,6 @@
 
 #include <configs/rk3368_common.h>
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x2000
 
 #define CONFIG_CONSOLE_SCROLL_LINES	10
diff --git a/include/configs/evb_rk3288.h b/include/configs/evb_rk3288.h
index 0dc3532f33..15a374cca7 100644
--- a/include/configs/evb_rk3288.h
+++ b/include/configs/evb_rk3288.h
@@ -10,7 +10,6 @@
 #define ROCKCHIP_DEVICE_SETTINGS
 #include <configs/rk3288_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/evb_rk3328.h b/include/configs/evb_rk3328.h
index fe3ec8c177..c792ce55c1 100644
--- a/include/configs/evb_rk3328.h
+++ b/include/configs/evb_rk3328.h
@@ -9,7 +9,6 @@
 
 #include <configs/rk3328_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 1
 /*
  * SPL @ 32k for ~36k
diff --git a/include/configs/evb_rk3399.h b/include/configs/evb_rk3399.h
index b9fd5b417a..015f25a774 100644
--- a/include/configs/evb_rk3399.h
+++ b/include/configs/evb_rk3399.h
@@ -9,7 +9,6 @@
 
 #include <configs/rk3399_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 1
 /*
  * SPL @ 32k for ~36k
diff --git a/include/configs/fennec_rk3288.h b/include/configs/fennec_rk3288.h
index 0dc3532f33..15a374cca7 100644
--- a/include/configs/fennec_rk3288.h
+++ b/include/configs/fennec_rk3288.h
@@ -10,7 +10,6 @@
 #define ROCKCHIP_DEVICE_SETTINGS
 #include <configs/rk3288_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/firefly-rk3288.h b/include/configs/firefly-rk3288.h
index b4dcf23b1c..bd39111710 100644
--- a/include/configs/firefly-rk3288.h
+++ b/include/configs/firefly-rk3288.h
@@ -14,7 +14,6 @@
 
 #include <configs/rk3288_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/geekbox.h b/include/configs/geekbox.h
index 6f6007e65b..7a707cb2a0 100644
--- a/include/configs/geekbox.h
+++ b/include/configs/geekbox.h
@@ -9,7 +9,6 @@
 
 #include <configs/rk3368_common.h>
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x2000
 
 #define CONFIG_CONSOLE_SCROLL_LINES		10
diff --git a/include/configs/goflexhome.h b/include/configs/goflexhome.h
index d1635b098e..7fdadab101 100644
--- a/include/configs/goflexhome.h
+++ b/include/configs/goflexhome.h
@@ -56,10 +56,7 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SECT_SIZE		0x20000	/* 128K */
-#else
-#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */
 #endif
 /*
  * max 4k env size is enough, but in case of nand
diff --git a/include/configs/gplugd.h b/include/configs/gplugd.h
index f2260eae56..dddd300fb5 100644
--- a/include/configs/gplugd.h
+++ b/include/configs/gplugd.h
@@ -78,7 +78,6 @@
 /*
  * Environment variables configurations
  */
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x4000
 
 #ifdef CONFIG_CMD_USB
diff --git a/include/configs/guruplug.h b/include/configs/guruplug.h
index 5ac29db240..c69e8994bd 100644
--- a/include/configs/guruplug.h
+++ b/include/configs/guruplug.h
@@ -31,10 +31,7 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SECT_SIZE		0x20000	/* 128K */
-#else
-#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */
 #endif
 /*
  * max 4k env size is enough, but in case of nand
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index de08f2c7cc..7036ed0ef8 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -220,10 +220,6 @@
 /* Persistent Environment Config */
 #ifdef CONFIG_SPI_FLASH
   #define CONFIG_ENV_IS_IN_SPI_FLASH
-#elif defined(CONFIG_SPL_NAND_SUPPORT)
-  #define CONFIG_ENV_IS_IN_NAND
-#else
-  #define CONFIG_ENV_IS_IN_MMC
 #endif
 #if defined(CONFIG_ENV_IS_IN_MMC)
   #define CONFIG_SYS_MMC_ENV_DEV         0
diff --git a/include/configs/h2200.h b/include/configs/h2200.h
index 530a88e9e1..fea4044769 100644
--- a/include/configs/h2200.h
+++ b/include/configs/h2200.h
@@ -26,7 +26,6 @@
 #define CONFIG_ENV_SIZE			0x00040000
 #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 128*1024)
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_SYS_MAXARGS		16
 #define CONFIG_SYS_LOAD_ADDR		0xa3000000 /* default load address */
 
diff --git a/include/configs/harmony.h b/include/configs/harmony.h
index c17d7fad79..cc312199ac 100644
--- a/include/configs/harmony.h
+++ b/include/configs/harmony.h
@@ -32,7 +32,6 @@
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
 
 /* Environment in NAND (which is 512M), aligned to start of last sector */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET	(SZ_512M - SZ_128K) /* 128K sector size */
 
 /* USB Host support */
diff --git a/include/configs/hrcon.h b/include/configs/hrcon.h
index 405129b7e2..df8e69fe66 100644
--- a/include/configs/hrcon.h
+++ b/include/configs/hrcon.h
@@ -501,7 +501,6 @@ void fpga_control_clear(unsigned int bus, int pin);
 #define CONFIG_ENV_ADDR_REDUND	(CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE_REDUND	CONFIG_ENV_SIZE
 #else
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE		0x2000		/* 8KB */
 #endif
 
diff --git a/include/configs/huawei_hg556a.h b/include/configs/huawei_hg556a.h
index ab64518e0b..6bd2d76f53 100644
--- a/include/configs/huawei_hg556a.h
+++ b/include/configs/huawei_hg556a.h
@@ -9,7 +9,6 @@
 
 #define CONFIG_REMAKE_ELF
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #define CONFIG_AUTO_COMPLETE
diff --git a/include/configs/ib62x0.h b/include/configs/ib62x0.h
index a5782f3300..d45dc357cb 100644
--- a/include/configs/ib62x0.h
+++ b/include/configs/ib62x0.h
@@ -39,10 +39,7 @@
  * Environment variables configuration
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SECT_SIZE	0x20000
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 #define CONFIG_ENV_SIZE		0x20000
 #define CONFIG_ENV_OFFSET	0xe0000
diff --git a/include/configs/iconnect.h b/include/configs/iconnect.h
index 63e50606d7..f87882e2be 100644
--- a/include/configs/iconnect.h
+++ b/include/configs/iconnect.h
@@ -43,10 +43,7 @@
  * Environment variables configuration
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SECT_SIZE	0x20000
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 #define CONFIG_ENV_SIZE		0x20000
 #define CONFIG_ENV_OFFSET	0x80000
diff --git a/include/configs/imgtec_xilfpga.h b/include/configs/imgtec_xilfpga.h
index 6310423335..934b76ecaf 100644
--- a/include/configs/imgtec_xilfpga.h
+++ b/include/configs/imgtec_xilfpga.h
@@ -51,7 +51,6 @@
 /* -------------------------------------------------
  * Environment
  */
-#define CONFIG_ENV_IS_NOWHERE	1
 #define CONFIG_ENV_SIZE		0x4000
 
 /* ---------------------------------------------------------------------
diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
index 821f1ffacd..c2d64e34ea 100644
--- a/include/configs/imx6_logic.h
+++ b/include/configs/imx6_logic.h
@@ -141,7 +141,6 @@
 
 /* Environment organization */
 #define CONFIG_ENV_SIZE                        (8 * 1024)
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET             0x400000
 #define CONFIG_ENV_SECT_SIZE          CONFIG_ENV_SIZE
 
diff --git a/include/configs/integratorap.h b/include/configs/integratorap.h
index 1d1b8b31c2..ae8399426f 100644
--- a/include/configs/integratorap.h
+++ b/include/configs/integratorap.h
@@ -37,7 +37,6 @@
 /* Flash settings */
 #define CONFIG_SYS_FLASH_SIZE		0x02000000 /* 32 MiB */
 #define CONFIG_SYS_MAX_FLASH_SECT	128
-#define CONFIG_ENV_IS_NOWHERE		1
 #define CONFIG_ENV_SIZE			32768
 
 /*-----------------------------------------------------------------------
diff --git a/include/configs/ipam390.h b/include/configs/ipam390.h
index f78aa47ae2..dfbdcb1c1b 100644
--- a/include/configs/ipam390.h
+++ b/include/configs/ipam390.h
@@ -139,7 +139,6 @@
  * Flash & Environment
  */
 #define CONFIG_NAND_DAVINCI
-#define CONFIG_ENV_IS_IN_NAND		/* U-Boot env in NAND Flash  */
 #define CONFIG_ENV_OFFSET		0x0 /* Block 0--not used by bootcode */
 #define CONFIG_ENV_SIZE			(128 << 10)
 #define	CONFIG_SYS_NAND_USE_FLASH_BBT
diff --git a/include/configs/jetson-tk1.h b/include/configs/jetson-tk1.h
index 89f6cbc85b..acc97268ba 100644
--- a/include/configs/jetson-tk1.h
+++ b/include/configs/jetson-tk1.h
@@ -23,7 +23,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC,@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		0
 #define CONFIG_SYS_MMC_ENV_PART		2
diff --git a/include/configs/k2e_evm.h b/include/configs/k2e_evm.h
index b186bfc891..7e455498dc 100644
--- a/include/configs/k2e_evm.h
+++ b/include/configs/k2e_evm.h
@@ -28,7 +28,6 @@
 	"name_fs=arago-console-image-k2e-evm.cpio.gz\0"
 
 #define CONFIG_ENV_SIZE				(256 << 10)  /* 256 KiB */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET			0x100000
 
 #include <configs/ti_armv7_keystone2.h>
diff --git a/include/configs/k2hk_evm.h b/include/configs/k2hk_evm.h
index 9598bc6976..78b901fb58 100644
--- a/include/configs/k2hk_evm.h
+++ b/include/configs/k2hk_evm.h
@@ -28,7 +28,6 @@
 	"name_fs=arago-console-image-k2hk-evm.cpio.gz\0"
 
 #define CONFIG_ENV_SIZE				(256 << 10)  /* 256 KiB */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET			0x100000
 
 #include <configs/ti_armv7_keystone2.h>
diff --git a/include/configs/k2l_evm.h b/include/configs/k2l_evm.h
index d054276e61..d8bcbde843 100644
--- a/include/configs/k2l_evm.h
+++ b/include/configs/k2l_evm.h
@@ -28,7 +28,6 @@
 	"name_fs=arago-console-image-k2l-evm.cpio.gz\0"
 
 #define CONFIG_ENV_SIZE				(256 << 10)  /* 256 KiB */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET			0x100000
 
 #include <configs/ti_armv7_keystone2.h>
diff --git a/include/configs/kc1.h b/include/configs/kc1.h
index 408e5634b6..f040d0bbb6 100644
--- a/include/configs/kc1.h
+++ b/include/configs/kc1.h
@@ -143,7 +143,6 @@
  */
 
 #define CONFIG_ENV_SIZE		(128 * 1024)
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_ENV_OVERWRITE
 
diff --git a/include/configs/km/km83xx-common.h b/include/configs/km/km83xx-common.h
index 7d69224bd1..0db33b701c 100644
--- a/include/configs/km/km83xx-common.h
+++ b/include/configs/km/km83xx-common.h
@@ -191,7 +191,6 @@
 #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
 
 #else /* CFG_SYS_RAMBOOT */
-#define CONFIG_ENV_IS_NOWHERE		/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #endif /* CFG_SYS_RAMBOOT */
diff --git a/include/configs/kylin_rk3036.h b/include/configs/kylin_rk3036.h
index 088aced8b6..36009b8599 100644
--- a/include/configs/kylin_rk3036.h
+++ b/include/configs/kylin_rk3036.h
@@ -15,8 +15,6 @@
 /* Store env in emmc */
 #undef CONFIG_ENV_SIZE
 #define CONFIG_ENV_SIZE			SZ_32K
-#undef CONFIG_ENV_IS_NOWHERE
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0 /* emmc */
 #define CONFIG_SYS_MMC_ENV_PART		0 /* user area */
 
diff --git a/include/configs/legoev3.h b/include/configs/legoev3.h
index 15da4074f2..4ea61af920 100644
--- a/include/configs/legoev3.h
+++ b/include/configs/legoev3.h
@@ -206,7 +206,6 @@
 #define CONFIG_CLOCKS
 #endif
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE		(16 << 10)
 
 /* additions for new relocation code, must added to all boards */
diff --git a/include/configs/liteboard.h b/include/configs/liteboard.h
index 016d54f138..76ee91042d 100644
--- a/include/configs/liteboard.h
+++ b/include/configs/liteboard.h
@@ -129,7 +129,6 @@
 
 /* FLASH and environment organization */
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		0
diff --git a/include/configs/ls1021aiot.h b/include/configs/ls1021aiot.h
index c1ec2d440c..e5544f327d 100644
--- a/include/configs/ls1021aiot.h
+++ b/include/configs/ls1021aiot.h
@@ -287,7 +287,6 @@
 
 #if defined(CONFIG_SD_BOOT)
 #define CONFIG_ENV_OFFSET		0x100000
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV	0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index 152954165c..b3c931e36c 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -550,7 +550,6 @@ unsigned long get_board_ddr_clk(void);
 
 #if defined(CONFIG_SD_BOOT)
 #define CONFIG_ENV_OFFSET		0x300000
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
@@ -559,7 +558,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_OFFSET		0x300000        /* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x10000
 #elif defined(CONFIG_NAND_BOOT)
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #else
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 067ef4df93..06d7d400ca 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -418,7 +418,6 @@
 
 #if defined(CONFIG_SD_BOOT)
 #define CONFIG_ENV_OFFSET		0x300000
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x20000
 #elif defined(CONFIG_QSPI_BOOT)
diff --git a/include/configs/ls1043aqds.h b/include/configs/ls1043aqds.h
index 87ca36a8e9..83c8805df6 100644
--- a/include/configs/ls1043aqds.h
+++ b/include/configs/ls1043aqds.h
@@ -410,12 +410,10 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_OVERWRITE
 
 #ifdef CONFIG_NAND_BOOT
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(24 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SD_BOOT)
 #define CONFIG_ENV_OFFSET		(3 * 1024 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
diff --git a/include/configs/ls1043ardb.h b/include/configs/ls1043ardb.h
index deae787358..7b8561e9d6 100644
--- a/include/configs/ls1043ardb.h
+++ b/include/configs/ls1043ardb.h
@@ -233,12 +233,10 @@
 #endif
 
 #if defined(CONFIG_NAND_BOOT)
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(24 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SD_BOOT)
 #define CONFIG_ENV_OFFSET		(3 * 1024 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #else
diff --git a/include/configs/ls1046aqds.h b/include/configs/ls1046aqds.h
index 77619ab324..860ad8f693 100644
--- a/include/configs/ls1046aqds.h
+++ b/include/configs/ls1046aqds.h
@@ -444,12 +444,10 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_OVERWRITE
 
 #ifdef CONFIG_NAND_BOOT
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(24 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SD_BOOT)
 #define CONFIG_ENV_OFFSET		(3 * 1024 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
diff --git a/include/configs/ls1046ardb.h b/include/configs/ls1046ardb.h
index 8a6b4e6378..1c30462af2 100644
--- a/include/configs/ls1046ardb.h
+++ b/include/configs/ls1046ardb.h
@@ -167,7 +167,6 @@
 #endif
 
 #if defined(CONFIG_SD_BOOT)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_OFFSET		(3 * 1024 * 1024)
 #define CONFIG_ENV_SIZE			0x2000
diff --git a/include/configs/ls2080a_emu.h b/include/configs/ls2080a_emu.h
index cec12ad04c..6b34edfbf1 100644
--- a/include/configs/ls2080a_emu.h
+++ b/include/configs/ls2080a_emu.h
@@ -82,7 +82,6 @@
 #define CONFIG_SYS_LS_MC_BOOT_TIMEOUT_MS 200000
 
 /* Store environment at top of flash */
-#define CONFIG_ENV_IS_NOWHERE		1
 #define CONFIG_ENV_SIZE			0x1000
 
 #endif /* __LS2_EMU_H */
diff --git a/include/configs/ls2080a_simu.h b/include/configs/ls2080a_simu.h
index de9db4abb4..02589be5fd 100644
--- a/include/configs/ls2080a_simu.h
+++ b/include/configs/ls2080a_simu.h
@@ -152,7 +152,6 @@
 #define CONFIG_SYS_LS_MC_BOOT_TIMEOUT_MS 200000
 
 /* Store environment at top of flash */
-#define CONFIG_ENV_IS_NOWHERE		1
 #define CONFIG_ENV_SIZE			0x1000
 
 #endif /* __LS2_SIMU_H */
diff --git a/include/configs/ls2080aqds.h b/include/configs/ls2080aqds.h
index 5e1867d81e..b5fa41e33d 100644
--- a/include/configs/ls2080aqds.h
+++ b/include/configs/ls2080aqds.h
@@ -229,7 +229,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NAND_FTIM2
 #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NAND_FTIM3
 
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(896 * 1024)
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			0x2000
@@ -238,7 +237,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	(640 * 1024)
 #elif defined(CONFIG_SD_BOOT)
 #define CONFIG_ENV_OFFSET		0x200000
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x20000
 #endif
diff --git a/include/configs/ls2080ardb.h b/include/configs/ls2080ardb.h
index e8aacd3dcd..a353cf4f68 100644
--- a/include/configs/ls2080ardb.h
+++ b/include/configs/ls2080ardb.h
@@ -223,7 +223,6 @@ unsigned long get_board_sys_clk(void);
 #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NAND_FTIM2
 #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NAND_FTIM3
 
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(2048 * 1024)
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			0x2000
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h
index 43e4a325b4..b21a285d19 100644
--- a/include/configs/lsxl.h
+++ b/include/configs/lsxl.h
@@ -62,8 +62,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	8
 #define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #define CONFIG_ENV_SECT_SIZE		0x10000 /* 64K */
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 #define CONFIG_ENV_SIZE			0x10000 /* 64k */
diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
index 8dea0313a3..cc0fc9d01d 100644
--- a/include/configs/m28evk.h
+++ b/include/configs/m28evk.h
@@ -25,7 +25,6 @@
 
 /* Environment */
 #define CONFIG_ENV_SIZE			(16 * 1024)
-#define CONFIG_ENV_IS_IN_NAND
 
 /* Environment is in NAND */
 #if defined(CONFIG_CMD_NAND) && defined(CONFIG_ENV_IS_IN_NAND)
@@ -51,8 +50,6 @@
 		"14m(boot),"			\
 		"238m(data),"			\
 		"- at 4096k(UBI)"
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 /* FEC Ethernet on SoC */
diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h
index a92c228334..9b8d22c797 100644
--- a/include/configs/m53evk.h
+++ b/include/configs/m53evk.h
@@ -92,7 +92,6 @@
 #define CONFIG_SYS_NAND_USE_FLASH_BBT
 
 /* Environment is in NAND */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE
 #define CONFIG_ENV_SECT_SIZE		(128 * 1024)
 #define CONFIG_ENV_RANGE		(4 * CONFIG_ENV_SECT_SIZE)
@@ -115,8 +114,6 @@
 		"14m(boot),"			\
 		"240m(data),"			\
 		"-@2048k(UBI)"
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 /*
diff --git a/include/configs/ma5d4evk.h b/include/configs/ma5d4evk.h
index 82aee15132..2744efb922 100644
--- a/include/configs/ma5d4evk.h
+++ b/include/configs/ma5d4evk.h
@@ -32,7 +32,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
 #define CONFIG_SYS_CONSOLE_ENV_OVERWRITE
 #define CONFIG_ENV_SIZE			0x4000
diff --git a/include/configs/mcx.h b/include/configs/mcx.h
index 0c237a59cb..f82982a487 100644
--- a/include/configs/mcx.h
+++ b/include/configs/mcx.h
@@ -260,7 +260,6 @@
 #define CONFIG_SYS_NAND_BUSWIDTH_16BIT
 #define CONFIG_NAND_OMAP_GPMC
 #define CONFIG_NAND_OMAP_GPMC_PREFETCH
-#define CONFIG_ENV_IS_IN_NAND
 #define SMNAND_ENV_OFFSET		0x180000 /* environment starts here */
 
 /* Redundant Environment */
diff --git a/include/configs/medcom-wide.h b/include/configs/medcom-wide.h
index d2165828d3..e007370f90 100644
--- a/include/configs/medcom-wide.h
+++ b/include/configs/medcom-wide.h
@@ -25,7 +25,6 @@
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
 
 /* Environment in NAND, aligned to start of last sector */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(SZ_512M - SZ_128K) /* 128K sectors */
 
 /* USB host support */
diff --git a/include/configs/meesc.h b/include/configs/meesc.h
index 3a8e82edbf..3b7643fb63 100644
--- a/include/configs/meesc.h
+++ b/include/configs/meesc.h
@@ -145,7 +145,6 @@
 #elif CONFIG_SYS_USE_NANDFLASH
 
 /* bootstrap + u-boot + env + linux in nandflash */
-# define CONFIG_ENV_IS_IN_NAND		1
 # define CONFIG_ENV_OFFSET		0xC0000
 # define CONFIG_ENV_SIZE		0x20000
 
diff --git a/include/configs/meson-gxbb-common.h b/include/configs/meson-gxbb-common.h
index 89e3807a14..bfc0767f1c 100644
--- a/include/configs/meson-gxbb-common.h
+++ b/include/configs/meson-gxbb-common.h
@@ -11,7 +11,6 @@
 #define CONFIG_CPU_ARMV8
 #define CONFIG_REMAKE_ELF
 #define CONFIG_NR_DRAM_BANKS		1
-#define CONFIG_ENV_IS_NOWHERE		1
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_SYS_MAXARGS		32
 #define CONFIG_SYS_MALLOC_LEN		(32 << 20)
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index cc7f81955e..c3d9b99771 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -95,7 +95,6 @@
 /* use buffered writes (20x faster) */
 # define	CONFIG_SYS_FLASH_USE_BUFFER_WRITE	1
 # ifdef	RAMENV
-#  define CONFIG_ENV_IS_NOWHERE	1
 #  define CONFIG_ENV_SIZE	0x1000
 #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
 
@@ -117,7 +116,6 @@
 # define CONFIG_SF_DEFAULT_CS		XILINX_SPI_FLASH_CS
 
 # ifdef	RAMENV
-#  define CONFIG_ENV_IS_NOWHERE	1
 #  define CONFIG_ENV_SIZE	0x1000
 #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
 
@@ -135,7 +133,6 @@
 #else /* !SPIFLASH */
 
 /* ENV in RAM */
-# define CONFIG_ENV_IS_NOWHERE	1
 # define CONFIG_ENV_SIZE	0x1000
 # define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
 #endif /* !SPIFLASH */
diff --git a/include/configs/miqi_rk3288.h b/include/configs/miqi_rk3288.h
index 477f296542..0c43a2343d 100644
--- a/include/configs/miqi_rk3288.h
+++ b/include/configs/miqi_rk3288.h
@@ -14,7 +14,6 @@
 
 #include <configs/rk3288_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/mvebu_armada-8k.h b/include/configs/mvebu_armada-8k.h
index ac116edf31..eca13442ab 100644
--- a/include/configs/mvebu_armada-8k.h
+++ b/include/configs/mvebu_armada-8k.h
@@ -79,8 +79,6 @@
 #ifdef CONFIG_MVEBU_SPI_BOOT
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 /* Environment in NAND flash */
-#elif defined(CONFIG_MVEBU_NAND_BOOT)
-#define CONFIG_ENV_IS_IN_NAND
 #endif
 
 #define CONFIG_ENV_OFFSET		0x180000 /* as Marvell U-Boot version */
diff --git a/include/configs/mx23_olinuxino.h b/include/configs/mx23_olinuxino.h
index cccc3a8ab0..bd3c7ed949 100644
--- a/include/configs/mx23_olinuxino.h
+++ b/include/configs/mx23_olinuxino.h
@@ -19,7 +19,6 @@
 #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
 
 /* Environment */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OVERWRITE
 
 /* Environment is in MMC */
diff --git a/include/configs/mx23evk.h b/include/configs/mx23evk.h
index 3405172803..9b54d20e21 100644
--- a/include/configs/mx23evk.h
+++ b/include/configs/mx23evk.h
@@ -23,7 +23,6 @@
 
 /* Environment */
 #define CONFIG_ENV_OVERWRITE
-#define CONFIG_ENV_IS_IN_MMC
 
 /* Environment is in MMC */
 #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC)
diff --git a/include/configs/mx25pdk.h b/include/configs/mx25pdk.h
index 8949ee64db..8b472bf0f0 100644
--- a/include/configs/mx25pdk.h
+++ b/include/configs/mx25pdk.h
@@ -58,7 +58,6 @@
 #define CONFIG_ENV_SIZE        (8 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 /* U-Boot general configuration */
diff --git a/include/configs/mx31pdk.h b/include/configs/mx31pdk.h
index e45649f566..7ed9012ec9 100644
--- a/include/configs/mx31pdk.h
+++ b/include/configs/mx31pdk.h
@@ -127,7 +127,6 @@
 /*
  * environment organization
  */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x40000
 #define CONFIG_ENV_OFFSET_REDUND	0x60000
 #define CONFIG_ENV_SIZE			(128 * 1024)
diff --git a/include/configs/mx35pdk.h b/include/configs/mx35pdk.h
index e60b96f7dc..4fc0aadd89 100644
--- a/include/configs/mx35pdk.h
+++ b/include/configs/mx35pdk.h
@@ -173,7 +173,6 @@
 #define CONFIG_ENV_IS_IN_FLASH
 
 #if defined(CONFIG_FSL_ENV_IN_NAND)
-	#define CONFIG_ENV_IS_IN_NAND
 	#define CONFIG_ENV_OFFSET       (1024 * 1024)
 #endif
 
diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h
index 4513adf2c4..5daa50d169 100644
--- a/include/configs/mx51evk.h
+++ b/include/configs/mx51evk.h
@@ -211,7 +211,6 @@
  */
 #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
 #define CONFIG_ENV_SIZE        (8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h
index aee6e70c39..ccbac6ab28 100644
--- a/include/configs/mx53ard.h
+++ b/include/configs/mx53ard.h
@@ -196,7 +196,6 @@
 /* environment organization */
 #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
 #define CONFIG_ENV_SIZE        (8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV	0
 
 #define MX53ARD_CS1GCR1		(CSEN | DSZ(2))
diff --git a/include/configs/mx53cx9020.h b/include/configs/mx53cx9020.h
index 151c4b3faf..4b22a00858 100644
--- a/include/configs/mx53cx9020.h
+++ b/include/configs/mx53cx9020.h
@@ -172,7 +172,6 @@
 /* environment organization */
 #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
 #define CONFIG_ENV_SIZE        (8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 /* Framebuffer and LCD */
diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h
index ac9beb60ab..11d1278349 100644
--- a/include/configs/mx53evk.h
+++ b/include/configs/mx53evk.h
@@ -139,7 +139,6 @@
 /* environment organization */
 #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
 #define CONFIG_ENV_SIZE        (8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif				/* __CONFIG_H */
diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h
index c82e426a61..3828b21a8e 100644
--- a/include/configs/mx53loco.h
+++ b/include/configs/mx53loco.h
@@ -186,7 +186,6 @@
 /* environment organization */
 #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
 #define CONFIG_ENV_SIZE        (8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #ifdef CONFIG_CMD_SATA
diff --git a/include/configs/mx53smd.h b/include/configs/mx53smd.h
index d064337f47..2990e16372 100644
--- a/include/configs/mx53smd.h
+++ b/include/configs/mx53smd.h
@@ -134,7 +134,6 @@
 /* environment organization */
 #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
 #define CONFIG_ENV_SIZE        (8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif				/* __CONFIG_H */
diff --git a/include/configs/mx6cuboxi.h b/include/configs/mx6cuboxi.h
index bc22f56d1d..e345bd0dea 100644
--- a/include/configs/mx6cuboxi.h
+++ b/include/configs/mx6cuboxi.h
@@ -139,7 +139,6 @@
 
 /* Environment organization */
 #define CONFIG_ENV_SIZE			(8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(8 * 64 * 1024)
 
 #endif                         /* __MX6CUBOXI_CONFIG_H */
diff --git a/include/configs/mx6qarm2.h b/include/configs/mx6qarm2.h
index de5dc1c451..ff0e4a6444 100644
--- a/include/configs/mx6qarm2.h
+++ b/include/configs/mx6qarm2.h
@@ -123,7 +123,6 @@
 /* Environment organization */
 #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
 #define CONFIG_ENV_SIZE			(8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1
 
 /* USB Configs */
diff --git a/include/configs/mx6sabre_common.h b/include/configs/mx6sabre_common.h
index 9b0fe5a3c2..67bf951419 100644
--- a/include/configs/mx6sabre_common.h
+++ b/include/configs/mx6sabre_common.h
@@ -193,8 +193,6 @@
 /* Environment organization */
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#define CONFIG_ENV_IS_IN_MMC
-
 #if defined(CONFIG_ENV_IS_IN_MMC)
 #define CONFIG_ENV_OFFSET		(768 * 1024)
 #endif
diff --git a/include/configs/mx6slevk.h b/include/configs/mx6slevk.h
index 6ab76bb8fa..0f1a67dbb3 100644
--- a/include/configs/mx6slevk.h
+++ b/include/configs/mx6slevk.h
@@ -146,7 +146,6 @@
 #define CONFIG_ENV_SPI_MAX_HZ           CONFIG_SF_DEFAULT_SPEED
 #else
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
-#define CONFIG_ENV_IS_IN_MMC
 #endif
 
 #ifdef CONFIG_CMD_SF
diff --git a/include/configs/mx6sllevk.h b/include/configs/mx6sllevk.h
index 62159a16b7..67807f6280 100644
--- a/include/configs/mx6sllevk.h
+++ b/include/configs/mx6sllevk.h
@@ -133,7 +133,6 @@
 #define CONFIG_MMCROOT			"/dev/mmcblk0p2"  /* USDHC1 */
 
 #define CONFIG_ENV_OFFSET		(12 * SZ_64K)
-#define CONFIG_ENV_IS_IN_MMC
 
 /* MMC Configs */
 #define CONFIG_SYS_FSL_ESDHC_ADDR	USDHC1_BASE_ADDR
diff --git a/include/configs/mx6sxsabreauto.h b/include/configs/mx6sxsabreauto.h
index 3e73dad9a3..3468b491a7 100644
--- a/include/configs/mx6sxsabreauto.h
+++ b/include/configs/mx6sxsabreauto.h
@@ -171,7 +171,6 @@
 
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 
 #define CONFIG_SYS_FSL_USDHC_NUM	2
 #if defined(CONFIG_ENV_IS_IN_MMC)
diff --git a/include/configs/mx6sxsabresd.h b/include/configs/mx6sxsabresd.h
index b39ab729d8..319fed4ebc 100644
--- a/include/configs/mx6sxsabresd.h
+++ b/include/configs/mx6sxsabresd.h
@@ -211,7 +211,6 @@
 
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 
 #define CONFIG_SYS_FSL_USDHC_NUM	3
 #if defined(CONFIG_ENV_IS_IN_MMC)
diff --git a/include/configs/mx6ul_14x14_evk.h b/include/configs/mx6ul_14x14_evk.h
index 2c40decf49..0b8edb86da 100644
--- a/include/configs/mx6ul_14x14_evk.h
+++ b/include/configs/mx6ul_14x14_evk.h
@@ -166,7 +166,6 @@
 
 /* environment organization */
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
 #define CONFIG_SYS_MMC_ENV_DEV		1   /* USDHC2 */
 #define CONFIG_SYS_MMC_ENV_PART		0	/* user area */
diff --git a/include/configs/mx6ullevk.h b/include/configs/mx6ullevk.h
index 19b0630d9d..8d4269cdd9 100644
--- a/include/configs/mx6ullevk.h
+++ b/include/configs/mx6ullevk.h
@@ -155,7 +155,6 @@
 #define CONFIG_SYS_MMC_ENV_PART		0	/* user area */
 #define CONFIG_MMCROOT			"/dev/mmcblk1p2"  /* USDHC2 */
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_SIZE			SZ_8K
 #define CONFIG_ENV_OFFSET		(12 * SZ_64K)
 
diff --git a/include/configs/mx7dsabresd.h b/include/configs/mx7dsabresd.h
index fe9fd661e8..43453323f7 100644
--- a/include/configs/mx7dsabresd.h
+++ b/include/configs/mx7dsabresd.h
@@ -185,7 +185,6 @@
 
 /* environment organization */
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 
 /*
  * If want to use nand, define CONFIG_NAND_MXS and rework board
diff --git a/include/configs/mx7ulp_evk.h b/include/configs/mx7ulp_evk.h
index 288a8894d1..532f47ea4f 100644
--- a/include/configs/mx7ulp_evk.h
+++ b/include/configs/mx7ulp_evk.h
@@ -42,7 +42,6 @@
 #define CONFIG_SYS_MMC_IMG_LOAD_PART    1
 
 #define CONFIG_ENV_OFFSET		(12 * SZ_64K)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_SIZE			SZ_8K
 
 /* Using ULP WDOG for reset */
diff --git a/include/configs/nas220.h b/include/configs/nas220.h
index dfa81223c4..1f339c6f29 100644
--- a/include/configs/nas220.h
+++ b/include/configs/nas220.h
@@ -56,10 +56,7 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SECT_SIZE 0x10000
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 #define CONFIG_ENV_SIZE	0x10000
diff --git a/include/configs/netgear_cg3100d.h b/include/configs/netgear_cg3100d.h
index c97d4e57ed..457a50d472 100644
--- a/include/configs/netgear_cg3100d.h
+++ b/include/configs/netgear_cg3100d.h
@@ -7,7 +7,6 @@
 #include <configs/bmips_common.h>
 #include <configs/bmips_bcm3380.h>
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #define CONFIG_AUTO_COMPLETE
diff --git a/include/configs/nitrogen6x.h b/include/configs/nitrogen6x.h
index 576b7b07db..6d5b0bd831 100644
--- a/include/configs/nitrogen6x.h
+++ b/include/configs/nitrogen6x.h
@@ -271,7 +271,6 @@
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #if defined(CONFIG_SABRELITE)
-#define CONFIG_ENV_IS_IN_MMC
 #else
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #endif
diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h
index 5e2d5991e7..4e8f664e69 100644
--- a/include/configs/nokia_rx51.h
+++ b/include/configs/nokia_rx51.h
@@ -381,8 +381,6 @@ int rx51_kp_getc(struct stdio_dev *sdev);
  * FLASH and environment organization
  */
 
-#define CONFIG_ENV_IS_NOWHERE
-
 #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
 #define CONFIG_SYS_INIT_RAM_ADDR	0x4020f800
 #define CONFIG_SYS_INIT_RAM_SIZE	0x800
diff --git a/include/configs/novena.h b/include/configs/novena.h
index 041159806b..2bba741ac3 100644
--- a/include/configs/novena.h
+++ b/include/configs/novena.h
@@ -30,14 +30,11 @@
  * http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/disc-partition-alignment.html
  */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_OFFSET		(512 * 1024)
 #define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE
 #define CONFIG_ENV_OFFSET_REDUND	\
 		(CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 /* Booting Linux */
diff --git a/include/configs/nsa310s.h b/include/configs/nsa310s.h
index bc67270af7..2342f7452f 100644
--- a/include/configs/nsa310s.h
+++ b/include/configs/nsa310s.h
@@ -33,10 +33,7 @@
 
 /* environment variables configuration */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SECT_SIZE	0x20000
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 #define CONFIG_ENV_SIZE		0x20000
 #define CONFIG_ENV_OFFSET	0xe0000
diff --git a/include/configs/nsim.h b/include/configs/nsim.h
index 5bbf610846..4490663020 100644
--- a/include/configs/nsim.h
+++ b/include/configs/nsim.h
@@ -42,7 +42,6 @@
 /*
  * Environment settings
  */
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			SZ_512
 #define CONFIG_ENV_OFFSET		0
 
diff --git a/include/configs/nyan-big.h b/include/configs/nyan-big.h
index b5357ea15c..ca409949ad 100644
--- a/include/configs/nyan-big.h
+++ b/include/configs/nyan-big.h
@@ -25,7 +25,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, at the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/odroid.h b/include/configs/odroid.h
index 609a3d1c45..9552c967c8 100644
--- a/include/configs/odroid.h
+++ b/include/configs/odroid.h
@@ -52,7 +52,6 @@
 
 #define CONFIG_SYS_MONITOR_BASE	0x00000000
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		CONFIG_MMC_DEFAULT_DEV
 #define CONFIG_ENV_SIZE			4096
 #define CONFIG_ENV_OFFSET		(SZ_1K * 1280) /* 1.25 MiB offset */
diff --git a/include/configs/odroid_xu3.h b/include/configs/odroid_xu3.h
index ba29f3e7d1..3b920ccf16 100644
--- a/include/configs/odroid_xu3.h
+++ b/include/configs/odroid_xu3.h
@@ -29,8 +29,6 @@
 #define CONFIG_SYS_MEM_TOP_HIDE		(22UL << 20UL)
 #define CONFIG_TZSW_RESERVED_DRAM_SIZE	CONFIG_SYS_MEM_TOP_HIDE
 
-#define CONFIG_ENV_IS_IN_MMC
-
 #undef CONFIG_ENV_SIZE
 #undef CONFIG_ENV_OFFSET
 #define CONFIG_ENV_SIZE			(SZ_1K * 16)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index 0d48d4ecc1..4422d5e8d5 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -250,7 +250,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_ONENAND_BASE		ONENAND_MAP
 
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
 #define ONENAND_ENV_OFFSET		0x260000 /* environment starts here */
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
diff --git a/include/configs/omap3_cairo.h b/include/configs/omap3_cairo.h
index b5d2b007e8..7e1f4751fb 100644
--- a/include/configs/omap3_cairo.h
+++ b/include/configs/omap3_cairo.h
@@ -175,7 +175,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_ONENAND_BASE		ONENAND_MAP
 
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
 #define ONENAND_ENV_OFFSET		0x260000 /* environment starts here */
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
index 53bfc13264..76c00d4efa 100644
--- a/include/configs/omap3_evm.h
+++ b/include/configs/omap3_evm.h
@@ -266,7 +266,6 @@
 
 #if !defined(CONFIG_ENV_IS_NOWHERE)
 #if defined(CONFIG_CMD_NAND)
-#define CONFIG_ENV_IS_IN_NAND
 #elif defined(CONFIG_CMD_ONENAND)
 #define CONFIG_ENV_IS_IN_ONENAND
 #define CONFIG_ENV_OFFSET		ONENAND_ENV_OFFSET
diff --git a/include/configs/omap3_igep00x0.h b/include/configs/omap3_igep00x0.h
index 59da726bd6..3a868797b8 100644
--- a/include/configs/omap3_igep00x0.h
+++ b/include/configs/omap3_igep00x0.h
@@ -135,7 +135,6 @@
 #define CONFIG_SPL_UBI_INFO_ADDR	0x88080000
 
 /* environment organization */
-#define CONFIG_ENV_IS_NOWHERE		1
 #define CONFIG_ENV_UBI_PART		"UBI"
 #define CONFIG_ENV_UBI_VOLUME		"config"
 #define CONFIG_ENV_UBI_VOLUME_REDUND	"config_r"
diff --git a/include/configs/omap3_logic.h b/include/configs/omap3_logic.h
index 735c9ef08a..ed25846a74 100644
--- a/include/configs/omap3_logic.h
+++ b/include/configs/omap3_logic.h
@@ -253,7 +253,6 @@
 /* Monitor at start of flash */
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 
diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h
index 111aec58d3..074e17d178 100644
--- a/include/configs/omap3_overo.h
+++ b/include/configs/omap3_overo.h
@@ -184,7 +184,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_ONENAND_BASE		ONENAND_MAP
 
-#define CONFIG_ENV_IS_IN_NAND
 #define ONENAND_ENV_OFFSET		0x240000 /* environment starts here */
 #define SMNAND_ENV_OFFSET		0x240000 /* environment starts here */
 
diff --git a/include/configs/omap3_pandora.h b/include/configs/omap3_pandora.h
index efee5b0c3f..189b389db5 100644
--- a/include/configs/omap3_pandora.h
+++ b/include/configs/omap3_pandora.h
@@ -108,7 +108,6 @@
 /* Monitor@start of flash */
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 
-#define CONFIG_ENV_IS_IN_NAND		1
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 
 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
diff --git a/include/configs/omap3_zoom1.h b/include/configs/omap3_zoom1.h
index 6c869c4c07..23603c61e2 100644
--- a/include/configs/omap3_zoom1.h
+++ b/include/configs/omap3_zoom1.h
@@ -155,7 +155,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_ONENAND_BASE		ONENAND_MAP
 
-#define CONFIG_ENV_IS_IN_NAND		1
 #define ONENAND_ENV_OFFSET		0x260000 /* environment starts here */
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 
diff --git a/include/configs/omap4_sdp4430.h b/include/configs/omap4_sdp4430.h
index b82ad13489..c89bd13f55 100644
--- a/include/configs/omap4_sdp4430.h
+++ b/include/configs/omap4_sdp4430.h
@@ -22,7 +22,6 @@
 #include <configs/ti_omap4_common.h>
 
 /* ENV related config options */
-#define CONFIG_ENV_IS_IN_MMC		1
 #define CONFIG_SYS_MMC_ENV_DEV		1	/* SLOT2: eMMC(1) */
 #define CONFIG_ENV_OFFSET		0xE0000
 
diff --git a/include/configs/omap5_uevm.h b/include/configs/omap5_uevm.h
index 15d06bbe45..eb5e6df9ca 100644
--- a/include/configs/omap5_uevm.h
+++ b/include/configs/omap5_uevm.h
@@ -34,7 +34,6 @@
 
 #define CONFIG_MISC_INIT_R
 /* MMC ENV related defines */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		1	/* SLOT2: eMMC(1) */
 #define CONFIG_ENV_SIZE			(128 << 10)
 #define CONFIG_ENV_OFFSET		0x260000
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index 5f118950aa..f566d0f1ba 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -156,7 +156,6 @@
 #ifdef CONFIG_USE_NAND
 #undef CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_NAND_DAVINCI
-#define CONFIG_ENV_IS_IN_NAND		/* U-Boot env in NAND Flash  */
 #define CONFIG_ENV_OFFSET		0x0 /* Block 0--not used by bootcode */
 #define CONFIG_ENV_SIZE			(128 << 9)
 #define	CONFIG_SYS_NAND_USE_FLASH_BBT
@@ -216,7 +215,6 @@
 
 #ifdef CONFIG_USE_SPIFLASH
 #undef CONFIG_ENV_IS_IN_FLASH
-#undef CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(64 << 10)
 #define CONFIG_ENV_OFFSET		(256 << 10)
@@ -305,14 +303,10 @@
 #if !defined(CONFIG_USE_NAND) && \
 	!defined(CONFIG_SYS_USE_NOR) && \
 	!defined(CONFIG_USE_SPIFLASH)
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE		(16 << 10)
 #endif
 
 /* SD/MMC */
-#ifdef CONFIG_MMC
-#undef CONFIG_ENV_IS_IN_MMC
-#endif
 
 #ifdef CONFIG_ENV_IS_IN_MMC
 #undef CONFIG_ENV_SIZE
@@ -320,7 +314,6 @@
 #define CONFIG_ENV_SIZE		(16 << 10)	/* 16 KiB */
 #define CONFIG_ENV_OFFSET	(51 << 9)	/* Sector 51 */
 #undef CONFIG_ENV_IS_IN_FLASH
-#undef CONFIG_ENV_IS_IN_NAND
 #undef CONFIG_ENV_IS_IN_SPI_FLASH
 #endif
 
diff --git a/include/configs/openrd.h b/include/configs/openrd.h
index 89e963d524..a30efdeb85 100644
--- a/include/configs/openrd.h
+++ b/include/configs/openrd.h
@@ -38,10 +38,7 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SECT_SIZE		0x20000	/* 128K */
-#else
-#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */
 #endif
 /*
  * max 4k env size is enough, but in case of nand
diff --git a/include/configs/opos6uldev.h b/include/configs/opos6uldev.h
index e7bc044acf..9b96cd0be8 100644
--- a/include/configs/opos6uldev.h
+++ b/include/configs/opos6uldev.h
@@ -74,7 +74,6 @@
 #endif
 
 /* Environment is stored in the eMMC boot partition */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV          0
 #define CONFIG_SYS_MMC_ENV_PART         1
 #define CONFIG_ENV_SIZE                 (10 * 1024)
diff --git a/include/configs/origen.h b/include/configs/origen.h
index 6980e9e548..c363653537 100644
--- a/include/configs/origen.h
+++ b/include/configs/origen.h
@@ -89,7 +89,6 @@
 /* MIU (Memory Interleaving Unit) */
 #define CONFIG_MIU_2BIT_21_7_INTERLEAVED
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			(16 << 10)	/* 16 KB */
 #define RESERVE_BLOCK_SIZE		(512)
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index a72a57c904..248203d9bf 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -781,7 +781,6 @@
 #define CONFIG_ENV_OFFSET	0x100000	/* 1MB */
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #elif defined(CONFIG_SDCARD)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_FSL_FIXED_MMC_LOCATION
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_SYS_MMC_ENV_DEV	0
@@ -792,11 +791,9 @@
 #else
 #define CONFIG_ENV_SIZE		CONFIG_SYS_NAND_BLOCK_SIZE
 #endif
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET	(1024 * 1024)
 #define CONFIG_ENV_RANGE	(3 * CONFIG_ENV_SIZE)
 #elif defined(CONFIG_SYS_RAMBOOT)
-#define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #else
diff --git a/include/configs/p1_twr.h b/include/configs/p1_twr.h
index dffb15aea9..799672fff7 100644
--- a/include/configs/p1_twr.h
+++ b/include/configs/p1_twr.h
@@ -362,11 +362,9 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
  */
 #ifdef CONFIG_SYS_RAMBOOT
 #ifdef CONFIG_RAMBOOT_SDCARD
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_SYS_MMC_ENV_DEV	0
 #else
-#define CONFIG_ENV_IS_NOWHERE	/* Store ENV in memory only */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/p2371-0000.h b/include/configs/p2371-0000.h
index b106439071..3f5c669c39 100644
--- a/include/configs/p2371-0000.h
+++ b/include/configs/p2371-0000.h
@@ -22,7 +22,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, at the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/p2371-2180.h b/include/configs/p2371-2180.h
index 22fc122cc3..3fb62ded1e 100644
--- a/include/configs/p2371-2180.h
+++ b/include/configs/p2371-2180.h
@@ -22,7 +22,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, at the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/p2571.h b/include/configs/p2571.h
index 974fd3f59f..e8ed8b0fd3 100644
--- a/include/configs/p2571.h
+++ b/include/configs/p2571.h
@@ -23,7 +23,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, at the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/p2771-0000.h b/include/configs/p2771-0000.h
index 791a48a3be..55230291c2 100644
--- a/include/configs/p2771-0000.h
+++ b/include/configs/p2771-0000.h
@@ -18,7 +18,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, at the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/paz00.h b/include/configs/paz00.h
index 87a8557ea9..88754f0403 100644
--- a/include/configs/paz00.h
+++ b/include/configs/paz00.h
@@ -23,7 +23,6 @@
 #define CONFIG_MACH_TYPE		MACH_TYPE_PAZ00
 
 /* Environment in eMMC,@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 0
 #define CONFIG_SYS_MMC_ENV_PART 2
diff --git a/include/configs/pb1x00.h b/include/configs/pb1x00.h
index efbcbd2e05..85cac5a7b4 100644
--- a/include/configs/pb1x00.h
+++ b/include/configs/pb1x00.h
@@ -86,8 +86,6 @@
 #define CONFIG_SYS_FLASH_ERASE_TOUT	(2 * CONFIG_SYS_HZ) /* Timeout for Flash Erase */
 #define CONFIG_SYS_FLASH_WRITE_TOUT	(2 * CONFIG_SYS_HZ) /* Timeout for Flash Write */
 
-#define	CONFIG_ENV_IS_NOWHERE	1
-
 /* Address and size of Primary Environment Sector	*/
 #define CONFIG_ENV_ADDR		0xB0030000
 #define CONFIG_ENV_SIZE		0x10000
diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h
index fc75ca85c5..ce80e7ecbc 100644
--- a/include/configs/pcm051.h
+++ b/include/configs/pcm051.h
@@ -116,7 +116,6 @@
 4800, 9600, 14400, 19200, 28800, 38400, 56000, 57600, 115200 }
 
 /* CPU */
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_SPL_LDSCRIPT		"arch/arm/mach-omap2/u-boot-spl.lds"
 
diff --git a/include/configs/pengwyn.h b/include/configs/pengwyn.h
index 9c8720bee9..421d804bd7 100644
--- a/include/configs/pengwyn.h
+++ b/include/configs/pengwyn.h
@@ -162,7 +162,6 @@
 					"512k(SPL.backup3),1536k(u-boot)," \
 					"512k(u-boot-spl-os)," \
 					"512k(u-boot-env),5m(kernel),-(rootfs)"
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x260000 /* environment starts here */
 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
 /* NAND: SPL falcon mode configs */
diff --git a/include/configs/pepper.h b/include/configs/pepper.h
index 5abeffbade..ff3cd74ac3 100644
--- a/include/configs/pepper.h
+++ b/include/configs/pepper.h
@@ -19,7 +19,6 @@
 #define CONFIG_MACH_TYPE		MACH_TYPE_PEPPER
 
 #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
 #define CONFIG_EXTRA_ENV_SETTINGS \
diff --git a/include/configs/pic32mzdask.h b/include/configs/pic32mzdask.h
index c5bfdec8fa..57b265ce14 100644
--- a/include/configs/pic32mzdask.h
+++ b/include/configs/pic32mzdask.h
@@ -97,7 +97,6 @@
 /* -------------------------------------------------
  * Environment
  */
-#define CONFIG_ENV_IS_NOWHERE	1
 #define CONFIG_ENV_SIZE		0x4000
 
 /* ---------------------------------------------------------------------
diff --git a/include/configs/pico-imx6ul.h b/include/configs/pico-imx6ul.h
index 8d78f49c96..c861c2aeb0 100644
--- a/include/configs/pico-imx6ul.h
+++ b/include/configs/pico-imx6ul.h
@@ -143,7 +143,6 @@
 
 /* environment organization */
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
 
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/pico-imx7d.h b/include/configs/pico-imx7d.h
index d128eded05..e623f48fa2 100644
--- a/include/configs/pico-imx7d.h
+++ b/include/configs/pico-imx7d.h
@@ -122,7 +122,6 @@
 
 /* FLASH and environment organization */
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 
 #define CONFIG_ENV_OFFSET			(8 * SZ_64K)
 #define CONFIG_SYS_FSL_USDHC_NUM		2
diff --git a/include/configs/platinum.h b/include/configs/platinum.h
index 9c2182cbea..fb01f97254 100644
--- a/include/configs/platinum.h
+++ b/include/configs/platinum.h
@@ -92,7 +92,6 @@
 #define CONFIG_APBH_DMA_BURST8
 
 /* Environment in NAND */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(16 << 20)
 #define CONFIG_ENV_SECT_SIZE		(128 << 10)
 #define CONFIG_ENV_SIZE			CONFIG_ENV_SECT_SIZE
@@ -103,7 +102,6 @@
 
 /* Environment in MMC */
 #define CONFIG_ENV_SIZE			(8 << 10)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
 
diff --git a/include/configs/plutux.h b/include/configs/plutux.h
index ff396eceb9..5d692d159c 100644
--- a/include/configs/plutux.h
+++ b/include/configs/plutux.h
@@ -25,7 +25,6 @@
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
 
 /* Environment in NAND, aligned to start of last sector */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(SZ_512M - SZ_128K) /* 128K sectors */
 
 /* USB host support */
diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h
index b22a3b6a2b..b6ec563cee 100644
--- a/include/configs/pm9261.h
+++ b/include/configs/pm9261.h
@@ -256,7 +256,6 @@
 #elif defined(CONFIG_SYS_USE_NANDFLASH) /* CONFIG_SYS_USE_NANDFLASH */
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_OFFSET		0x60000
 #define CONFIG_ENV_OFFSET_REDUND	0x80000
 #define CONFIG_ENV_SIZE			0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/pm9263.h b/include/configs/pm9263.h
index 41d5722490..eeb3f27cfe 100644
--- a/include/configs/pm9263.h
+++ b/include/configs/pm9263.h
@@ -282,7 +282,6 @@
 #elif defined(CONFIG_SYS_USE_NANDFLASH) /* CFG_USE_NANDFLASH */
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x60000
 #define CONFIG_ENV_OFFSET_REDUND	0x80000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/pm9g45.h b/include/configs/pm9g45.h
index 5e58b6b021..dc4ebeab31 100644
--- a/include/configs/pm9g45.h
+++ b/include/configs/pm9g45.h
@@ -119,7 +119,6 @@
 #define CONFIG_SYS_MEMTEST_END		CONFIG_AT91SAM9G45_LCD_BASE
 
 /* bootstrap + u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_OFFSET		0x60000
 #define CONFIG_ENV_OFFSET_REDUND	0x80000
 #define CONFIG_ENV_SIZE			0x20000		/* 1 sector = 128 kB */
diff --git a/include/configs/pogo_e02.h b/include/configs/pogo_e02.h
index f94e74f0fc..db298f2841 100644
--- a/include/configs/pogo_e02.h
+++ b/include/configs/pogo_e02.h
@@ -41,10 +41,7 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_SECT_SIZE		0x20000	/* 128K */
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 #define CONFIG_ENV_SIZE			0x20000	/* 128k */
diff --git a/include/configs/popmetal_rk3288.h b/include/configs/popmetal_rk3288.h
index 0dc3532f33..15a374cca7 100644
--- a/include/configs/popmetal_rk3288.h
+++ b/include/configs/popmetal_rk3288.h
@@ -10,7 +10,6 @@
 #define ROCKCHIP_DEVICE_SETTINGS
 #include <configs/rk3288_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/puma_rk3399.h b/include/configs/puma_rk3399.h
index af1dae88ed..e481a28ae9 100644
--- a/include/configs/puma_rk3399.h
+++ b/include/configs/puma_rk3399.h
@@ -17,7 +17,6 @@
 #undef CONFIG_ENV_OFFSET
 #define CONFIG_ENV_OFFSET (240 * 1024)
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 1
 
 #define SDRAM_BANK_SIZE			(2UL << 30)
diff --git a/include/configs/qemu-ppce500.h b/include/configs/qemu-ppce500.h
index c26810723e..703d158b8b 100644
--- a/include/configs/qemu-ppce500.h
+++ b/include/configs/qemu-ppce500.h
@@ -71,8 +71,6 @@ extern unsigned long long get_phys_ccsrbar_addr_early(void);
 
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_TEXT_BASE
 
-#define CONFIG_ENV_IS_NOWHERE
-
 #define CONFIG_HWCONFIG
 
 #define CONFIG_SYS_INIT_RAM_ADDR		0x00100000
diff --git a/include/configs/qemu-x86.h b/include/configs/qemu-x86.h
index 05eb5ebf91..9690757109 100644
--- a/include/configs/qemu-x86.h
+++ b/include/configs/qemu-x86.h
@@ -49,7 +49,6 @@
 
 /* SPI is not supported */
 #undef CONFIG_ENV_IS_IN_SPI_FLASH
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_SPL_FRAMEWORK
 
diff --git a/include/configs/rk3036_common.h b/include/configs/rk3036_common.h
index 836c5e3fed..fc3dc0f4a6 100644
--- a/include/configs/rk3036_common.h
+++ b/include/configs/rk3036_common.h
@@ -10,7 +10,6 @@
 #include "rockchip-common.h"
 
 #define CONFIG_NR_DRAM_BANKS		1
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_SYS_MAXARGS		16
 #define CONFIG_SYS_MALLOC_LEN		(32 << 20)
diff --git a/include/configs/rock.h b/include/configs/rock.h
index de5291cd05..e998ec5f03 100644
--- a/include/configs/rock.h
+++ b/include/configs/rock.h
@@ -10,7 +10,6 @@
 #define ROCKCHIP_DEVICE_SETTINGS
 #include <configs/rk3188_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #ifdef CONFIG_ROCKCHIP_SPL_BACK_TO_BROM
diff --git a/include/configs/rock2.h b/include/configs/rock2.h
index b4dcf23b1c..bd39111710 100644
--- a/include/configs/rock2.h
+++ b/include/configs/rock2.h
@@ -14,7 +14,6 @@
 
 #include <configs/rk3288_common.h>
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/rv1108_common.h b/include/configs/rv1108_common.h
index 52750cb81b..2b63abce46 100644
--- a/include/configs/rv1108_common.h
+++ b/include/configs/rv1108_common.h
@@ -9,7 +9,6 @@
 #include <asm/arch/hardware.h>
 #include "rockchip-common.h"
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_SYS_MAXARGS		16
 #define CONFIG_SYS_MALLOC_LEN		(32 << 20)
diff --git a/include/configs/s32v234evb.h b/include/configs/s32v234evb.h
index b25a7ea344..c56125209d 100644
--- a/include/configs/s32v234evb.h
+++ b/include/configs/s32v234evb.h
@@ -211,7 +211,6 @@
 
 /* environment organization */
 #define CONFIG_ENV_SIZE			(8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 
 #define CONFIG_ENV_OFFSET		(12 * 64 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h
index c328e43dd6..0673fe54a4 100644
--- a/include/configs/s5p_goni.h
+++ b/include/configs/s5p_goni.h
@@ -199,7 +199,6 @@
 
 /* FLASH and environment organization */
 #define CONFIG_MMC_DEFAULT_DEV	0
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		CONFIG_MMC_DEFAULT_DEV
 #define CONFIG_ENV_SIZE			4096
 #define CONFIG_ENV_OFFSET		((32 - 4) << 10) /* 32KiB - 4KiB */
diff --git a/include/configs/s5pc210_universal.h b/include/configs/s5pc210_universal.h
index 0265684e67..b0bc69dab0 100644
--- a/include/configs/s5pc210_universal.h
+++ b/include/configs/s5pc210_universal.h
@@ -77,7 +77,6 @@
 #define CONFIG_BOOTBLOCK	"10"
 #define CONFIG_UBIBLOCK		"9"
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		CONFIG_MMC_DEFAULT_DEV
 #define CONFIG_ENV_SIZE			4096
 #define CONFIG_ENV_OFFSET		((32 - 4) << 10) /* 32KiB - 4KiB */
diff --git a/include/configs/sagem_f at st1704.h b/include/configs/sagem_f at st1704.h
index dbc7725796..fd1c75935e 100644
--- a/include/configs/sagem_f at st1704.h
+++ b/include/configs/sagem_f@st1704.h
@@ -7,7 +7,6 @@
 #include <configs/bmips_common.h>
 #include <configs/bmips_bcm6338.h>
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #define CONFIG_AUTO_COMPLETE
diff --git a/include/configs/salvator-x.h b/include/configs/salvator-x.h
index 0ac3900326..7f81063d13 100644
--- a/include/configs/salvator-x.h
+++ b/include/configs/salvator-x.h
@@ -73,7 +73,6 @@
 #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
diff --git a/include/configs/sama5d2_ptc.h b/include/configs/sama5d2_ptc.h
index 7607f94640..b25be974b6 100644
--- a/include/configs/sama5d2_ptc.h
+++ b/include/configs/sama5d2_ptc.h
@@ -88,7 +88,6 @@
 #undef CONFIG_ENV_OFFSET_REDUND
 #undef CONFIG_BOOTCOMMAND
 /* u-boot env in nand flash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x200000
 #define CONFIG_ENV_OFFSET_REDUND	0x400000
 #define CONFIG_BOOTCOMMAND		"nand read 0x21000000 0xb80000 0x80000;"	\
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index fbe26cae21..c028ee384f 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -80,8 +80,6 @@
 /* override the bootcmd, bootargs and other configuration for nandflash env */
 #elif CONFIG_SYS_USE_MMC
 /* override the bootcmd, bootargs and other configuration for sd/mmc env */
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 /* SPL */
diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h
index 891d6a0f79..a5a0f7c32f 100644
--- a/include/configs/sama5d3xek.h
+++ b/include/configs/sama5d3xek.h
@@ -109,8 +109,6 @@
 /* override the bootcmd, bootargs and other configuration nandflash env */
 #elif CONFIG_SYS_USE_MMC
 /* override the bootcmd, bootargs and other configuration for sd/mmc env */
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 /* SPL */
diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h
index 9276cf9734..6ec78f1018 100644
--- a/include/configs/sandbox.h
+++ b/include/configs/sandbox.h
@@ -51,7 +51,6 @@
 #define CONFIG_AUTO_COMPLETE
 
 #define CONFIG_ENV_SIZE		8192
-#define CONFIG_ENV_IS_NOWHERE
 
 /* SPI - enable all SPI flash types for testing purposes */
 #define CONFIG_CMD_SF_TEST
diff --git a/include/configs/sansa_fuze_plus.h b/include/configs/sansa_fuze_plus.h
index a6da2ccf82..e55addb99c 100644
--- a/include/configs/sansa_fuze_plus.h
+++ b/include/configs/sansa_fuze_plus.h
@@ -19,7 +19,6 @@
 
 /* Environment */
 #define CONFIG_ENV_SIZE			(16 * 1024)
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_OVERWRITE
 
 /* Booting Linux */
diff --git a/include/configs/sbc8349.h b/include/configs/sbc8349.h
index 4d87f5334a..1d07593e95 100644
--- a/include/configs/sbc8349.h
+++ b/include/configs/sbc8349.h
@@ -380,7 +380,6 @@
 #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
 
 #else
-	#define CONFIG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/sc_sps_1.h b/include/configs/sc_sps_1.h
index 73e7e6bbcf..f7aeb640f6 100644
--- a/include/configs/sc_sps_1.h
+++ b/include/configs/sc_sps_1.h
@@ -23,14 +23,11 @@
 
 /* Environment */
 #define CONFIG_ENV_SIZE			(16 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 
 /* Environment is in MMC */
 #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC)
 #define CONFIG_ENV_OFFSET		(256 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 /* FEC Ethernet on SoC */
diff --git a/include/configs/seaboard.h b/include/configs/seaboard.h
index afc2c7dfe9..2482ba1dcd 100644
--- a/include/configs/seaboard.h
+++ b/include/configs/seaboard.h
@@ -31,7 +31,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* 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 0
 #define CONFIG_SYS_MMC_ENV_PART 2
diff --git a/include/configs/sfr_nb4_ser.h b/include/configs/sfr_nb4_ser.h
index ab64518e0b..6bd2d76f53 100644
--- a/include/configs/sfr_nb4_ser.h
+++ b/include/configs/sfr_nb4_ser.h
@@ -9,7 +9,6 @@
 
 #define CONFIG_REMAKE_ELF
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
 #define CONFIG_AUTO_COMPLETE
diff --git a/include/configs/sheep_rk3368.h b/include/configs/sheep_rk3368.h
index ec33565d09..eac9755bba 100644
--- a/include/configs/sheep_rk3368.h
+++ b/include/configs/sheep_rk3368.h
@@ -13,7 +13,6 @@
 #define KERNEL_LOAD_ADDR		0x280000
 #define DTB_LOAD_ADDR			0x5600000
 #define INITRD_LOAD_ADDR		0x5bf0000
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x2000
 
 #define CONFIG_CONSOLE_SCROLL_LINES	10
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 9d2c106d46..d4c9995d50 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -35,10 +35,7 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SECT_SIZE		0x20000	/* 128K */
-#else
-#define CONFIG_ENV_IS_NOWHERE		1	/* if env in SDRAM */
 #endif
 /*
  * max 4k env size is enough, but in case of nand
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
index 21029d10ae..73cfb44881 100644
--- a/include/configs/siemens-am33x-common.h
+++ b/include/configs/siemens-am33x-common.h
@@ -38,7 +38,6 @@
 #endif
 
 #define CONFIG_ENV_OVERWRITE		1
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_SYS_LONGHELP
 #define CONFIG_CMDLINE_EDITING
@@ -216,7 +215,6 @@
  * 0x442000 - 0x800000 : Userland
  */
 #if defined(CONFIG_SPI_BOOT)
-# undef CONFIG_ENV_IS_NOWHERE
 # define CONFIG_ENV_IS_IN_SPI_FLASH
 # define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 # define CONFIG_ENV_OFFSET		(892 << 10) /* 892 KiB in */
@@ -536,8 +534,6 @@
 #define CONFIG_SYS_MAX_NAND_DEVICE	1		/* Max number of NAND
 							   devices */
 #if !defined(CONFIG_SPI_BOOT)
-#undef CONFIG_ENV_IS_NOWHERE
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x260000 /* environment starts here */
 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
 #endif
diff --git a/include/configs/smartweb.h b/include/configs/smartweb.h
index 8400278209..9df88d6a56 100644
--- a/include/configs/smartweb.h
+++ b/include/configs/smartweb.h
@@ -183,7 +183,6 @@
 /*
  * The NAND Flash partitions:
  */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(0x100000)
 #define CONFIG_ENV_OFFSET_REDUND	(0x180000)
 #define CONFIG_ENV_RANGE		(SZ_512K)
diff --git a/include/configs/smdkv310.h b/include/configs/smdkv310.h
index ccb89216d8..9986a3b707 100644
--- a/include/configs/smdkv310.h
+++ b/include/configs/smdkv310.h
@@ -73,7 +73,6 @@
 /* MIU (Memory Interleaving Unit) */
 #define CONFIG_MIU_2BIT_INTERLEAVED
 
-#define CONFIG_ENV_IS_IN_MMC		1
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			(16 << 10)	/* 16 KB */
 #define RESERVE_BLOCK_SIZE		(512)
diff --git a/include/configs/snapper9260.h b/include/configs/snapper9260.h
index d3e73f2097..63bc769efe 100644
--- a/include/configs/snapper9260.h
+++ b/include/configs/snapper9260.h
@@ -119,7 +119,6 @@
 #define CONFIG_BOOTP_HOSTNAME
 
 /* Environment settings */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(512 << 10)
 #define CONFIG_ENV_SIZE			(256 << 10)
 #define CONFIG_ENV_OVERWRITE
diff --git a/include/configs/snapper9g45.h b/include/configs/snapper9g45.h
index 4e0b9b1252..2c5f2648ee 100644
--- a/include/configs/snapper9g45.h
+++ b/include/configs/snapper9g45.h
@@ -89,7 +89,6 @@
 #define CONFIG_BOOTP_HOSTNAME
 
 /* Environment settings */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(512 << 10)
 #define CONFIG_ENV_SIZE			(256 << 10)
 #define CONFIG_ENV_OVERWRITE
diff --git a/include/configs/sniper.h b/include/configs/sniper.h
index 6b065c9dc7..669ce8588d 100644
--- a/include/configs/sniper.h
+++ b/include/configs/sniper.h
@@ -143,7 +143,6 @@
  */
 
 #define CONFIG_ENV_SIZE		(128 * 1024)
-#define CONFIG_ENV_IS_NOWHERE
 
 #define CONFIG_ENV_OVERWRITE
 
diff --git a/include/configs/socfpga_arria10_socdk.h b/include/configs/socfpga_arria10_socdk.h
index 3b59b6a106..55850bd1b3 100644
--- a/include/configs/socfpga_arria10_socdk.h
+++ b/include/configs/socfpga_arria10_socdk.h
@@ -33,7 +33,6 @@
 /*
  * U-Boot environment configurations
  */
-#define CONFIG_ENV_IS_IN_MMC
 
 /*
  * arguments passed to the bootz command. The value of
diff --git a/include/configs/socfpga_arria5_socdk.h b/include/configs/socfpga_arria5_socdk.h
index fe4031910b..9f83858bd1 100644
--- a/include/configs/socfpga_arria5_socdk.h
+++ b/include/configs/socfpga_arria5_socdk.h
@@ -23,8 +23,6 @@
 #define CONFIG_PHY_MICREL_KSZ9021
 #endif
 
-#define CONFIG_ENV_IS_IN_MMC
-
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
 
diff --git a/include/configs/socfpga_cyclone5_socdk.h b/include/configs/socfpga_cyclone5_socdk.h
index be56521121..86b4a9dfb8 100644
--- a/include/configs/socfpga_cyclone5_socdk.h
+++ b/include/configs/socfpga_cyclone5_socdk.h
@@ -23,8 +23,6 @@
 #define CONFIG_PHY_MICREL_KSZ9021
 #endif
 
-#define CONFIG_ENV_IS_IN_MMC
-
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
 
diff --git a/include/configs/socfpga_de0_nano_soc.h b/include/configs/socfpga_de0_nano_soc.h
index 320c585a39..6516c45acf 100644
--- a/include/configs/socfpga_de0_nano_soc.h
+++ b/include/configs/socfpga_de0_nano_soc.h
@@ -23,8 +23,6 @@
 #define CONFIG_PHY_MICREL_KSZ9031
 #endif
 
-#define CONFIG_ENV_IS_IN_MMC
-
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
 
diff --git a/include/configs/socfpga_de10_nano.h b/include/configs/socfpga_de10_nano.h
index ef693b0038..04be2b1689 100644
--- a/include/configs/socfpga_de10_nano.h
+++ b/include/configs/socfpga_de10_nano.h
@@ -23,8 +23,6 @@
 #define CONFIG_PHY_MICREL_KSZ9031
 #endif
 
-#define CONFIG_ENV_IS_IN_MMC
-
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
 
diff --git a/include/configs/socfpga_de1_soc.h b/include/configs/socfpga_de1_soc.h
index 522ac74ffe..9405083b3e 100644
--- a/include/configs/socfpga_de1_soc.h
+++ b/include/configs/socfpga_de1_soc.h
@@ -23,8 +23,6 @@
 #define CONFIG_PHY_MICREL_KSZ9021
 #endif
 
-#define CONFIG_ENV_IS_IN_MMC
-
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
 
diff --git a/include/configs/socfpga_mcvevk.h b/include/configs/socfpga_mcvevk.h
index ee85708b7a..e9c7c71a73 100644
--- a/include/configs/socfpga_mcvevk.h
+++ b/include/configs/socfpga_mcvevk.h
@@ -23,7 +23,6 @@
 
 /* Environment is in MMC */
 #define CONFIG_ENV_OVERWRITE
-#define CONFIG_ENV_IS_IN_MMC
 
 /* Extra Environment */
 #define CONFIG_EXTRA_ENV_SETTINGS					\
diff --git a/include/configs/socfpga_sockit.h b/include/configs/socfpga_sockit.h
index c75acc0749..57de60ecfa 100644
--- a/include/configs/socfpga_sockit.h
+++ b/include/configs/socfpga_sockit.h
@@ -23,8 +23,6 @@
 #define CONFIG_PHY_MICREL_KSZ9021
 #endif
 
-#define CONFIG_ENV_IS_IN_MMC
-
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
 
diff --git a/include/configs/socfpga_socrates.h b/include/configs/socfpga_socrates.h
index a08fa9ff4c..6b6cb6aa14 100644
--- a/include/configs/socfpga_socrates.h
+++ b/include/configs/socfpga_socrates.h
@@ -23,8 +23,6 @@
 #define CONFIG_PHY_MICREL_KSZ9021
 #endif
 
-#define CONFIG_ENV_IS_IN_MMC
-
 /* The rest of the configuration is shared */
 #include <configs/socfpga_common.h>
 
diff --git a/include/configs/spear3xx_evb.h b/include/configs/spear3xx_evb.h
index dd73a4d1bd..98a74fa6e1 100644
--- a/include/configs/spear3xx_evb.h
+++ b/include/configs/spear3xx_evb.h
@@ -25,7 +25,6 @@
 #endif
 
 #if defined(CONFIG_NAND)
-#define CONFIG_ENV_IS_IN_NAND
 #else
 #define CONFIG_ENV_IS_IN_FLASH
 #endif
diff --git a/include/configs/spear6xx_evb.h b/include/configs/spear6xx_evb.h
index 7745247052..de08a72704 100644
--- a/include/configs/spear6xx_evb.h
+++ b/include/configs/spear6xx_evb.h
@@ -17,7 +17,6 @@
 #endif
 
 #if defined(CONFIG_NAND)
-#define CONFIG_ENV_IS_IN_NAND
 #else
 #define CONFIG_ENV_IS_IN_FLASH
 #endif
diff --git a/include/configs/stih410-b2260.h b/include/configs/stih410-b2260.h
index 6f4070ff43..eaa93a5830 100644
--- a/include/configs/stih410-b2260.h
+++ b/include/configs/stih410-b2260.h
@@ -28,7 +28,6 @@
 	"board= B2260" \
 	"load_addr= #CONFIG_SYS_LOAD_ADDR \0"
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE 0x4000
 
 /* Extra Commands */
diff --git a/include/configs/stm32f746-disco.h b/include/configs/stm32f746-disco.h
index 4e0edcbc01..46955b1f1f 100644
--- a/include/configs/stm32f746-disco.h
+++ b/include/configs/stm32f746-disco.h
@@ -28,7 +28,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	8
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			(8 << 10)
 
 #define CONFIG_STM32_FLASH
diff --git a/include/configs/strider.h b/include/configs/strider.h
index 994ac73e13..be6bd7352a 100644
--- a/include/configs/strider.h
+++ b/include/configs/strider.h
@@ -537,7 +537,6 @@ void fpga_control_clear(unsigned int bus, int pin);
 #define CONFIG_ENV_ADDR_REDUND	(CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE_REDUND	CONFIG_ENV_SIZE
 #else
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE		0x2000		/* 8KB */
 #endif
 
diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h
index 0b87c9ca97..dbf4496167 100644
--- a/include/configs/tam3517-common.h
+++ b/include/configs/tam3517-common.h
@@ -137,7 +137,6 @@
 /* **** PISMO SUPPORT *** */
 #define CONFIG_NAND
 #define CONFIG_NAND_OMAP_GPMC
-#define CONFIG_ENV_IS_IN_NAND
 #define SMNAND_ENV_OFFSET		0x180000 /* environment starts here */
 
 /* Redundant Environment */
diff --git a/include/configs/tao3530.h b/include/configs/tao3530.h
index f994d2dbf3..5650394ebe 100644
--- a/include/configs/tao3530.h
+++ b/include/configs/tao3530.h
@@ -203,7 +203,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_ONENAND_BASE		ONENAND_MAP
 
-#define CONFIG_ENV_IS_IN_NAND		1
 #define ONENAND_ENV_OFFSET		0x260000 /* environment starts here */
 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
 
diff --git a/include/configs/taurus.h b/include/configs/taurus.h
index bed2a5c3c0..ecf12fe302 100644
--- a/include/configs/taurus.h
+++ b/include/configs/taurus.h
@@ -145,7 +145,6 @@
 #define CONFIG_SYS_LOAD_ADDR			0x22000000
 
 /* bootstrap in spi flash , u-boot + env + linux in nandflash */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x100000
 #define CONFIG_ENV_OFFSET_REDUND	0x180000
 #define CONFIG_ENV_SIZE		(SZ_128K)	/* 1 sector = 128 kB */
diff --git a/include/configs/tb100.h b/include/configs/tb100.h
index fe8e6c4e3b..67b5774a09 100644
--- a/include/configs/tb100.h
+++ b/include/configs/tb100.h
@@ -65,7 +65,6 @@
 /*
  * Environment settings
  */
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			SZ_2K
 #define CONFIG_ENV_OFFSET		0
 
diff --git a/include/configs/tbs2910.h b/include/configs/tbs2910.h
index 79f6b162f7..4baccdc1e9 100644
--- a/include/configs/tbs2910.h
+++ b/include/configs/tbs2910.h
@@ -128,7 +128,6 @@
 #endif
 
 /* Environment organization */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		2 /* overwritten on SD boot */
 #define CONFIG_SYS_MMC_ENV_PART		1 /* overwritten on SD boot */
 #define CONFIG_ENV_SIZE			(8 * 1024)
diff --git a/include/configs/tec-ng.h b/include/configs/tec-ng.h
index 6406d39698..c32a087099 100644
--- a/include/configs/tec-ng.h
+++ b/include/configs/tec-ng.h
@@ -21,7 +21,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* 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		0
 #define CONFIG_SYS_MMC_ENV_PART		2
diff --git a/include/configs/tec.h b/include/configs/tec.h
index 8ffdbec9d1..5f84f2489a 100644
--- a/include/configs/tec.h
+++ b/include/configs/tec.h
@@ -25,7 +25,6 @@
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
 
 /* Environment in NAND, aligned to start of last sector */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(SZ_512M - SZ_128K) /* 128K sectors */
 
 /* USB host support */
diff --git a/include/configs/thunderx_88xx.h b/include/configs/thunderx_88xx.h
index f52fc8225c..514590a270 100644
--- a/include/configs/thunderx_88xx.h
+++ b/include/configs/thunderx_88xx.h
@@ -76,7 +76,6 @@
 					"root=/dev/sda2 coherent_pool=16M"
 
 /* Do not preserve environment */
-#define CONFIG_ENV_IS_NOWHERE		1
 #define CONFIG_ENV_SIZE			0x1000
 
 /* Monitor Command Prompt */
diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h
index ea83ea2495..b5f817749c 100644
--- a/include/configs/ti814x_evm.h
+++ b/include/configs/ti814x_evm.h
@@ -135,8 +135,6 @@
 #define CONFIG_ENV_OVERWRITE
 #define CONFIG_CONS_INDEX		1
 
-#define CONFIG_ENV_IS_NOWHERE
-
 /* Defines for SPL */
 #define CONFIG_SPL_FRAMEWORK
 #define CONFIG_SPL_TEXT_BASE		0x40300000
diff --git a/include/configs/ti816x_evm.h b/include/configs/ti816x_evm.h
index 4a81b1daf8..bba10ec001 100644
--- a/include/configs/ti816x_evm.h
+++ b/include/configs/ti816x_evm.h
@@ -107,7 +107,6 @@
 					"8m(NAND.kernel)," \
 					"-(NAND.file-system)"
 #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x000c0000
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		0x001c0000
 #define CONFIG_ENV_OFFSET_REDUND	0x001e0000
 #define CONFIG_SYS_ENV_SECT_SIZE	CONFIG_SYS_NAND_BLOCK_SIZE
diff --git a/include/configs/tinker_rk3288.h b/include/configs/tinker_rk3288.h
index 72578f9202..58eea3c405 100644
--- a/include/configs/tinker_rk3288.h
+++ b/include/configs/tinker_rk3288.h
@@ -18,7 +18,6 @@
 	func(PXE, pxe, na) \
 	func(DHCP, dchp, na)
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 1
 
 #endif
diff --git a/include/configs/titanium.h b/include/configs/titanium.h
index 79e37e2cef..cb695356f0 100644
--- a/include/configs/titanium.h
+++ b/include/configs/titanium.h
@@ -168,7 +168,6 @@
 #define CONFIG_APBH_DMA_BURST8
 
 /* Environment in NAND */
-#define CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_OFFSET		(16 << 20)
 #define CONFIG_ENV_SECT_SIZE		(128 << 10)
 #define CONFIG_ENV_SIZE			CONFIG_ENV_SECT_SIZE
@@ -179,7 +178,6 @@
 
 /* Environment in MMC */
 #define CONFIG_ENV_SIZE			(8 << 10)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
 
diff --git a/include/configs/topic_miami.h b/include/configs/topic_miami.h
index ee46d3ac7e..d538080aa3 100644
--- a/include/configs/topic_miami.h
+++ b/include/configs/topic_miami.h
@@ -14,7 +14,6 @@
 #define CONFIG_ZYNQ_I2C1
 
 /* Speed up boot time by ignoring the environment which we never used */
-#define CONFIG_ENV_IS_NOWHERE
 
 #include "zynq-common.h"
 
diff --git a/include/configs/tplink_wdr4300.h b/include/configs/tplink_wdr4300.h
index fc99dbd91e..a03ad67af0 100644
--- a/include/configs/tplink_wdr4300.h
+++ b/include/configs/tplink_wdr4300.h
@@ -37,7 +37,6 @@
 #define CONFIG_BOOTCOMMAND		\
 	"dhcp 192.168.1.1:wdr4300.fit && bootm $loadaddr"
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_SIZE			0x10000
 
 /*
diff --git a/include/configs/tqma6.h b/include/configs/tqma6.h
index 0b362559f2..29e22aa311 100644
--- a/include/configs/tqma6.h
+++ b/include/configs/tqma6.h
@@ -92,7 +92,6 @@
 
 #if defined(CONFIG_TQMA6X_MMC_BOOT)
 
-#define CONFIG_ENV_IS_IN_MMC
 #define TQMA6_UBOOT_OFFSET		SZ_1K
 #define TQMA6_UBOOT_SECTOR_START	0x2
 #define TQMA6_UBOOT_SECTOR_COUNT	0x7fe
diff --git a/include/configs/trats.h b/include/configs/trats.h
index e08bbc49ae..3059d89ac9 100644
--- a/include/configs/trats.h
+++ b/include/configs/trats.h
@@ -55,7 +55,6 @@
 #define CONFIG_BOOTBLOCK		"10"
 #define CONFIG_ENV_COMMON_BOOT		"${console} ${meminfo}"
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		CONFIG_MMC_DEFAULT_DEV
 #define CONFIG_ENV_SIZE			4096
 #define CONFIG_ENV_OFFSET		((32 - 4) << 10) /* 32KiB - 4KiB */
diff --git a/include/configs/trats2.h b/include/configs/trats2.h
index 927d48255c..1f3ce9d941 100644
--- a/include/configs/trats2.h
+++ b/include/configs/trats2.h
@@ -49,7 +49,6 @@
 
 #define CONFIG_SYS_MONITOR_BASE	0x00000000
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		CONFIG_MMC_DEFAULT_DEV
 #define CONFIG_ENV_SIZE			4096
 #define CONFIG_ENV_OFFSET		((32 - 4) << 10) /* 32KiB - 4KiB */
diff --git a/include/configs/tricorder.h b/include/configs/tricorder.h
index d18a333d01..8aa8e357fd 100644
--- a/include/configs/tricorder.h
+++ b/include/configs/tricorder.h
@@ -152,9 +152,6 @@
  * which will not be influenced by any data already on the device.
  */
 #ifdef CONFIG_FLASHCARD
-
-#define CONFIG_ENV_IS_NOWHERE
-
 /* the rdaddr is 16 MiB before the loadaddr */
 #define CONFIG_ENV_RDADDR	"rdaddr=0x81000000\0"
 
@@ -175,8 +172,6 @@
 
 #define CONFIG_ENV_OVERWRITE /* allow to overwrite serial and ethaddr */
 
-#define CONFIG_ENV_IS_IN_NAND
-
 #define CONFIG_EXTRA_ENV_SETTINGS \
 	CONFIG_COMMON_ENV_SETTINGS \
 	"mmcargs=" \
diff --git a/include/configs/ts4800.h b/include/configs/ts4800.h
index 7bb8c87988..959db5fdb2 100644
--- a/include/configs/ts4800.h
+++ b/include/configs/ts4800.h
@@ -160,7 +160,6 @@
 
 #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
 #define CONFIG_ENV_SIZE        (8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV 0
 
 #endif
diff --git a/include/configs/udoo.h b/include/configs/udoo.h
index aef4563ede..d3fa5d71c1 100644
--- a/include/configs/udoo.h
+++ b/include/configs/udoo.h
@@ -168,7 +168,6 @@
 /* Environment organization */
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
 
diff --git a/include/configs/udoo_neo.h b/include/configs/udoo_neo.h
index c6f39c38b3..60b76edd1f 100644
--- a/include/configs/udoo_neo.h
+++ b/include/configs/udoo_neo.h
@@ -85,7 +85,6 @@
 /* Environment organization */
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 
 #define CONFIG_IMX_THERMAL
 
diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h
index e45b506eba..b8afa81325 100644
--- a/include/configs/uniphier.h
+++ b/include/configs/uniphier.h
@@ -70,9 +70,6 @@
 
 #define CONFIG_CONS_INDEX		1
 
-/* #define CONFIG_ENV_IS_NOWHERE */
-/* #define CONFIG_ENV_IS_IN_NAND */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET			0x100000
 #define CONFIG_ENV_SIZE				0x2000
 /* #define CONFIG_ENV_OFFSET_REDUND	(CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) */
diff --git a/include/configs/usbarmory.h b/include/configs/usbarmory.h
index e25bf99e1c..5bacc9d834 100644
--- a/include/configs/usbarmory.h
+++ b/include/configs/usbarmory.h
@@ -21,7 +21,6 @@
 /* U-Boot environment */
 #define CONFIG_ENV_OFFSET	(6 * 64 * 1024)
 #define CONFIG_ENV_SIZE		(8 * 1024)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV	0
 
 /* U-Boot general configurations */
diff --git a/include/configs/venice2.h b/include/configs/venice2.h
index 850a9bd49a..5e9b79eb04 100644
--- a/include/configs/venice2.h
+++ b/include/configs/venice2.h
@@ -23,7 +23,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in eMMC, at the end of 2nd "boot sector" */
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_SYS_MMC_ENV_PART		2
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/ventana.h b/include/configs/ventana.h
index 1ab6476f3c..9b8b1010a9 100644
--- a/include/configs/ventana.h
+++ b/include/configs/ventana.h
@@ -21,7 +21,6 @@
 #define CONFIG_MACH_TYPE		MACH_TYPE_VENTANA
 
 /* Environment in eMMC,@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 0
 #define CONFIG_SYS_MMC_ENV_PART 2
diff --git a/include/configs/veyron.h b/include/configs/veyron.h
index 3bd8dd60b5..3f236aa13c 100644
--- a/include/configs/veyron.h
+++ b/include/configs/veyron.h
@@ -14,7 +14,6 @@
 
 #include <configs/rk3288_common.h>
 
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_SPL_SPI_LOAD
 #define CONFIG_SPI_FLASH_GIGADEVICE
 
diff --git a/include/configs/vining_2000.h b/include/configs/vining_2000.h
index 78e14b38c1..0fed7f37ca 100644
--- a/include/configs/vining_2000.h
+++ b/include/configs/vining_2000.h
@@ -101,7 +101,6 @@
 #define CONFIG_ENV_SIZE			SZ_8K
 #define CONFIG_ENV_OFFSET_REDUND	(9 * SZ_64K)
 #define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE
-#define CONFIG_ENV_IS_IN_MMC
 
 #ifdef CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SUPPORT_EMMC_BOOT
diff --git a/include/configs/vme8349.h b/include/configs/vme8349.h
index 1aed81fc14..f2a15f37fe 100644
--- a/include/configs/vme8349.h
+++ b/include/configs/vme8349.h
@@ -323,7 +323,6 @@
 #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
 
 #else
-	#define CONFIG_ENV_IS_NOWHERE		/* Store ENV in memory only */
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
index afc5edf33b..44ecb113f8 100644
--- a/include/configs/wandboard.h
+++ b/include/configs/wandboard.h
@@ -149,7 +149,6 @@
 /* Environment organization */
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(768 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
 
diff --git a/include/configs/warp.h b/include/configs/warp.h
index afe3eaed46..0738d2fca5 100644
--- a/include/configs/warp.h
+++ b/include/configs/warp.h
@@ -50,7 +50,6 @@
 
 #define CONFIG_ENV_OFFSET		(6 * SZ_64K)
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
 
 /* VDD voltage 1.65 - 1.95 */
diff --git a/include/configs/warp7.h b/include/configs/warp7.h
index 23b6eae533..75ae8a3e33 100644
--- a/include/configs/warp7.h
+++ b/include/configs/warp7.h
@@ -112,7 +112,6 @@
 
 /* environment organization */
 #define CONFIG_ENV_SIZE			SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 
 #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
 #define CONFIG_SYS_FSL_USDHC_NUM	1
diff --git a/include/configs/work_92105.h b/include/configs/work_92105.h
index 56f53b9732..807cb99c81 100644
--- a/include/configs/work_92105.h
+++ b/include/configs/work_92105.h
@@ -138,7 +138,6 @@
  * Environment
  */
 
-#define CONFIG_ENV_IS_IN_NAND		1
 #define CONFIG_ENV_SIZE			0x00020000
 #define CONFIG_ENV_OFFSET		0x00100000
 #define CONFIG_ENV_OFFSET_REDUND	0x00120000
diff --git a/include/configs/x86-chromebook.h b/include/configs/x86-chromebook.h
index b0e7e8115f..51366d4d4e 100644
--- a/include/configs/x86-chromebook.h
+++ b/include/configs/x86-chromebook.h
@@ -39,7 +39,6 @@
 #define VIDEO_IO_OFFSET				0
 #define CONFIG_X86EMU_RAW_IO
 
-#undef CONFIG_ENV_IS_NOWHERE
 #undef CONFIG_ENV_SIZE
 #define CONFIG_ENV_SIZE			0x1000
 #define CONFIG_ENV_SECT_SIZE		0x1000
diff --git a/include/configs/xfi3.h b/include/configs/xfi3.h
index 2e6e75d5e3..bd829a9495 100644
--- a/include/configs/xfi3.h
+++ b/include/configs/xfi3.h
@@ -19,7 +19,6 @@
 
 /* Environment */
 #define CONFIG_ENV_SIZE			(16 * 1024)
-#define CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_OVERWRITE
 
 /* Booting Linux */
diff --git a/include/configs/xilinx-ppc.h b/include/configs/xilinx-ppc.h
index e8a0c1c33d..cfc687806a 100644
--- a/include/configs/xilinx-ppc.h
+++ b/include/configs/xilinx-ppc.h
@@ -77,8 +77,6 @@
 #define CONFIG_CMD_MTDPARTS
 #define CONFIG_MTD_DEVICE		/* needed for mtdparts commands */
 #define CONFIG_FLASH_CFI_MTD
-#else
-#define CONFIG_ENV_IS_NOWHERE
 #endif
 
 /* The following table includes the supported baudrates */
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index c7fcd86dd5..0f4ca7452b 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -138,9 +138,6 @@
 #endif
 
 /* Do not preserve environment */
-#if !defined(CONFIG_ENV_IS_IN_FAT)
-#define CONFIG_ENV_IS_NOWHERE		1
-#endif
 #define CONFIG_ENV_SIZE			0x8000
 
 /* Monitor Command Prompt */
diff --git a/include/configs/xpress.h b/include/configs/xpress.h
index e13b792f38..4186702e9a 100644
--- a/include/configs/xpress.h
+++ b/include/configs/xpress.h
@@ -57,7 +57,6 @@
 
 /* Environment is in stored in the eMMC boot partition */
 #define CONFIG_ENV_SIZE			(16 << 10)
-#define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(512 << 10)
 #define CONFIG_SYS_MMC_ENV_DEV		0	/* USDHC2 */
 #define CONFIG_SYS_MMC_ENV_PART		1	/* boot parition */
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index 4b6b088851..807b097d34 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -165,8 +165,6 @@
 # elif defined(CONFIG_ZYNQ_QSPI)
 /* Environment in Serial Flash */
 #  define CONFIG_ENV_IS_IN_SPI_FLASH
-# elif !defined(CONFIG_MTD_NOR_FLASH)
-#  define CONFIG_ENV_IS_NOWHERE
 # endif
 
 # define CONFIG_ENV_SECT_SIZE		CONFIG_ENV_SIZE
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 04/30] env: Move help from README to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (2 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 03/30] Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH " Simon Glass
                   ` (27 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

The CONFIG_ENV_IS_IN_... options which have already been converted to
Kconfig only have a small amount of help. Move the rest of it over from
the README.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README      | 114 ------------------------------------------------------------
 env/Kconfig | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 101 insertions(+), 116 deletions(-)

diff --git a/README b/README
index 5fe8a22686..6fd8a53ce4 100644
--- a/README
+++ b/README
@@ -3656,75 +3656,12 @@ BE CAREFUL! For some special cases, the local device can not use
 environment stored in a remote NOR flash by SRIO or PCIE link,
 but it can not erase, write this NOR flash by SRIO or PCIE interface.
 
-- CONFIG_ENV_IS_IN_NAND:
-
-	Define this if you have a NAND device which you want to use
-	for the environment.
-
-	- CONFIG_ENV_OFFSET:
-	- CONFIG_ENV_SIZE:
-
-	  These two #defines specify the offset and size of the environment
-	  area within the first NAND device.  CONFIG_ENV_OFFSET must be
-	  aligned to an erase block boundary.
-
-	- CONFIG_ENV_OFFSET_REDUND (optional):
-
-	  This setting describes a second storage area of CONFIG_ENV_SIZE
-	  size used to hold a redundant copy of the environment data, so
-	  that there is a valid backup copy in case there is a power failure
-	  during a "saveenv" operation.	 CONFIG_ENV_OFFSET_REDUND must be
-	  aligned to an erase block boundary.
-
-	- CONFIG_ENV_RANGE (optional):
-
-	  Specifies the length of the region in which the environment
-	  can be written.  This should be a multiple of the NAND device's
-	  block size.  Specifying a range with more erase blocks than
-	  are needed to hold CONFIG_ENV_SIZE allows bad blocks within
-	  the range to be avoided.
-
-	- CONFIG_ENV_OFFSET_OOB (optional):
-
-	  Enables support for dynamically retrieving the offset of the
-	  environment from block zero's out-of-band data.  The
-	  "nand env.oob" command can be used to record this offset.
-	  Currently, CONFIG_ENV_OFFSET_REDUND is not supported when
-	  using CONFIG_ENV_OFFSET_OOB.
-
 - CONFIG_NAND_ENV_DST
 
 	Defines address in RAM to which the nand_spl code should copy the
 	environment. If redundant environment is used, it will be copied to
 	CONFIG_NAND_ENV_DST + CONFIG_ENV_SIZE.
 
-- CONFIG_ENV_IS_IN_UBI:
-
-	Define this if you have an UBI volume that you want to use for the
-	environment.  This has the benefit of wear-leveling the environment
-	accesses, which is important on NAND.
-
-	- CONFIG_ENV_UBI_PART:
-
-	  Define this to a string that is the mtd partition containing the UBI.
-
-	- CONFIG_ENV_UBI_VOLUME:
-
-	  Define this to the name of the volume that you want to store the
-	  environment in.
-
-	- CONFIG_ENV_UBI_VOLUME_REDUND:
-
-	  Define this to the name of another volume to store a second copy of
-	  the environment in.  This will enable redundant environments in UBI.
-	  It is assumed that both volumes are in the same MTD partition.
-
-	- CONFIG_UBI_SILENCE_MSG
-	- CONFIG_UBIFS_SILENCE_MSG
-
-	  You will probably want to define these to avoid a really noisy system
-	  when storing the env in UBI.
-
 - CONFIG_ENV_IS_IN_FAT:
        Define this if you want to use the FAT file system for the environment.
 
@@ -3756,57 +3693,6 @@ but it can not erase, write this NOR flash by SRIO or PCIE interface.
        - CONFIG_FAT_WRITE:
          This must be enabled. Otherwise it cannot save the environment file.
 
-- CONFIG_ENV_IS_IN_MMC:
-
-	Define this if you have an MMC device which you want to use for the
-	environment.
-
-	- CONFIG_SYS_MMC_ENV_DEV:
-
-	  Specifies which MMC device the environment is stored in.
-
-	- CONFIG_SYS_MMC_ENV_PART (optional):
-
-	  Specifies which MMC partition the environment is stored in. If not
-	  set, defaults to partition 0, the user area. Common values might be
-	  1 (first MMC boot partition), 2 (second MMC boot partition).
-
-	- CONFIG_ENV_OFFSET:
-	- CONFIG_ENV_SIZE:
-
-	  These two #defines specify the offset and size of the environment
-	  area within the specified MMC device.
-
-	  If offset is positive (the usual case), it is treated as relative to
-	  the start of the MMC partition. If offset is negative, it is treated
-	  as relative to the end of the MMC partition. This can be useful if
-	  your board may be fitted with different MMC devices, which have
-	  different sizes for the MMC partitions, and you always want the
-	  environment placed at the very end of the partition, to leave the
-	  maximum possible space before it, to store other data.
-
-	  These two values are in units of bytes, but must be aligned to an
-	  MMC sector boundary.
-
-	- CONFIG_ENV_OFFSET_REDUND (optional):
-
-	  Specifies a second storage area, of CONFIG_ENV_SIZE size, used to
-	  hold a redundant copy of the environment data. This provides a
-	  valid backup copy in case the other copy is corrupted, e.g. due
-	  to a power failure during a "saveenv" operation.
-
-	  This value may also be positive or negative; this is handled in the
-	  same way as CONFIG_ENV_OFFSET.
-
-	  This value is also in units of bytes, but must also be aligned to
-	  an MMC sector boundary.
-
-	- CONFIG_ENV_SIZE_REDUND (optional):
-
-	  This value need not be set, even when CONFIG_ENV_OFFSET_REDUND is
-	  set. If this value is set, it must be set to the same value as
-	  CONFIG_ENV_SIZE.
-
 Please note that the environment is read-only until the monitor
 has been relocated to RAM and a RAM copy of the environment has been
 created; also, when using EEPROM you will have to use getenv_f()
diff --git a/env/Kconfig b/env/Kconfig
index a555546899..5a314022ef 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -7,17 +7,116 @@ config ENV_IS_IN_MMC
 	  Define this if you have an MMC device which you want to use for the
 	  environment.
 
+	  CONFIG_SYS_MMC_ENV_DEV:
+
+	  Specifies which MMC device the environment is stored in.
+
+	  CONFIG_SYS_MMC_ENV_PART (optional):
+
+	  Specifies which MMC partition the environment is stored in. If not
+	  set, defaults to partition 0, the user area. Common values might be
+	  1 (first MMC boot partition), 2 (second MMC boot partition).
+
+	  CONFIG_ENV_OFFSET:
+	  CONFIG_ENV_SIZE:
+
+	  These two #defines specify the offset and size of the environment
+	  area within the specified MMC device.
+
+	  If offset is positive (the usual case), it is treated as relative to
+	  the start of the MMC partition. If offset is negative, it is treated
+	  as relative to the end of the MMC partition. This can be useful if
+	  your board may be fitted with different MMC devices, which have
+	  different sizes for the MMC partitions, and you always want the
+	  environment placed at the very end of the partition, to leave the
+	  maximum possible space before it, to store other data.
+
+	  These two values are in units of bytes, but must be aligned to an
+	  MMC sector boundary.
+
+	  CONFIG_ENV_OFFSET_REDUND (optional):
+
+	  Specifies a second storage area, of CONFIG_ENV_SIZE size, used to
+	  hold a redundant copy of the environment data. This provides a
+	  valid backup copy in case the other copy is corrupted, e.g. due
+	  to a power failure during a "saveenv" operation.
+
+	  This value may also be positive or negative; this is handled in the
+	  same way as CONFIG_ENV_OFFSET.
+
+	  This value is also in units of bytes, but must also be aligned to
+	  an MMC sector boundary.
+
+	  CONFIG_ENV_SIZE_REDUND (optional):
+
+	  This value need not be set, even when CONFIG_ENV_OFFSET_REDUND is
+	  set. If this value is set, it must be set to the same value as
+	  CONFIG_ENV_SIZE.
+
 config ENV_IS_IN_NAND
 	bool "Environment in a NAND device"
 	help
 	  Define this if you have a NAND device which you want to use for the
 	  environment.
 
+	  - CONFIG_ENV_OFFSET:
+	  - CONFIG_ENV_SIZE:
+
+	  These two #defines specify the offset and size of the environment
+	  area within the first NAND device.  CONFIG_ENV_OFFSET must be
+	  aligned to an erase block boundary.
+
+	  - CONFIG_ENV_OFFSET_REDUND (optional):
+
+	  This setting describes a second storage area of CONFIG_ENV_SIZE
+	  size used to hold a redundant copy of the environment data, so
+	  that there is a valid backup copy in case there is a power failure
+	  during a "saveenv" operation.	 CONFIG_ENV_OFFSET_REDUND must be
+	  aligned to an erase block boundary.
+
+	  - CONFIG_ENV_RANGE (optional):
+
+	  Specifies the length of the region in which the environment
+	  can be written.  This should be a multiple of the NAND device's
+	  block size.  Specifying a range with more erase blocks than
+	  are needed to hold CONFIG_ENV_SIZE allows bad blocks within
+	  the range to be avoided.
+
+	  - CONFIG_ENV_OFFSET_OOB (optional):
+
+	  Enables support for dynamically retrieving the offset of the
+	  environment from block zero's out-of-band data.  The
+	  "nand env.oob" command can be used to record this offset.
+	  Currently, CONFIG_ENV_OFFSET_REDUND is not supported when
+	  using CONFIG_ENV_OFFSET_OOB.
+
 config ENV_IS_IN_UBI
 	bool "Environment in a UBI volume"
 	help
-	  Define this if you have a UBI volume which you want to use for the
-	  environment.
+	  Define this if you have an UBI volume that you want to use for the
+	  environment.  This has the benefit of wear-leveling the environment
+	  accesses, which is important on NAND.
+
+	  - CONFIG_ENV_UBI_PART:
+
+	  Define this to a string that is the mtd partition containing the UBI.
+
+	  - CONFIG_ENV_UBI_VOLUME:
+
+	  Define this to the name of the volume that you want to store the
+	  environment in.
+
+	  - CONFIG_ENV_UBI_VOLUME_REDUND:
+
+	  Define this to the name of another volume to store a second copy of
+	  the environment in.  This will enable redundant environments in UBI.
+	  It is assumed that both volumes are in the same MTD partition.
+
+	  - CONFIG_UBI_SILENCE_MSG
+	  - CONFIG_UBIFS_SILENCE_MSG
+
+	  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"
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (3 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 04/30] env: Move help from README " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-10 22:09   ` Daniel Schwierzeck
  2017-07-09 20:52 ` [U-Boot] [PATCH 06/30] Convert CONFIG_ENV_IS_IN_NVRAM " Simon Glass
                   ` (26 subsequent siblings)
  31 siblings, 1 reply; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_FLASH

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                                        | 70 --------------------------
 arch/Kconfig                                  |  1 +
 arch/arm/mach-integrator/Kconfig              |  2 +
 arch/m68k/Kconfig                             |  8 +++
 arch/microblaze/Kconfig                       |  1 +
 arch/mips/Kconfig                             |  6 +++
 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 ++
 configs/10m50_defconfig                       |  1 +
 configs/3c120_defconfig                       |  1 +
 configs/B4420QDS_defconfig                    |  1 +
 configs/B4860QDS_defconfig                    |  1 +
 configs/BSC9132QDS_NOR_DDRCLK100_defconfig    |  1 +
 configs/BSC9132QDS_NOR_DDRCLK133_defconfig    |  1 +
 configs/C29XPCIE_defconfig                    |  1 +
 configs/M5208EVBE_defconfig                   |  1 +
 configs/M52277EVB_defconfig                   |  1 +
 configs/M5235EVB_Flash32_defconfig            |  1 +
 configs/M5235EVB_defconfig                    |  1 +
 configs/M53017EVB_defconfig                   |  1 +
 configs/M54451EVB_defconfig                   |  1 +
 configs/M54455EVB_a66_defconfig               |  1 +
 configs/M54455EVB_defconfig                   |  1 +
 configs/M54455EVB_i66_defconfig               |  1 +
 configs/M54455EVB_intel_defconfig             |  1 +
 configs/MPC8308RDB_defconfig                  |  1 +
 configs/MPC8313ERDB_33_defconfig              |  1 +
 configs/MPC8313ERDB_66_defconfig              |  1 +
 configs/MPC8315ERDB_defconfig                 |  1 +
 configs/MPC8323ERDB_defconfig                 |  1 +
 configs/MPC8349EMDS_defconfig                 |  1 +
 configs/MPC837XEMDS_HOST_defconfig            |  1 +
 configs/MPC837XEMDS_defconfig                 |  1 +
 configs/MPC837XERDB_defconfig                 |  1 +
 configs/MPC8536DS_36BIT_defconfig             |  1 +
 configs/MPC8536DS_defconfig                   |  1 +
 configs/MPC8541CDS_defconfig                  |  1 +
 configs/MPC8541CDS_legacy_defconfig           |  1 +
 configs/MPC8544DS_defconfig                   |  3 +-
 configs/MPC8555CDS_defconfig                  |  1 +
 configs/MPC8555CDS_legacy_defconfig           |  1 +
 configs/MPC8568MDS_defconfig                  |  1 +
 configs/MPC8569MDS_ATM_defconfig              |  1 +
 configs/MPC8569MDS_defconfig                  |  1 +
 configs/MPC8610HPCD_defconfig                 |  2 +-
 configs/MigoR_defconfig                       |  1 +
 configs/P1010RDB-PA_36BIT_NOR_defconfig       |  1 +
 configs/P1010RDB-PA_NOR_defconfig             |  1 +
 configs/P1010RDB-PB_36BIT_NOR_defconfig       |  1 +
 configs/P1010RDB-PB_NOR_defconfig             |  1 +
 configs/P1020MBG-PC_36BIT_defconfig           |  1 +
 configs/P1020MBG-PC_defconfig                 |  1 +
 configs/P1020RDB-PC_36BIT_defconfig           |  1 +
 configs/P1020RDB-PC_defconfig                 |  1 +
 configs/P1020RDB-PD_defconfig                 |  1 +
 configs/P1020UTM-PC_36BIT_defconfig           |  1 +
 configs/P1020UTM-PC_defconfig                 |  1 +
 configs/P1021RDB-PC_36BIT_defconfig           |  1 +
 configs/P1021RDB-PC_defconfig                 |  1 +
 configs/P1022DS_36BIT_defconfig               |  1 +
 configs/P1022DS_defconfig                     |  1 +
 configs/P1023RDB_defconfig                    |  1 +
 configs/P1024RDB_36BIT_defconfig              |  1 +
 configs/P1024RDB_defconfig                    |  1 +
 configs/P1025RDB_36BIT_defconfig              |  1 +
 configs/P1025RDB_defconfig                    |  1 +
 configs/P2020RDB-PC_36BIT_defconfig           |  1 +
 configs/P2020RDB-PC_defconfig                 |  1 +
 configs/P2041RDB_defconfig                    |  1 +
 configs/P3041DS_defconfig                     |  1 +
 configs/P4080DS_defconfig                     |  1 +
 configs/P5020DS_defconfig                     |  1 +
 configs/P5040DS_defconfig                     |  1 +
 configs/T1023RDB_defconfig                    |  1 +
 configs/T1024QDS_DDR4_defconfig               |  1 +
 configs/T1024QDS_defconfig                    |  1 +
 configs/T1024RDB_defconfig                    |  1 +
 configs/T1040D4RDB_defconfig                  |  1 +
 configs/T1040QDS_DDR4_defconfig               |  1 +
 configs/T1040QDS_defconfig                    |  1 +
 configs/T1040RDB_defconfig                    |  1 +
 configs/T1042D4RDB_defconfig                  |  1 +
 configs/T1042RDB_PI_defconfig                 |  1 +
 configs/T1042RDB_defconfig                    |  1 +
 configs/T2080QDS_defconfig                    |  1 +
 configs/T2080RDB_defconfig                    |  1 +
 configs/T2081QDS_defconfig                    |  1 +
 configs/T4160QDS_defconfig                    |  1 +
 configs/T4160RDB_defconfig                    |  1 +
 configs/T4240QDS_defconfig                    |  1 +
 configs/T4240RDB_defconfig                    |  1 +
 configs/TQM834x_defconfig                     |  1 +
 configs/TWR-P1025_defconfig                   |  1 +
 configs/UCP1020_defconfig                     |  1 +
 configs/adp-ae3xx_defconfig                   |  1 +
 configs/adp-ag101p_defconfig                  |  1 +
 configs/am335x_evm_norboot_defconfig          |  1 +
 configs/amcore_defconfig                      |  1 +
 configs/ap325rxa_defconfig                    |  1 +
 configs/ap_sh4a_4a_defconfig                  |  1 +
 configs/armadillo-800eva_defconfig            |  1 +
 configs/at91rm9200ek_defconfig                |  1 +
 configs/at91rm9200ek_ram_defconfig            |  1 +
 configs/at91sam9263ek_norflash_boot_defconfig |  1 +
 configs/at91sam9263ek_norflash_defconfig      |  1 +
 configs/blanche_defconfig                     |  1 +
 configs/caddy2_defconfig                      |  1 +
 configs/calimain_defconfig                    |  1 +
 configs/colibri_pxa270_defconfig              |  1 +
 configs/da850evm_direct_nor_defconfig         |  1 +
 configs/ecovec_defconfig                      |  1 +
 configs/edb9315a_defconfig                    |  1 +
 configs/edminiv2_defconfig                    |  1 +
 configs/espt_defconfig                        |  1 +
 configs/flea3_defconfig                       |  1 +
 configs/hrcon_defconfig                       |  1 +
 configs/hrcon_dh_defconfig                    |  1 +
 configs/ids8313_defconfig                     |  1 +
 configs/kmcoge5ne_defconfig                   |  1 +
 configs/kmeter1_defconfig                     |  1 +
 configs/kzm9g_defconfig                       |  1 +
 configs/ls1021aqds_ddr4_nor_defconfig         |  1 +
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig  |  1 +
 configs/ls1021aqds_nor_defconfig              |  1 +
 configs/ls1021aqds_nor_lpuart_defconfig       |  1 +
 configs/ls1021atwr_nor_defconfig              |  1 +
 configs/ls1021atwr_nor_lpuart_defconfig       |  1 +
 configs/ls1043aqds_defconfig                  |  1 +
 configs/ls1043aqds_lpuart_defconfig           |  1 +
 configs/ls1043aqds_nor_ddr3_defconfig         |  1 +
 configs/ls1043ardb_defconfig                  |  1 +
 configs/ls1046aqds_defconfig                  |  1 +
 configs/ls1046aqds_lpuart_defconfig           |  1 +
 configs/ls2080aqds_defconfig                  |  1 +
 configs/ls2080ardb_defconfig                  |  1 +
 configs/mccmon6_nor_defconfig                 |  1 +
 configs/mccmon6_sd_defconfig                  |  1 +
 configs/microblaze-generic_defconfig          |  1 +
 configs/mpc8308_p1m_defconfig                 |  1 +
 configs/ms7722se_defconfig                    |  1 +
 configs/ms7750se_defconfig                    |  1 +
 configs/mx31ads_defconfig                     |  1 +
 configs/mx35pdk_defconfig                     |  1 +
 configs/pm9261_defconfig                      |  1 +
 configs/pm9263_defconfig                      |  1 +
 configs/r0p7734_defconfig                     |  1 +
 configs/r2dplus_defconfig                     |  1 +
 configs/r7780mp_defconfig                     |  1 +
 configs/sh7763rdp_defconfig                   |  1 +
 configs/sh7785lcr_32bit_defconfig             |  1 +
 configs/sh7785lcr_defconfig                   |  1 +
 configs/socrates_defconfig                    |  1 +
 configs/spear300_defconfig                    |  1 +
 configs/spear300_usbtty_defconfig             |  1 +
 configs/spear310_defconfig                    |  1 +
 configs/spear310_pnor_defconfig               |  1 +
 configs/spear310_usbtty_defconfig             |  1 +
 configs/spear310_usbtty_pnor_defconfig        |  1 +
 configs/spear320_defconfig                    |  1 +
 configs/spear320_pnor_defconfig               |  1 +
 configs/spear320_usbtty_defconfig             |  1 +
 configs/spear320_usbtty_pnor_defconfig        |  1 +
 configs/spear600_defconfig                    |  1 +
 configs/spear600_usbtty_defconfig             |  1 +
 configs/stm32f429-discovery_defconfig         |  1 +
 configs/vct_platinum_defconfig                |  1 +
 configs/vct_platinum_small_defconfig          |  1 +
 configs/vct_platinumavc_defconfig             |  1 +
 configs/vct_platinumavc_small_defconfig       |  1 +
 configs/vct_premium_defconfig                 |  1 +
 configs/vct_premium_small_defconfig           |  1 +
 configs/ve8313_defconfig                      |  1 +
 configs/vexpress_aemv8a_dram_defconfig        |  1 +
 configs/vexpress_aemv8a_juno_defconfig        |  1 +
 configs/vexpress_aemv8a_semi_defconfig        |  1 +
 configs/vexpress_ca15_tc2_defconfig           |  1 +
 configs/vexpress_ca5x2_defconfig              |  1 +
 configs/vexpress_ca9x4_defconfig              |  1 +
 configs/vme8349_defconfig                     |  1 +
 configs/woodburn_defconfig                    |  1 +
 configs/woodburn_sd_defconfig                 |  1 +
 configs/x600_defconfig                        |  1 +
 configs/xpedite550x_defconfig                 |  1 +
 configs/xtfpga_defconfig                      |  1 +
 configs/zipitz2_defconfig                     |  1 +
 configs/zmx25_defconfig                       |  1 +
 configs/zynq_zc770_xm012_defconfig            |  1 +
 env/Kconfig                                   | 71 +++++++++++++++++++++++++++
 include/config_fsl_chain_trust.h              |  1 -
 include/configs/10m50_devboard.h              |  1 -
 include/configs/3c120_devboard.h              |  1 -
 include/configs/B4860QDS.h                    |  1 -
 include/configs/BSC9132QDS.h                  |  1 -
 include/configs/C29XPCIE.h                    |  1 -
 include/configs/M5208EVBE.h                   |  1 -
 include/configs/M52277EVB.h                   |  2 -
 include/configs/M5235EVB.h                    |  1 -
 include/configs/M5249EVB.h                    |  2 -
 include/configs/M5253DEMO.h                   |  2 -
 include/configs/M5253EVBE.h                   |  2 -
 include/configs/M5272C3.h                     |  2 -
 include/configs/M5275EVB.h                    |  2 -
 include/configs/M5282EVB.h                    |  1 -
 include/configs/M53017EVB.h                   |  1 -
 include/configs/M5329EVB.h                    |  1 -
 include/configs/M5373EVB.h                    |  1 -
 include/configs/M54451EVB.h                   |  1 -
 include/configs/M54455EVB.h                   |  2 -
 include/configs/M5475EVB.h                    |  1 -
 include/configs/M5485EVB.h                    |  1 -
 include/configs/MPC8308RDB.h                  |  1 -
 include/configs/MPC8313ERDB.h                 |  1 -
 include/configs/MPC8315ERDB.h                 |  1 -
 include/configs/MPC8323ERDB.h                 |  1 -
 include/configs/MPC832XEMDS.h                 |  1 -
 include/configs/MPC8349EMDS.h                 |  1 -
 include/configs/MPC8349ITX.h                  |  1 -
 include/configs/MPC837XEMDS.h                 |  1 -
 include/configs/MPC837XERDB.h                 |  1 -
 include/configs/MPC8536DS.h                   |  1 -
 include/configs/MPC8540ADS.h                  |  1 -
 include/configs/MPC8541CDS.h                  |  1 -
 include/configs/MPC8544DS.h                   |  1 -
 include/configs/MPC8548CDS.h                  |  1 -
 include/configs/MPC8555CDS.h                  |  1 -
 include/configs/MPC8560ADS.h                  |  1 -
 include/configs/MPC8568MDS.h                  |  1 -
 include/configs/MPC8569MDS.h                  |  1 -
 include/configs/MPC8572DS.h                   |  1 -
 include/configs/MPC8610HPCD.h                 |  1 -
 include/configs/MPC8641HPCN.h                 |  1 -
 include/configs/MigoR.h                       |  1 -
 include/configs/P1010RDB.h                    |  1 -
 include/configs/P1022DS.h                     |  1 -
 include/configs/P1023RDB.h                    |  1 -
 include/configs/P2041RDB.h                    |  1 -
 include/configs/T102xQDS.h                    |  1 -
 include/configs/T102xRDB.h                    |  1 -
 include/configs/T1040QDS.h                    |  1 -
 include/configs/T104xRDB.h                    |  1 -
 include/configs/T208xQDS.h                    |  1 -
 include/configs/T208xRDB.h                    |  1 -
 include/configs/T4240QDS.h                    |  1 -
 include/configs/T4240RDB.h                    |  1 -
 include/configs/TQM834x.h                     |  1 -
 include/configs/UCP1020.h                     |  2 -
 include/configs/adp-ae3xx.h                   |  1 -
 include/configs/adp-ag101p.h                  |  1 -
 include/configs/am335x_evm.h                  |  1 -
 include/configs/amcore.h                      |  1 -
 include/configs/ap325rxa.h                    |  1 -
 include/configs/ap_sh4a_4a.h                  |  1 -
 include/configs/armadillo-800eva.h            |  1 -
 include/configs/astro_mcf5373l.h              |  2 -
 include/configs/at91rm9200ek.h                |  1 -
 include/configs/at91sam9263ek.h               |  1 -
 include/configs/atngw100.h                    |  1 -
 include/configs/atngw100mkii.h                |  1 -
 include/configs/atstk1002.h                   |  1 -
 include/configs/bav335x.h                     |  1 -
 include/configs/blanche.h                     |  1 -
 include/configs/boston.h                      |  1 -
 include/configs/calimain.h                    |  1 -
 include/configs/cobra5272.h                   |  2 -
 include/configs/colibri_pxa270.h              |  2 -
 include/configs/corenet_ds.h                  |  1 -
 include/configs/da850evm.h                    |  3 --
 include/configs/dra7xx_evm.h                  |  1 -
 include/configs/ea20.h                        |  1 -
 include/configs/eb_cpu5282.h                  |  1 -
 include/configs/ecovec.h                      |  1 -
 include/configs/edb93xx.h                     |  1 -
 include/configs/edminiv2.h                    |  1 -
 include/configs/espt.h                        |  1 -
 include/configs/flea3.h                       |  2 -
 include/configs/grasshopper.h                 |  1 -
 include/configs/hrcon.h                       |  1 -
 include/configs/ids8313.h                     |  1 -
 include/configs/imx27lite-common.h            |  1 -
 include/configs/integratorcp.h                |  1 -
 include/configs/km/km83xx-common.h            |  1 -
 include/configs/kzm9g.h                       |  1 -
 include/configs/ls1021aqds.h                  |  1 -
 include/configs/ls1021atwr.h                  |  1 -
 include/configs/ls1043aqds.h                  |  1 -
 include/configs/ls1043ardb.h                  |  1 -
 include/configs/ls1046aqds.h                  |  1 -
 include/configs/ls2080aqds.h                  |  1 -
 include/configs/ls2080ardb.h                  |  1 -
 include/configs/malta.h                       |  1 -
 include/configs/mccmon6.h                     |  1 -
 include/configs/microblaze-generic.h          |  1 -
 include/configs/mpc8308_p1m.h                 |  1 -
 include/configs/mpr2.h                        |  1 -
 include/configs/ms7720se.h                    |  1 -
 include/configs/ms7722se.h                    |  1 -
 include/configs/ms7750se.h                    |  1 -
 include/configs/mx31ads.h                     |  1 -
 include/configs/mx35pdk.h                     |  2 -
 include/configs/omapl138_lcdk.h               |  4 --
 include/configs/p1_p2_rdb_pc.h                |  1 -
 include/configs/p1_twr.h                      |  1 -
 include/configs/pm9261.h                      |  1 -
 include/configs/pm9263.h                      |  1 -
 include/configs/qemu-mips.h                   |  2 -
 include/configs/qemu-mips64.h                 |  2 -
 include/configs/r0p7734.h                     |  1 -
 include/configs/r2dplus.h                     |  1 -
 include/configs/r7780mp.h                     |  1 -
 include/configs/rsk7203.h                     |  1 -
 include/configs/rsk7264.h                     |  1 -
 include/configs/rsk7269.h                     |  1 -
 include/configs/sbc8349.h                     |  1 -
 include/configs/sbc8548.h                     |  1 -
 include/configs/sbc8641d.h                    |  1 -
 include/configs/sh7763rdp.h                   |  1 -
 include/configs/sh7785lcr.h                   |  1 -
 include/configs/shmin.h                       |  1 -
 include/configs/socrates.h                    |  1 -
 include/configs/spear3xx_evb.h                |  5 --
 include/configs/spear6xx_evb.h                |  5 --
 include/configs/stm32f429-discovery.h         |  1 -
 include/configs/strider.h                     |  1 -
 include/configs/vct.h                         |  1 -
 include/configs/ve8313.h                      |  1 -
 include/configs/vexpress_aemv8a.h             |  1 -
 include/configs/vexpress_common.h             |  1 -
 include/configs/vme8349.h                     |  1 -
 include/configs/woodburn_common.h             |  2 -
 include/configs/x600.h                        |  2 -
 include/configs/xpedite517x.h                 |  1 -
 include/configs/xpedite520x.h                 |  1 -
 include/configs/xpedite537x.h                 |  1 -
 include/configs/xpedite550x.h                 |  1 -
 include/configs/xtfpga.h                      |  1 -
 include/configs/zipitz2.h                     |  1 -
 include/configs/zmx25.h                       |  1 -
 include/configs/zynq-common.h                 |  1 -
 scripts/config_whitelist.txt                  |  1 -
 342 files changed, 284 insertions(+), 253 deletions(-)

diff --git a/README b/README
index 6fd8a53ce4..064b50d9fb 100644
--- a/README
+++ b/README
@@ -3434,76 +3434,6 @@ following configurations:
 	Builds up envcrc with the target environment so that external utils
 	may easily extract it and embed it in final U-Boot images.
 
-- CONFIG_ENV_IS_IN_FLASH:
-
-	Define this if the environment is in flash memory.
-
-	a) The environment occupies one whole flash sector, which is
-	   "embedded" in the text segment with the U-Boot code. This
-	   happens usually with "bottom boot sector" or "top boot
-	   sector" type flash chips, which have several smaller
-	   sectors at the start or the end. For instance, such a
-	   layout can have sector sizes of 8, 2x4, 16, Nx32 kB. In
-	   such a case you would place the environment in one of the
-	   4 kB sectors - with U-Boot code before and after it. With
-	   "top boot sector" type flash chips, you would put the
-	   environment in one of the last sectors, leaving a gap
-	   between U-Boot and the environment.
-
-	- CONFIG_ENV_OFFSET:
-
-	   Offset of environment data (variable area) to the
-	   beginning of flash memory; for instance, with bottom boot
-	   type flash chips the second sector can be used: the offset
-	   for this sector is given here.
-
-	   CONFIG_ENV_OFFSET is used relative to CONFIG_SYS_FLASH_BASE.
-
-	- CONFIG_ENV_ADDR:
-
-	   This is just another way to specify the start address of
-	   the flash sector containing the environment (instead of
-	   CONFIG_ENV_OFFSET).
-
-	- CONFIG_ENV_SECT_SIZE:
-
-	   Size of the sector containing the environment.
-
-
-	b) Sometimes flash chips have few, equal sized, BIG sectors.
-	   In such a case you don't want to spend a whole sector for
-	   the environment.
-
-	- CONFIG_ENV_SIZE:
-
-	   If you use this in combination with CONFIG_ENV_IS_IN_FLASH
-	   and CONFIG_ENV_SECT_SIZE, you can specify to use only a part
-	   of this flash sector for the environment. This saves
-	   memory for the RAM copy of the environment.
-
-	   It may also save flash memory if you decide to use this
-	   when your environment is "embedded" within U-Boot code,
-	   since then the remainder of the flash sector could be used
-	   for U-Boot code. It should be pointed out that this is
-	   STRONGLY DISCOURAGED from a robustness point of view:
-	   updating the environment in flash makes it always
-	   necessary to erase the WHOLE sector. If something goes
-	   wrong before the contents has been restored from a copy in
-	   RAM, your target system will be dead.
-
-	- CONFIG_ENV_ADDR_REDUND
-	  CONFIG_ENV_SIZE_REDUND
-
-	   These settings describe a second storage area used to hold
-	   a redundant copy of the environment data, so that there is
-	   a valid backup copy in case there is a power failure during
-	   a "saveenv" operation.
-
-BE CAREFUL! Any changes to the flash layout, and some changes to the
-source code will make it necessary to adapt <board>/u-boot.lds*
-accordingly!
-
-
 - CONFIG_ENV_IS_IN_NVRAM:
 
 	Define this if you have some non-volatile memory device
diff --git a/arch/Kconfig b/arch/Kconfig
index d22255f243..ad749e3f87 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -26,6 +26,7 @@ config ARM
 config AVR32
 	bool "AVR32 architecture"
 	select CREATE_ARCH_SYMLINK
+	imply ENV_IS_IN_FLASH
 
 config M68K
 	bool "M68000 architecture"
diff --git a/arch/arm/mach-integrator/Kconfig b/arch/arm/mach-integrator/Kconfig
index d506ee5b39..5146e51f9c 100644
--- a/arch/arm/mach-integrator/Kconfig
+++ b/arch/arm/mach-integrator/Kconfig
@@ -11,11 +11,13 @@ 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/m68k/Kconfig b/arch/m68k/Kconfig
index 26509b73c6..88e7d6a7b6 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -10,6 +10,7 @@ config MCF520x
 
 config MCF52x2
 	bool
+	imply ENV_IS_IN_FLASH
 
 config MCF523x
 	bool
@@ -22,6 +23,7 @@ config MCF5301x
 
 config MCF532x
 	bool
+	imply ENV_IS_IN_FLASH
 
 config MCF537x
 	bool
@@ -37,6 +39,7 @@ config MCF5227x
 
 config MCF547x_8x
 	bool
+	imply ENV_IS_IN_FLASH
 
 # processor type
 config M5208
@@ -70,6 +73,7 @@ config M5275
 config M5282
 	bool
 	select MCF52x2
+	imply ENV_IS_IN_FLASH
 
 config M5307
 	bool
@@ -107,10 +111,12 @@ 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"
@@ -191,10 +197,12 @@ 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/microblaze/Kconfig b/arch/microblaze/Kconfig
index 80d85e46d4..20fa25b5cc 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -15,6 +15,7 @@ config TARGET_MICROBLAZE_GENERIC
 	select OF_CONTROL
 	select DM
 	select DM_SERIAL
+	select ENV_IS_IN_FLASH
 
 endchoice
 
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 579371e8ee..3046d90b4d 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -21,6 +21,7 @@ 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"
@@ -42,6 +43,7 @@ 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"
@@ -108,6 +110,7 @@ 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"
@@ -197,6 +200,7 @@ 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.
@@ -297,6 +301,7 @@ config CPU_MIPS32
 config CPU_MIPS64
 	bool
 	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
+	imply ENV_IS_IN_FLASH
 
 config MIPS_TUNE_4KC
 	bool
@@ -401,6 +406,7 @@ config DYNAMIC_IO_PORT_BASE
 
 config MIPS_CM
 	bool
+	imply ENV_IS_IN_FLASH
 	help
 	  Select this if your system contains a MIPS Coherence Manager and you
 	  wish U-Boot to configure it or make use of it to retrieve system
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index c3dba8955d..b512975cd1 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -28,6 +28,7 @@ config MPC86xx
 	bool "MPC86xx"
 	select SYS_FSL_DDR
 	select SYS_FSL_DDR_BE
+	imply ENV_IS_IN_FLASH
 
 endchoice
 
diff --git a/arch/powerpc/cpu/mpc83xx/Kconfig b/arch/powerpc/cpu/mpc83xx/Kconfig
index cdd21a253a..b5b26f9b3a 100644
--- a/arch/powerpc/cpu/mpc83xx/Kconfig
+++ b/arch/powerpc/cpu/mpc83xx/Kconfig
@@ -13,6 +13,7 @@ config TARGET_MPC8308_P1M
 
 config TARGET_SBC8349
 	bool "Support sbc8349"
+	imply ENV_IS_IN_FLASH
 
 config TARGET_VE8313
 	bool "Support ve8313"
@@ -39,6 +40,7 @@ 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"
@@ -50,6 +52,7 @@ config TARGET_MPC8349EMDS
 config TARGET_MPC8349ITX
 	bool "Support MPC8349ITX"
 	imply CMD_IRQ
+	imply ENV_IS_IN_FLASH
 
 config TARGET_MPC837XEMDS
 	bool "Support MPC837XEMDS"
@@ -74,11 +77,13 @@ 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"
@@ -90,6 +95,7 @@ config TARGET_HRCON
 config TARGET_STRIDER
 	bool "Support strider"
 	select SYS_FSL_ERRATUM_ESDHC111
+	imply ENV_IS_IN_FLASH
 
 endchoice
 
diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 0bff79adbb..942907c7c3 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -19,6 +19,7 @@ choice
 config TARGET_SBC8548
 	bool "Support sbc8548"
 	select ARCH_MPC8548
+	imply ENV_IS_IN_FLASH
 
 config TARGET_SOCRATES
 	bool "Support socrates"
@@ -104,6 +105,7 @@ config TARGET_MPC8544DS
 config TARGET_MPC8548CDS
 	bool "Support MPC8548CDS"
 	select ARCH_MPC8548
+	imply ENV_IS_IN_FLASH
 
 config TARGET_MPC8555CDS
 	bool "Support MPC8555CDS"
@@ -548,6 +550,7 @@ 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
 
 config ARCH_MPC8555
 	bool
@@ -595,6 +598,7 @@ config ARCH_MPC8572
 	select SYS_FSL_SEC_COMPAT_2
 	select SYS_PPC_E500_USE_DEBUG_TLB
 	select FSL_ELBC
+	imply ENV_IS_IN_FLASH
 
 config ARCH_P1010
 	bool
diff --git a/arch/powerpc/cpu/mpc86xx/Kconfig b/arch/powerpc/cpu/mpc86xx/Kconfig
index 2cc180da38..fe56efdf55 100644
--- a/arch/powerpc/cpu/mpc86xx/Kconfig
+++ b/arch/powerpc/cpu/mpc86xx/Kconfig
@@ -40,6 +40,7 @@ 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 6ac22af2f1..1d40fe6845 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -3,13 +3,16 @@ 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/configs/10m50_defconfig b/configs/10m50_defconfig
index ed9a867d72..1252029dc5 100644
--- a/configs/10m50_defconfig
+++ b/configs/10m50_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_DHCP=y
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM_GPIO=y
 CONFIG_ALTERA_PIO=y
diff --git a/configs/3c120_defconfig b/configs/3c120_defconfig
index 95e794afca..299fcbb829 100644
--- a/configs/3c120_defconfig
+++ b/configs/3c120_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_DHCP=y
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM_GPIO=y
 CONFIG_ALTERA_PIO=y
diff --git a/configs/B4420QDS_defconfig b/configs/B4420QDS_defconfig
index a64bc6bdb6..23a2427e77 100644
--- a/configs/B4420QDS_defconfig
+++ b/configs/B4420QDS_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/B4860QDS_defconfig b/configs/B4860QDS_defconfig
index 80e06fb0d6..83577b76fd 100644
--- a/configs/B4860QDS_defconfig
+++ b/configs/B4860QDS_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK100_defconfig b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
index f07841feab..0293abb871 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK100_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_NOR_DDRCLK133_defconfig b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
index ae753405ec..2101022b6d 100644
--- a/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_NOR_DDRCLK133_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/C29XPCIE_defconfig b/configs/C29XPCIE_defconfig
index 70b447863d..9ca62460ef 100644
--- a/configs/C29XPCIE_defconfig
+++ b/configs/C29XPCIE_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/M5208EVBE_defconfig b/configs/M5208EVBE_defconfig
index 1ac3e5e846..5756f82383 100644
--- a/configs/M5208EVBE_defconfig
+++ b/configs/M5208EVBE_defconfig
@@ -8,4 +8,5 @@ CONFIG_SYS_PROMPT="-> "
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/M52277EVB_defconfig b/configs/M52277EVB_defconfig
index 903eef536c..7cc64d6dc6 100644
--- a/configs/M52277EVB_defconfig
+++ b/configs/M52277EVB_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/M5235EVB_Flash32_defconfig b/configs/M5235EVB_Flash32_defconfig
index 19596cbeb1..c3bf2d5ccc 100644
--- a/configs/M5235EVB_Flash32_defconfig
+++ b/configs/M5235EVB_Flash32_defconfig
@@ -12,4 +12,5 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/M5235EVB_defconfig b/configs/M5235EVB_defconfig
index 026177db4c..0c4869d8e9 100644
--- a/configs/M5235EVB_defconfig
+++ b/configs/M5235EVB_defconfig
@@ -12,4 +12,5 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/M53017EVB_defconfig b/configs/M53017EVB_defconfig
index 19b1fcd237..727c89cf0d 100644
--- a/configs/M53017EVB_defconfig
+++ b/configs/M53017EVB_defconfig
@@ -9,4 +9,5 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/M54451EVB_defconfig b/configs/M54451EVB_defconfig
index 63c1a4bbe6..19670d9372 100644
--- a/configs/M54451EVB_defconfig
+++ b/configs/M54451EVB_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/M54455EVB_a66_defconfig b/configs/M54455EVB_a66_defconfig
index 221c70750b..9f0e8936fd 100644
--- a/configs/M54455EVB_a66_defconfig
+++ b/configs/M54455EVB_a66_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/M54455EVB_defconfig b/configs/M54455EVB_defconfig
index 557b87b78c..cd046dfb04 100644
--- a/configs/M54455EVB_defconfig
+++ b/configs/M54455EVB_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/M54455EVB_i66_defconfig b/configs/M54455EVB_i66_defconfig
index 9ad0564788..f2924d2502 100644
--- a/configs/M54455EVB_i66_defconfig
+++ b/configs/M54455EVB_i66_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/M54455EVB_intel_defconfig b/configs/M54455EVB_intel_defconfig
index dc7af6cb19..ac33bb20d7 100644
--- a/configs/M54455EVB_intel_defconfig
+++ b/configs/M54455EVB_intel_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/MPC8308RDB_defconfig b/configs/MPC8308RDB_defconfig
index c0f994a5ea..29e865f343 100644
--- a/configs/MPC8308RDB_defconfig
+++ b/configs/MPC8308RDB_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/MPC8313ERDB_33_defconfig b/configs/MPC8313ERDB_33_defconfig
index f4bdfe046d..c5aebfff10 100644
--- a/configs/MPC8313ERDB_33_defconfig
+++ b/configs/MPC8313ERDB_33_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8313ERDB_66_defconfig b/configs/MPC8313ERDB_66_defconfig
index 119c04e661..53db7c2efc 100644
--- a/configs/MPC8313ERDB_66_defconfig
+++ b/configs/MPC8313ERDB_66_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8315ERDB_defconfig b/configs/MPC8315ERDB_defconfig
index 32b88fc9d5..47dbef15bc 100644
--- a/configs/MPC8315ERDB_defconfig
+++ b/configs/MPC8315ERDB_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8323ERDB_defconfig b/configs/MPC8323ERDB_defconfig
index 54d8a3ea1d..f3c840bf4f 100644
--- a/configs/MPC8323ERDB_defconfig
+++ b/configs/MPC8323ERDB_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_EEPROM=y
 CONFIG_CMD_I2C=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8349EMDS_defconfig b/configs/MPC8349EMDS_defconfig
index 82a61f8883..664246b2cd 100644
--- a/configs/MPC8349EMDS_defconfig
+++ b/configs/MPC8349EMDS_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 # CONFIG_PCI is not set
diff --git a/configs/MPC837XEMDS_HOST_defconfig b/configs/MPC837XEMDS_HOST_defconfig
index 787ac9dbce..71683cfbf9 100644
--- a/configs/MPC837XEMDS_HOST_defconfig
+++ b/configs/MPC837XEMDS_HOST_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/MPC837XEMDS_defconfig b/configs/MPC837XEMDS_defconfig
index f76cec1104..d292299117 100644
--- a/configs/MPC837XEMDS_defconfig
+++ b/configs/MPC837XEMDS_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 # CONFIG_PCI is not set
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC837XERDB_defconfig b/configs/MPC837XERDB_defconfig
index fc21671ce7..dd661e2af0 100644
--- a/configs/MPC837XERDB_defconfig
+++ b/configs/MPC837XERDB_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/MPC8536DS_36BIT_defconfig b/configs/MPC8536DS_36BIT_defconfig
index 5db680bbd1..b79f568be9 100644
--- a/configs/MPC8536DS_36BIT_defconfig
+++ b/configs/MPC8536DS_36BIT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_FSL_DDR2=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/MPC8536DS_defconfig b/configs/MPC8536DS_defconfig
index 3c563d6ff9..96695117e0 100644
--- a/configs/MPC8536DS_defconfig
+++ b/configs/MPC8536DS_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_FSL_DDR2=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/MPC8541CDS_defconfig b/configs/MPC8541CDS_defconfig
index 8268388d84..13646d7103 100644
--- a/configs/MPC8541CDS_defconfig
+++ b/configs/MPC8541CDS_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8541CDS_legacy_defconfig b/configs/MPC8541CDS_legacy_defconfig
index 09a9c0f90b..c9916dea47 100644
--- a/configs/MPC8541CDS_legacy_defconfig
+++ b/configs/MPC8541CDS_legacy_defconfig
@@ -11,6 +11,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8544DS_defconfig b/configs/MPC8544DS_defconfig
index cb15afa9cc..e5429cdee2 100644
--- a/configs/MPC8544DS_defconfig
+++ b/configs/MPC8544DS_defconfig
@@ -15,12 +15,13 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
-CONFIG_SCSI=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
 CONFIG_RTL8139=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/MPC8555CDS_defconfig b/configs/MPC8555CDS_defconfig
index 00c7a76508..1fbdb98ba2 100644
--- a/configs/MPC8555CDS_defconfig
+++ b/configs/MPC8555CDS_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8555CDS_legacy_defconfig b/configs/MPC8555CDS_legacy_defconfig
index 36da612318..5c9eda4166 100644
--- a/configs/MPC8555CDS_legacy_defconfig
+++ b/configs/MPC8555CDS_legacy_defconfig
@@ -11,6 +11,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8568MDS_defconfig b/configs/MPC8568MDS_defconfig
index 6e3cfa16f2..0c94088555 100644
--- a/configs/MPC8568MDS_defconfig
+++ b/configs/MPC8568MDS_defconfig
@@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/MPC8569MDS_ATM_defconfig b/configs/MPC8569MDS_ATM_defconfig
index 6adb9cf087..9ce4e25af3 100644
--- a/configs/MPC8569MDS_ATM_defconfig
+++ b/configs/MPC8569MDS_ATM_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/MPC8569MDS_defconfig b/configs/MPC8569MDS_defconfig
index 73cf6e35b7..f923b353d8 100644
--- a/configs/MPC8569MDS_defconfig
+++ b/configs/MPC8569MDS_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/MPC8610HPCD_defconfig b/configs/MPC8610HPCD_defconfig
index 6aef6d8434..57d8583fd1 100644
--- a/configs/MPC8610HPCD_defconfig
+++ b/configs/MPC8610HPCD_defconfig
@@ -15,9 +15,9 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_DOS_PARTITION=y
-CONFIG_SCSI=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_KEYBOARD=y
diff --git a/configs/MigoR_defconfig b/configs/MigoR_defconfig
index f09794e13c..e0d4ab4138 100644
--- a/configs/MigoR_defconfig
+++ b/configs/MigoR_defconfig
@@ -18,5 +18,6 @@ CONFIG_VERSION_VARIABLE=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/P1010RDB-PA_36BIT_NOR_defconfig b/configs/P1010RDB-PA_36BIT_NOR_defconfig
index 48157c22a4..2226558ec1 100644
--- a/configs/P1010RDB-PA_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PA_36BIT_NOR_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_NOR_defconfig b/configs/P1010RDB-PA_NOR_defconfig
index e94feb5997..7db3a968e9 100644
--- a/configs/P1010RDB-PA_NOR_defconfig
+++ b/configs/P1010RDB-PA_NOR_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_36BIT_NOR_defconfig b/configs/P1010RDB-PB_36BIT_NOR_defconfig
index 53b5d732e4..4e923e5e71 100644
--- a/configs/P1010RDB-PB_36BIT_NOR_defconfig
+++ b/configs/P1010RDB-PB_36BIT_NOR_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_NOR_defconfig b/configs/P1010RDB-PB_NOR_defconfig
index 35e85306fc..045c72c9ba 100644
--- a/configs/P1010RDB-PB_NOR_defconfig
+++ b/configs/P1010RDB-PB_NOR_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1020MBG-PC_36BIT_defconfig b/configs/P1020MBG-PC_36BIT_defconfig
index c8df31d1a0..89ff048771 100644
--- a/configs/P1020MBG-PC_36BIT_defconfig
+++ b/configs/P1020MBG-PC_36BIT_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1020MBG-PC_defconfig b/configs/P1020MBG-PC_defconfig
index a9bae76a4b..614cbf92ef 100644
--- a/configs/P1020MBG-PC_defconfig
+++ b/configs/P1020MBG-PC_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1020RDB-PC_36BIT_defconfig b/configs/P1020RDB-PC_36BIT_defconfig
index 8e275e0bd5..2caa40dd6f 100644
--- a/configs/P1020RDB-PC_36BIT_defconfig
+++ b/configs/P1020RDB-PC_36BIT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PC_defconfig b/configs/P1020RDB-PC_defconfig
index 11f5961bd4..082de27479 100644
--- a/configs/P1020RDB-PC_defconfig
+++ b/configs/P1020RDB-PC_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PD_defconfig b/configs/P1020RDB-PD_defconfig
index 30257b64f5..56bd76cae8 100644
--- a/configs/P1020RDB-PD_defconfig
+++ b/configs/P1020RDB-PD_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020UTM-PC_36BIT_defconfig b/configs/P1020UTM-PC_36BIT_defconfig
index 031a7f2ced..2e446e173a 100644
--- a/configs/P1020UTM-PC_36BIT_defconfig
+++ b/configs/P1020UTM-PC_36BIT_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1020UTM-PC_defconfig b/configs/P1020UTM-PC_defconfig
index c6e12d6c35..6f5f98e8d6 100644
--- a/configs/P1020UTM-PC_defconfig
+++ b/configs/P1020UTM-PC_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/P1021RDB-PC_36BIT_defconfig b/configs/P1021RDB-PC_36BIT_defconfig
index 42ab8b95b1..ec9ae39c95 100644
--- a/configs/P1021RDB-PC_36BIT_defconfig
+++ b/configs/P1021RDB-PC_36BIT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1021RDB-PC_defconfig b/configs/P1021RDB-PC_defconfig
index 6aff0a0a9d..fb75fd2310 100644
--- a/configs/P1021RDB-PC_defconfig
+++ b/configs/P1021RDB-PC_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_36BIT_defconfig b/configs/P1022DS_36BIT_defconfig
index 58335cbab0..62d6e15867 100644
--- a/configs/P1022DS_36BIT_defconfig
+++ b/configs/P1022DS_36BIT_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_defconfig b/configs/P1022DS_defconfig
index c0864a44e9..e574f60815 100644
--- a/configs/P1022DS_defconfig
+++ b/configs/P1022DS_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1023RDB_defconfig b/configs/P1023RDB_defconfig
index c53b7e0819..57cb6dad4c 100644
--- a/configs/P1023RDB_defconfig
+++ b/configs/P1023RDB_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
diff --git a/configs/P1024RDB_36BIT_defconfig b/configs/P1024RDB_36BIT_defconfig
index 5b2773abc6..8046445cc2 100644
--- a/configs/P1024RDB_36BIT_defconfig
+++ b/configs/P1024RDB_36BIT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1024RDB_defconfig b/configs/P1024RDB_defconfig
index 56bd118dd5..d1c70be4e0 100644
--- a/configs/P1024RDB_defconfig
+++ b/configs/P1024RDB_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1025RDB_36BIT_defconfig b/configs/P1025RDB_36BIT_defconfig
index 50ac75d701..94c093e7f9 100644
--- a/configs/P1025RDB_36BIT_defconfig
+++ b/configs/P1025RDB_36BIT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1025RDB_defconfig b/configs/P1025RDB_defconfig
index 22bfb2edcf..b24f73a950 100644
--- a/configs/P1025RDB_defconfig
+++ b/configs/P1025RDB_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_36BIT_defconfig b/configs/P2020RDB-PC_36BIT_defconfig
index e40e371bf5..f7abc19080 100644
--- a/configs/P2020RDB-PC_36BIT_defconfig
+++ b/configs/P2020RDB-PC_36BIT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_defconfig b/configs/P2020RDB-PC_defconfig
index df1dbffaa4..bc218af1cb 100644
--- a/configs/P2020RDB-PC_defconfig
+++ b/configs/P2020RDB-PC_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2041RDB_defconfig b/configs/P2041RDB_defconfig
index d47c7873c1..48dd991db7 100644
--- a/configs/P2041RDB_defconfig
+++ b/configs/P2041RDB_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P3041DS_defconfig b/configs/P3041DS_defconfig
index d8276c7b6d..2998961b18 100644
--- a/configs/P3041DS_defconfig
+++ b/configs/P3041DS_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P4080DS_defconfig b/configs/P4080DS_defconfig
index ec3d6f9304..747b469362 100644
--- a/configs/P4080DS_defconfig
+++ b/configs/P4080DS_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5020DS_defconfig b/configs/P5020DS_defconfig
index 55e0dbdf90..c26981fe86 100644
--- a/configs/P5020DS_defconfig
+++ b/configs/P5020DS_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5040DS_defconfig b/configs/P5040DS_defconfig
index b56c86eec8..9ae5c15fab 100644
--- a/configs/P5040DS_defconfig
+++ b/configs/P5040DS_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_defconfig b/configs/T1023RDB_defconfig
index 43853e7f85..33a4b27351 100644
--- a/configs/T1023RDB_defconfig
+++ b/configs/T1023RDB_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1024QDS_DDR4_defconfig b/configs/T1024QDS_DDR4_defconfig
index 7a57b08085..6e44f10325 100644
--- a/configs/T1024QDS_DDR4_defconfig
+++ b/configs/T1024QDS_DDR4_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1024QDS_defconfig b/configs/T1024QDS_defconfig
index b09e9a026d..2c726f49a0 100644
--- a/configs/T1024QDS_defconfig
+++ b/configs/T1024QDS_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1024RDB_defconfig b/configs/T1024RDB_defconfig
index da924d8f54..806a1cb741 100644
--- a/configs/T1024RDB_defconfig
+++ b/configs/T1024RDB_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1040D4RDB_defconfig b/configs/T1040D4RDB_defconfig
index 82d6140518..191b0de6ab 100644
--- a/configs/T1040D4RDB_defconfig
+++ b/configs/T1040D4RDB_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1040QDS_DDR4_defconfig b/configs/T1040QDS_DDR4_defconfig
index 063ae20c83..e4b802eb7a 100644
--- a/configs/T1040QDS_DDR4_defconfig
+++ b/configs/T1040QDS_DDR4_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1040QDS_defconfig b/configs/T1040QDS_defconfig
index 5d8cdf1383..98f714ff6e 100644
--- a/configs/T1040QDS_defconfig
+++ b/configs/T1040QDS_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1040RDB_defconfig b/configs/T1040RDB_defconfig
index 7d6ed1bb72..743e54ff7a 100644
--- a/configs/T1040RDB_defconfig
+++ b/configs/T1040RDB_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1042D4RDB_defconfig b/configs/T1042D4RDB_defconfig
index 410a124908..47ad7b769a 100644
--- a/configs/T1042D4RDB_defconfig
+++ b/configs/T1042D4RDB_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1042RDB_PI_defconfig b/configs/T1042RDB_PI_defconfig
index bad51b5534..7ac54cd15d 100644
--- a/configs/T1042RDB_PI_defconfig
+++ b/configs/T1042RDB_PI_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1042RDB_defconfig b/configs/T1042RDB_defconfig
index ba8b11c570..4f3e354aab 100644
--- a/configs/T1042RDB_defconfig
+++ b/configs/T1042RDB_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index 09dc9e2619..a39209dd3d 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080RDB_defconfig b/configs/T2080RDB_defconfig
index 424eda104e..47b9fdfb24 100644
--- a/configs/T2080RDB_defconfig
+++ b/configs/T2080RDB_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2081QDS_defconfig b/configs/T2081QDS_defconfig
index 9afc426211..ea88175906 100644
--- a/configs/T2081QDS_defconfig
+++ b/configs/T2081QDS_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4160QDS_defconfig b/configs/T4160QDS_defconfig
index 93411bab86..4e817308d9 100644
--- a/configs/T4160QDS_defconfig
+++ b/configs/T4160QDS_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4160RDB_defconfig b/configs/T4160RDB_defconfig
index 356e2d861e..33c10c1fcb 100644
--- a/configs/T4160RDB_defconfig
+++ b/configs/T4160RDB_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4240QDS_defconfig b/configs/T4240QDS_defconfig
index 6061244a43..08607974ae 100644
--- a/configs/T4240QDS_defconfig
+++ b/configs/T4240QDS_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T4240RDB_defconfig b/configs/T4240RDB_defconfig
index 6c023337a6..d9def12bd8 100644
--- a/configs/T4240RDB_defconfig
+++ b/configs/T4240RDB_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/TQM834x_defconfig b/configs/TQM834x_defconfig
index ef73ed40c8..f704025e76 100644
--- a/configs/TQM834x_defconfig
+++ b/configs/TQM834x_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_SNTP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/TWR-P1025_defconfig b/configs/TWR-P1025_defconfig
index e210643aa4..5f78a53664 100644
--- a/configs/TWR-P1025_defconfig
+++ b/configs/TWR-P1025_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_E1000=y
diff --git a/configs/UCP1020_defconfig b/configs/UCP1020_defconfig
index dbf073d774..f796163297 100644
--- a/configs/UCP1020_defconfig
+++ b/configs/UCP1020_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_CRAMFS=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/adp-ae3xx_defconfig b/configs/adp-ae3xx_defconfig
index d47ad86fee..9e1e5ecb47 100644
--- a/configs/adp-ae3xx_defconfig
+++ b/configs/adp-ae3xx_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_MMC=y
diff --git a/configs/adp-ag101p_defconfig b/configs/adp-ag101p_defconfig
index 6ce9e809dd..ced042e49f 100644
--- a/configs/adp-ag101p_defconfig
+++ b/configs/adp-ag101p_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_MMC=y
diff --git a/configs/am335x_evm_norboot_defconfig b/configs/am335x_evm_norboot_defconfig
index 49f75b26e0..7e68b029e1 100644
--- a/configs/am335x_evm_norboot_defconfig
+++ b/configs/am335x_evm_norboot_defconfig
@@ -12,6 +12,7 @@ CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_EARLY_INIT_F=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_OMAP_HS=y
diff --git a/configs/amcore_defconfig b/configs/amcore_defconfig
index e8c6adccb4..48ef25b521 100644
--- a/configs/amcore_defconfig
+++ b/configs/amcore_defconfig
@@ -16,6 +16,7 @@ CONFIG_LOOPW=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIMER=y
 CONFIG_CMD_DIAG=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_DM_SERIAL=y
diff --git a/configs/ap325rxa_defconfig b/configs/ap325rxa_defconfig
index ebefd126a8..bd79f7e3ac 100644
--- a/configs/ap325rxa_defconfig
+++ b/configs/ap325rxa_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_EXT2=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_BAUDRATE=38400
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/ap_sh4a_4a_defconfig b/configs/ap_sh4a_4a_defconfig
index 41c8be9120..364927c528 100644
--- a/configs/ap_sh4a_4a_defconfig
+++ b/configs/ap_sh4a_4a_defconfig
@@ -21,5 +21,6 @@ CONFIG_VERSION_VARIABLE=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/armadillo-800eva_defconfig b/configs/armadillo-800eva_defconfig
index 4c16ec19fd..c07abc71b8 100644
--- a/configs/armadillo-800eva_defconfig
+++ b/configs/armadillo-800eva_defconfig
@@ -25,5 +25,6 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/at91rm9200ek_defconfig b/configs/at91rm9200ek_defconfig
index 0abfeab1e6..cb6c70bf2e 100644
--- a/configs/at91rm9200ek_defconfig
+++ b/configs/at91rm9200ek_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USB=y
diff --git a/configs/at91rm9200ek_ram_defconfig b/configs/at91rm9200ek_ram_defconfig
index 545b24a9b1..28051aa652 100644
--- a/configs/at91rm9200ek_ram_defconfig
+++ b/configs/at91rm9200ek_ram_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USB=y
diff --git a/configs/at91sam9263ek_norflash_boot_defconfig b/configs/at91sam9263ek_norflash_boot_defconfig
index 66484a18f2..aa2d6ae297 100644
--- a/configs/at91sam9263ek_norflash_boot_defconfig
+++ b/configs/at91sam9263ek_norflash_boot_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9263ek_norflash_defconfig b/configs/at91sam9263ek_norflash_defconfig
index 1e177480c9..a405e7003d 100644
--- a/configs/at91sam9263ek_norflash_defconfig
+++ b/configs/at91sam9263ek_norflash_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/blanche_defconfig b/configs/blanche_defconfig
index bf7700cbe1..0c9384c95b 100644
--- a/configs/blanche_defconfig
+++ b/configs/blanche_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
diff --git a/configs/caddy2_defconfig b/configs/caddy2_defconfig
index 007cce1075..863d5c086e 100644
--- a/configs/caddy2_defconfig
+++ b/configs/caddy2_defconfig
@@ -11,6 +11,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
diff --git a/configs/calimain_defconfig b/configs/calimain_defconfig
index 48422ddffe..89c9e9c9fb 100644
--- a/configs/calimain_defconfig
+++ b/configs/calimain_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DIAG=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/colibri_pxa270_defconfig b/configs/colibri_pxa270_defconfig
index ddf4bf655e..7f8c97574a 100644
--- a/configs/colibri_pxa270_defconfig
+++ b/configs/colibri_pxa270_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_DM_SERIAL=y
diff --git a/configs/da850evm_direct_nor_defconfig b/configs/da850evm_direct_nor_defconfig
index 99543d39e1..2490fda402 100644
--- a/configs/da850evm_direct_nor_defconfig
+++ b/configs/da850evm_direct_nor_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DIAG=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ecovec_defconfig b/configs/ecovec_defconfig
index cc172f5181..43c9d26a04 100644
--- a/configs/ecovec_defconfig
+++ b/configs/ecovec_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/edb9315a_defconfig b/configs/edb9315a_defconfig
index bb67881a25..a854477665 100644
--- a/configs/edb9315a_defconfig
+++ b/configs/edb9315a_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 # CONFIG_DOS_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS0=y
 CONFIG_LED_STATUS_BIT=0
diff --git a/configs/edminiv2_defconfig b/configs/edminiv2_defconfig
index d67b548977..8e6b9d2421 100644
--- a/configs/edminiv2_defconfig
+++ b/configs/edminiv2_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_EXT2=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/espt_defconfig b/configs/espt_defconfig
index a6a7af9755..ef496a9111 100644
--- a/configs/espt_defconfig
+++ b/configs/espt_defconfig
@@ -21,5 +21,6 @@ CONFIG_VERSION_VARIABLE=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/flea3_defconfig b/configs/flea3_defconfig
index 8a64386319..48c1e684f0 100644
--- a/configs/flea3_defconfig
+++ b/configs/flea3_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/hrcon_defconfig b/configs/hrcon_defconfig
index aea06769f4..2cfc343830 100644
--- a/configs/hrcon_defconfig
+++ b/configs/hrcon_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/hrcon_dh_defconfig b/configs/hrcon_dh_defconfig
index 8e911d49a0..5b24a6f270 100644
--- a/configs/hrcon_dh_defconfig
+++ b/configs/hrcon_dh_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ids8313_defconfig b/configs/ids8313_defconfig
index 2a8c239d69..c33f6f4a49 100644
--- a/configs/ids8313_defconfig
+++ b/configs/ids8313_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_SNTP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 # CONFIG_PCI is not set
diff --git a/configs/kmcoge5ne_defconfig b/configs/kmcoge5ne_defconfig
index db93dee323..2e518dbc1e 100644
--- a/configs/kmcoge5ne_defconfig
+++ b/configs/kmcoge5ne_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 # CONFIG_PCI is not set
diff --git a/configs/kmeter1_defconfig b/configs/kmeter1_defconfig
index 163f4f927d..00bad22dda 100644
--- a/configs/kmeter1_defconfig
+++ b/configs/kmeter1_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 # CONFIG_PCI is not set
diff --git a/configs/kzm9g_defconfig b/configs/kzm9g_defconfig
index a884e5a10c..fe9f226c42 100644
--- a/configs/kzm9g_defconfig
+++ b/configs/kzm9g_defconfig
@@ -11,6 +11,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 # CONFIG_FAT_WRITE is not set
diff --git a/configs/ls1021aqds_ddr4_nor_defconfig b/configs/ls1021aqds_ddr4_nor_defconfig
index e753f4c589..087022e058 100644
--- a/configs/ls1021aqds_ddr4_nor_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
index ed03812a92..cece5b1720 100644
--- a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1021aqds_nor_defconfig b/configs/ls1021aqds_nor_defconfig
index 6b435cc4d5..3018c101ec 100644
--- a/configs/ls1021aqds_nor_defconfig
+++ b/configs/ls1021aqds_nor_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/ls1021aqds_nor_lpuart_defconfig b/configs/ls1021aqds_nor_lpuart_defconfig
index 8fdd8b63db..07395c9853 100644
--- a/configs/ls1021aqds_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_nor_lpuart_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/ls1021atwr_nor_defconfig b/configs/ls1021atwr_nor_defconfig
index c56533af3b..bcf4033161 100644
--- a/configs/ls1021atwr_nor_defconfig
+++ b/configs/ls1021atwr_nor_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1021atwr_nor_lpuart_defconfig b/configs/ls1021atwr_nor_lpuart_defconfig
index 89b89cd211..9e17a9881a 100644
--- a/configs/ls1021atwr_nor_lpuart_defconfig
+++ b/configs/ls1021atwr_nor_lpuart_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043aqds_defconfig b/configs/ls1043aqds_defconfig
index 37662082c6..7640c1a3c4 100644
--- a/configs/ls1043aqds_defconfig
+++ b/configs/ls1043aqds_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043aqds_lpuart_defconfig b/configs/ls1043aqds_lpuart_defconfig
index ed125d7494..ace95becdb 100644
--- a/configs/ls1043aqds_lpuart_defconfig
+++ b/configs/ls1043aqds_lpuart_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1043aqds_nor_ddr3_defconfig b/configs/ls1043aqds_nor_ddr3_defconfig
index 6974a58797..bac2e3e90c 100644
--- a/configs/ls1043aqds_nor_ddr3_defconfig
+++ b/configs/ls1043aqds_nor_ddr3_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/ls1043ardb_defconfig b/configs/ls1043ardb_defconfig
index 894110bd1e..b2987aa1a6 100644
--- a/configs/ls1043ardb_defconfig
+++ b/configs/ls1043ardb_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1046aqds_defconfig b/configs/ls1046aqds_defconfig
index 87df2fec9b..1fd98fcd8d 100644
--- a/configs/ls1046aqds_defconfig
+++ b/configs/ls1046aqds_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls1046aqds_lpuart_defconfig b/configs/ls1046aqds_lpuart_defconfig
index 47dba49fbd..4d373178cf 100644
--- a/configs/ls1046aqds_lpuart_defconfig
+++ b/configs/ls1046aqds_lpuart_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/ls2080aqds_defconfig b/configs/ls2080aqds_defconfig
index 0106e9ad0d..b930e61ba7 100644
--- a/configs/ls2080aqds_defconfig
+++ b/configs/ls2080aqds_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
diff --git a/configs/ls2080ardb_defconfig b/configs/ls2080ardb_defconfig
index ed79c97121..ab7539075e 100644
--- a/configs/ls2080ardb_defconfig
+++ b/configs/ls2080ardb_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
diff --git a/configs/mccmon6_nor_defconfig b/configs/mccmon6_nor_defconfig
index acc43ad94a..60147cbee9 100644
--- a/configs/mccmon6_nor_defconfig
+++ b/configs/mccmon6_nor_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_MTD=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/mccmon6_sd_defconfig b/configs/mccmon6_sd_defconfig
index 61c436e22c..8e347987b1 100644
--- a/configs/mccmon6_sd_defconfig
+++ b/configs/mccmon6_sd_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 CONFIG_MTD=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig
index 4a137007bf..d787a310b6 100644
--- a/configs/microblaze-generic_defconfig
+++ b/configs/microblaze-generic_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 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/mpc8308_p1m_defconfig b/configs/mpc8308_p1m_defconfig
index ee92e4fb83..5b5336c9a3 100644
--- a/configs/mpc8308_p1m_defconfig
+++ b/configs/mpc8308_p1m_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/ms7722se_defconfig b/configs/ms7722se_defconfig
index 92f3158dae..f2e5032521 100644
--- a/configs/ms7722se_defconfig
+++ b/configs/ms7722se_defconfig
@@ -21,5 +21,6 @@ CONFIG_VERSION_VARIABLE=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/ms7750se_defconfig b/configs/ms7750se_defconfig
index 88bbb12003..6185fbe135 100644
--- a/configs/ms7750se_defconfig
+++ b/configs/ms7750se_defconfig
@@ -21,6 +21,7 @@ CONFIG_BOOTDELAY=-1
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_BAUDRATE=38400
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/mx31ads_defconfig b/configs/mx31ads_defconfig
index c9ba6975f8..098a763550 100644
--- a/configs/mx31ads_defconfig
+++ b/configs/mx31ads_defconfig
@@ -6,5 +6,6 @@ CONFIG_CMD_SPI=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/mx35pdk_defconfig b/configs/mx35pdk_defconfig
index 0da348adff..7e0a06a1c4 100644
--- a/configs/mx35pdk_defconfig
+++ b/configs/mx35pdk_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/pm9261_defconfig b/configs/pm9261_defconfig
index ba079de6dc..04d636e0af 100644
--- a/configs/pm9261_defconfig
+++ b/configs/pm9261_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USB=y
diff --git a/configs/pm9263_defconfig b/configs/pm9263_defconfig
index 7cf2722740..b57de5d423 100644
--- a/configs/pm9263_defconfig
+++ b/configs/pm9263_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USB=y
diff --git a/configs/r0p7734_defconfig b/configs/r0p7734_defconfig
index 91b08dc24f..fc1b8445ff 100644
--- a/configs/r0p7734_defconfig
+++ b/configs/r0p7734_defconfig
@@ -21,5 +21,6 @@ CONFIG_VERSION_VARIABLE=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/r2dplus_defconfig b/configs/r2dplus_defconfig
index ba68b504d0..9ec4f7033a 100644
--- a/configs/r2dplus_defconfig
+++ b/configs/r2dplus_defconfig
@@ -7,6 +7,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_RTL8139=y
diff --git a/configs/r7780mp_defconfig b/configs/r7780mp_defconfig
index 2a37db824d..34a1fb8ebf 100644
--- a/configs/r7780mp_defconfig
+++ b/configs/r7780mp_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_EXT2=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PCI=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/sh7763rdp_defconfig b/configs/sh7763rdp_defconfig
index 028616666c..b663f69904 100644
--- a/configs/sh7763rdp_defconfig
+++ b/configs/sh7763rdp_defconfig
@@ -22,5 +22,6 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 # CONFIG_CMD_MISC is not set
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/configs/sh7785lcr_32bit_defconfig b/configs/sh7785lcr_32bit_defconfig
index 8cb58e9d18..f556adcddd 100644
--- a/configs/sh7785lcr_32bit_defconfig
+++ b/configs/sh7785lcr_32bit_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_MAC_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PCI=y
 CONFIG_USB=y
diff --git a/configs/sh7785lcr_defconfig b/configs/sh7785lcr_defconfig
index 5b6ebf8528..7e74c1252e 100644
--- a/configs/sh7785lcr_defconfig
+++ b/configs/sh7785lcr_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_MAC_PARTITION=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PCI=y
 CONFIG_USB=y
diff --git a/configs/socrates_defconfig b/configs/socrates_defconfig
index 5def6d5991..2e3cce09fe 100644
--- a/configs/socrates_defconfig
+++ b/configs/socrates_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/spear300_defconfig b/configs/spear300_defconfig
index 300bc08d5d..f9916ff60a 100644
--- a/configs/spear300_defconfig
+++ b/configs/spear300_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear300_usbtty_defconfig b/configs/spear300_usbtty_defconfig
index 99a72a0cab..e0657ae86d 100644
--- a/configs/spear300_usbtty_defconfig
+++ b/configs/spear300_usbtty_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear310_defconfig b/configs/spear310_defconfig
index d93f8fcf5e..6eb9c7ac50 100644
--- a/configs/spear310_defconfig
+++ b/configs/spear310_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear310_pnor_defconfig b/configs/spear310_pnor_defconfig
index 78a558bc42..91fa35ca84 100644
--- a/configs/spear310_pnor_defconfig
+++ b/configs/spear310_pnor_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear310_usbtty_defconfig b/configs/spear310_usbtty_defconfig
index 92d24794f9..3cc362895d 100644
--- a/configs/spear310_usbtty_defconfig
+++ b/configs/spear310_usbtty_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear310_usbtty_pnor_defconfig b/configs/spear310_usbtty_pnor_defconfig
index f922e8fd9f..5a174e6223 100644
--- a/configs/spear310_usbtty_pnor_defconfig
+++ b/configs/spear310_usbtty_pnor_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear320_defconfig b/configs/spear320_defconfig
index dd1798fdfe..efb494ed60 100644
--- a/configs/spear320_defconfig
+++ b/configs/spear320_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear320_pnor_defconfig b/configs/spear320_pnor_defconfig
index 1ed8e83bc2..f02af74a2c 100644
--- a/configs/spear320_pnor_defconfig
+++ b/configs/spear320_pnor_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear320_usbtty_defconfig b/configs/spear320_usbtty_defconfig
index ff897822aa..613654cf59 100644
--- a/configs/spear320_usbtty_defconfig
+++ b/configs/spear320_usbtty_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear320_usbtty_pnor_defconfig b/configs/spear320_usbtty_pnor_defconfig
index bc8f0e20f5..adee03aa15 100644
--- a/configs/spear320_usbtty_pnor_defconfig
+++ b/configs/spear320_usbtty_pnor_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear600_defconfig b/configs/spear600_defconfig
index 7b8cd06297..c83dc606f3 100644
--- a/configs/spear600_defconfig
+++ b/configs/spear600_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/spear600_usbtty_defconfig b/configs/spear600_usbtty_defconfig
index ef9308c368..88cdc6831a 100644
--- a/configs/spear600_usbtty_defconfig
+++ b/configs/spear600_usbtty_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/stm32f429-discovery_defconfig b/configs/stm32f429-discovery_defconfig
index 751e485b49..19363f7e7d 100644
--- a/configs/stm32f429-discovery_defconfig
+++ b/configs/stm32f429-discovery_defconfig
@@ -11,6 +11,7 @@ CONFIG_SYS_PROMPT="U-Boot > "
 # CONFIG_CMD_BOOTEFI_HELLO_COMPILE is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_TIMER=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/vct_platinum_defconfig b/configs/vct_platinum_defconfig
index f8b9d7e61b..0e4fcbaa26 100644
--- a/configs/vct_platinum_defconfig
+++ b/configs/vct_platinum_defconfig
@@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_SNTP=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/vct_platinum_small_defconfig b/configs/vct_platinum_small_defconfig
index 2b49d4c9a0..eafece0723 100644
--- a/configs/vct_platinum_small_defconfig
+++ b/configs/vct_platinum_small_defconfig
@@ -18,5 +18,6 @@ CONFIG_SYS_PROMPT="$ "
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/vct_platinumavc_defconfig b/configs/vct_platinumavc_defconfig
index 5efe2236a3..ebbf6c1a02 100644
--- a/configs/vct_platinumavc_defconfig
+++ b/configs/vct_platinumavc_defconfig
@@ -11,5 +11,6 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_DHCP=y
 # CONFIG_CMD_NFS is not set
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/vct_platinumavc_small_defconfig b/configs/vct_platinumavc_small_defconfig
index 1b5c125893..f7823ef050 100644
--- a/configs/vct_platinumavc_small_defconfig
+++ b/configs/vct_platinumavc_small_defconfig
@@ -18,5 +18,6 @@ CONFIG_SYS_PROMPT="$ "
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/vct_premium_defconfig b/configs/vct_premium_defconfig
index 24f776b49f..f89a0a5ee5 100644
--- a/configs/vct_premium_defconfig
+++ b/configs/vct_premium_defconfig
@@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_SNTP=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/vct_premium_small_defconfig b/configs/vct_premium_small_defconfig
index 276650dbe1..0420cd15a6 100644
--- a/configs/vct_premium_small_defconfig
+++ b/configs/vct_premium_small_defconfig
@@ -18,5 +18,6 @@ CONFIG_SYS_PROMPT="$ "
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/ve8313_defconfig b/configs/ve8313_defconfig
index 2fdf77d80b..60eea83a27 100644
--- a/configs/ve8313_defconfig
+++ b/configs/ve8313_defconfig
@@ -10,6 +10,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/vexpress_aemv8a_dram_defconfig b/configs/vexpress_aemv8a_dram_defconfig
index c06b989366..54794988e2 100644
--- a/configs/vexpress_aemv8a_dram_defconfig
+++ b/configs/vexpress_aemv8a_dram_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
 # CONFIG_CMD_MISC is not set
 # CONFIG_ISO_PARTITION is not set
 # CONFIG_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/vexpress_aemv8a_juno_defconfig b/configs/vexpress_aemv8a_juno_defconfig
index b2e3098fc4..b1363c313d 100644
--- a/configs/vexpress_aemv8a_juno_defconfig
+++ b/configs/vexpress_aemv8a_juno_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
 # CONFIG_CMD_MISC is not set
 # CONFIG_ISO_PARTITION is not set
 # CONFIG_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig
index 33639f2f8c..967a4e402d 100644
--- a/configs/vexpress_aemv8a_semi_defconfig
+++ b/configs/vexpress_aemv8a_semi_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
 # CONFIG_CMD_MISC is not set
 # CONFIG_ISO_PARTITION is not set
 # CONFIG_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/vexpress_ca15_tc2_defconfig b/configs/vexpress_ca15_tc2_defconfig
index ba489ea1d1..2907493bcb 100644
--- a/configs/vexpress_ca15_tc2_defconfig
+++ b/configs/vexpress_ca15_tc2_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MMC=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_BAUDRATE=38400
 CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_ca5x2_defconfig b/configs/vexpress_ca5x2_defconfig
index fb671419c5..40ab671ef7 100644
--- a/configs/vexpress_ca5x2_defconfig
+++ b/configs/vexpress_ca5x2_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_BAUDRATE=38400
 CONFIG_OF_LIBFDT=y
diff --git a/configs/vexpress_ca9x4_defconfig b/configs/vexpress_ca9x4_defconfig
index 7b845c6c79..5e49e99628 100644
--- a/configs/vexpress_ca9x4_defconfig
+++ b/configs/vexpress_ca9x4_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_CMD_MISC is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_BAUDRATE=38400
 CONFIG_OF_LIBFDT=y
diff --git a/configs/vme8349_defconfig b/configs/vme8349_defconfig
index c27a44744a..609ca7df75 100644
--- a/configs/vme8349_defconfig
+++ b/configs/vme8349_defconfig
@@ -10,6 +10,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_BAUDRATE=9600
diff --git a/configs/woodburn_defconfig b/configs/woodburn_defconfig
index 53a97078b3..c83a6ad755 100644
--- a/configs/woodburn_defconfig
+++ b/configs/woodburn_defconfig
@@ -19,4 +19,5 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/woodburn_sd_defconfig b/configs/woodburn_sd_defconfig
index 22172c57b3..931349f5b7 100644
--- a/configs/woodburn_sd_defconfig
+++ b/configs/woodburn_sd_defconfig
@@ -30,4 +30,5 @@ CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/x600_defconfig b/configs/x600_defconfig
index 2e5d5f1ae8..1d2758939e 100644
--- a/configs/x600_defconfig
+++ b/configs/x600_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_SYS_I2C_DW=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/xpedite550x_defconfig b/configs/xpedite550x_defconfig
index cad0d239e9..ff6c487f92 100644
--- a/configs/xpedite550x_defconfig
+++ b/configs/xpedite550x_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_JFFS2=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/xtfpga_defconfig b/configs/xtfpga_defconfig
index 9f85d63965..a9ddd139b6 100644
--- a/configs/xtfpga_defconfig
+++ b/configs/xtfpga_defconfig
@@ -12,6 +12,7 @@ CONFIG_CRC32_VERIFY=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DIAG=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
 # CONFIG_DM_WARN is not set
 # CONFIG_DM_DEVICE_REMOVE is not set
diff --git a/configs/zipitz2_defconfig b/configs/zipitz2_defconfig
index 0b38f2b1af..b2815a2c7d 100644
--- a/configs/zipitz2_defconfig
+++ b/configs/zipitz2_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_PXA_SERIAL=y
 CONFIG_USB=y
diff --git a/configs/zmx25_defconfig b/configs/zmx25_defconfig
index 7a939036d9..f6a2f86ef9 100644
--- a/configs/zmx25_defconfig
+++ b/configs/zmx25_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_USB=y
diff --git a/configs/zynq_zc770_xm012_defconfig b/configs/zynq_zc770_xm012_defconfig
index 943efdb141..4d9320611e 100644
--- a/configs/zynq_zc770_xm012_defconfig
+++ b/configs/zynq_zc770_xm012_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 # CONFIG_MMC is not set
diff --git a/env/Kconfig b/env/Kconfig
index 5a314022ef..5cc55f8972 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -1,5 +1,76 @@
 menu "Environment"
 
+config ENV_IS_IN_FLASH
+	bool "Environment in flash memory"
+	help
+	  Define this if you have a flash device which you want to use for the
+	  environment.
+
+	  a) The environment occupies one whole flash sector, which is
+	   "embedded" in the text segment with the U-Boot code. This
+	   happens usually with "bottom boot sector" or "top boot
+	   sector" type flash chips, which have several smaller
+	   sectors at the start or the end. For instance, such a
+	   layout can have sector sizes of 8, 2x4, 16, Nx32 kB. In
+	   such a case you would place the environment in one of the
+	   4 kB sectors - with U-Boot code before and after it. With
+	   "top boot sector" type flash chips, you would put the
+	   environment in one of the last sectors, leaving a gap
+	   between U-Boot and the environment.
+
+	  CONFIG_ENV_OFFSET:
+
+	   Offset of environment data (variable area) to the
+	   beginning of flash memory; for instance, with bottom boot
+	   type flash chips the second sector can be used: the offset
+	   for this sector is given here.
+
+	   CONFIG_ENV_OFFSET is used relative to CONFIG_SYS_FLASH_BASE.
+
+	  CONFIG_ENV_ADDR:
+
+	   This is just another way to specify the start address of
+	   the flash sector containing the environment (instead of
+	   CONFIG_ENV_OFFSET).
+
+	  CONFIG_ENV_SECT_SIZE:
+
+	   Size of the sector containing the environment.
+
+
+	  b) Sometimes flash chips have few, equal sized, BIG sectors.
+	   In such a case you don't want to spend a whole sector for
+	   the environment.
+
+	  CONFIG_ENV_SIZE:
+
+	   If you use this in combination with CONFIG_ENV_IS_IN_FLASH
+	   and CONFIG_ENV_SECT_SIZE, you can specify to use only a part
+	   of this flash sector for the environment. This saves
+	   memory for the RAM copy of the environment.
+
+	   It may also save flash memory if you decide to use this
+	   when your environment is "embedded" within U-Boot code,
+	   since then the remainder of the flash sector could be used
+	   for U-Boot code. It should be pointed out that this is
+	   STRONGLY DISCOURAGED from a robustness point of view:
+	   updating the environment in flash makes it always
+	   necessary to erase the WHOLE sector. If something goes
+	   wrong before the contents has been restored from a copy in
+	   RAM, your target system will be dead.
+
+	  CONFIG_ENV_ADDR_REDUND
+	  CONFIG_ENV_SIZE_REDUND
+
+	   These settings describe a second storage area used to hold
+	   a redundant copy of the environment data, so that there is
+	   a valid backup copy in case there is a power failure during
+	   a "saveenv" operation.
+
+	  BE CAREFUL! Any changes to the flash layout, and some changes to the
+	  source code will make it necessary to adapt <board>/u-boot.lds*
+	  accordingly!
+
 config ENV_IS_IN_MMC
 	bool "Environment in an MMC device"
 	default y if ARCH_SUNXI
diff --git a/include/config_fsl_chain_trust.h b/include/config_fsl_chain_trust.h
index 5a1a287992..6b6ae7cc78 100644
--- a/include/config_fsl_chain_trust.h
+++ b/include/config_fsl_chain_trust.h
@@ -15,7 +15,6 @@
 
 #undef CONFIG_ENV_IS_IN_EEPROM
 #undef CONFIG_ENV_IS_IN_SPI_FLASH
-#undef CONFIG_ENV_IS_IN_FLASH
 
 #endif
 
diff --git a/include/configs/10m50_devboard.h b/include/configs/10m50_devboard.h
index ea980e6511..d05cc613d0 100644
--- a/include/configs/10m50_devboard.h
+++ b/include/configs/10m50_devboard.h
@@ -70,7 +70,6 @@
  * of flash. NOTE: the monitor length must be multiple of sector size
  * (which is common practice).
  */
-#define CONFIG_ENV_IS_IN_FLASH
 
 #define CONFIG_ENV_SIZE			0x10000	/* 64k, 1 sector */
 #define CONFIG_ENV_OVERWRITE		/* Serial change Ok	*/
diff --git a/include/configs/3c120_devboard.h b/include/configs/3c120_devboard.h
index 65271773f4..0d3794dd06 100644
--- a/include/configs/3c120_devboard.h
+++ b/include/configs/3c120_devboard.h
@@ -73,7 +73,6 @@
  * of flash. NOTE: the monitor length must be multiple of sector size
  * (which is common practice).
  */
-#define CONFIG_ENV_IS_IN_FLASH
 
 #define CONFIG_ENV_SIZE			0x20000	/* 128k, 1 sector */
 #define CONFIG_ENV_OVERWRITE		/* Serial change Ok	*/
diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h
index 61a1fa48ae..d580e9b36e 100644
--- a/include/configs/B4860QDS.h
+++ b/include/configs/B4860QDS.h
@@ -139,7 +139,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h
index 2aec01ec54..54d613707b 100644
--- a/include/configs/BSC9132QDS.h
+++ b/include/configs/BSC9132QDS.h
@@ -505,7 +505,6 @@ combinations. this should be removed later
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE			0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000
diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h
index a8bc2abcab..937e93ef0a 100644
--- a/include/configs/C29XPCIE.h
+++ b/include/configs/C29XPCIE.h
@@ -423,7 +423,6 @@
 #endif
 #define CONFIG_ENV_OFFSET	CONFIG_SYS_NAND_BLOCK_SIZE
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000
diff --git a/include/configs/M5208EVBE.h b/include/configs/M5208EVBE.h
index 2cf05a0978..0a1a0d8673 100644
--- a/include/configs/M5208EVBE.h
+++ b/include/configs/M5208EVBE.h
@@ -162,7 +162,6 @@
 #define CONFIG_ENV_OFFSET		0x2000
 #define CONFIG_ENV_SIZE			0x1000
 #define CONFIG_ENV_SECT_SIZE		0x2000
-#define CONFIG_ENV_IS_IN_FLASH		1
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
diff --git a/include/configs/M52277EVB.h b/include/configs/M52277EVB.h
index fc9b26ff46..75acc59910 100644
--- a/include/configs/M52277EVB.h
+++ b/include/configs/M52277EVB.h
@@ -201,8 +201,6 @@
 #ifdef CONFIG_CF_SBF
 #	define CONFIG_ENV_IS_IN_SPI_FLASH
 #	define CONFIG_ENV_SPI_CS	2
-#else
-#	define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 #define CONFIG_ENV_OVERWRITE		1
 
diff --git a/include/configs/M5235EVB.h b/include/configs/M5235EVB.h
index 0546afda69..f28a574713 100644
--- a/include/configs/M5235EVB.h
+++ b/include/configs/M5235EVB.h
@@ -177,7 +177,6 @@
 /* Configuration for environment
  * Environment is embedded in u-boot in the second sector of the flash
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
diff --git a/include/configs/M5249EVB.h b/include/configs/M5249EVB.h
index 7e70a3b045..df0733e6c2 100644
--- a/include/configs/M5249EVB.h
+++ b/include/configs/M5249EVB.h
@@ -84,8 +84,6 @@
 #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
 #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
 
-#define CONFIG_ENV_IS_IN_FLASH	1
-
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
 	env/embedded.o(.text);
diff --git a/include/configs/M5253DEMO.h b/include/configs/M5253DEMO.h
index ef5deb869c..da8333ac6f 100644
--- a/include/configs/M5253DEMO.h
+++ b/include/configs/M5253DEMO.h
@@ -23,11 +23,9 @@
 #ifdef CONFIG_MONITOR_IS_IN_RAM
 #	define CONFIG_ENV_OFFSET		0x4000
 #	define CONFIG_ENV_SECT_SIZE	0x1000
-#	define CONFIG_ENV_IS_IN_FLASH	1
 #else
 #	define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + 0x4000)
 #	define CONFIG_ENV_SECT_SIZE	0x1000
-#	define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 
 #define LDS_BOARD_TEXT \
diff --git a/include/configs/M5253EVBE.h b/include/configs/M5253EVBE.h
index 433f8327cc..5a2f0e204f 100644
--- a/include/configs/M5253EVBE.h
+++ b/include/configs/M5253EVBE.h
@@ -24,11 +24,9 @@
 #ifndef CONFIG_MONITOR_IS_IN_RAM
 #define CONFIG_ENV_OFFSET		0x4000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #else
 #define CONFIG_ENV_ADDR		0xffe04000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 
 #define LDS_BOARD_TEXT \
diff --git a/include/configs/M5272C3.h b/include/configs/M5272C3.h
index 094973a168..f5693d8178 100644
--- a/include/configs/M5272C3.h
+++ b/include/configs/M5272C3.h
@@ -33,11 +33,9 @@
 #ifndef CONFIG_MONITOR_IS_IN_RAM
 #define CONFIG_ENV_OFFSET		0x4000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #else
 #define CONFIG_ENV_ADDR		0xffe04000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 
 #define LDS_BOARD_TEXT \
diff --git a/include/configs/M5275EVB.h b/include/configs/M5275EVB.h
index 1a8f973e39..339a03c7b1 100644
--- a/include/configs/M5275EVB.h
+++ b/include/configs/M5275EVB.h
@@ -34,11 +34,9 @@
 #ifndef CONFIG_MONITOR_IS_IN_RAM
 #define CONFIG_ENV_OFFSET		0x4000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #else
 #define CONFIG_ENV_ADDR		0xffe04000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 
 #define LDS_BOARD_TEXT \
diff --git a/include/configs/M5282EVB.h b/include/configs/M5282EVB.h
index 604daf577a..3f2d9a9bac 100644
--- a/include/configs/M5282EVB.h
+++ b/include/configs/M5282EVB.h
@@ -29,7 +29,6 @@
  */
 #define CONFIG_ENV_ADDR		0xffe04000
 #define CONFIG_ENV_SIZE		0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
diff --git a/include/configs/M53017EVB.h b/include/configs/M53017EVB.h
index 86fb277897..5331533446 100644
--- a/include/configs/M53017EVB.h
+++ b/include/configs/M53017EVB.h
@@ -185,7 +185,6 @@
 #define CONFIG_ENV_OFFSET		(CONFIG_SYS_FLASH_BASE + 0x40000)
 #define CONFIG_ENV_SIZE			0x1000
 #define CONFIG_ENV_SECT_SIZE		0x8000
-#define CONFIG_ENV_IS_IN_FLASH		1
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
diff --git a/include/configs/M5329EVB.h b/include/configs/M5329EVB.h
index 7e7f1ee918..14bfc60b88 100644
--- a/include/configs/M5329EVB.h
+++ b/include/configs/M5329EVB.h
@@ -190,7 +190,6 @@
  */
 #define CONFIG_ENV_OFFSET		0x4000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
diff --git a/include/configs/M5373EVB.h b/include/configs/M5373EVB.h
index ee621f03be..5bc41bfbb9 100644
--- a/include/configs/M5373EVB.h
+++ b/include/configs/M5373EVB.h
@@ -190,7 +190,6 @@
  */
 #define CONFIG_ENV_OFFSET		0x4000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 
 #define LDS_BOARD_TEXT \
 	. = DEFINED(env_offset) ? env_offset : .; \
diff --git a/include/configs/M54451EVB.h b/include/configs/M54451EVB.h
index 7d6edda361..fbd5287147 100644
--- a/include/configs/M54451EVB.h
+++ b/include/configs/M54451EVB.h
@@ -222,7 +222,6 @@
 #	define CONFIG_ENV_SIZE		0x2000
 #	define CONFIG_ENV_SECT_SIZE	0x10000
 #else
-#	define CONFIG_ENV_IS_IN_FLASH	1
 #	define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + 0x40000)
 #	define CONFIG_ENV_SIZE		0x2000
 #	define CONFIG_ENV_SECT_SIZE	0x20000
diff --git a/include/configs/M54455EVB.h b/include/configs/M54455EVB.h
index 39ba94065a..cc08df7d3d 100644
--- a/include/configs/M54455EVB.h
+++ b/include/configs/M54455EVB.h
@@ -273,8 +273,6 @@
 #ifdef CONFIG_CF_SBF
 #	define CONFIG_ENV_IS_IN_SPI_FLASH
 #	define CONFIG_ENV_SPI_CS		1
-#else
-#	define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 #undef CONFIG_ENV_OVERWRITE
 
diff --git a/include/configs/M5475EVB.h b/include/configs/M5475EVB.h
index cf9d3b8e1b..be05e3a735 100644
--- a/include/configs/M5475EVB.h
+++ b/include/configs/M5475EVB.h
@@ -233,7 +233,6 @@
  */
 #define CONFIG_ENV_OFFSET		0x40000
 #define CONFIG_ENV_SECT_SIZE	0x10000
-#define CONFIG_ENV_IS_IN_FLASH	1
 
 /*-----------------------------------------------------------------------
  * Cache Configuration
diff --git a/include/configs/M5485EVB.h b/include/configs/M5485EVB.h
index 934c9d8903..a8ad62c237 100644
--- a/include/configs/M5485EVB.h
+++ b/include/configs/M5485EVB.h
@@ -220,7 +220,6 @@
  */
 #define CONFIG_ENV_OFFSET		0x40000
 #define CONFIG_ENV_SECT_SIZE	0x10000
-#define CONFIG_ENV_IS_IN_FLASH	1
 
 /*-----------------------------------------------------------------------
  * Cache Configuration
diff --git a/include/configs/MPC8308RDB.h b/include/configs/MPC8308RDB.h
index 0f26467e29..25d5cab959 100644
--- a/include/configs/MPC8308RDB.h
+++ b/include/configs/MPC8308RDB.h
@@ -394,7 +394,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 				 CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x10000 /* 64K(one sector) for env */
diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h
index b767401fc1..566be9b6ea 100644
--- a/include/configs/MPC8313ERDB.h
+++ b/include/configs/MPC8313ERDB.h
@@ -440,7 +440,6 @@
 	#define CONFIG_ENV_OFFSET_REDUND	\
 					(CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE)
 #elif !defined(CONFIG_SYS_RAMBOOT)
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 	#define CONFIG_ENV_SECT_SIZE	0x10000	/* 64K(one sector) for env */
diff --git a/include/configs/MPC8315ERDB.h b/include/configs/MPC8315ERDB.h
index b281c216cb..4a973de4e3 100644
--- a/include/configs/MPC8315ERDB.h
+++ b/include/configs/MPC8315ERDB.h
@@ -421,7 +421,6 @@
  * Environment
  */
 #if !defined(CONFIG_SYS_RAMBOOT)
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 	#define CONFIG_ENV_SECT_SIZE	0x10000 /* 64K(one sector) for env */
diff --git a/include/configs/MPC8323ERDB.h b/include/configs/MPC8323ERDB.h
index d34eacbad3..b8f8f493eb 100644
--- a/include/configs/MPC8323ERDB.h
+++ b/include/configs/MPC8323ERDB.h
@@ -295,7 +295,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 	#define CONFIG_ENV_SECT_SIZE	0x20000
diff --git a/include/configs/MPC832XEMDS.h b/include/configs/MPC832XEMDS.h
index 28b9478d04..428f3abf90 100644
--- a/include/configs/MPC832XEMDS.h
+++ b/include/configs/MPC832XEMDS.h
@@ -379,7 +379,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 	#define CONFIG_ENV_SECT_SIZE	0x20000
diff --git a/include/configs/MPC8349EMDS.h b/include/configs/MPC8349EMDS.h
index 2835d42b93..18f7523692 100644
--- a/include/configs/MPC8349EMDS.h
+++ b/include/configs/MPC8349EMDS.h
@@ -433,7 +433,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 	#define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
diff --git a/include/configs/MPC8349ITX.h b/include/configs/MPC8349ITX.h
index 4b9bc1fbd1..221c35cf51 100644
--- a/include/configs/MPC8349ITX.h
+++ b/include/configs/MPC8349ITX.h
@@ -452,7 +452,6 @@ boards, we say we have two, but don't display a message if we find only one. */
 #define CONFIG_ENV_OVERWRITE
 
 #ifndef CONFIG_SYS_RAMBOOT
-  #define CONFIG_ENV_IS_IN_FLASH
   #define CONFIG_ENV_ADDR	\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
   #define CONFIG_ENV_SECT_SIZE	0x10000 /* 64K (one sector) for environment */
diff --git a/include/configs/MPC837XEMDS.h b/include/configs/MPC837XEMDS.h
index 781a93ab14..1a65c25c48 100644
--- a/include/configs/MPC837XEMDS.h
+++ b/include/configs/MPC837XEMDS.h
@@ -442,7 +442,6 @@ extern int board_pci_host_broken(void);
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 	#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K(one sector) for env */
diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h
index ada85c7964..d93f7a0074 100644
--- a/include/configs/MPC837XERDB.h
+++ b/include/configs/MPC837XERDB.h
@@ -455,7 +455,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE+CONFIG_SYS_MONITOR_LEN)
 	#define CONFIG_ENV_SECT_SIZE	0x10000	/* 64K (one sector) for env */
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index 1456648d6a..d96c15ec01 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -574,7 +574,6 @@
 	#define CONFIG_ENV_SIZE		0x2000
 #endif
 #else
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 	#define CONFIG_ENV_SIZE		0x2000
 	#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/MPC8540ADS.h b/include/configs/MPC8540ADS.h
index decb57404a..ca4ccd8ad3 100644
--- a/include/configs/MPC8540ADS.h
+++ b/include/configs/MPC8540ADS.h
@@ -291,7 +291,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-  #define CONFIG_ENV_IS_IN_FLASH	1
   #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0x40000)
   #define CONFIG_ENV_SECT_SIZE	0x40000	/* 256K(one sector) for env */
   #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/MPC8541CDS.h b/include/configs/MPC8541CDS.h
index 029aa572ce..977454167d 100644
--- a/include/configs/MPC8541CDS.h
+++ b/include/configs/MPC8541CDS.h
@@ -323,7 +323,6 @@ extern unsigned long get_clock_freq(void);
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0x40000)
 #define CONFIG_ENV_SECT_SIZE	0x40000	/* 256K(one sector) for env */
 #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/MPC8544DS.h b/include/configs/MPC8544DS.h
index ffa8796407..b4f4c4e32b 100644
--- a/include/configs/MPC8544DS.h
+++ b/include/configs/MPC8544DS.h
@@ -325,7 +325,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	0x10000 /* 64K (one sector) */
 #if CONFIG_SYS_MONITOR_BASE > 0xfff80000
 #define CONFIG_ENV_ADDR		0xfff80000
diff --git a/include/configs/MPC8548CDS.h b/include/configs/MPC8548CDS.h
index 43e05516ab..b41543688b 100644
--- a/include/configs/MPC8548CDS.h
+++ b/include/configs/MPC8548CDS.h
@@ -438,7 +438,6 @@ extern unsigned long get_clock_freq(void);
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #if CONFIG_SYS_MONITOR_BASE > 0xfff80000
 #define CONFIG_ENV_ADDR	0xfff80000
 #else
diff --git a/include/configs/MPC8555CDS.h b/include/configs/MPC8555CDS.h
index 96a125c323..d31395cf81 100644
--- a/include/configs/MPC8555CDS.h
+++ b/include/configs/MPC8555CDS.h
@@ -321,7 +321,6 @@ extern unsigned long get_clock_freq(void);
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0x40000)
 #define CONFIG_ENV_SECT_SIZE	0x40000	/* 256K(one sector) for env */
 #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/MPC8560ADS.h b/include/configs/MPC8560ADS.h
index 47b97d1554..2e13fb52df 100644
--- a/include/configs/MPC8560ADS.h
+++ b/include/configs/MPC8560ADS.h
@@ -330,7 +330,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-  #define CONFIG_ENV_IS_IN_FLASH	1
   #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0x40000)
   #define CONFIG_ENV_SECT_SIZE	0x40000	/* 256K(one sector) for env */
   #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/MPC8568MDS.h b/include/configs/MPC8568MDS.h
index 3734055bd3..c0af7451b8 100644
--- a/include/configs/MPC8568MDS.h
+++ b/include/configs/MPC8568MDS.h
@@ -336,7 +336,6 @@ extern unsigned long get_clock_freq(void);
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/MPC8569MDS.h b/include/configs/MPC8569MDS.h
index eb7db20b7f..a75ce0b93d 100644
--- a/include/configs/MPC8569MDS.h
+++ b/include/configs/MPC8569MDS.h
@@ -424,7 +424,6 @@ extern unsigned long get_clock_freq(void);
  */
 #if defined(CONFIG_SYS_RAMBOOT)
 #else
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
 #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/MPC8572DS.h b/include/configs/MPC8572DS.h
index d8e0dfd807..0a2bcb2383 100644
--- a/include/configs/MPC8572DS.h
+++ b/include/configs/MPC8572DS.h
@@ -531,7 +531,6 @@
 #if defined(CONFIG_SYS_RAMBOOT)
 
 #else
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#if CONFIG_SYS_MONITOR_BASE > 0xfff80000
 	#define CONFIG_ENV_ADDR	0xfff80000
 	#else
diff --git a/include/configs/MPC8610HPCD.h b/include/configs/MPC8610HPCD.h
index 46b9b7a67d..5e8211609a 100644
--- a/include/configs/MPC8610HPCD.h
+++ b/include/configs/MPC8610HPCD.h
@@ -403,7 +403,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x20000	/* 126k (one sector) for env */
 #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/MPC8641HPCN.h b/include/configs/MPC8641HPCN.h
index 4a4a76d2d4..7b9b2458b3 100644
--- a/include/configs/MPC8641HPCN.h
+++ b/include/configs/MPC8641HPCN.h
@@ -563,7 +563,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-    #define CONFIG_ENV_IS_IN_FLASH	1
     #define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
     #define CONFIG_ENV_SECT_SIZE		0x10000	/* 64K(one sector) for env */
diff --git a/include/configs/MigoR.h b/include/configs/MigoR.h
index 7217426d3a..5ee83b9034 100644
--- a/include/configs/MigoR.h
+++ b/include/configs/MigoR.h
@@ -94,7 +94,6 @@
 #undef  CONFIG_SYS_DIRECT_FLASH_TFTP
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 1bbdf2258b..c4c8f3e617 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -708,7 +708,6 @@ extern unsigned long get_sdram_size(void);
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE			0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h
index e9c755b47d..b7507a2b29 100644
--- a/include/configs/P1022DS.h
+++ b/include/configs/P1022DS.h
@@ -577,7 +577,6 @@
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/P1023RDB.h b/include/configs/P1023RDB.h
index 719043d5a1..be42dadac7 100644
--- a/include/configs/P1023RDB.h
+++ b/include/configs/P1023RDB.h
@@ -230,7 +230,6 @@ extern unsigned long get_clock_freq(void);
  */
 #define CONFIG_ENV_OVERWRITE
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index d3b655fda9..36d08d8e7f 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -88,7 +88,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-	#define CONFIG_ENV_IS_IN_FLASH
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE \
 			- CONFIG_ENV_SECT_SIZE)
 	#define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h
index ef8e7b678f..48c7b2dcc2 100644
--- a/include/configs/T102xQDS.h
+++ b/include/configs/T102xQDS.h
@@ -169,7 +169,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 4f2b208219..dcfedc0410 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -192,7 +192,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/T1040QDS.h b/include/configs/T1040QDS.h
index 6077bf470c..56591f38d9 100644
--- a/include/configs/T1040QDS.h
+++ b/include/configs/T1040QDS.h
@@ -90,7 +90,6 @@
 #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index fa50502922..9cdd67f5b7 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -198,7 +198,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_sd_rcw.cfg
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(3 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index 5d049d1e8f..0dcef00186 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -165,7 +165,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 2cea8c8505..90401a3256 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -151,7 +151,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h
index 287c722e2f..d9983653f0 100644
--- a/include/configs/T4240QDS.h
+++ b/include/configs/T4240QDS.h
@@ -110,7 +110,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index d06c5b574e..ee1110a317 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -347,7 +347,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/TQM834x.h b/include/configs/TQM834x.h
index a79dabef61..fa92af3c95 100644
--- a/include/configs/TQM834x.h
+++ b/include/configs/TQM834x.h
@@ -251,7 +251,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K (one sector) for env */
diff --git a/include/configs/UCP1020.h b/include/configs/UCP1020.h
index 2bf3a5686a..31d7cdbd10 100644
--- a/include/configs/UCP1020.h
+++ b/include/configs/UCP1020.h
@@ -362,7 +362,6 @@
  */
 #ifdef CONFIG_ENV_FIT_UCBOOT
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + 0x20000)
 #define CONFIG_ENV_SIZE		0x20000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
@@ -397,7 +396,6 @@
 #define CONFIG_ENV_SIZE		0x2000
 
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_BASE		(CONFIG_SYS_FLASH_BASE)
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
 #define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
diff --git a/include/configs/adp-ae3xx.h b/include/configs/adp-ae3xx.h
index 6bfc08e5af..cef1eddeb6 100644
--- a/include/configs/adp-ae3xx.h
+++ b/include/configs/adp-ae3xx.h
@@ -236,7 +236,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	512
 
 /* environments */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_MONITOR_BASE + 0x140000)
 #define CONFIG_ENV_SIZE			8192
 #define CONFIG_ENV_OVERWRITE
diff --git a/include/configs/adp-ag101p.h b/include/configs/adp-ag101p.h
index 4cef64e3c5..f9662780de 100644
--- a/include/configs/adp-ag101p.h
+++ b/include/configs/adp-ag101p.h
@@ -358,7 +358,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	512
 
 /* environments */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_MONITOR_BASE + 0x140000)
 #define CONFIG_ENV_SIZE			8192
 #define CONFIG_ENV_OVERWRITE
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index b262c5b8ff..f09822413f 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -343,7 +343,6 @@
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_SYS_MMC_MAX_DEVICE	2
 #elif defined(CONFIG_NOR_BOOT)
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE		(128 << 10)	/* 128 KiB */
 #define CONFIG_ENV_OFFSET		(512 << 10)	/* 512 KiB */
 #define CONFIG_ENV_OFFSET_REDUND	(768 << 10)	/* 768 KiB */
diff --git a/include/configs/amcore.h b/include/configs/amcore.h
index 02a0ad9e7e..5f8b6c5518 100644
--- a/include/configs/amcore.h
+++ b/include/configs/amcore.h
@@ -87,7 +87,6 @@
 #define CONFIG_SYS_MALLOC_LEN		(1 * 1024 * 1024)
 #define CONFIG_SYS_BOOTPARAMS_LEN	(64 * 1024)
 
-#define CONFIG_ENV_IS_IN_FLASH		1
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + \
 					 CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SIZE			0x1000
diff --git a/include/configs/ap325rxa.h b/include/configs/ap325rxa.h
index b3c22cf4a4..285041dbf8 100644
--- a/include/configs/ap325rxa.h
+++ b/include/configs/ap325rxa.h
@@ -124,7 +124,6 @@
 #undef  CONFIG_SYS_DIRECT_FLASH_TFTP
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/ap_sh4a_4a.h b/include/configs/ap_sh4a_4a.h
index 440505dd1f..078c77bf68 100644
--- a/include/configs/ap_sh4a_4a.h
+++ b/include/configs/ap_sh4a_4a.h
@@ -107,7 +107,6 @@
 #define CONFIG_SYS_BOOTMAPSZ	(8 * 1024 * 1024)
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/armadillo-800eva.h b/include/configs/armadillo-800eva.h
index 2023895c3e..492062abb3 100644
--- a/include/configs/armadillo-800eva.h
+++ b/include/configs/armadillo-800eva.h
@@ -87,7 +87,6 @@
 #define CONFIG_SYS_FLASH_UNLOCK_TOUT	3000
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + \
diff --git a/include/configs/astro_mcf5373l.h b/include/configs/astro_mcf5373l.h
index 722f8c79fa..65c76c328c 100644
--- a/include/configs/astro_mcf5373l.h
+++ b/include/configs/astro_mcf5373l.h
@@ -121,7 +121,6 @@
 #ifndef CONFIG_MONITOR_IS_IN_RAM
 #define CONFIG_ENV_OFFSET		0x1FF8000
 #define CONFIG_ENV_SECT_SIZE		0x8000
-#define CONFIG_ENV_IS_IN_FLASH		1
 #else
 /*
  * environment in RAM - This is used to use a single PC-based application
@@ -131,7 +130,6 @@
  */
 #define CONFIG_ENV_ADDR		0x40060000
 #define CONFIG_ENV_SECT_SIZE	0x8000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 
 /* here we put our FPGA configuration... */
diff --git a/include/configs/at91rm9200ek.h b/include/configs/at91rm9200ek.h
index 53e191a312..cb6dae71e9 100644
--- a/include/configs/at91rm9200ek.h
+++ b/include/configs/at91rm9200ek.h
@@ -149,7 +149,6 @@
 /*
  * Environment Settings
  */
-#define CONFIG_ENV_IS_IN_FLASH
 
 /*
  * after u-boot.bin
diff --git a/include/configs/at91sam9263ek.h b/include/configs/at91sam9263ek.h
index a8337cdf43..9effe9ebd9 100644
--- a/include/configs/at91sam9263ek.h
+++ b/include/configs/at91sam9263ek.h
@@ -97,7 +97,6 @@
 #define CONFIG_SYS_MONITOR_SEC	1:0-3
 #define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_MONITOR_LEN	(256 << 10)
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + 0x007E0000)
 #define CONFIG_ENV_ADDR_REDUND	(CONFIG_ENV_ADDR - CONFIG_ENV_SIZE)
 
diff --git a/include/configs/atngw100.h b/include/configs/atngw100.h
index bf13d937fb..340b9d568b 100644
--- a/include/configs/atngw100.h
+++ b/include/configs/atngw100.h
@@ -103,7 +103,6 @@
 #define CONFIG_SYS_INTRAM_SIZE			INTERNAL_SRAM_SIZE
 #define CONFIG_SYS_SDRAM_BASE			EBI_SDRAM_BASE
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SIZE			65536
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_FLASH_SIZE - CONFIG_ENV_SIZE)
 
diff --git a/include/configs/atngw100mkii.h b/include/configs/atngw100mkii.h
index a7f5e06c68..6a74820a20 100644
--- a/include/configs/atngw100mkii.h
+++ b/include/configs/atngw100mkii.h
@@ -123,7 +123,6 @@
 #define CONFIG_SYS_INTRAM_SIZE		INTERNAL_SRAM_SIZE
 #define CONFIG_SYS_SDRAM_BASE		EBI_SDRAM_BASE
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SIZE			65536
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_FLASH_SIZE - CONFIG_ENV_SIZE)
 
diff --git a/include/configs/atstk1002.h b/include/configs/atstk1002.h
index c8e9340af2..fbb37bfea6 100644
--- a/include/configs/atstk1002.h
+++ b/include/configs/atstk1002.h
@@ -123,7 +123,6 @@
 #define CONFIG_SYS_INTRAM_SIZE			INTERNAL_SRAM_SIZE
 #define CONFIG_SYS_SDRAM_BASE			EBI_SDRAM_BASE
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SIZE			65536
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_FLASH_SIZE - CONFIG_ENV_SIZE)
 
diff --git a/include/configs/bav335x.h b/include/configs/bav335x.h
index a37433e03f..04a6e06e0f 100644
--- a/include/configs/bav335x.h
+++ b/include/configs/bav335x.h
@@ -553,7 +553,6 @@ DEFAULT_LINUX_BOOT_ENV \
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 /* Reduce SPL size by removing unlikey targets */
 #ifdef CONFIG_NOR_BOOT
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE		(128 << 10)	/* 128 KiB */
 #define CONFIG_ENV_OFFSET		(512 << 10)	/* 512 KiB */
 #define CONFIG_ENV_OFFSET_REDUND	(768 << 10)	/* 768 KiB */
diff --git a/include/configs/blanche.h b/include/configs/blanche.h
index cb80b90381..50692cba65 100755
--- a/include/configs/blanche.h
+++ b/include/configs/blanche.h
@@ -83,7 +83,6 @@
 #else
 #undef  CONFIG_ENV_IS_IN_SPI_FLASH
 #undef  CONFIG_ENV_ADDR
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(256 * 1024)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_OFFSET	(CONFIG_ENV_ADDR)
diff --git a/include/configs/boston.h b/include/configs/boston.h
index 50aaa7be8c..2646cf09ed 100644
--- a/include/configs/boston.h
+++ b/include/configs/boston.h
@@ -64,7 +64,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			CONFIG_ENV_SECT_SIZE
 #ifdef CONFIG_64BIT
diff --git a/include/configs/calimain.h b/include/configs/calimain.h
index d43e3314a7..b6c8035fb5 100644
--- a/include/configs/calimain.h
+++ b/include/configs/calimain.h
@@ -154,7 +154,6 @@
 #define CONFIG_SYS_NS16550_CLK	clk_get(DAVINCI_UART2_CLKID)
 #define CONFIG_CONS_INDEX	1		/* use UART0 for console */
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
 #define CONFIG_SYS_FLASH_PROTECTION
diff --git a/include/configs/cobra5272.h b/include/configs/cobra5272.h
index aff7af7d52..c1c3013dc3 100644
--- a/include/configs/cobra5272.h
+++ b/include/configs/cobra5272.h
@@ -96,11 +96,9 @@
 #ifndef CONFIG_MONITOR_IS_IN_RAM
 #define CONFIG_ENV_OFFSET		0x4000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #else
 #define CONFIG_ENV_ADDR		0xffe04000
 #define CONFIG_ENV_SECT_SIZE	0x2000
-#define CONFIG_ENV_IS_IN_FLASH	1
 #endif
 
 #define LDS_BOARD_TEXT \
diff --git a/include/configs/colibri_pxa270.h b/include/configs/colibri_pxa270.h
index 9efe74b593..4be06f1914 100644
--- a/include/configs/colibri_pxa270.h
+++ b/include/configs/colibri_pxa270.h
@@ -138,8 +138,6 @@
 
 #define	CONFIG_SYS_FLASH_USE_BUFFER_WRITE	1
 #define	CONFIG_SYS_FLASH_PROTECTION		1
-
-#define CONFIG_ENV_IS_IN_FLASH		1
 #endif
 
 #define	CONFIG_SYS_MONITOR_BASE		0x0
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index abd09ca1ed..70fdb58163 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -99,7 +99,6 @@
 #elif defined(CONFIG_ENV_IS_NOWHERE)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index b69303fdba..2277215445 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -162,7 +162,6 @@
  * Flash & Environment
  */
 #ifdef CONFIG_USE_NAND
-#undef CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_NAND_DAVINCI
 #define CONFIG_ENV_OFFSET		0x0 /* Block 0--not used by bootcode */
 #define CONFIG_ENV_SIZE			(128 << 10)
@@ -217,7 +216,6 @@
 #endif
 
 #ifdef CONFIG_USE_NOR
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
 #define CONFIG_SYS_FLASH_PROTECTION
@@ -233,7 +231,6 @@
 #endif
 
 #ifdef CONFIG_USE_SPIFLASH
-#undef CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(64 << 10)
 #define CONFIG_ENV_OFFSET		(512 << 10)
diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h
index 40beb17574..1c2cc6f4b0 100644
--- a/include/configs/dra7xx_evm.h
+++ b/include/configs/dra7xx_evm.h
@@ -236,7 +236,6 @@
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 /* Reduce SPL size by removing unlikey targets */
 #ifdef CONFIG_NOR_BOOT
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE		(128 * 1024)	/* 128 KiB */
 #define MTDIDS_DEFAULT			"nor0=physmap-flash.0"
 #define MTDPARTS_DEFAULT		"mtdparts=physmap-flash.0:" \
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index e00f9648fe..699888b9ea 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -87,7 +87,6 @@
 #endif
 
 #ifdef CONFIG_USE_SPIFLASH
-#undef CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(8 << 10)
 #define CONFIG_ENV_OFFSET		0x80000
diff --git a/include/configs/eb_cpu5282.h b/include/configs/eb_cpu5282.h
index 45ce944eb1..755e7887df 100644
--- a/include/configs/eb_cpu5282.h
+++ b/include/configs/eb_cpu5282.h
@@ -43,7 +43,6 @@
 
 #define CONFIG_ENV_ADDR		0xFF040000
 #define CONFIG_ENV_SECT_SIZE	0x00020000
-#define CONFIG_ENV_IS_IN_FLASH	1
 
 /*
  * BOOTP options
diff --git a/include/configs/ecovec.h b/include/configs/ecovec.h
index 2404441860..cabbe160a3 100644
--- a/include/configs/ecovec.h
+++ b/include/configs/ecovec.h
@@ -139,7 +139,6 @@
 #define CONFIG_SYS_BOOTMAPSZ	(8 * 1024 * 1024)
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/edb93xx.h b/include/configs/edb93xx.h
index def28f2cf1..92842e1e18 100644
--- a/include/configs/edb93xx.h
+++ b/include/configs/edb93xx.h
@@ -198,7 +198,6 @@
 #define CONFIG_SYS_MONITOR_LEN		(256 * 1024)
 
 #define CONFIG_ENV_OVERWRITE		/* Vendor params unprotected */
-#define CONFIG_ENV_IS_IN_FLASH
 
 #define CONFIG_ENV_ADDR			0x60040000
 #define CONFIG_ENV_ADDR_REDUND		(CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
index cc5cc7bac6..31364c2533 100644
--- a/include/configs/edminiv2.h
+++ b/include/configs/edminiv2.h
@@ -187,7 +187,6 @@
 /*
  *  Environment variables configurations
  */
-#define CONFIG_ENV_IS_IN_FLASH		1
 #define CONFIG_ENV_SECT_SIZE		0x2000	/* 16K */
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		0x4000	/* env starts here */
diff --git a/include/configs/espt.h b/include/configs/espt.h
index 845bcc1c9a..1b3295346d 100644
--- a/include/configs/espt.h
+++ b/include/configs/espt.h
@@ -74,7 +74,6 @@
 /* Use hardware flash sectors protection instead of U-Boot software protection */
 #undef  CONFIG_SYS_FLASH_PROTECTION
 #undef  CONFIG_SYS_DIRECT_FLASH_TFTP
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + (1 * CONFIG_ENV_SECT_SIZE))
diff --git a/include/configs/flea3.h b/include/configs/flea3.h
index 0ab33953ac..a9b882b940 100644
--- a/include/configs/flea3.h
+++ b/include/configs/flea3.h
@@ -155,8 +155,6 @@
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 				CONFIG_SYS_MONITOR_LEN)
 
-#define CONFIG_ENV_IS_IN_FLASH
-
 /*
  * CFI FLASH driver setup
  */
diff --git a/include/configs/grasshopper.h b/include/configs/grasshopper.h
index 83b78907f2..6465686cb4 100644
--- a/include/configs/grasshopper.h
+++ b/include/configs/grasshopper.h
@@ -117,7 +117,6 @@
 #define CONFIG_SYS_INTRAM_SIZE		INTERNAL_SRAM_SIZE
 #define CONFIG_SYS_SDRAM_BASE		EBI_SDRAM_BASE
 
-#define CONFIG_ENV_IS_IN_FLASH
 /* place u-boot env in flash sector after u-boot */
 #define CONFIG_ENV_SIZE			0x10000
 #define CONFIG_ENV_ADDR			0x20000
diff --git a/include/configs/hrcon.h b/include/configs/hrcon.h
index df8e69fe66..c5b6fddee7 100644
--- a/include/configs/hrcon.h
+++ b/include/configs/hrcon.h
@@ -493,7 +493,6 @@ void fpga_control_clear(unsigned int bus, int pin);
  * Environment
  */
 #if 1
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 				 CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x10000 /* 64K(one sector) for env */
diff --git a/include/configs/ids8313.h b/include/configs/ids8313.h
index 7bedcb94d7..a04652f68f 100644
--- a/include/configs/ids8313.h
+++ b/include/configs/ids8313.h
@@ -429,7 +429,6 @@
 /*
  * Environment Configuration
  */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE \
 				+ CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SIZE		0x20000
diff --git a/include/configs/imx27lite-common.h b/include/configs/imx27lite-common.h
index 18d8d2fd3d..08a03e8ae3 100644
--- a/include/configs/imx27lite-common.h
+++ b/include/configs/imx27lite-common.h
@@ -89,7 +89,6 @@
 /*
  * Flash & Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
 /* Use buffered writes (~10x faster) */
diff --git a/include/configs/integratorcp.h b/include/configs/integratorcp.h
index d0b6af8cad..8c9ad6c183 100644
--- a/include/configs/integratorcp.h
+++ b/include/configs/integratorcp.h
@@ -42,7 +42,6 @@
  */
 #define PHYS_FLASH_SIZE			0x01000000	/* 16MB */
 #define CONFIG_SYS_MAX_FLASH_SECT	64
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_SYS_MONITOR_LEN		0x00100000
 
 /*
diff --git a/include/configs/km/km83xx-common.h b/include/configs/km/km83xx-common.h
index 0db33b701c..0bd42799f1 100644
--- a/include/configs/km/km83xx-common.h
+++ b/include/configs/km/km83xx-common.h
@@ -175,7 +175,6 @@
  */
 
 #ifndef CONFIG_SYS_RAMBOOT
-#define CONFIG_ENV_IS_IN_FLASH
 #ifndef CONFIG_ENV_ADDR
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 					CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/kzm9g.h b/include/configs/kzm9g.h
index feb3eec446..f434991314 100644
--- a/include/configs/kzm9g.h
+++ b/include/configs/kzm9g.h
@@ -98,7 +98,6 @@
 
 #undef  CONFIG_SYS_FLASH_PROTECTION
 #undef  CONFIG_SYS_DIRECT_FLASH_TFTP
-#define CONFIG_ENV_IS_IN_FLASH
 
 /* GPIO / PFC */
 #define CONFIG_SH_GPIO_PFC
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index b3c931e36c..b823ff23bf 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -561,7 +561,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x300000)
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_SECT_SIZE		0x20000 /* 128K (one sector) */
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 06d7d400ca..8fe34ef658 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -426,7 +426,6 @@
 #define CONFIG_ENV_OFFSET		0x300000
 #define CONFIG_ENV_SECT_SIZE		0x10000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x300000)
 #define CONFIG_ENV_SIZE			0x20000
 #define CONFIG_ENV_SECT_SIZE		0x20000 /* 128K (one sector) */
diff --git a/include/configs/ls1043aqds.h b/include/configs/ls1043aqds.h
index 83c8805df6..740facfa58 100644
--- a/include/configs/ls1043aqds.h
+++ b/include/configs/ls1043aqds.h
@@ -422,7 +422,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_OFFSET		0x300000        /* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x10000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x300000)
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			0x20000
diff --git a/include/configs/ls1043ardb.h b/include/configs/ls1043ardb.h
index 7b8561e9d6..59e7760b10 100644
--- a/include/configs/ls1043ardb.h
+++ b/include/configs/ls1043ardb.h
@@ -240,7 +240,6 @@
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x300000)
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			0x20000
diff --git a/include/configs/ls1046aqds.h b/include/configs/ls1046aqds.h
index 860ad8f693..782669ad2c 100644
--- a/include/configs/ls1046aqds.h
+++ b/include/configs/ls1046aqds.h
@@ -456,7 +456,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_ENV_OFFSET		0x300000        /* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x10000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x300000)
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			0x20000
diff --git a/include/configs/ls2080aqds.h b/include/configs/ls2080aqds.h
index b5fa41e33d..929ae3286a 100644
--- a/include/configs/ls2080aqds.h
+++ b/include/configs/ls2080aqds.h
@@ -270,7 +270,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NAND_FTIM3
 
 #ifndef CONFIG_QSPI_BOOT
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x300000)
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			0x2000
diff --git a/include/configs/ls2080ardb.h b/include/configs/ls2080ardb.h
index a353cf4f68..0be4c4fa0b 100644
--- a/include/configs/ls2080ardb.h
+++ b/include/configs/ls2080ardb.h
@@ -248,7 +248,6 @@ unsigned long get_board_sys_clk(void);
 #define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NAND_FTIM2
 #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NAND_FTIM3
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x300000)
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			0x2000
diff --git a/include/configs/malta.h b/include/configs/malta.h
index 1f977cb71a..8eb6d7a269 100644
--- a/include/configs/malta.h
+++ b/include/configs/malta.h
@@ -82,7 +82,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE		0x20000
 #define CONFIG_ENV_SIZE			CONFIG_ENV_SECT_SIZE
 #define CONFIG_ENV_ADDR \
diff --git a/include/configs/mccmon6.h b/include/configs/mccmon6.h
index fca1af9d2b..87bbb4a75a 100644
--- a/include/configs/mccmon6.h
+++ b/include/configs/mccmon6.h
@@ -314,7 +314,6 @@
 #define CONFIG_ENV_SIZE			(SZ_128K)
 
 /* Envs are stored in NOR flash */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE    (SZ_128K)
 #define CONFIG_ENV_ADDR	(CONFIG_SYS_FLASH_BASE + 0x40000)
 
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index c3d9b99771..5736621d41 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -99,7 +99,6 @@
 #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
 
 # else	/* FLASH && !RAMENV */
-#  define CONFIG_ENV_IS_IN_FLASH	1
 /* 128K(one sector) for env */
 #  define CONFIG_ENV_SECT_SIZE	0x20000
 #  define CONFIG_ENV_ADDR \
diff --git a/include/configs/mpc8308_p1m.h b/include/configs/mpc8308_p1m.h
index b865d9f916..cd5971d30c 100644
--- a/include/configs/mpc8308_p1m.h
+++ b/include/configs/mpc8308_p1m.h
@@ -361,7 +361,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 				 CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K(one sector) for env */
diff --git a/include/configs/mpr2.h b/include/configs/mpr2.h
index df8ffe29d0..5b37277cce 100644
--- a/include/configs/mpr2.h
+++ b/include/configs/mpr2.h
@@ -51,7 +51,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	256
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 #define CONFIG_SYS_FLASH_BANKS_LIST	{ CONFIG_SYS_FLASH_BASE }
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/ms7720se.h b/include/configs/ms7720se.h
index 2855c00723..850a8cc222 100644
--- a/include/configs/ms7720se.h
+++ b/include/configs/ms7720se.h
@@ -65,7 +65,6 @@
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 #define CONFIG_SYS_FLASH_BANKS_LIST	{ CONFIG_SYS_FLASH_BASE }
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(64 * 1024)
 #define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/ms7722se.h b/include/configs/ms7722se.h
index de6e58a71e..f456bf6293 100644
--- a/include/configs/ms7722se.h
+++ b/include/configs/ms7722se.h
@@ -85,7 +85,6 @@
 
 #undef  CONFIG_SYS_DIRECT_FLASH_TFTP
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(8 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/ms7750se.h b/include/configs/ms7750se.h
index 394ce6cd38..8ea431efdc 100644
--- a/include/configs/ms7750se.h
+++ b/include/configs/ms7750se.h
@@ -63,7 +63,6 @@
 #undef  CONFIG_SYS_FLASH_QUIET_TEST
 #define CONFIG_SYS_FLASH_EMPTY_INFO				/* print 'E' for empty sector on flinfo */
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	0x20000
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/mx31ads.h b/include/configs/mx31ads.h
index 5db3677566..fba6454172 100644
--- a/include/configs/mx31ads.h
+++ b/include/configs/mx31ads.h
@@ -132,7 +132,6 @@
 #define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_FLASH_BASE	/* Monitor@beginning of flash */
 #define CONFIG_SYS_MONITOR_LEN		(256 * 1024)	/* Reserve 256KiB */
 
-#define	CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/mx35pdk.h b/include/configs/mx35pdk.h
index 4fc0aadd89..58779948ca 100644
--- a/include/configs/mx35pdk.h
+++ b/include/configs/mx35pdk.h
@@ -170,8 +170,6 @@
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 				CONFIG_SYS_MONITOR_LEN)
 
-#define CONFIG_ENV_IS_IN_FLASH
-
 #if defined(CONFIG_FSL_ENV_IN_NAND)
 	#define CONFIG_ENV_OFFSET       (1024 * 1024)
 #endif
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index f566d0f1ba..83692c8982 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -154,7 +154,6 @@
  * Flash & Environment
  */
 #ifdef CONFIG_USE_NAND
-#undef CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_NAND_DAVINCI
 #define CONFIG_ENV_OFFSET		0x0 /* Block 0--not used by bootcode */
 #define CONFIG_ENV_SIZE			(128 << 9)
@@ -198,7 +197,6 @@
 #endif
 
 #ifdef CONFIG_SYS_USE_NOR
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_CFI
 #define CONFIG_SYS_FLASH_PROTECTION
@@ -214,7 +212,6 @@
 #endif
 
 #ifdef CONFIG_USE_SPIFLASH
-#undef CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(64 << 10)
 #define CONFIG_ENV_OFFSET		(256 << 10)
@@ -313,7 +310,6 @@
 #undef CONFIG_ENV_OFFSET
 #define CONFIG_ENV_SIZE		(16 << 10)	/* 16 KiB */
 #define CONFIG_ENV_OFFSET	(51 << 9)	/* Sector 51 */
-#undef CONFIG_ENV_IS_IN_FLASH
 #undef CONFIG_ENV_IS_IN_SPI_FLASH
 #endif
 
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 248203d9bf..201310d1d1 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -797,7 +797,6 @@
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
 #define CONFIG_ENV_SIZE		0x2000
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/p1_twr.h b/include/configs/p1_twr.h
index 799672fff7..4c9eb6b419 100644
--- a/include/configs/p1_twr.h
+++ b/include/configs/p1_twr.h
@@ -369,7 +369,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_ENV_SIZE		0x2000
 #endif
 #else
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h
index b6ec563cee..bae5736801 100644
--- a/include/configs/pm9261.h
+++ b/include/configs/pm9261.h
@@ -269,7 +269,6 @@
 
 #elif defined (CONFIG_SYS_USE_FLASH)
 
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_OFFSET	0x40000
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #define	CONFIG_ENV_SIZE		0x10000
diff --git a/include/configs/pm9263.h b/include/configs/pm9263.h
index eeb3f27cfe..9ea444009a 100644
--- a/include/configs/pm9263.h
+++ b/include/configs/pm9263.h
@@ -299,7 +299,6 @@
 
 #elif defined(CONFIG_SYS_USE_FLASH) /* CFG_USE_FLASH */
 
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_OFFSET	0x40000
 #define CONFIG_ENV_SECT_SIZE	0x10000
 #define	CONFIG_ENV_SIZE		0x10000
diff --git a/include/configs/qemu-mips.h b/include/configs/qemu-mips.h
index abdc93c7d2..89d1ad91e0 100644
--- a/include/configs/qemu-mips.h
+++ b/include/configs/qemu-mips.h
@@ -111,8 +111,6 @@
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
 
-#define CONFIG_ENV_IS_IN_FLASH
-
 /* Address and size of Primary Environment Sector */
 #define CONFIG_ENV_SIZE		0x8000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + (4 << 20) - CONFIG_ENV_SIZE)
diff --git a/include/configs/qemu-mips64.h b/include/configs/qemu-mips64.h
index f1e096fddd..a78112d5bc 100644
--- a/include/configs/qemu-mips64.h
+++ b/include/configs/qemu-mips64.h
@@ -111,8 +111,6 @@
 #define CONFIG_FLASH_CFI_DRIVER
 #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
 
-#define CONFIG_ENV_IS_IN_FLASH
-
 /* Address and size of Primary Environment Sector */
 #define CONFIG_ENV_SIZE		0x8000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + (4 << 20) - CONFIG_ENV_SIZE)
diff --git a/include/configs/r0p7734.h b/include/configs/r0p7734.h
index 6212dbae21..5f74b2a0e0 100644
--- a/include/configs/r0p7734.h
+++ b/include/configs/r0p7734.h
@@ -112,7 +112,6 @@
 #define CONFIG_SYS_BOOTMAPSZ	(8 * 1024 * 1024)
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/r2dplus.h b/include/configs/r2dplus.h
index 744d567805..64fd4b97a0 100644
--- a/include/configs/r2dplus.h
+++ b/include/configs/r2dplus.h
@@ -53,7 +53,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT  256
 #define CONFIG_SYS_FLASH_BANKS_LIST	{ CONFIG_SYS_FLASH_BASE }
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	0x40000
 #define CONFIG_ENV_SIZE        (CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_ADDR        (CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/r7780mp.h b/include/configs/r7780mp.h
index bb79a9ffea..c5f577a3bf 100644
--- a/include/configs/r7780mp.h
+++ b/include/configs/r7780mp.h
@@ -77,7 +77,6 @@
 /* print 'E' for empty sector on flinfo */
 #define CONFIG_SYS_FLASH_EMPTY_INFO
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(256 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/rsk7203.h b/include/configs/rsk7203.h
index 8dc839df96..8f30aefc41 100644
--- a/include/configs/rsk7203.h
+++ b/include/configs/rsk7203.h
@@ -63,7 +63,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	64
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(64 * 1024)
 #define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/rsk7264.h b/include/configs/rsk7264.h
index cc709097c0..14e55c579d 100644
--- a/include/configs/rsk7264.h
+++ b/include/configs/rsk7264.h
@@ -48,7 +48,6 @@
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 #define CONFIG_SYS_MAX_FLASH_SECT	512
 
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_OFFSET	(128 * 1024)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + CONFIG_ENV_OFFSET)
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
diff --git a/include/configs/rsk7269.h b/include/configs/rsk7269.h
index 12812f9a34..60844ab738 100644
--- a/include/configs/rsk7269.h
+++ b/include/configs/rsk7269.h
@@ -47,7 +47,6 @@
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 #define CONFIG_SYS_MAX_FLASH_SECT	512
 
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_OFFSET	(128 * 1024)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + CONFIG_ENV_OFFSET)
 #define CONFIG_ENV_SECT_SIZE	(64 * 1024)
diff --git a/include/configs/sbc8349.h b/include/configs/sbc8349.h
index 1d07593e95..c0faac3b79 100644
--- a/include/configs/sbc8349.h
+++ b/include/configs/sbc8349.h
@@ -370,7 +370,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-	#define CONFIG_ENV_IS_IN_FLASH	1
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0x40000)
 	#define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
 	#define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/sbc8548.h b/include/configs/sbc8548.h
index e872e7f810..cf9809df49 100644
--- a/include/configs/sbc8548.h
+++ b/include/configs/sbc8548.h
@@ -485,7 +485,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SIZE		0x2000
 #if CONFIG_SYS_TEXT_BASE == 0xfff00000	/* Boot from 64MB SODIMM */
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0x80000)
diff --git a/include/configs/sbc8641d.h b/include/configs/sbc8641d.h
index 33b6d1fb93..c5f9fcb918 100644
--- a/include/configs/sbc8641d.h
+++ b/include/configs/sbc8641d.h
@@ -443,7 +443,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x20000	/* 128k(one sector) for env */
 #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/sh7763rdp.h b/include/configs/sh7763rdp.h
index 2186f21f7a..50a0e3e7d1 100644
--- a/include/configs/sh7763rdp.h
+++ b/include/configs/sh7763rdp.h
@@ -74,7 +74,6 @@
 /* Use hardware flash sectors protection instead of U-Boot software protection */
 #undef  CONFIG_SYS_FLASH_PROTECTION
 #undef  CONFIG_SYS_DIRECT_FLASH_TFTP
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(128 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + (1 * CONFIG_ENV_SECT_SIZE))
diff --git a/include/configs/sh7785lcr.h b/include/configs/sh7785lcr.h
index ab30428063..59fcad0309 100644
--- a/include/configs/sh7785lcr.h
+++ b/include/configs/sh7785lcr.h
@@ -132,7 +132,6 @@
 #define CONFIG_PCI_SYS_SIZE	CONFIG_SYS_SDRAM_SIZE
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OVERWRITE	1
 #define CONFIG_ENV_SECT_SIZE	(256 * 1024)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/shmin.h b/include/configs/shmin.h
index 995f76a1ea..c9718f9b36 100644
--- a/include/configs/shmin.h
+++ b/include/configs/shmin.h
@@ -72,7 +72,6 @@
 #define CONFIG_SYS_ATMEL_SECT		{1, 2, 1, 7}
 #define CONFIG_SYS_ATMEL_SECTSZ		{0x4000, 0x2000, 0x8000, 0x10000}
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_SECT_SIZE	(64 * 1024)
 #define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
 
diff --git a/include/configs/socrates.h b/include/configs/socrates.h
index bfd4e5fe3f..3864dfb09f 100644
--- a/include/configs/socrates.h
+++ b/include/configs/socrates.h
@@ -256,7 +256,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K(one sector) for env	*/
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE		0x4000
diff --git a/include/configs/spear3xx_evb.h b/include/configs/spear3xx_evb.h
index 98a74fa6e1..4dbf919cfa 100644
--- a/include/configs/spear3xx_evb.h
+++ b/include/configs/spear3xx_evb.h
@@ -24,11 +24,6 @@
 #define CONFIG_SPEAR_USBTTY
 #endif
 
-#if defined(CONFIG_NAND)
-#else
-#define CONFIG_ENV_IS_IN_FLASH
-#endif
-
 #include <configs/spear-common.h>
 
 /* Ethernet driver configuration */
diff --git a/include/configs/spear6xx_evb.h b/include/configs/spear6xx_evb.h
index de08a72704..4bd989e2f0 100644
--- a/include/configs/spear6xx_evb.h
+++ b/include/configs/spear6xx_evb.h
@@ -16,11 +16,6 @@
 #define CONFIG_SPEAR_USBTTY
 #endif
 
-#if defined(CONFIG_NAND)
-#else
-#define CONFIG_ENV_IS_IN_FLASH
-#endif
-
 #include <configs/spear-common.h>
 
 /* Serial Configuration (PL011) */
diff --git a/include/configs/stm32f429-discovery.h b/include/configs/stm32f429-discovery.h
index 8609f2a0a9..c47be514d8 100644
--- a/include/configs/stm32f429-discovery.h
+++ b/include/configs/stm32f429-discovery.h
@@ -35,7 +35,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	12
 #define CONFIG_SYS_MAX_FLASH_BANKS	2
 
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OFFSET		(256 << 10)
 #define CONFIG_ENV_SECT_SIZE		(128 << 10)
 #define CONFIG_ENV_SIZE			(8 << 10)
diff --git a/include/configs/strider.h b/include/configs/strider.h
index be6bd7352a..a702ec71da 100644
--- a/include/configs/strider.h
+++ b/include/configs/strider.h
@@ -529,7 +529,6 @@ void fpga_control_clear(unsigned int bus, int pin);
  * Environment
  */
 #if 1
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 				 CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x10000 /* 64K(one sector) for env */
diff --git a/include/configs/vct.h b/include/configs/vct.h
index 7b04e65d70..42f71112f8 100644
--- a/include/configs/vct.h
+++ b/include/configs/vct.h
@@ -137,7 +137,6 @@
  * FLASH and environment organization
  */
 #if defined(CONFIG_VCT_NOR)
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_FLASH_NOT_MEM_MAPPED
 
 /*
diff --git a/include/configs/ve8313.h b/include/configs/ve8313.h
index f0e9a2e58d..32ed2f95c9 100644
--- a/include/configs/ve8313.h
+++ b/include/configs/ve8313.h
@@ -290,7 +290,6 @@
 /*
  * Environment
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_ADDR		\
 			(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_MONITOR_LEN)
 #define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
index 11cb53587c..3b1233f615 100644
--- a/include/configs/vexpress_aemv8a.h
+++ b/include/configs/vexpress_aemv8a.h
@@ -284,6 +284,5 @@
 #define CONFIG_SYS_FLASH_EMPTY_INFO	/* flinfo indicates empty blocks */
 #define FLASH_MAX_SECTOR_SIZE		0x00040000
 #define CONFIG_ENV_SIZE			CONFIG_ENV_SECT_SIZE
-#define CONFIG_ENV_IS_IN_FLASH		1
 
 #endif /* __VEXPRESS_AEMV8A_H */
diff --git a/include/configs/vexpress_common.h b/include/configs/vexpress_common.h
index 0880b627ae..8f9ba91641 100644
--- a/include/configs/vexpress_common.h
+++ b/include/configs/vexpress_common.h
@@ -262,7 +262,6 @@
 #define CONFIG_ENV_OVERWRITE		1
 
 /* Store environment@top of flash */
-#define CONFIG_ENV_IS_IN_FLASH		1
 #define CONFIG_ENV_OFFSET		(PHYS_FLASH_SIZE - \
 					(2 * CONFIG_ENV_SECT_SIZE))
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE1 + \
diff --git a/include/configs/vme8349.h b/include/configs/vme8349.h
index f2a15f37fe..13ebafeac8 100644
--- a/include/configs/vme8349.h
+++ b/include/configs/vme8349.h
@@ -313,7 +313,6 @@
  * Environment
  */
 #ifndef CONFIG_SYS_RAMBOOT
-	#define CONFIG_ENV_IS_IN_FLASH
 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0xc0000)
 	#define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
 	#define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/woodburn_common.h b/include/configs/woodburn_common.h
index 46a6706171..1d51ffc8ce 100644
--- a/include/configs/woodburn_common.h
+++ b/include/configs/woodburn_common.h
@@ -168,8 +168,6 @@
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + \
 				CONFIG_SYS_MONITOR_LEN)
 
-#define CONFIG_ENV_IS_IN_FLASH
-
 /*
  * CFI FLASH driver setup
  */
diff --git a/include/configs/x600.h b/include/configs/x600.h
index c7d32fedb3..013be46ca1 100644
--- a/include/configs/x600.h
+++ b/include/configs/x600.h
@@ -33,8 +33,6 @@
 #define CONFIG_SYS_MONITOR_BASE			CONFIG_SYS_FLASH_BASE
 #define CONFIG_SYS_MONITOR_LEN			0x60000
 
-#define CONFIG_ENV_IS_IN_FLASH
-
 /* Serial Configuration (PL011) */
 #define CONFIG_SYS_SERIAL0			0xD0000000
 #define CONFIG_SYS_SERIAL1			0xD0080000
diff --git a/include/configs/xpedite517x.h b/include/configs/xpedite517x.h
index 07f26544fd..9b6a5f8ce1 100644
--- a/include/configs/xpedite517x.h
+++ b/include/configs/xpedite517x.h
@@ -517,7 +517,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 /*
  * Environment Configuration
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	0x20000		/* 128k (one sector) for env */
 #define CONFIG_ENV_SIZE		0x8000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/xpedite520x.h b/include/configs/xpedite520x.h
index 2645006b37..715acc4fbc 100644
--- a/include/configs/xpedite520x.h
+++ b/include/configs/xpedite520x.h
@@ -322,7 +322,6 @@
 /*
  * Environment Configuration
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	0x20000		/* 128k (one sector) for env */
 #define CONFIG_ENV_SIZE		0x8000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - (256 * 1024))
diff --git a/include/configs/xpedite537x.h b/include/configs/xpedite537x.h
index abbaeaad10..7d05a5aa82 100644
--- a/include/configs/xpedite537x.h
+++ b/include/configs/xpedite537x.h
@@ -371,7 +371,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 /*
  * Environment Configuration
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	0x20000		/* 128k (one sector) for env */
 #define CONFIG_ENV_SIZE		0x8000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - (256 * 1024))
diff --git a/include/configs/xpedite550x.h b/include/configs/xpedite550x.h
index 254fc12cf6..68795d8faa 100644
--- a/include/configs/xpedite550x.h
+++ b/include/configs/xpedite550x.h
@@ -370,7 +370,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
 /*
  * Environment Configuration
  */
-#define CONFIG_ENV_IS_IN_FLASH	1
 #define CONFIG_ENV_SECT_SIZE	0x20000		/* 128k (one sector) for env */
 #define CONFIG_ENV_SIZE		0x8000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - (256 * 1024))
diff --git a/include/configs/xtfpga.h b/include/configs/xtfpga.h
index 7d7d9bb983..206ec344d9 100644
--- a/include/configs/xtfpga.h
+++ b/include/configs/xtfpga.h
@@ -250,7 +250,6 @@
  * Put environment in top block (64kB)
  * Another option would be to put env. in 2nd param block offs 8KB, size 8KB
  */
-#define CONFIG_ENV_IS_IN_FLASH
 #define CONFIG_ENV_OFFSET    (CONFIG_SYS_FLASH_SIZE - CONFIG_SYS_FLASH_SECT_SZ)
 #define CONFIG_ENV_SIZE	     CONFIG_SYS_FLASH_SECT_SZ
 
diff --git a/include/configs/zipitz2.h b/include/configs/zipitz2.h
index 9b3769b5f1..e730824146 100644
--- a/include/configs/zipitz2.h
+++ b/include/configs/zipitz2.h
@@ -22,7 +22,6 @@
  * Environment settings
  */
 #define	CONFIG_ENV_OVERWRITE
-#define CONFIG_ENV_IS_IN_FLASH		1
 #define CONFIG_ENV_ADDR			0x40000
 #define CONFIG_ENV_SIZE			0x10000
 
diff --git a/include/configs/zmx25.h b/include/configs/zmx25.h
index c1daf65621..05420af409 100644
--- a/include/configs/zmx25.h
+++ b/include/configs/zmx25.h
@@ -107,7 +107,6 @@
 #define CONFIG_SYS_MAX_FLASH_SECT	256
 
 #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x00040000)
-#define CONFIG_ENV_IS_IN_FLASH		1
 #define CONFIG_ENV_SECT_SIZE		(128 * 1024)
 #define CONFIG_ENV_SIZE			(128 * 1024)
 
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index 807b097d34..9b527feec8 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -161,7 +161,6 @@
 #ifndef CONFIG_ENV_IS_NOWHERE
 # ifdef CONFIG_MTD_NOR_FLASH
 /* Environment in NOR flash */
-#  define CONFIG_ENV_IS_IN_FLASH
 # elif defined(CONFIG_ZYNQ_QSPI)
 /* Environment in Serial Flash */
 #  define CONFIG_ENV_IS_IN_SPI_FLASH
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index 8e42f71484..419daafd9e 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -644,7 +644,6 @@ CONFIG_ENV_IS_IN_
 CONFIG_ENV_IS_IN_DATAFLASH
 CONFIG_ENV_IS_IN_EEPROM
 CONFIG_ENV_IS_IN_FAT
-CONFIG_ENV_IS_IN_FLASH
 CONFIG_ENV_IS_IN_MRAM
 CONFIG_ENV_IS_IN_NVRAM
 CONFIG_ENV_IS_IN_ONENAND
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 06/30] Convert CONFIG_ENV_IS_IN_NVRAM to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (4 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 07/30] Convert CONFIG_ENV_IS_IN_EEPROM " Simon Glass
                   ` (25 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_NVRAM

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                       | 14 --------------
 configs/highbank_defconfig   |  3 ++-
 env/Kconfig                  | 15 +++++++++++++++
 include/configs/highbank.h   |  1 -
 scripts/config_whitelist.txt |  1 -
 5 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/README b/README
index 064b50d9fb..cf692e5da3 100644
--- a/README
+++ b/README
@@ -3434,20 +3434,6 @@ following configurations:
 	Builds up envcrc with the target environment so that external utils
 	may easily extract it and embed it in final U-Boot images.
 
-- CONFIG_ENV_IS_IN_NVRAM:
-
-	Define this if you have some non-volatile memory device
-	(NVRAM, battery buffered SRAM) which you want to use for the
-	environment.
-
-	- CONFIG_ENV_ADDR:
-	- CONFIG_ENV_SIZE:
-
-	  These two #defines are used to determine the memory area you
-	  want to use for environment. It is assumed that this memory
-	  can just be read and written to, without any special
-	  provision.
-
 BE CAREFUL! The first access to the environment happens quite early
 in U-Boot initialization (when we try to get the setting of for the
 console baudrate). You *MUST* have mapped your NVRAM area then, or
diff --git a/configs/highbank_defconfig b/configs/highbank_defconfig
index 6f19492251..552bdcffad 100644
--- a/configs/highbank_defconfig
+++ b/configs/highbank_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
-CONFIG_SCSI=y
+CONFIG_ENV_IS_IN_NVRAM=y
 # CONFIG_MMC is not set
+CONFIG_SCSI=y
 CONFIG_OF_LIBFDT=y
diff --git a/env/Kconfig b/env/Kconfig
index 5cc55f8972..75dd57843f 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -161,6 +161,21 @@ config ENV_IS_IN_NAND
 	  Currently, CONFIG_ENV_OFFSET_REDUND is not supported when
 	  using CONFIG_ENV_OFFSET_OOB.
 
+config ENV_IS_IN_NVRAM
+	bool "Environment in a non-volatile RAM"
+	help
+	  Define this if you have some non-volatile memory device
+	  (NVRAM, battery buffered SRAM) which you want to use for the
+	  environment.
+
+	  - CONFIG_ENV_ADDR:
+	  - CONFIG_ENV_SIZE:
+
+	  These two #defines are used to determine the memory area you
+	  want to use for environment. It is assumed that this memory
+	  can just be read and written to, without any special
+	  provision.
+
 config ENV_IS_IN_UBI
 	bool "Environment in a UBI volume"
 	help
diff --git a/include/configs/highbank.h b/include/configs/highbank.h
index 533d3e3f82..0328c4100b 100644
--- a/include/configs/highbank.h
+++ b/include/configs/highbank.h
@@ -74,7 +74,6 @@
 
 /* Environment data setup
 */
-#define CONFIG_ENV_IS_IN_NVRAM
 #define CONFIG_SYS_NVRAM_BASE_ADDR	0xfff88000	/* NVRAM base address */
 #define CONFIG_SYS_NVRAM_SIZE		0x8000		/* NVRAM size */
 #define CONFIG_ENV_SIZE			0x2000		/* Size of Environ */
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index 419daafd9e..4d8f849757 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -645,7 +645,6 @@ CONFIG_ENV_IS_IN_DATAFLASH
 CONFIG_ENV_IS_IN_EEPROM
 CONFIG_ENV_IS_IN_FAT
 CONFIG_ENV_IS_IN_MRAM
-CONFIG_ENV_IS_IN_NVRAM
 CONFIG_ENV_IS_IN_ONENAND
 CONFIG_ENV_IS_IN_REMOTE
 CONFIG_ENV_IS_IN_SPI_FLASH
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 07/30] Convert CONFIG_ENV_IS_IN_EEPROM to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (5 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 06/30] Convert CONFIG_ENV_IS_IN_NVRAM " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 08/30] Convert CONFIG_ENV_IS_IN_DATAFLASH " Simon Glass
                   ` (24 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_EEPROM

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                               | 60 ------------------------------------
 configs/imx31_phycore_defconfig      |  1 +
 configs/imx31_phycore_eet_defconfig  |  1 +
 configs/km_kirkwood_128m16_defconfig |  1 +
 configs/km_kirkwood_defconfig        |  1 +
 configs/km_kirkwood_pci_defconfig    |  1 +
 configs/mgcoge3un_defconfig          |  1 +
 configs/portl2_defconfig             |  1 +
 env/Kconfig                          | 60 ++++++++++++++++++++++++++++++++++++
 include/config_fsl_chain_trust.h     |  1 -
 include/configs/imx31_phycore.h      |  1 -
 include/configs/km/km_arm.h          |  1 -
 scripts/config_whitelist.txt         |  1 -
 13 files changed, 67 insertions(+), 64 deletions(-)

diff --git a/README b/README
index cf692e5da3..a2ff039d17 100644
--- a/README
+++ b/README
@@ -3444,66 +3444,6 @@ environment in RAM: we could work on NVRAM directly, but we want to
 keep settings there always unmodified except somebody uses "saveenv"
 to save the current settings.
 
-
-- CONFIG_ENV_IS_IN_EEPROM:
-
-	Use this if you have an EEPROM or similar serial access
-	device and a driver for it.
-
-	- CONFIG_ENV_OFFSET:
-	- CONFIG_ENV_SIZE:
-
-	  These two #defines specify the offset and size of the
-	  environment area within the total memory of your EEPROM.
-
-	- CONFIG_SYS_I2C_EEPROM_ADDR:
-	  If defined, specified the chip address of the EEPROM device.
-	  The default address is zero.
-
-	- CONFIG_SYS_I2C_EEPROM_BUS:
-	  If defined, specified the i2c bus of the EEPROM device.
-
-	- CONFIG_SYS_EEPROM_PAGE_WRITE_BITS:
-	  If defined, the number of bits used to address bytes in a
-	  single page in the EEPROM device.  A 64 byte page, for example
-	  would require six bits.
-
-	- CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS:
-	  If defined, the number of milliseconds to delay between
-	  page writes.	The default is zero milliseconds.
-
-	- CONFIG_SYS_I2C_EEPROM_ADDR_LEN:
-	  The length in bytes of the EEPROM memory array address.  Note
-	  that this is NOT the chip address length!
-
-	- CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW:
-	  EEPROM chips that implement "address overflow" are ones
-	  like Catalyst 24WC04/08/16 which has 9/10/11 bits of
-	  address and the extra bits end up in the "chip address" bit
-	  slots. This makes a 24WC08 (1Kbyte) chip look like four 256
-	  byte chips.
-
-	  Note that we consider the length of the address field to
-	  still be one byte because the extra address bits are hidden
-	  in the chip address.
-
-	- CONFIG_SYS_EEPROM_SIZE:
-	  The size in bytes of the EEPROM device.
-
-	- CONFIG_ENV_EEPROM_IS_ON_I2C
-	  define this, if you have I2C and SPI activated, and your
-	  EEPROM, which holds the environment, is on the I2C bus.
-
-	- CONFIG_I2C_ENV_EEPROM_BUS
-	  if you have an Environment on an EEPROM reached over
-	  I2C muxes, you can define here, how to reach this
-	  EEPROM. For example:
-
-	  #define CONFIG_I2C_ENV_EEPROM_BUS	  1
-
-	  EEPROM which holds the environment, is reached over
-	  a pca9547 i2c mux with address 0x70, channel 3.
-
 - CONFIG_ENV_IS_IN_DATAFLASH:
 
 	Define this if you have a DataFlash memory device which you
diff --git a/configs/imx31_phycore_defconfig b/configs/imx31_phycore_defconfig
index 224bedb1d6..652fe8662c 100644
--- a/configs/imx31_phycore_defconfig
+++ b/configs/imx31_phycore_defconfig
@@ -6,5 +6,6 @@ CONFIG_CMD_EEPROM=y
 CONFIG_CMD_I2C=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_EEPROM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/imx31_phycore_eet_defconfig b/configs/imx31_phycore_eet_defconfig
index c881b8fdcc..2a0033d615 100644
--- a/configs/imx31_phycore_eet_defconfig
+++ b/configs/imx31_phycore_eet_defconfig
@@ -10,5 +10,6 @@ CONFIG_CMD_I2C=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
+CONFIG_ENV_IS_IN_EEPROM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/km_kirkwood_128m16_defconfig b/configs/km_kirkwood_128m16_defconfig
index df7dac8c37..eed0ebe341 100644
--- a/configs/km_kirkwood_128m16_defconfig
+++ b/configs/km_kirkwood_128m16_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_EEPROM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/km_kirkwood_defconfig b/configs/km_kirkwood_defconfig
index 4b9cdb7f47..766753165c 100644
--- a/configs/km_kirkwood_defconfig
+++ b/configs/km_kirkwood_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_EEPROM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/km_kirkwood_pci_defconfig b/configs/km_kirkwood_pci_defconfig
index 79952774ae..6a74864dc6 100644
--- a/configs/km_kirkwood_pci_defconfig
+++ b/configs/km_kirkwood_pci_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_EEPROM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/mgcoge3un_defconfig b/configs/mgcoge3un_defconfig
index 2add8828b8..00a85e3c44 100644
--- a/configs/mgcoge3un_defconfig
+++ b/configs/mgcoge3un_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_EEPROM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/portl2_defconfig b/configs/portl2_defconfig
index a0faba50ff..eb741804aa 100644
--- a/configs/portl2_defconfig
+++ b/configs/portl2_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_EEPROM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/env/Kconfig b/env/Kconfig
index 75dd57843f..30a493fcdd 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -1,5 +1,65 @@
 menu "Environment"
 
+config ENV_IS_IN_EEPROM
+	bool "Environment in EEPROM"
+	help
+	  Use this if you have an EEPROM or similar serial access
+	  device and a driver for it.
+
+	  - CONFIG_ENV_OFFSET:
+	  - CONFIG_ENV_SIZE:
+
+	  These two #defines specify the offset and size of the
+	  environment area within the total memory of your EEPROM.
+
+	  - CONFIG_SYS_I2C_EEPROM_ADDR:
+	  If defined, specified the chip address of the EEPROM device.
+	  The default address is zero.
+
+	  - CONFIG_SYS_I2C_EEPROM_BUS:
+	  If defined, specified the i2c bus of the EEPROM device.
+
+	  - CONFIG_SYS_EEPROM_PAGE_WRITE_BITS:
+	  If defined, the number of bits used to address bytes in a
+	  single page in the EEPROM device.  A 64 byte page, for example
+	  would require six bits.
+
+	  - CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS:
+	  If defined, the number of milliseconds to delay between
+	  page writes.	The default is zero milliseconds.
+
+	  - CONFIG_SYS_I2C_EEPROM_ADDR_LEN:
+	  The length in bytes of the EEPROM memory array address.  Note
+	  that this is NOT the chip address length!
+
+	  - CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW:
+	  EEPROM chips that implement "address overflow" are ones
+	  like Catalyst 24WC04/08/16 which has 9/10/11 bits of
+	  address and the extra bits end up in the "chip address" bit
+	  slots. This makes a 24WC08 (1Kbyte) chip look like four 256
+	  byte chips.
+
+	  Note that we consider the length of the address field to
+	  still be one byte because the extra address bits are hidden
+	  in the chip address.
+
+	  - CONFIG_SYS_EEPROM_SIZE:
+	  The size in bytes of the EEPROM device.
+
+	  - CONFIG_ENV_EEPROM_IS_ON_I2C
+	  define this, if you have I2C and SPI activated, and your
+	  EEPROM, which holds the environment, is on the I2C bus.
+
+	  - CONFIG_I2C_ENV_EEPROM_BUS
+	  if you have an Environment on an EEPROM reached over
+	  I2C muxes, you can define here, how to reach this
+	  EEPROM. For example:
+
+	  #define CONFIG_I2C_ENV_EEPROM_BUS	  1
+
+	  EEPROM which holds the environment, is reached over
+	  a pca9547 i2c mux with address 0x70, channel 3.
+
 config ENV_IS_IN_FLASH
 	bool "Environment in flash memory"
 	help
diff --git a/include/config_fsl_chain_trust.h b/include/config_fsl_chain_trust.h
index 6b6ae7cc78..195419b888 100644
--- a/include/config_fsl_chain_trust.h
+++ b/include/config_fsl_chain_trust.h
@@ -13,7 +13,6 @@
  */
 #ifdef CONFIG_SECURE_BOOT
 
-#undef CONFIG_ENV_IS_IN_EEPROM
 #undef CONFIG_ENV_IS_IN_SPI_FLASH
 
 #endif
diff --git a/include/configs/imx31_phycore.h b/include/configs/imx31_phycore.h
index 739af03e88..ba7c3e186d 100644
--- a/include/configs/imx31_phycore.h
+++ b/include/configs/imx31_phycore.h
@@ -135,7 +135,6 @@
 /* Monitor at beginning of flash */
 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
 
-#define CONFIG_ENV_IS_IN_EEPROM
 #define CONFIG_ENV_OFFSET			0x00	/* env. starts here */
 #define CONFIG_ENV_SIZE				4096
 #define CONFIG_SYS_I2C_EEPROM_ADDR		0x52
diff --git a/include/configs/km/km_arm.h b/include/configs/km/km_arm.h
index 0c5f6e7515..9a90e08d65 100644
--- a/include/configs/km/km_arm.h
+++ b/include/configs/km/km_arm.h
@@ -222,7 +222,6 @@ int get_scl(void);
 					CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_TOTAL_SIZE		0x20000     /* no bracets! */
 #else
-#define CONFIG_ENV_IS_IN_EEPROM		/* use EEPROM for environment vars */
 #define CONFIG_SYS_DEF_EEPROM_ADDR	0x50
 #define CONFIG_ENV_EEPROM_IS_ON_I2C
 #define CONFIG_SYS_EEPROM_WREN
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index 4d8f849757..b7694cd5ec 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -642,7 +642,6 @@ CONFIG_ENV_FLASHBOOT
 CONFIG_ENV_IS_EMBEDDED
 CONFIG_ENV_IS_IN_
 CONFIG_ENV_IS_IN_DATAFLASH
-CONFIG_ENV_IS_IN_EEPROM
 CONFIG_ENV_IS_IN_FAT
 CONFIG_ENV_IS_IN_MRAM
 CONFIG_ENV_IS_IN_ONENAND
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 08/30] Convert CONFIG_ENV_IS_IN_DATAFLASH to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (6 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 07/30] Convert CONFIG_ENV_IS_IN_EEPROM " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 09/30] Convert CONFIG_ENV_IS_IN_SPI_FLASH " Simon Glass
                   ` (23 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_DATAFLASH

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                                        | 13 -------------
 configs/at91sam9260ek_dataflash_cs0_defconfig |  1 +
 configs/at91sam9260ek_dataflash_cs1_defconfig |  1 +
 configs/at91sam9261ek_dataflash_cs0_defconfig |  1 +
 configs/at91sam9261ek_dataflash_cs3_defconfig |  1 +
 configs/at91sam9263ek_dataflash_cs0_defconfig |  1 +
 configs/at91sam9263ek_dataflash_defconfig     |  1 +
 configs/at91sam9g10ek_dataflash_cs0_defconfig |  1 +
 configs/at91sam9g10ek_dataflash_cs3_defconfig |  1 +
 configs/at91sam9g20ek_dataflash_cs0_defconfig |  1 +
 configs/at91sam9g20ek_dataflash_cs1_defconfig |  1 +
 configs/at91sam9rlek_dataflash_defconfig      |  1 +
 configs/at91sam9xeek_dataflash_cs0_defconfig  |  1 +
 configs/at91sam9xeek_dataflash_cs1_defconfig  |  1 +
 configs/meesc_dataflash_defconfig             |  1 +
 configs/usb_a9263_dataflash_defconfig         |  1 +
 env/Kconfig                                   | 14 ++++++++++++++
 include/configs/at91sam9260ek.h               |  2 --
 include/configs/at91sam9261ek.h               |  2 --
 include/configs/at91sam9263ek.h               |  1 -
 include/configs/at91sam9rlek.h                |  1 -
 include/configs/meesc.h                       |  1 -
 include/configs/pm9261.h                      |  1 -
 include/configs/pm9263.h                      |  1 -
 include/configs/usb_a9263.h                   |  1 -
 scripts/config_whitelist.txt                  |  1 -
 26 files changed, 29 insertions(+), 24 deletions(-)

diff --git a/README b/README
index a2ff039d17..ff09c7bfba 100644
--- a/README
+++ b/README
@@ -3444,19 +3444,6 @@ environment in RAM: we could work on NVRAM directly, but we want to
 keep settings there always unmodified except somebody uses "saveenv"
 to save the current settings.
 
-- CONFIG_ENV_IS_IN_DATAFLASH:
-
-	Define this if you have a DataFlash memory device which you
-	want to use for the environment.
-
-	- CONFIG_ENV_OFFSET:
-	- CONFIG_ENV_ADDR:
-	- CONFIG_ENV_SIZE:
-
-	  These three #defines specify the offset and size of the
-	  environment area within the total memory of your DataFlash placed
-	  at the specified address.
-
 - CONFIG_ENV_IS_IN_SPI_FLASH:
 
 	Define this if you have a SPI Flash memory device which you
diff --git a/configs/at91sam9260ek_dataflash_cs0_defconfig b/configs/at91sam9260ek_dataflash_cs0_defconfig
index 7c43c5082e..8eeccd88f3 100644
--- a/configs/at91sam9260ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9260ek_dataflash_cs0_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9260ek_dataflash_cs1_defconfig b/configs/at91sam9260ek_dataflash_cs1_defconfig
index 1f959eaca6..867bfcd42d 100644
--- a/configs/at91sam9260ek_dataflash_cs1_defconfig
+++ b/configs/at91sam9260ek_dataflash_cs1_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9261ek_dataflash_cs0_defconfig b/configs/at91sam9261ek_dataflash_cs0_defconfig
index 15adf43c42..dd5ba3a547 100644
--- a/configs/at91sam9261ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9261ek_dataflash_cs0_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/at91sam9261ek_dataflash_cs3_defconfig b/configs/at91sam9261ek_dataflash_cs3_defconfig
index 05113b9805..77c96e8913 100644
--- a/configs/at91sam9261ek_dataflash_cs3_defconfig
+++ b/configs/at91sam9261ek_dataflash_cs3_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/at91sam9263ek_dataflash_cs0_defconfig b/configs/at91sam9263ek_dataflash_cs0_defconfig
index d1074faea3..f04981e477 100644
--- a/configs/at91sam9263ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9263ek_dataflash_cs0_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9263ek_dataflash_defconfig b/configs/at91sam9263ek_dataflash_defconfig
index d1074faea3..f04981e477 100644
--- a/configs/at91sam9263ek_dataflash_defconfig
+++ b/configs/at91sam9263ek_dataflash_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9g10ek_dataflash_cs0_defconfig b/configs/at91sam9g10ek_dataflash_cs0_defconfig
index 70e526a5cf..b00a17cac6 100644
--- a/configs/at91sam9g10ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9g10ek_dataflash_cs0_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/at91sam9g10ek_dataflash_cs3_defconfig b/configs/at91sam9g10ek_dataflash_cs3_defconfig
index 8da1bfe5cd..e74e4cf09b 100644
--- a/configs/at91sam9g10ek_dataflash_cs3_defconfig
+++ b/configs/at91sam9g10ek_dataflash_cs3_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 # CONFIG_MMC is not set
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/at91sam9g20ek_dataflash_cs0_defconfig b/configs/at91sam9g20ek_dataflash_cs0_defconfig
index 3df66b6488..9461ebd4f3 100644
--- a/configs/at91sam9g20ek_dataflash_cs0_defconfig
+++ b/configs/at91sam9g20ek_dataflash_cs0_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9g20ek_dataflash_cs1_defconfig b/configs/at91sam9g20ek_dataflash_cs1_defconfig
index f0a3a667c4..870b3db37a 100644
--- a/configs/at91sam9g20ek_dataflash_cs1_defconfig
+++ b/configs/at91sam9g20ek_dataflash_cs1_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9rlek_dataflash_defconfig b/configs/at91sam9rlek_dataflash_defconfig
index e2642b9e76..9913a9fe2a 100644
--- a/configs/at91sam9rlek_dataflash_defconfig
+++ b/configs/at91sam9rlek_dataflash_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_MMC=y
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9xeek_dataflash_cs0_defconfig b/configs/at91sam9xeek_dataflash_cs0_defconfig
index 5405939640..cf23b39f94 100644
--- a/configs/at91sam9xeek_dataflash_cs0_defconfig
+++ b/configs/at91sam9xeek_dataflash_cs0_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9xeek_dataflash_cs1_defconfig b/configs/at91sam9xeek_dataflash_cs1_defconfig
index a0577026d6..2792ae505b 100644
--- a/configs/at91sam9xeek_dataflash_cs1_defconfig
+++ b/configs/at91sam9xeek_dataflash_cs1_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/meesc_dataflash_defconfig b/configs/meesc_dataflash_defconfig
index de8a8cbf0a..bd048acf57 100644
--- a/configs/meesc_dataflash_defconfig
+++ b/configs/meesc_dataflash_defconfig
@@ -14,5 +14,6 @@ CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 # CONFIG_MMC is not set
 CONFIG_OF_LIBFDT=y
diff --git a/configs/usb_a9263_dataflash_defconfig b/configs/usb_a9263_dataflash_defconfig
index 7a8005b6db..d744f7c86b 100644
--- a/configs/usb_a9263_dataflash_defconfig
+++ b/configs/usb_a9263_dataflash_defconfig
@@ -16,5 +16,6 @@ CONFIG_SYS_PROMPT="U-Boot> "
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
+CONFIG_ENV_IS_IN_DATAFLASH=y
 # CONFIG_MMC is not set
 CONFIG_OF_LIBFDT=y
diff --git a/env/Kconfig b/env/Kconfig
index 30a493fcdd..ea973458ca 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -1,5 +1,19 @@
 menu "Environment"
 
+config ENV_IS_IN_DATAFLASH
+	bool "Environment in dataflash"
+	help
+	  Define this if you have a DataFlash memory device which you
+	  want to use for the environment.
+
+	  - CONFIG_ENV_OFFSET:
+	  - CONFIG_ENV_ADDR:
+	  - CONFIG_ENV_SIZE:
+
+	  These three #defines specify the offset and size of the
+	  environment area within the total memory of your DataFlash placed
+	  at the specified address.
+
 config ENV_IS_IN_EEPROM
 	bool "Environment in EEPROM"
 	help
diff --git a/include/configs/at91sam9260ek.h b/include/configs/at91sam9260ek.h
index 8b0105c017..51b6fab716 100644
--- a/include/configs/at91sam9260ek.h
+++ b/include/configs/at91sam9260ek.h
@@ -146,7 +146,6 @@
 #ifdef CONFIG_SYS_USE_DATAFLASH_CS0
 
 /* bootstrap + u-boot + env + linux in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_DATAFLASH	1
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + 0x8400)
 #define CONFIG_ENV_OFFSET		0x4200
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + CONFIG_ENV_OFFSET)
@@ -160,7 +159,6 @@
 #elif CONFIG_SYS_USE_DATAFLASH_CS1
 
 /* bootstrap + u-boot + env + linux in dataflash on CS1 */
-#define CONFIG_ENV_IS_IN_DATAFLASH	1
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS1 + 0x8400)
 #define CONFIG_ENV_OFFSET		0x4200
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS1 + CONFIG_ENV_OFFSET)
diff --git a/include/configs/at91sam9261ek.h b/include/configs/at91sam9261ek.h
index d86f07b982..4e151cdd04 100644
--- a/include/configs/at91sam9261ek.h
+++ b/include/configs/at91sam9261ek.h
@@ -139,7 +139,6 @@
 #ifdef CONFIG_SYS_USE_DATAFLASH_CS0
 
 /* bootstrap + u-boot + env + linux in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_DATAFLASH
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + 0x8400)
 #define CONFIG_ENV_OFFSET	0x4200
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + CONFIG_ENV_OFFSET)
@@ -153,7 +152,6 @@
 #elif CONFIG_SYS_USE_DATAFLASH_CS3
 
 /* bootstrap + u-boot + env + linux in dataflash on CS3 */
-#define CONFIG_ENV_IS_IN_DATAFLASH
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS3 + 0x8400)
 #define CONFIG_ENV_OFFSET	0x4200
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS3 + CONFIG_ENV_OFFSET)
diff --git a/include/configs/at91sam9263ek.h b/include/configs/at91sam9263ek.h
index 9effe9ebd9..62099c7024 100644
--- a/include/configs/at91sam9263ek.h
+++ b/include/configs/at91sam9263ek.h
@@ -249,7 +249,6 @@
 #ifdef CONFIG_SYS_USE_DATAFLASH
 
 /* bootstrap + u-boot + env + linux in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_DATAFLASH	1
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + 0x8400)
 #define CONFIG_ENV_OFFSET		0x4200
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + CONFIG_ENV_OFFSET)
diff --git a/include/configs/at91sam9rlek.h b/include/configs/at91sam9rlek.h
index 05ba542382..1d068f4c50 100644
--- a/include/configs/at91sam9rlek.h
+++ b/include/configs/at91sam9rlek.h
@@ -95,7 +95,6 @@
 #ifdef CONFIG_SYS_USE_DATAFLASH
 
 /* bootstrap + u-boot + env + linux in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_DATAFLASH	1
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + 0x8400)
 #define CONFIG_ENV_OFFSET		0x4200
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + CONFIG_ENV_OFFSET)
diff --git a/include/configs/meesc.h b/include/configs/meesc.h
index 3b7643fb63..63d3fdc6ee 100644
--- a/include/configs/meesc.h
+++ b/include/configs/meesc.h
@@ -134,7 +134,6 @@
 #ifdef CONFIG_SYS_USE_DATAFLASH
 
 /* bootstrap + u-boot + env in dataflash on CS0 */
-# define CONFIG_ENV_IS_IN_DATAFLASH
 # define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + \
 					0x8400)
 # define CONFIG_ENV_OFFSET		0x4200
diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h
index bae5736801..f100a40f21 100644
--- a/include/configs/pm9261.h
+++ b/include/configs/pm9261.h
@@ -240,7 +240,6 @@
 #ifdef CONFIG_SYS_USE_DATAFLASH_CS0
 
 /* bootstrap + u-boot + env + linux in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_DATAFLASH	1
 #define CONFIG_SYS_MONITOR_BASE		\
 		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + 0x8400)
 #define CONFIG_ENV_OFFSET	0x4200
diff --git a/include/configs/pm9263.h b/include/configs/pm9263.h
index 9ea444009a..da0cd9d62b 100644
--- a/include/configs/pm9263.h
+++ b/include/configs/pm9263.h
@@ -268,7 +268,6 @@
 #ifdef CONFIG_SYS_USE_DATAFLASH
 
 /* bootstrap + u-boot + env + linux in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_DATAFLASH
 #define CFG_MONITOR_BASE	(CFG_DATAFLASH_LOGIC_ADDR_CS0 + 0x8400)
 #define CONFIG_ENV_OFFSET	0x4200
 #define CONFIG_ENV_ADDR		(CFG_DATAFLASH_LOGIC_ADDR_CS0 + CONFIG_ENV_OFFSET)
diff --git a/include/configs/usb_a9263.h b/include/configs/usb_a9263.h
index 57e22208c4..335ce4e12e 100644
--- a/include/configs/usb_a9263.h
+++ b/include/configs/usb_a9263.h
@@ -112,7 +112,6 @@
 #define CONFIG_SYS_MEMTEST_END			0x23e00000
 
 /* bootstrap + u-boot + env in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_DATAFLASH
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + 0x4000)
 #define CONFIG_ENV_OFFSET	0x2000
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0 + \
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index b7694cd5ec..b5ade9cf29 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -641,7 +641,6 @@ CONFIG_ENV_FLAGS_LIST_STATIC
 CONFIG_ENV_FLASHBOOT
 CONFIG_ENV_IS_EMBEDDED
 CONFIG_ENV_IS_IN_
-CONFIG_ENV_IS_IN_DATAFLASH
 CONFIG_ENV_IS_IN_FAT
 CONFIG_ENV_IS_IN_MRAM
 CONFIG_ENV_IS_IN_ONENAND
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 09/30] Convert CONFIG_ENV_IS_IN_SPI_FLASH to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (7 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 08/30] Convert CONFIG_ENV_IS_IN_DATAFLASH " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 10/30] Convert CONFIG_ENV_IS_IN_REMOTE " Simon Glass
                   ` (22 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_SPI_FLASH

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                                             | 37 ---------------------
 arch/arm/mach-mvebu/Kconfig                        |  1 +
 arch/x86/cpu/baytrail/Kconfig                      |  1 +
 configs/B4420QDS_SPIFLASH_defconfig                |  1 +
 configs/B4860QDS_SPIFLASH_defconfig                |  1 +
 configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig    |  1 +
 configs/BSC9131RDB_SPIFLASH_defconfig              |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig    |  1 +
 configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig    |  1 +
 configs/C29XPCIE_SPIFLASH_defconfig                |  1 +
 configs/M52277EVB_stmicro_defconfig                |  1 +
 configs/M54418TWR_defconfig                        |  1 +
 configs/M54418TWR_serial_mii_defconfig             |  1 +
 configs/M54418TWR_serial_rmii_defconfig            |  1 +
 configs/M54451EVB_stmicro_defconfig                |  1 +
 configs/M54455EVB_stm33_defconfig                  |  1 +
 configs/MPC8536DS_SPIFLASH_defconfig               |  1 +
 configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig       |  1 +
 configs/P1010RDB-PA_SPIFLASH_defconfig             |  1 +
 configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig       |  1 +
 configs/P1010RDB-PB_SPIFLASH_defconfig             |  1 +
 configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig       |  1 +
 configs/P1020RDB-PC_SPIFLASH_defconfig             |  1 +
 configs/P1020RDB-PD_SPIFLASH_defconfig             |  1 +
 configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig       |  1 +
 configs/P1021RDB-PC_SPIFLASH_defconfig             |  1 +
 configs/P1022DS_36BIT_SPIFLASH_defconfig           |  1 +
 configs/P1022DS_SPIFLASH_defconfig                 |  1 +
 configs/P1024RDB_SPIFLASH_defconfig                |  1 +
 configs/P1025RDB_SPIFLASH_defconfig                |  1 +
 configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig       |  1 +
 configs/P2020RDB-PC_SPIFLASH_defconfig             |  1 +
 configs/P2041RDB_SPIFLASH_defconfig                |  1 +
 configs/P3041DS_SPIFLASH_defconfig                 |  1 +
 configs/P4080DS_SPIFLASH_defconfig                 |  1 +
 configs/P5020DS_SPIFLASH_defconfig                 |  1 +
 configs/P5040DS_SPIFLASH_defconfig                 |  1 +
 configs/T1023RDB_SPIFLASH_defconfig                |  1 +
 configs/T1024QDS_SPIFLASH_defconfig                |  1 +
 configs/T1024RDB_SPIFLASH_defconfig                |  1 +
 configs/T1040D4RDB_SPIFLASH_defconfig              |  1 +
 configs/T1040RDB_SPIFLASH_defconfig                |  1 +
 configs/T1042D4RDB_SPIFLASH_defconfig              |  1 +
 configs/T1042RDB_PI_SPIFLASH_defconfig             |  1 +
 configs/T2080QDS_SPIFLASH_defconfig                |  1 +
 configs/T2080RDB_SPIFLASH_defconfig                |  1 +
 configs/T2081QDS_SPIFLASH_defconfig                |  1 +
 configs/UCP1020_SPIFLASH_defconfig                 |  1 +
 configs/alt_defconfig                              |  1 +
 configs/am335x_evm_spiboot_defconfig               |  1 +
 configs/am43xx_evm_qspiboot_defconfig              |  1 +
 configs/ap121_defconfig                            |  1 +
 configs/ap143_defconfig                            |  1 +
 configs/aristainetos2_defconfig                    |  1 +
 configs/aristainetos2b_defconfig                   |  1 +
 configs/aristainetos_defconfig                     |  1 +
 configs/at91sam9n12ek_spiflash_defconfig           |  1 +
 configs/at91sam9x5ek_dataflash_defconfig           |  1 +
 configs/at91sam9x5ek_spiflash_defconfig            |  1 +
 configs/bayleybay_defconfig                        |  2 +-
 configs/brppt1_spi_defconfig                       |  1 +
 configs/cgtqmx6eval_defconfig                      |  1 +
 configs/chromebook_link64_defconfig                |  5 +--
 configs/chromebook_link_defconfig                  |  5 +--
 configs/chromebook_samus_defconfig                 |  3 +-
 configs/chromebox_panther_defconfig                |  5 +--
 configs/cl-som-am57x_defconfig                     |  1 +
 configs/cm_fx6_defconfig                           |  1 +
 configs/cm_t43_defconfig                           |  1 +
 ...conga-qeval20-qa3-e3845-internal-uart_defconfig |  1 +
 configs/controlcenterdc_defconfig                  |  3 +-
 configs/cougarcanyon2_defconfig                    |  3 +-
 configs/crownbay_defconfig                         |  3 +-
 configs/d2net_v2_defconfig                         |  1 +
 configs/da850_am18xxevm_defconfig                  |  1 +
 configs/da850evm_defconfig                         |  1 +
 configs/db-88f6720_defconfig                       |  1 +
 configs/db-88f6820-amc_defconfig                   |  1 +
 configs/db-88f6820-gp_defconfig                    |  3 +-
 configs/dms-ba16-1g_defconfig                      |  1 +
 configs/dms-ba16_defconfig                         |  1 +
 configs/dreamplug_defconfig                        |  1 +
 configs/ds109_defconfig                            |  1 +
 configs/ea20_defconfig                             |  1 +
 configs/ethernut5_defconfig                        |  1 +
 configs/galileo_defconfig                          |  1 +
 configs/ge_b450v3_defconfig                        |  1 +
 configs/ge_b650v3_defconfig                        |  1 +
 configs/ge_b850v3_defconfig                        |  1 +
 configs/gose_defconfig                             |  1 +
 configs/inetspace_v2_defconfig                     |  1 +
 configs/kmcoge4_defconfig                          |  1 +
 configs/kmcoge5un_defconfig                        |  1 +
 configs/kmlion1_defconfig                          |  1 +
 configs/kmnusa_defconfig                           |  1 +
 configs/kmsugp1_defconfig                          |  1 +
 configs/kmsuv31_defconfig                          |  1 +
 configs/koelsch_defconfig                          |  1 +
 configs/lager_defconfig                            |  1 +
 configs/ls1012afrdm_qspi_defconfig                 |  1 +
 configs/ls1012aqds_qspi_defconfig                  |  3 +-
 configs/ls1012ardb_qspi_defconfig                  |  1 +
 configs/ls1021aiot_qspi_defconfig                  |  1 +
 configs/ls1021aqds_qspi_defconfig                  |  1 +
 configs/ls1021atwr_qspi_defconfig                  |  1 +
 configs/ls1043aqds_qspi_defconfig                  |  1 +
 configs/ls1046aqds_qspi_defconfig                  |  1 +
 configs/ls1046ardb_qspi_defconfig                  |  1 +
 configs/ls2080aqds_qspi_defconfig                  |  1 +
 configs/ls2081ardb_defconfig                       |  3 +-
 configs/ls2088ardb_qspi_defconfig                  |  1 +
 configs/lschlv2_defconfig                          |  1 +
 configs/lsxhl_defconfig                            |  1 +
 configs/marsboard_defconfig                        |  3 +-
 configs/minnowmax_defconfig                        |  2 +-
 configs/mvebu_db-88f3720_defconfig                 |  1 +
 configs/mvebu_db-88f7040_defconfig                 |  1 +
 configs/mvebu_db-88f8040_defconfig                 |  1 +
 configs/mvebu_espressobin-88f3720_defconfig        |  1 +
 configs/mvebu_mcbin-88f8040_defconfig              |  1 +
 configs/mx28evk_spi_defconfig                      |  2 +-
 configs/mx6slevk_spinor_defconfig                  |  1 +
 configs/net2big_v2_defconfig                       |  1 +
 configs/netspace_lite_v2_defconfig                 |  1 +
 configs/netspace_max_v2_defconfig                  |  1 +
 configs/netspace_mini_v2_defconfig                 |  1 +
 configs/netspace_v2_defconfig                      |  1 +
 configs/nitrogen6dl2g_defconfig                    |  1 +
 configs/nitrogen6dl_defconfig                      |  1 +
 configs/nitrogen6q2g_defconfig                     |  1 +
 configs/nitrogen6q_defconfig                       |  1 +
 configs/nitrogen6s1g_defconfig                     |  1 +
 configs/nitrogen6s_defconfig                       |  1 +
 configs/ot1200_defconfig                           |  1 +
 configs/ot1200_spl_defconfig                       |  1 +
 configs/pcm058_defconfig                           |  1 +
 configs/peach-pi_defconfig                         |  1 +
 configs/peach-pit_defconfig                        |  1 +
 configs/porter_defconfig                           |  1 +
 configs/sama5d2_ptc_spiflash_defconfig             |  1 +
 configs/sama5d2_xplained_spiflash_defconfig        |  1 +
 configs/sama5d36ek_cmp_spiflash_defconfig          |  1 +
 configs/sama5d3xek_spiflash_defconfig              |  1 +
 configs/sama5d4_xplained_spiflash_defconfig        |  1 +
 configs/sama5d4ek_spiflash_defconfig               |  1 +
 configs/sh7752evb_defconfig                        |  1 +
 configs/sh7753evb_defconfig                        |  1 +
 configs/sh7757lcr_defconfig                        |  1 +
 configs/silk_defconfig                             |  1 +
 configs/smdk5250_defconfig                         |  1 +
 configs/smdk5420_defconfig                         |  1 +
 configs/snow_defconfig                             |  1 +
 configs/socfpga_is1_defconfig                      |  1 +
 configs/socfpga_sr1500_defconfig                   |  1 +
 configs/socfpga_vining_fpga_defconfig              |  1 +
 configs/som-db5800-som-6867_defconfig              |  2 +-
 configs/spring_defconfig                           |  1 +
 configs/stout_defconfig                            |  1 +
 configs/stv0991_defconfig                          |  1 +
 configs/tqma6dl_mba6_spi_defconfig                 |  1 +
 configs/tqma6q_mba6_spi_defconfig                  |  1 +
 configs/tqma6s_mba6_spi_defconfig                  |  1 +
 configs/trimslice_defconfig                        |  1 +
 configs/vinco_defconfig                            |  1 +
 configs/zynq_microzed_defconfig                    |  1 +
 configs/zynq_zc702_defconfig                       |  1 +
 configs/zynq_zc706_defconfig                       |  1 +
 configs/zynq_zc770_xm010_defconfig                 |  1 +
 configs/zynq_zed_defconfig                         |  1 +
 configs/zynq_zybo_defconfig                        |  1 +
 env/Kconfig                                        | 38 ++++++++++++++++++++++
 include/config_fsl_chain_trust.h                   |  5 ---
 include/configs/B4860QDS.h                         |  1 -
 include/configs/BSC9131RDB.h                       |  1 -
 include/configs/BSC9132QDS.h                       |  1 -
 include/configs/C29XPCIE.h                         |  1 -
 include/configs/M52277EVB.h                        |  1 -
 include/configs/M54418TWR.h                        |  1 -
 include/configs/M54451EVB.h                        |  1 -
 include/configs/M54455EVB.h                        |  1 -
 include/configs/MPC8536DS.h                        |  1 -
 include/configs/P1010RDB.h                         |  1 -
 include/configs/P1022DS.h                          |  1 -
 include/configs/P2041RDB.h                         |  1 -
 include/configs/T102xQDS.h                         |  1 -
 include/configs/T102xRDB.h                         |  1 -
 include/configs/T1040QDS.h                         |  1 -
 include/configs/T104xRDB.h                         |  1 -
 include/configs/T208xQDS.h                         |  1 -
 include/configs/T208xRDB.h                         |  1 -
 include/configs/T4240QDS.h                         |  1 -
 include/configs/T4240RDB.h                         |  1 -
 include/configs/UCP1020.h                          |  1 -
 include/configs/advantech_dms-ba16.h               |  1 -
 include/configs/am335x_evm.h                       |  1 -
 include/configs/am43xx_evm.h                       |  1 -
 include/configs/ap121.h                            |  1 -
 include/configs/ap143.h                            |  1 -
 include/configs/aristainetos-common.h              |  1 -
 include/configs/at91-sama5_common.h                |  1 -
 include/configs/at91sam9n12ek.h                    |  1 -
 include/configs/at91sam9x5ek.h                     |  2 --
 include/configs/bav335x.h                          |  1 -
 include/configs/blanche.h                          |  1 -
 include/configs/brppt1.h                           |  1 -
 include/configs/cgtqmx6eval.h                      |  1 -
 include/configs/cl-som-am57x.h                     |  1 -
 include/configs/cm_fx6.h                           |  1 -
 include/configs/cm_t43.h                           |  1 -
 include/configs/controlcenterd.h                   |  1 -
 include/configs/controlcenterdc.h                  |  1 -
 include/configs/corenet_ds.h                       |  1 -
 include/configs/da850evm.h                         |  1 -
 include/configs/db-88f6720.h                       |  1 -
 include/configs/db-88f6820-amc.h                   |  1 -
 include/configs/db-88f6820-gp.h                    |  1 -
 include/configs/db-mv784mp-gp.h                    |  1 -
 include/configs/dra7xx_evm.h                       |  1 -
 include/configs/dreamplug.h                        |  1 -
 include/configs/ds109.h                            |  1 -
 include/configs/ds414.h                            |  1 -
 include/configs/ea20.h                             |  1 -
 include/configs/efi-x86.h                          |  1 -
 include/configs/ethernut5.h                        |  1 -
 include/configs/exynos5-dt-common.h                |  1 -
 include/configs/ge_bx50v3.h                        |  1 -
 include/configs/gw_ventana.h                       |  3 --
 include/configs/km/km_arm.h                        |  1 -
 include/configs/km/kmp204x-common.h                |  1 -
 include/configs/lacie_kw.h                         |  1 -
 include/configs/ls1012a_common.h                   |  1 -
 include/configs/ls1021aiot.h                       |  1 -
 include/configs/ls1021aqds.h                       |  1 -
 include/configs/ls1021atwr.h                       |  1 -
 include/configs/ls1043aqds.h                       |  1 -
 include/configs/ls1046aqds.h                       |  1 -
 include/configs/ls1046ardb.h                       |  1 -
 include/configs/ls2080a_common.h                   |  1 -
 include/configs/lsxl.h                             |  1 -
 include/configs/maxbcm.h                           |  1 -
 include/configs/microblaze-generic.h               |  1 -
 include/configs/mvebu_armada-37xx.h                |  1 -
 include/configs/mvebu_armada-8k.h                  |  1 -
 include/configs/mx6slevk.h                         |  1 -
 include/configs/nitrogen6x.h                       |  5 ---
 include/configs/odroid_xu3.h                       |  2 --
 include/configs/omapl138_lcdk.h                    |  2 --
 include/configs/ot1200.h                           |  1 -
 include/configs/p1_p2_rdb_pc.h                     |  1 -
 include/configs/pcm058.h                           |  1 -
 include/configs/qemu-x86.h                         |  1 -
 include/configs/rcar-gen2-common.h                 |  1 -
 include/configs/sh7752evb.h                        |  1 -
 include/configs/sh7753evb.h                        |  1 -
 include/configs/sh7757lcr.h                        |  1 -
 include/configs/siemens-am33x-common.h             |  1 -
 include/configs/socfpga_is1.h                      |  1 -
 include/configs/socfpga_sr1500.h                   |  1 -
 include/configs/socfpga_vining_fpga.h              |  1 -
 include/configs/stv0991.h                          |  1 -
 include/configs/theadorable.h                      |  1 -
 include/configs/tqma6.h                            |  1 -
 include/configs/trimslice.h                        |  1 -
 include/configs/x86-chromebook.h                   |  1 -
 include/configs/x86-common.h                       |  1 -
 include/configs/zynq-common.h                      |  1 -
 scripts/config_whitelist.txt                       |  1 -
 267 files changed, 221 insertions(+), 164 deletions(-)

diff --git a/README b/README
index ff09c7bfba..713eeb2f45 100644
--- a/README
+++ b/README
@@ -3444,43 +3444,6 @@ environment in RAM: we could work on NVRAM directly, but we want to
 keep settings there always unmodified except somebody uses "saveenv"
 to save the current settings.
 
-- CONFIG_ENV_IS_IN_SPI_FLASH:
-
-	Define this if you have a SPI Flash memory device which you
-	want to use for the environment.
-
-	- CONFIG_ENV_OFFSET:
-	- CONFIG_ENV_SIZE:
-
-	  These two #defines specify the offset and size of the
-	  environment area within the SPI Flash. CONFIG_ENV_OFFSET must be
-	  aligned to an erase sector boundary.
-
-	- CONFIG_ENV_SECT_SIZE:
-
-	  Define the SPI flash's sector size.
-
-	- CONFIG_ENV_OFFSET_REDUND (optional):
-
-	  This setting describes a second storage area of CONFIG_ENV_SIZE
-	  size used to hold a redundant copy of the environment data, so
-	  that there is a valid backup copy in case there is a power failure
-	  during a "saveenv" operation. CONFIG_ENV_OFFSET_REDUND must be
-	  aligned to an erase sector boundary.
-
-	- CONFIG_ENV_SPI_BUS (optional):
-	- CONFIG_ENV_SPI_CS (optional):
-
-	  Define the SPI bus and chip select. If not defined they will be 0.
-
-	- CONFIG_ENV_SPI_MAX_HZ (optional):
-
-	  Define the SPI max work clock. If not defined then use 1MHz.
-
-	- CONFIG_ENV_SPI_MODE (optional):
-
-	  Define the SPI work mode. If not defined then use SPI_MODE_3.
-
 - CONFIG_ENV_IS_IN_REMOTE:
 
 	Define this if you have a remote memory space which you
diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
index 3e48d58fcc..11bd437329 100644
--- a/arch/arm/mach-mvebu/Kconfig
+++ b/arch/arm/mach-mvebu/Kconfig
@@ -32,6 +32,7 @@ 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/x86/cpu/baytrail/Kconfig b/arch/x86/cpu/baytrail/Kconfig
index 6c85186486..4e7d4a4e25 100644
--- a/arch/x86/cpu/baytrail/Kconfig
+++ b/arch/x86/cpu/baytrail/Kconfig
@@ -7,6 +7,7 @@
 config INTEL_BAYTRAIL
 	bool
 	select HAVE_FSP if !EFI
+	imply ENV_IS_IN_SPI_FLASH
 
 if INTEL_BAYTRAIL
 config INTERNAL_UART
diff --git a/configs/B4420QDS_SPIFLASH_defconfig b/configs/B4420QDS_SPIFLASH_defconfig
index bf0b26f0a2..72a01a9582 100644
--- a/configs/B4420QDS_SPIFLASH_defconfig
+++ b/configs/B4420QDS_SPIFLASH_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/B4860QDS_SPIFLASH_defconfig b/configs/B4860QDS_SPIFLASH_defconfig
index 04849d6315..97cff60290 100644
--- a/configs/B4860QDS_SPIFLASH_defconfig
+++ b/configs/B4860QDS_SPIFLASH_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
index 4434790b65..75fdf736b8 100644
--- a/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
+++ b/configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9131RDB_SPIFLASH_defconfig b/configs/BSC9131RDB_SPIFLASH_defconfig
index 4bce5427b8..3e4ca3ecde 100644
--- a/configs/BSC9131RDB_SPIFLASH_defconfig
+++ b/configs/BSC9131RDB_SPIFLASH_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
index e848d8a2af..66c8ff8747 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
index 444d552293..6088e2bc8b 100644
--- a/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
+++ b/configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/C29XPCIE_SPIFLASH_defconfig b/configs/C29XPCIE_SPIFLASH_defconfig
index 41bf176650..9c54432cd0 100644
--- a/configs/C29XPCIE_SPIFLASH_defconfig
+++ b/configs/C29XPCIE_SPIFLASH_defconfig
@@ -15,6 +15,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/M52277EVB_stmicro_defconfig b/configs/M52277EVB_stmicro_defconfig
index d657f863d0..8a8eec7c3b 100644
--- a/configs/M52277EVB_stmicro_defconfig
+++ b/configs/M52277EVB_stmicro_defconfig
@@ -13,6 +13,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_JFFS2=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/M54418TWR_defconfig b/configs/M54418TWR_defconfig
index 3445394b90..99ab91874c 100644
--- a/configs/M54418TWR_defconfig
+++ b/configs/M54418TWR_defconfig
@@ -16,5 +16,6 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/M54418TWR_serial_mii_defconfig b/configs/M54418TWR_serial_mii_defconfig
index 729acfebdd..d433ca5837 100644
--- a/configs/M54418TWR_serial_mii_defconfig
+++ b/configs/M54418TWR_serial_mii_defconfig
@@ -16,5 +16,6 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/M54418TWR_serial_rmii_defconfig b/configs/M54418TWR_serial_rmii_defconfig
index 3445394b90..99ab91874c 100644
--- a/configs/M54418TWR_serial_rmii_defconfig
+++ b/configs/M54418TWR_serial_rmii_defconfig
@@ -16,5 +16,6 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/M54451EVB_stmicro_defconfig b/configs/M54451EVB_stmicro_defconfig
index d675825018..5f227980d0 100644
--- a/configs/M54451EVB_stmicro_defconfig
+++ b/configs/M54451EVB_stmicro_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_DATE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/M54455EVB_stm33_defconfig b/configs/M54455EVB_stm33_defconfig
index eed2eabe68..a6330aba43 100644
--- a/configs/M54455EVB_stm33_defconfig
+++ b/configs/M54455EVB_stm33_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/MPC8536DS_SPIFLASH_defconfig b/configs/MPC8536DS_SPIFLASH_defconfig
index 156c8590ba..8f2ead0a9b 100644
--- a/configs/MPC8536DS_SPIFLASH_defconfig
+++ b/configs/MPC8536DS_SPIFLASH_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SYS_FSL_DDR2=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
index dc4a6a72c9..80306c7edd 100644
--- a/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PA_SPIFLASH_defconfig b/configs/P1010RDB-PA_SPIFLASH_defconfig
index f15da83b99..eaa21cbb3b 100644
--- a/configs/P1010RDB-PA_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PA_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
index 8f33a9be78..6b1a273d6b 100644
--- a/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1010RDB-PB_SPIFLASH_defconfig b/configs/P1010RDB-PB_SPIFLASH_defconfig
index 6070bf1f57..e8185d2ee7 100644
--- a/configs/P1010RDB-PB_SPIFLASH_defconfig
+++ b/configs/P1010RDB-PB_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
index 324c6a055c..3ecd7d050c 100644
--- a/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PC_SPIFLASH_defconfig b/configs/P1020RDB-PC_SPIFLASH_defconfig
index 79cba1a071..8d2f84e824 100644
--- a/configs/P1020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PC_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1020RDB-PD_SPIFLASH_defconfig b/configs/P1020RDB-PD_SPIFLASH_defconfig
index 60f5ab3206..7db7be237f 100644
--- a/configs/P1020RDB-PD_SPIFLASH_defconfig
+++ b/configs/P1020RDB-PD_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
index ec326a089a..e251dfa44b 100644
--- a/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1021RDB-PC_SPIFLASH_defconfig b/configs/P1021RDB-PC_SPIFLASH_defconfig
index 86052a4c7d..2e8c69fe78 100644
--- a/configs/P1021RDB-PC_SPIFLASH_defconfig
+++ b/configs/P1021RDB-PC_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_36BIT_SPIFLASH_defconfig b/configs/P1022DS_36BIT_SPIFLASH_defconfig
index 25521d8787..9755931a37 100644
--- a/configs/P1022DS_36BIT_SPIFLASH_defconfig
+++ b/configs/P1022DS_36BIT_SPIFLASH_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1022DS_SPIFLASH_defconfig b/configs/P1022DS_SPIFLASH_defconfig
index 22c3b6b278..d573045ba3 100644
--- a/configs/P1022DS_SPIFLASH_defconfig
+++ b/configs/P1022DS_SPIFLASH_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_PING=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1024RDB_SPIFLASH_defconfig b/configs/P1024RDB_SPIFLASH_defconfig
index ae12d7c03e..b91bf1df35 100644
--- a/configs/P1024RDB_SPIFLASH_defconfig
+++ b/configs/P1024RDB_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P1025RDB_SPIFLASH_defconfig b/configs/P1025RDB_SPIFLASH_defconfig
index 672b7bbbf9..305ca553c0 100644
--- a/configs/P1025RDB_SPIFLASH_defconfig
+++ b/configs/P1025RDB_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
index ee8227a5ba..6e6f17fb2a 100644
--- a/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2020RDB-PC_SPIFLASH_defconfig b/configs/P2020RDB-PC_SPIFLASH_defconfig
index 5091022f81..a5a1fc1a98 100644
--- a/configs/P2020RDB-PC_SPIFLASH_defconfig
+++ b/configs/P2020RDB-PC_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_CMD_HASH is not set
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P2041RDB_SPIFLASH_defconfig b/configs/P2041RDB_SPIFLASH_defconfig
index 5a7821a48b..ef8acbd695 100644
--- a/configs/P2041RDB_SPIFLASH_defconfig
+++ b/configs/P2041RDB_SPIFLASH_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P3041DS_SPIFLASH_defconfig b/configs/P3041DS_SPIFLASH_defconfig
index e2308a26fb..34fe785199 100644
--- a/configs/P3041DS_SPIFLASH_defconfig
+++ b/configs/P3041DS_SPIFLASH_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P4080DS_SPIFLASH_defconfig b/configs/P4080DS_SPIFLASH_defconfig
index 37575eca2f..b0977b0b82 100644
--- a/configs/P4080DS_SPIFLASH_defconfig
+++ b/configs/P4080DS_SPIFLASH_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5020DS_SPIFLASH_defconfig b/configs/P5020DS_SPIFLASH_defconfig
index c5e0b6aaeb..29119cf088 100644
--- a/configs/P5020DS_SPIFLASH_defconfig
+++ b/configs/P5020DS_SPIFLASH_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/P5040DS_SPIFLASH_defconfig b/configs/P5040DS_SPIFLASH_defconfig
index e31215ac68..c27f8c21d1 100644
--- a/configs/P5040DS_SPIFLASH_defconfig
+++ b/configs/P5040DS_SPIFLASH_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1023RDB_SPIFLASH_defconfig b/configs/T1023RDB_SPIFLASH_defconfig
index c63b98c8ef..cf72ebee57 100644
--- a/configs/T1023RDB_SPIFLASH_defconfig
+++ b/configs/T1023RDB_SPIFLASH_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1024QDS_SPIFLASH_defconfig b/configs/T1024QDS_SPIFLASH_defconfig
index f55a2bb424..bf36f7634d 100644
--- a/configs/T1024QDS_SPIFLASH_defconfig
+++ b/configs/T1024QDS_SPIFLASH_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1024RDB_SPIFLASH_defconfig b/configs/T1024RDB_SPIFLASH_defconfig
index 25e81fdc19..b5433037df 100644
--- a/configs/T1024RDB_SPIFLASH_defconfig
+++ b/configs/T1024RDB_SPIFLASH_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1040D4RDB_SPIFLASH_defconfig b/configs/T1040D4RDB_SPIFLASH_defconfig
index 2a872b930f..957c9aba6d 100644
--- a/configs/T1040D4RDB_SPIFLASH_defconfig
+++ b/configs/T1040D4RDB_SPIFLASH_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1040RDB_SPIFLASH_defconfig b/configs/T1040RDB_SPIFLASH_defconfig
index 9f5a8c4e9c..b4a9bb0ba8 100644
--- a/configs/T1040RDB_SPIFLASH_defconfig
+++ b/configs/T1040RDB_SPIFLASH_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_ETHSW=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T1042D4RDB_SPIFLASH_defconfig b/configs/T1042D4RDB_SPIFLASH_defconfig
index c6fcaf3b98..49ccb00af4 100644
--- a/configs/T1042D4RDB_SPIFLASH_defconfig
+++ b/configs/T1042D4RDB_SPIFLASH_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T1042RDB_PI_SPIFLASH_defconfig b/configs/T1042RDB_PI_SPIFLASH_defconfig
index 807519162a..c1b1d79ece 100644
--- a/configs/T1042RDB_PI_SPIFLASH_defconfig
+++ b/configs/T1042RDB_PI_SPIFLASH_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_MTD_NOR_FLASH=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig b/configs/T2080QDS_SPIFLASH_defconfig
index 10b29c4a9a..c3b5744a4a 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2080RDB_SPIFLASH_defconfig b/configs/T2080RDB_SPIFLASH_defconfig
index ca7a38b7d2..ca83834a5d 100644
--- a/configs/T2080RDB_SPIFLASH_defconfig
+++ b/configs/T2080RDB_SPIFLASH_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/T2081QDS_SPIFLASH_defconfig b/configs/T2081QDS_SPIFLASH_defconfig
index 3e3031e134..8f00fecb77 100644
--- a/configs/T2081QDS_SPIFLASH_defconfig
+++ b/configs/T2081QDS_SPIFLASH_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_FSL_CAAM=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/UCP1020_SPIFLASH_defconfig b/configs/UCP1020_SPIFLASH_defconfig
index 29bf82a456..80bf962e26 100644
--- a/configs/UCP1020_SPIFLASH_defconfig
+++ b/configs/UCP1020_SPIFLASH_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_CRAMFS=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/alt_defconfig b/configs/alt_defconfig
index 04dda72532..110bdd62c2 100644
--- a/configs/alt_defconfig
+++ b/configs/alt_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig
index 64b44ff8fd..7726ad4557 100644
--- a/configs/am335x_evm_spiboot_defconfig
+++ b/configs/am335x_evm_spiboot_defconfig
@@ -18,6 +18,7 @@ CONFIG_SPL_MUSB_NEW_SUPPORT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
 CONFIG_MMC_OMAP_HS=y
diff --git a/configs/am43xx_evm_qspiboot_defconfig b/configs/am43xx_evm_qspiboot_defconfig
index 87d5ba7ea9..fb0bf46ed9 100644
--- a/configs/am43xx_evm_qspiboot_defconfig
+++ b/configs/am43xx_evm_qspiboot_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
 CONFIG_DFU_SF=y
diff --git a/configs/ap121_defconfig b/configs/ap121_defconfig
index 3e1f0587a1..703149c2fc 100644
--- a/configs/ap121_defconfig
+++ b/configs/ap121_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_SPI=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ap143_defconfig b/configs/ap143_defconfig
index 58eb77b5a2..b294b19de4 100644
--- a/configs/ap143_defconfig
+++ b/configs/ap143_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_SPI=y
 # CONFIG_CMD_NET is not set
 # CONFIG_CMD_NFS is not set
 # CONFIG_ISO_PARTITION is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
diff --git a/configs/aristainetos2_defconfig b/configs/aristainetos2_defconfig
index 4bd3087cb9..59c6edb3a0 100644
--- a/configs/aristainetos2_defconfig
+++ b/configs/aristainetos2_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_MTD_UBI_FASTMAP=y
diff --git a/configs/aristainetos2b_defconfig b/configs/aristainetos2b_defconfig
index dfdc972327..3a6d35f441 100644
--- a/configs/aristainetos2b_defconfig
+++ b/configs/aristainetos2b_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_MTD_UBI_FASTMAP=y
diff --git a/configs/aristainetos_defconfig b/configs/aristainetos_defconfig
index 0a8b38d9c6..2871e489c7 100644
--- a/configs/aristainetos_defconfig
+++ b/configs/aristainetos_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_MTD_UBI_FASTMAP=y
diff --git a/configs/at91sam9n12ek_spiflash_defconfig b/configs/at91sam9n12ek_spiflash_defconfig
index 8b8229b2cb..e23801fd6d 100644
--- a/configs/at91sam9n12ek_spiflash_defconfig
+++ b/configs/at91sam9n12ek_spiflash_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9x5ek_dataflash_defconfig b/configs/at91sam9x5ek_dataflash_defconfig
index f52d9210fc..1efcf3dee3 100644
--- a/configs/at91sam9x5ek_dataflash_defconfig
+++ b/configs/at91sam9x5ek_dataflash_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9x5ek_spiflash_defconfig b/configs/at91sam9x5ek_spiflash_defconfig
index f8d2ce3702..5f1c4706f5 100644
--- a/configs/at91sam9x5ek_spiflash_defconfig
+++ b/configs/at91sam9x5ek_spiflash_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/bayleybay_defconfig b/configs/bayleybay_defconfig
index 14b74c4a16..03a71edb24 100644
--- a/configs/bayleybay_defconfig
+++ b/configs/bayleybay_defconfig
@@ -46,7 +46,6 @@ CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
 CONFIG_CPU=y
 CONFIG_MMC=y
 CONFIG_MMC_PCI=y
@@ -60,6 +59,7 @@ CONFIG_DM_ETH=y
 CONFIG_E1000=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_ICH_SPI=y
 CONFIG_TIMER=y
diff --git a/configs/brppt1_spi_defconfig b/configs/brppt1_spi_defconfig
index 66e086db68..ec9e620a9f 100644
--- a/configs/brppt1_spi_defconfig
+++ b/configs/brppt1_spi_defconfig
@@ -53,6 +53,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NETCONSOLE=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/cgtqmx6eval_defconfig b/configs/cgtqmx6eval_defconfig
index 94d7e76b18..d4369fc731 100644
--- a/configs/cgtqmx6eval_defconfig
+++ b/configs/cgtqmx6eval_defconfig
@@ -44,6 +44,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_SF=y
 CONFIG_USB=y
diff --git a/configs/chromebook_link64_defconfig b/configs/chromebook_link64_defconfig
index 557919c5d8..1f1d7183bc 100644
--- a/configs/chromebook_link64_defconfig
+++ b/configs/chromebook_link64_defconfig
@@ -52,13 +52,12 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPL_DM=y
 CONFIG_REGMAP=y
 CONFIG_SPL_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_SPL_SYSCON=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_BLK=y
 CONFIG_CPU=y
 CONFIG_DM_I2C=y
@@ -71,6 +70,8 @@ CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_DEBUG_UART_BASE=0x3f8
 CONFIG_DEBUG_UART_CLOCK=1843200
 CONFIG_DEBUG_UART_BOARD_INIT=y
diff --git a/configs/chromebook_link_defconfig b/configs/chromebook_link_defconfig
index 3105fed469..70d6baa0af 100644
--- a/configs/chromebook_link_defconfig
+++ b/configs/chromebook_link_defconfig
@@ -38,10 +38,9 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_BLK=y
 CONFIG_CPU=y
 CONFIG_DM_I2C=y
@@ -54,6 +53,8 @@ CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_DEBUG_UART_BASE=0x3f8
 CONFIG_DEBUG_UART_CLOCK=1843200
 CONFIG_DEBUG_UART_BOARD_INIT=y
diff --git a/configs/chromebook_samus_defconfig b/configs/chromebook_samus_defconfig
index ab2d27eb03..8cfe8bf16a 100644
--- a/configs/chromebook_samus_defconfig
+++ b/configs/chromebook_samus_defconfig
@@ -38,9 +38,9 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
 CONFIG_CPU=y
 CONFIG_INTEL_BROADWELL_GPIO=y
 CONFIG_CROS_EC=y
@@ -51,6 +51,7 @@ CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
 CONFIG_DEBUG_UART_BASE=0x3f8
 CONFIG_DEBUG_UART_CLOCK=1843200
 CONFIG_DEBUG_UART_BOARD_INIT=y
diff --git a/configs/chromebox_panther_defconfig b/configs/chromebox_panther_defconfig
index 30d4019856..8f34fc3d6a 100644
--- a/configs/chromebox_panther_defconfig
+++ b/configs/chromebox_panther_defconfig
@@ -34,10 +34,9 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_BLK=y
 CONFIG_CROS_EC=y
 CONFIG_CROS_EC_LPC=y
@@ -49,6 +48,8 @@ CONFIG_DM_ETH=y
 CONFIG_RTL8169=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_ICH_SPI=y
 CONFIG_TIMER=y
diff --git a/configs/cl-som-am57x_defconfig b/configs/cl-som-am57x_defconfig
index bf753bc074..f3fd2c4985 100644
--- a/configs/cl-som-am57x_defconfig
+++ b/configs/cl-som-am57x_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
 CONFIG_LED_STATUS0=y
diff --git a/configs/cm_fx6_defconfig b/configs/cm_fx6_defconfig
index f83fa92c8f..3e1396f220 100644
--- a/configs/cm_fx6_defconfig
+++ b/configs/cm_fx6_defconfig
@@ -49,6 +49,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/cm_t43_defconfig b/configs/cm_t43_defconfig
index c652c4fa1e..73f3868809 100644
--- a/configs/cm_t43_defconfig
+++ b/configs/cm_t43_defconfig
@@ -48,6 +48,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_DM_GPIO=y
 CONFIG_MMC_OMAP_HS=y
diff --git a/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig b/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
index a0cce754ff..2cb00de288 100644
--- a/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
+++ b/configs/conga-qeval20-qa3-e3845-internal-uart_defconfig
@@ -44,6 +44,7 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
 CONFIG_CPU=y
diff --git a/configs/controlcenterdc_defconfig b/configs/controlcenterdc_defconfig
index a46c46875d..1e4b9ee0db 100644
--- a/configs/controlcenterdc_defconfig
+++ b/configs/controlcenterdc_defconfig
@@ -33,8 +33,8 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_BOARD_FIXUP=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPL_OF_TRANSLATE=y
-CONFIG_SCSI=y
 CONFIG_DM_GPIO=y
 CONFIG_DM_PCA953X=y
 CONFIG_DM_I2C=y
@@ -45,6 +45,7 @@ CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_MV=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_SCSI=y
 CONFIG_DEBUG_UART_BASE=0xd0012000
 CONFIG_DEBUG_UART_CLOCK=250000000
 CONFIG_DEBUG_UART_SHIFT=2
diff --git a/configs/cougarcanyon2_defconfig b/configs/cougarcanyon2_defconfig
index 1008ef7301..21bbc325e5 100644
--- a/configs/cougarcanyon2_defconfig
+++ b/configs/cougarcanyon2_defconfig
@@ -27,13 +27,14 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_ICH_SPI=y
 CONFIG_TIMER=y
diff --git a/configs/crownbay_defconfig b/configs/crownbay_defconfig
index ac50681e19..5bb354bc39 100644
--- a/configs/crownbay_defconfig
+++ b/configs/crownbay_defconfig
@@ -33,9 +33,9 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
 CONFIG_CPU=y
 CONFIG_MMC=y
 CONFIG_MMC_PCI=y
@@ -51,6 +51,7 @@ CONFIG_E1000=y
 CONFIG_PCH_GBE=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_ICH_SPI=y
 CONFIG_TIMER=y
diff --git a/configs/d2net_v2_defconfig b/configs/d2net_v2_defconfig
index a0b5c752cc..a83865493f 100644
--- a/configs/d2net_v2_defconfig
+++ b/configs/d2net_v2_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/da850_am18xxevm_defconfig b/configs/da850_am18xxevm_defconfig
index 74b3f0398d..7d830da174 100644
--- a/configs/da850_am18xxevm_defconfig
+++ b/configs/da850_am18xxevm_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_DIAG=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/da850evm_defconfig b/configs/da850evm_defconfig
index 3745b859ed..bd011d745a 100644
--- a/configs/da850evm_defconfig
+++ b/configs/da850evm_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_DIAG=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/db-88f6720_defconfig b/configs/db-88f6720_defconfig
index 55378efb0f..5dbaf0822d 100644
--- a/configs/db-88f6720_defconfig
+++ b/configs/db-88f6720_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 # CONFIG_DOS_PARTITION is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_OF_TRANSLATE=y
 CONFIG_MISC=y
diff --git a/configs/db-88f6820-amc_defconfig b/configs/db-88f6820-amc_defconfig
index 3831f403b8..271d440203 100644
--- a/configs/db-88f6820-amc_defconfig
+++ b/configs/db-88f6820-amc_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPL_OF_TRANSLATE=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig
index f0b0d698b1..4611503831 100644
--- a/configs/db-88f6820-gp_defconfig
+++ b/configs/db-88f6820-gp_defconfig
@@ -36,8 +36,8 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPL_OF_TRANSLATE=y
-CONFIG_SCSI=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
 CONFIG_MMC_SDHCI_MV=y
@@ -45,6 +45,7 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_PCI=y
+CONFIG_SCSI=y
 CONFIG_DEBUG_UART_BASE=0xd0012000
 CONFIG_DEBUG_UART_CLOCK=250000000
 CONFIG_DEBUG_UART_SHIFT=2
diff --git a/configs/dms-ba16-1g_defconfig b/configs/dms-ba16-1g_defconfig
index 60db28979c..743276d164 100644
--- a/configs/dms-ba16-1g_defconfig
+++ b/configs/dms-ba16-1g_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/dms-ba16_defconfig b/configs/dms-ba16_defconfig
index 7a8c268672..d9e14d87a0 100644
--- a/configs/dms-ba16_defconfig
+++ b/configs/dms-ba16_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/dreamplug_defconfig b/configs/dreamplug_defconfig
index 8f3ffcf5ba..ff8ec6002f 100644
--- a/configs/dreamplug_defconfig
+++ b/configs/dreamplug_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/ds109_defconfig b/configs/ds109_defconfig
index d8f373b492..eeac7cc0be 100644
--- a/configs/ds109_defconfig
+++ b/configs/ds109_defconfig
@@ -14,6 +14,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
diff --git a/configs/ea20_defconfig b/configs/ea20_defconfig
index 4ee7d5aac1..a6abe02e30 100644
--- a/configs/ea20_defconfig
+++ b/configs/ea20_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_BMP=y
 CONFIG_CMD_DIAG=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/ethernut5_defconfig b/configs/ethernut5_defconfig
index 197052dba6..5006c87118 100644
--- a/configs/ethernut5_defconfig
+++ b/configs/ethernut5_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/configs/galileo_defconfig b/configs/galileo_defconfig
index f60abc3422..d8460ad309 100644
--- a/configs/galileo_defconfig
+++ b/configs/galileo_defconfig
@@ -37,6 +37,7 @@ CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
diff --git a/configs/ge_b450v3_defconfig b/configs/ge_b450v3_defconfig
index aaeb34d7c0..8e4f2260ac 100644
--- a/configs/ge_b450v3_defconfig
+++ b/configs/ge_b450v3_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ge_b650v3_defconfig b/configs/ge_b650v3_defconfig
index 78187051eb..9bafa18b8d 100644
--- a/configs/ge_b650v3_defconfig
+++ b/configs/ge_b650v3_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/ge_b850v3_defconfig b/configs/ge_b850v3_defconfig
index 967ddba13a..c709cd5d4e 100644
--- a/configs/ge_b850v3_defconfig
+++ b/configs/ge_b850v3_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/gose_defconfig b/configs/gose_defconfig
index 5627a18631..9f66c6fabe 100644
--- a/configs/gose_defconfig
+++ b/configs/gose_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/inetspace_v2_defconfig b/configs/inetspace_v2_defconfig
index 8daf4332ca..2e116a4b7e 100644
--- a/configs/inetspace_v2_defconfig
+++ b/configs/inetspace_v2_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/kmcoge4_defconfig b/configs/kmcoge4_defconfig
index 8d46b6ad3e..8854db4e9b 100644
--- a/configs/kmcoge4_defconfig
+++ b/configs/kmcoge4_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_JFFS2=y
 # CONFIG_CMD_IRQ is not set
 CONFIG_CMD_UBI=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/kmcoge5un_defconfig b/configs/kmcoge5un_defconfig
index af0df7ef22..3470717605 100644
--- a/configs/kmcoge5un_defconfig
+++ b/configs/kmcoge5un_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/kmlion1_defconfig b/configs/kmlion1_defconfig
index 23859e9bed..f3b9ac322e 100644
--- a/configs/kmlion1_defconfig
+++ b/configs/kmlion1_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_JFFS2=y
 # CONFIG_CMD_IRQ is not set
 CONFIG_CMD_UBI=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/kmnusa_defconfig b/configs/kmnusa_defconfig
index eb70cd600a..ce79da1738 100644
--- a/configs/kmnusa_defconfig
+++ b/configs/kmnusa_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/kmsugp1_defconfig b/configs/kmsugp1_defconfig
index ed90f9d5b6..3d97fd5cf3 100644
--- a/configs/kmsugp1_defconfig
+++ b/configs/kmsugp1_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/kmsuv31_defconfig b/configs/kmsuv31_defconfig
index c5edce8e4f..e2bfe7b362 100644
--- a/configs/kmsuv31_defconfig
+++ b/configs/kmsuv31_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/koelsch_defconfig b/configs/koelsch_defconfig
index 465a6be8e7..0383380cfb 100644
--- a/configs/koelsch_defconfig
+++ b/configs/koelsch_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/lager_defconfig b/configs/lager_defconfig
index c2f216bd51..9602020193 100644
--- a/configs/lager_defconfig
+++ b/configs/lager_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/ls1012afrdm_qspi_defconfig b/configs/ls1012afrdm_qspi_defconfig
index 7932ab5ada..636823b450 100644
--- a/configs/ls1012afrdm_qspi_defconfig
+++ b/configs/ls1012afrdm_qspi_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 # CONFIG_MMC is not set
diff --git a/configs/ls1012aqds_qspi_defconfig b/configs/ls1012aqds_qspi_defconfig
index 17627ec4e5..f796c3373d 100644
--- a/configs/ls1012aqds_qspi_defconfig
+++ b/configs/ls1012aqds_qspi_defconfig
@@ -28,10 +28,10 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
-CONFIG_SCSI=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -41,6 +41,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
diff --git a/configs/ls1012ardb_qspi_defconfig b/configs/ls1012ardb_qspi_defconfig
index 328fa52bfe..ad6b87c8a3 100644
--- a/configs/ls1012ardb_qspi_defconfig
+++ b/configs/ls1012ardb_qspi_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
diff --git a/configs/ls1021aiot_qspi_defconfig b/configs/ls1021aiot_qspi_defconfig
index 3628367df0..744653af3f 100644
--- a/configs/ls1021aiot_qspi_defconfig
+++ b/configs/ls1021aiot_qspi_defconfig
@@ -6,6 +6,7 @@ CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_CMD_GPT=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1021aqds_qspi_defconfig b/configs/ls1021aqds_qspi_defconfig
index 7993a69ee3..65d0450715 100644
--- a/configs/ls1021aqds_qspi_defconfig
+++ b/configs/ls1021aqds_qspi_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
diff --git a/configs/ls1021atwr_qspi_defconfig b/configs/ls1021atwr_qspi_defconfig
index 07a414397a..cd0a46d9f6 100644
--- a/configs/ls1021atwr_qspi_defconfig
+++ b/configs/ls1021atwr_qspi_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1043aqds_qspi_defconfig b/configs/ls1043aqds_qspi_defconfig
index 348be3b1b9..80fae3c44e 100644
--- a/configs/ls1043aqds_qspi_defconfig
+++ b/configs/ls1043aqds_qspi_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1046aqds_qspi_defconfig b/configs/ls1046aqds_qspi_defconfig
index d145c5a3a2..da34852a27 100644
--- a/configs/ls1046aqds_qspi_defconfig
+++ b/configs/ls1046aqds_qspi_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls1046ardb_qspi_defconfig b/configs/ls1046ardb_qspi_defconfig
index 0a8f1a0501..d80cf53be0 100644
--- a/configs/ls1046ardb_qspi_defconfig
+++ b/configs/ls1046ardb_qspi_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/ls2080aqds_qspi_defconfig b/configs/ls2080aqds_qspi_defconfig
index f08e7bfa87..3383aa509d 100644
--- a/configs/ls2080aqds_qspi_defconfig
+++ b/configs/ls2080aqds_qspi_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DATE=y
 # CONFIG_ISO_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
diff --git a/configs/ls2081ardb_defconfig b/configs/ls2081ardb_defconfig
index bc2792e533..cd19a20389 100644
--- a/configs/ls2081ardb_defconfig
+++ b/configs/ls2081ardb_defconfig
@@ -19,9 +19,9 @@ CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_CACHE=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-CONFIG_SCSI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_NETDEVICES=y
@@ -30,6 +30,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_DM_SPI=y
 CONFIG_FSL_DSPI=y
diff --git a/configs/ls2088ardb_qspi_defconfig b/configs/ls2088ardb_qspi_defconfig
index 76b2f32677..0ca4113d58 100644
--- a/configs/ls2088ardb_qspi_defconfig
+++ b/configs/ls2088ardb_qspi_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_CACHE=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_FSL_CAAM=y
diff --git a/configs/lschlv2_defconfig b/configs/lschlv2_defconfig
index 1d55003d67..bf91343e2a 100644
--- a/configs/lschlv2_defconfig
+++ b/configs/lschlv2_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/lsxhl_defconfig b/configs/lsxhl_defconfig
index 75fe55d819..67ed1c9702 100644
--- a/configs/lsxhl_defconfig
+++ b/configs/lsxhl_defconfig
@@ -16,6 +16,7 @@ CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/marsboard_defconfig b/configs/marsboard_defconfig
index b6fbbb965b..04b09cbd2a 100644
--- a/configs/marsboard_defconfig
+++ b/configs/marsboard_defconfig
@@ -3,7 +3,7 @@ CONFIG_ARCH_MX6=y
 CONFIG_TARGET_EMBESTMX6BOARDS=y
 CONFIG_VIDEO=y
 CONFIG_DISTRO_DEFAULTS=y
-CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024,ENV_IS_IN_SPI_FLASH"
+CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/boundary/nitrogen6x/nitrogen6q.cfg,MX6Q,DDR_MB=1024"
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
@@ -17,6 +17,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/configs/minnowmax_defconfig b/configs/minnowmax_defconfig
index a64a0a3455..81e8253719 100644
--- a/configs/minnowmax_defconfig
+++ b/configs/minnowmax_defconfig
@@ -47,7 +47,6 @@ CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
 CONFIG_CPU=y
 CONFIG_MMC=y
 CONFIG_MMC_PCI=y
@@ -62,6 +61,7 @@ CONFIG_DM_ETH=y
 CONFIG_RTL8169=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
 CONFIG_DEBUG_UART_BASE=0x3f8
 CONFIG_DEBUG_UART_CLOCK=1843200
 CONFIG_SYS_NS16550=y
diff --git a/configs/mvebu_db-88f3720_defconfig b/configs/mvebu_db-88f3720_defconfig
index f2b2e5db90..451cf39e63 100644
--- a/configs/mvebu_db-88f3720_defconfig
+++ b/configs/mvebu_db-88f3720_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_BLOCK_CACHE=y
 CONFIG_DM_GPIO=y
 # CONFIG_MVEBU_GPIO is not set
diff --git a/configs/mvebu_db-88f7040_defconfig b/configs/mvebu_db-88f7040_defconfig
index 28af6431ea..bbe9c8e683 100644
--- a/configs/mvebu_db-88f7040_defconfig
+++ b/configs/mvebu_db-88f7040_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_BLOCK_CACHE=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/mvebu_db-88f8040_defconfig b/configs/mvebu_db-88f8040_defconfig
index 7f36eda665..6bb62ce80e 100644
--- a/configs/mvebu_db-88f8040_defconfig
+++ b/configs/mvebu_db-88f8040_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_BLOCK_CACHE=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_MVTWSI=y
diff --git a/configs/mvebu_espressobin-88f3720_defconfig b/configs/mvebu_espressobin-88f3720_defconfig
index 9ab7f4603a..14f5d28192 100644
--- a/configs/mvebu_espressobin-88f3720_defconfig
+++ b/configs/mvebu_espressobin-88f3720_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_BLOCK_CACHE=y
 CONFIG_DM_I2C=y
 CONFIG_MISC=y
diff --git a/configs/mvebu_mcbin-88f8040_defconfig b/configs/mvebu_mcbin-88f8040_defconfig
index a4fec5dc1f..cfb665cee3 100644
--- a/configs/mvebu_mcbin-88f8040_defconfig
+++ b/configs/mvebu_mcbin-88f8040_defconfig
@@ -39,6 +39,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_MAC_PARTITION=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_BLOCK_CACHE=y
 CONFIG_DM_GPIO=y
 CONFIG_DM_I2C=y
diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig
index 1b5de66553..4164965cc2 100644
--- a/configs/mx28evk_spi_defconfig
+++ b/configs/mx28evk_spi_defconfig
@@ -5,7 +5,6 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_VIDEO=y
-CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
 CONFIG_BOOTDELAY=1
 # CONFIG_CONSOLE_MUX is not set
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
@@ -33,6 +32,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MMC_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/configs/mx6slevk_spinor_defconfig b/configs/mx6slevk_spinor_defconfig
index 7acdc98d65..7d9fe2cbdf 100644
--- a/configs/mx6slevk_spinor_defconfig
+++ b/configs/mx6slevk_spinor_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DM_GPIO=y
diff --git a/configs/net2big_v2_defconfig b/configs/net2big_v2_defconfig
index ab8eb958ca..5a624aed3a 100644
--- a/configs/net2big_v2_defconfig
+++ b/configs/net2big_v2_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/netspace_lite_v2_defconfig b/configs/netspace_lite_v2_defconfig
index 66db6447ac..63861dde4d 100644
--- a/configs/netspace_lite_v2_defconfig
+++ b/configs/netspace_lite_v2_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/netspace_max_v2_defconfig b/configs/netspace_max_v2_defconfig
index 04abc9405b..02e6e5be94 100644
--- a/configs/netspace_max_v2_defconfig
+++ b/configs/netspace_max_v2_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/netspace_mini_v2_defconfig b/configs/netspace_mini_v2_defconfig
index 5f79e6f0e2..cb4e464e93 100644
--- a/configs/netspace_mini_v2_defconfig
+++ b/configs/netspace_mini_v2_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/netspace_v2_defconfig b/configs/netspace_v2_defconfig
index a81ad0b1e8..01683f6083 100644
--- a/configs/netspace_v2_defconfig
+++ b/configs/netspace_v2_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_FAT=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/nitrogen6dl2g_defconfig b/configs/nitrogen6dl2g_defconfig
index 5744ede776..d851661850 100644
--- a/configs/nitrogen6dl2g_defconfig
+++ b/configs/nitrogen6dl2g_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/nitrogen6dl_defconfig b/configs/nitrogen6dl_defconfig
index dca89ec34e..0dd8affe0c 100644
--- a/configs/nitrogen6dl_defconfig
+++ b/configs/nitrogen6dl_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/nitrogen6q2g_defconfig b/configs/nitrogen6q2g_defconfig
index baa509d48e..54684cfd72 100644
--- a/configs/nitrogen6q2g_defconfig
+++ b/configs/nitrogen6q2g_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/nitrogen6q_defconfig b/configs/nitrogen6q_defconfig
index ebfa843061..d5ff2476f8 100644
--- a/configs/nitrogen6q_defconfig
+++ b/configs/nitrogen6q_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/nitrogen6s1g_defconfig b/configs/nitrogen6s1g_defconfig
index 0f7532062a..77e0940f7a 100644
--- a/configs/nitrogen6s1g_defconfig
+++ b/configs/nitrogen6s1g_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/nitrogen6s_defconfig b/configs/nitrogen6s_defconfig
index 45a5acb96c..79c7f39c99 100644
--- a/configs/nitrogen6s_defconfig
+++ b/configs/nitrogen6s_defconfig
@@ -30,6 +30,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/ot1200_defconfig b/configs/ot1200_defconfig
index d6271b8d55..a4fb76cff3 100644
--- a/configs/ot1200_defconfig
+++ b/configs/ot1200_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/ot1200_spl_defconfig b/configs/ot1200_spl_defconfig
index b64ded2cf7..fada4de87b 100644
--- a/configs/ot1200_spl_defconfig
+++ b/configs/ot1200_spl_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/pcm058_defconfig b/configs/pcm058_defconfig
index c55537c032..41ddc1cd53 100644
--- a/configs/pcm058_defconfig
+++ b/configs/pcm058_defconfig
@@ -42,6 +42,7 @@ CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_MTD=y
 CONFIG_SPI_FLASH=y
diff --git a/configs/peach-pi_defconfig b/configs/peach-pi_defconfig
index 0b53af833e..1a28fe9966 100644
--- a/configs/peach-pi_defconfig
+++ b/configs/peach-pi_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_TUNNEL=y
 CONFIG_I2C_MUX=y
diff --git a/configs/peach-pit_defconfig b/configs/peach-pit_defconfig
index 1e93856f71..4b765da46e 100644
--- a/configs/peach-pit_defconfig
+++ b/configs/peach-pit_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_TUNNEL=y
 CONFIG_I2C_MUX=y
diff --git a/configs/porter_defconfig b/configs/porter_defconfig
index a50d9ed99b..185ec9f7fb 100644
--- a/configs/porter_defconfig
+++ b/configs/porter_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/sama5d2_ptc_spiflash_defconfig b/configs/sama5d2_ptc_spiflash_defconfig
index 8771e0846c..951c792ebb 100644
--- a/configs/sama5d2_ptc_spiflash_defconfig
+++ b/configs/sama5d2_ptc_spiflash_defconfig
@@ -18,6 +18,7 @@ CONFIG_SPL=y
 CONFIG_CMD_SF=y
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_USB=y
diff --git a/configs/sama5d2_xplained_spiflash_defconfig b/configs/sama5d2_xplained_spiflash_defconfig
index 2680ab99af..7fc2b07f8d 100644
--- a/configs/sama5d2_xplained_spiflash_defconfig
+++ b/configs/sama5d2_xplained_spiflash_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dmas dma-names"
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d36ek_cmp_spiflash_defconfig b/configs/sama5d36ek_cmp_spiflash_defconfig
index 8db4f524f8..3f6df43942 100644
--- a/configs/sama5d36ek_cmp_spiflash_defconfig
+++ b/configs/sama5d36ek_cmp_spiflash_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/sama5d3xek_spiflash_defconfig b/configs/sama5d3xek_spiflash_defconfig
index 0166cb6e12..79e6a67faf 100644
--- a/configs/sama5d3xek_spiflash_defconfig
+++ b/configs/sama5d3xek_spiflash_defconfig
@@ -33,6 +33,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dmas dma-names"
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d4_xplained_spiflash_defconfig b/configs/sama5d4_xplained_spiflash_defconfig
index e7e3169bbc..b6dae2386b 100644
--- a/configs/sama5d4_xplained_spiflash_defconfig
+++ b/configs/sama5d4_xplained_spiflash_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dma-names dmas"
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d4ek_spiflash_defconfig b/configs/sama5d4ek_spiflash_defconfig
index 98813bcd7e..7da9c45d2c 100644
--- a/configs/sama5d4ek_spiflash_defconfig
+++ b/configs/sama5d4ek_spiflash_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dma-names dmas"
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sh7752evb_defconfig b/configs/sh7752evb_defconfig
index 4e19243f0d..1db697205c 100644
--- a/configs/sh7752evb_defconfig
+++ b/configs/sh7752evb_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_MAC_PARTITION=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/sh7753evb_defconfig b/configs/sh7753evb_defconfig
index 23b7d7df48..5f36a8cd7d 100644
--- a/configs/sh7753evb_defconfig
+++ b/configs/sh7753evb_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_MAC_PARTITION=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_MACRONIX=y
diff --git a/configs/sh7757lcr_defconfig b/configs/sh7757lcr_defconfig
index 44224e1e43..3ea2158fca 100644
--- a/configs/sh7757lcr_defconfig
+++ b/configs/sh7757lcr_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_MAC_PARTITION=y
 CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/silk_defconfig b/configs/silk_defconfig
index d161c3bb88..3726b235a6 100644
--- a/configs/silk_defconfig
+++ b/configs/silk_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/smdk5250_defconfig b/configs/smdk5250_defconfig
index c51df50678..b095f02c9b 100644
--- a/configs/smdk5250_defconfig
+++ b/configs/smdk5250_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_SOUND=y
 CONFIG_CMD_PMIC=y
 CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_MMC_DW=y
 CONFIG_MMC_SDHCI=y
diff --git a/configs/smdk5420_defconfig b/configs/smdk5420_defconfig
index bff944491e..5889de8cdb 100644
--- a/configs/smdk5420_defconfig
+++ b/configs/smdk5420_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_TIME=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_MMC_DW=y
 CONFIG_MMC_SDHCI=y
diff --git a/configs/snow_defconfig b/configs/snow_defconfig
index 5cccd910a5..d5c9c082ae 100644
--- a/configs/snow_defconfig
+++ b/configs/snow_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_LDO=y
 CONFIG_I2C_MUX=y
diff --git a/configs/socfpga_is1_defconfig b/configs/socfpga_is1_defconfig
index 058791e968..73b940506c 100644
--- a/configs/socfpga_is1_defconfig
+++ b/configs/socfpga_is1_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DM_GPIO=y
diff --git a/configs/socfpga_sr1500_defconfig b/configs/socfpga_sr1500_defconfig
index 4468d3b71d..44b195bd92 100644
--- a/configs/socfpga_sr1500_defconfig
+++ b/configs/socfpga_sr1500_defconfig
@@ -38,6 +38,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DM_GPIO=y
diff --git a/configs/socfpga_vining_fpga_defconfig b/configs/socfpga_vining_fpga_defconfig
index 18186e83db..d4ce9afe04 100644
--- a/configs/socfpga_vining_fpga_defconfig
+++ b/configs/socfpga_vining_fpga_defconfig
@@ -39,6 +39,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_UBI=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/som-db5800-som-6867_defconfig b/configs/som-db5800-som-6867_defconfig
index 56a7e4b017..47daca0969 100644
--- a/configs/som-db5800-som-6867_defconfig
+++ b/configs/som-db5800-som-6867_defconfig
@@ -43,7 +43,6 @@ CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_REGMAP=y
 CONFIG_SYSCON=y
-CONFIG_SCSI=y
 CONFIG_CPU=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_GIGADEVICE=y
@@ -54,6 +53,7 @@ CONFIG_DM_ETH=y
 CONFIG_E1000=y
 CONFIG_DM_PCI=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
 CONFIG_DEBUG_UART_BASE=0x3f8
 CONFIG_DEBUG_UART_CLOCK=1843200
 CONFIG_SYS_NS16550=y
diff --git a/configs/spring_defconfig b/configs/spring_defconfig
index 554ac7771b..41c793004d 100644
--- a/configs/spring_defconfig
+++ b/configs/spring_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_TPM=y
 CONFIG_CMD_TPM_TEST=y
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM_I2C_COMPAT=y
 CONFIG_I2C_CROS_EC_LDO=y
 CONFIG_I2C_MUX=y
diff --git a/configs/stout_defconfig b/configs/stout_defconfig
index 48989aaea6..8c27a1052c 100644
--- a/configs/stout_defconfig
+++ b/configs/stout_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/stv0991_defconfig b/configs/stv0991_defconfig
index c91b8b7335..fe8d8243bf 100644
--- a/configs/stv0991_defconfig
+++ b/configs/stv0991_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_SPI=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_PING=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/tqma6dl_mba6_spi_defconfig b/configs/tqma6dl_mba6_spi_defconfig
index dee295ee35..46d6b77561 100644
--- a/configs/tqma6dl_mba6_spi_defconfig
+++ b/configs/tqma6dl_mba6_spi_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/tqma6q_mba6_spi_defconfig b/configs/tqma6q_mba6_spi_defconfig
index 3ec25c8217..2c345de7a5 100644
--- a/configs/tqma6q_mba6_spi_defconfig
+++ b/configs/tqma6q_mba6_spi_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/tqma6s_mba6_spi_defconfig b/configs/tqma6s_mba6_spi_defconfig
index f824018849..365d36f2bd 100644
--- a/configs/tqma6s_mba6_spi_defconfig
+++ b/configs/tqma6s_mba6_spi_defconfig
@@ -29,6 +29,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_USB=y
diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
index cb42ac559a..efb0006e3e 100644
--- a/configs/trimslice_defconfig
+++ b/configs/trimslice_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPL_DM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_WINBOND=y
diff --git a/configs/vinco_defconfig b/configs/vinco_defconfig
index c8da54d9b6..71d7e6cb35 100644
--- a/configs/vinco_defconfig
+++ b/configs/vinco_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
 CONFIG_NETDEVICES=y
 CONFIG_ETH_DESIGNWARE=y
diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig
index 2d7fffc1f4..d4ede3ebf7 100644
--- a/configs/zynq_microzed_defconfig
+++ b/configs/zynq_microzed_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/zynq_zc702_defconfig b/configs/zynq_zc702_defconfig
index 8f20b09244..0be8e028d7 100644
--- a/configs/zynq_zc702_defconfig
+++ b/configs/zynq_zc702_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/zynq_zc706_defconfig b/configs/zynq_zc706_defconfig
index 825346abd6..98ef6d7887 100644
--- a/configs/zynq_zc706_defconfig
+++ b/configs/zynq_zc706_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/zynq_zc770_xm010_defconfig b/configs/zynq_zc770_xm010_defconfig
index a1ef49f250..c4c2714952 100644
--- a/configs/zynq_zc770_xm010_defconfig
+++ b/configs/zynq_zc770_xm010_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_MMC_SDHCI=y
diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig
index 2887ca4167..42f5ba1ec3 100644
--- a/configs/zynq_zed_defconfig
+++ b/configs/zynq_zed_defconfig
@@ -32,6 +32,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/configs/zynq_zybo_defconfig b/configs/zynq_zybo_defconfig
index f3f89cb5e4..3689c53643 100644
--- a/configs/zynq_zybo_defconfig
+++ b/configs/zynq_zybo_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_DFU_MMC=y
diff --git a/env/Kconfig b/env/Kconfig
index ea973458ca..1f744cc576 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -250,6 +250,44 @@ config ENV_IS_IN_NVRAM
 	  can just be read and written to, without any special
 	  provision.
 
+config ENV_IS_IN_SPI_FLASH
+	bool "Environment is in SPI flash"
+	help
+	  Define this if you have a SPI Flash memory device which you
+	  want to use for the environment.
+
+	  - CONFIG_ENV_OFFSET:
+	  - CONFIG_ENV_SIZE:
+
+	  These two #defines specify the offset and size of the
+	  environment area within the SPI Flash. CONFIG_ENV_OFFSET must be
+	  aligned to an erase sector boundary.
+
+	  - CONFIG_ENV_SECT_SIZE:
+
+	  Define the SPI flash's sector size.
+
+	  - CONFIG_ENV_OFFSET_REDUND (optional):
+
+	  This setting describes a second storage area of CONFIG_ENV_SIZE
+	  size used to hold a redundant copy of the environment data, so
+	  that there is a valid backup copy in case there is a power failure
+	  during a "saveenv" operation. CONFIG_ENV_OFFSET_REDUND must be
+	  aligned to an erase sector boundary.
+
+	  - CONFIG_ENV_SPI_BUS (optional):
+	  - CONFIG_ENV_SPI_CS (optional):
+
+	  Define the SPI bus and chip select. If not defined they will be 0.
+
+	  - CONFIG_ENV_SPI_MAX_HZ (optional):
+
+	  Define the SPI max work clock. If not defined then use 1MHz.
+
+	  - CONFIG_ENV_SPI_MODE (optional):
+
+	  Define the SPI work mode. If not defined then use SPI_MODE_3.
+
 config ENV_IS_IN_UBI
 	bool "Environment in a UBI volume"
 	help
diff --git a/include/config_fsl_chain_trust.h b/include/config_fsl_chain_trust.h
index 195419b888..1aabe6e747 100644
--- a/include/config_fsl_chain_trust.h
+++ b/include/config_fsl_chain_trust.h
@@ -11,11 +11,6 @@
  * not verified, undef CONFIG_ENV_xxx and set default env
  * (CONFIG_ENV_IS_NOWHERE)
  */
-#ifdef CONFIG_SECURE_BOOT
-
-#undef CONFIG_ENV_IS_IN_SPI_FLASH
-
-#endif
 
 #ifdef CONFIG_CHAIN_OF_TRUST
 
diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h
index d580e9b36e..6ae9851545 100644
--- a/include/configs/B4860QDS.h
+++ b/include/configs/B4860QDS.h
@@ -115,7 +115,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS              0
 #define CONFIG_ENV_SPI_CS               0
 #define CONFIG_ENV_SPI_MAX_HZ           10000000
diff --git a/include/configs/BSC9131RDB.h b/include/configs/BSC9131RDB.h
index 5dd112c0c6..512e7cec1e 100644
--- a/include/configs/BSC9131RDB.h
+++ b/include/configs/BSC9131RDB.h
@@ -267,7 +267,6 @@ extern unsigned long get_sdram_size(void);
  * Environment
  */
 #if defined(CONFIG_RAMBOOT_SPIFLASH)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h
index 54d613707b..890d2e1206 100644
--- a/include/configs/BSC9132QDS.h
+++ b/include/configs/BSC9132QDS.h
@@ -489,7 +489,6 @@ combinations. this should be removed later
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_RAMBOOT_SPIFLASH)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/C29XPCIE.h b/include/configs/C29XPCIE.h
index 937e93ef0a..629a326d7b 100644
--- a/include/configs/C29XPCIE.h
+++ b/include/configs/C29XPCIE.h
@@ -404,7 +404,6 @@
  */
 #if defined(CONFIG_SYS_RAMBOOT)
 #if defined(CONFIG_RAMBOOT_SPIFLASH)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/M52277EVB.h b/include/configs/M52277EVB.h
index 75acc59910..6f9ebee635 100644
--- a/include/configs/M52277EVB.h
+++ b/include/configs/M52277EVB.h
@@ -199,7 +199,6 @@
  * crc error warning if there is no correct environment on the flash.
  */
 #ifdef CONFIG_CF_SBF
-#	define CONFIG_ENV_IS_IN_SPI_FLASH
 #	define CONFIG_ENV_SPI_CS	2
 #endif
 #define CONFIG_ENV_OVERWRITE		1
diff --git a/include/configs/M54418TWR.h b/include/configs/M54418TWR.h
index 985df810cb..66e05d0954 100644
--- a/include/configs/M54418TWR.h
+++ b/include/configs/M54418TWR.h
@@ -279,7 +279,6 @@
 #endif
 
 #if defined(CONFIG_CF_SBF)
-#define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #define CONFIG_ENV_SPI_CS		1
 #define CONFIG_ENV_OFFSET		0x40000
 #define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/M54451EVB.h b/include/configs/M54451EVB.h
index fbd5287147..b32ac11e8d 100644
--- a/include/configs/M54451EVB.h
+++ b/include/configs/M54451EVB.h
@@ -216,7 +216,6 @@
  * crc error warning if there is no correct environment on the flash.
  */
 #if defined(CONFIG_SYS_STMICRO_BOOT)
-#	define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #	define CONFIG_ENV_SPI_CS		1
 #	define CONFIG_ENV_OFFSET		0x20000
 #	define CONFIG_ENV_SIZE		0x2000
diff --git a/include/configs/M54455EVB.h b/include/configs/M54455EVB.h
index cc08df7d3d..1a0cc340fd 100644
--- a/include/configs/M54455EVB.h
+++ b/include/configs/M54455EVB.h
@@ -271,7 +271,6 @@
  * crc error warning if there is no correct environment on the flash.
  */
 #ifdef CONFIG_CF_SBF
-#	define CONFIG_ENV_IS_IN_SPI_FLASH
 #	define CONFIG_ENV_SPI_CS		1
 #endif
 #undef CONFIG_ENV_OVERWRITE
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index d96c15ec01..0245fc68eb 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -557,7 +557,6 @@
 
 #if defined(CONFIG_SYS_RAMBOOT)
 #if defined(CONFIG_RAMBOOT_SPIFLASH)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index c4c8f3e617..846f94a00a 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -682,7 +682,6 @@ extern unsigned long get_sdram_size(void);
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_SPIFLASH)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h
index b7507a2b29..32712e78ed 100644
--- a/include/configs/P1022DS.h
+++ b/include/configs/P1022DS.h
@@ -552,7 +552,6 @@
  * Environment
  */
 #ifdef CONFIG_SPIFLASH
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index 36d08d8e7f..a31989835b 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -63,7 +63,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 	#define CONFIG_SYS_EXTRA_ENV_RELOC
-	#define CONFIG_ENV_IS_IN_SPI_FLASH
 	#define CONFIG_ENV_SPI_BUS              0
 	#define CONFIG_ENV_SPI_CS               0
 	#define CONFIG_ENV_SPI_MAX_HZ           10000000
diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h
index 48c7b2dcc2..79537755cc 100644
--- a/include/configs/T102xQDS.h
+++ b/include/configs/T102xQDS.h
@@ -145,7 +145,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS		0
 #define CONFIG_ENV_SPI_CS		0
 #define CONFIG_ENV_SPI_MAX_HZ		10000000
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index dcfedc0410..a7f1bbcba7 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -160,7 +160,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS		0
 #define CONFIG_ENV_SPI_CS		0
 #define CONFIG_ENV_SPI_MAX_HZ		10000000
diff --git a/include/configs/T1040QDS.h b/include/configs/T1040QDS.h
index 56591f38d9..a0651a425e 100644
--- a/include/configs/T1040QDS.h
+++ b/include/configs/T1040QDS.h
@@ -72,7 +72,6 @@
 #ifdef CONFIG_MTD_NOR_FLASH
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS              0
 #define CONFIG_ENV_SPI_CS               0
 #define CONFIG_ENV_SPI_MAX_HZ           10000000
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index 9cdd67f5b7..ca178a7f24 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -180,7 +180,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_sd_rcw.cfg
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE                 0x2000          /* 8KB */
 #define CONFIG_ENV_OFFSET               0x100000        /* 1MB */
 #define CONFIG_ENV_SECT_SIZE            0x10000
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index 0dcef00186..a7b894e316 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -141,7 +141,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 90401a3256..274ff49aba 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -127,7 +127,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h
index d9983653f0..0c1ec41e66 100644
--- a/include/configs/T4240QDS.h
+++ b/include/configs/T4240QDS.h
@@ -86,7 +86,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS              0
 #define CONFIG_ENV_SPI_CS               0
 #define CONFIG_ENV_SPI_MAX_HZ           10000000
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index ee1110a317..df3888310c 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -327,7 +327,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS              0
 #define CONFIG_ENV_SPI_CS               0
 #define CONFIG_ENV_SPI_MAX_HZ           10000000
diff --git a/include/configs/UCP1020.h b/include/configs/UCP1020.h
index 31d7cdbd10..6fd3fa4712 100644
--- a/include/configs/UCP1020.h
+++ b/include/configs/UCP1020.h
@@ -375,7 +375,6 @@
 
 #ifdef CONFIG_RAMBOOT_SPIFLASH
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE		0x3000		/* 12KB */
 #define CONFIG_ENV_OFFSET	0x2000		/* 8KB */
 #define CONFIG_ENV_SECT_SIZE	0x1000
diff --git a/include/configs/advantech_dms-ba16.h b/include/configs/advantech_dms-ba16.h
index 66ee167f96..272570e9b7 100644
--- a/include/configs/advantech_dms-ba16.h
+++ b/include/configs/advantech_dms-ba16.h
@@ -239,7 +239,6 @@
 
 /* FLASH and environment organization */
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE                 (8 * 1024)
 #define CONFIG_ENV_OFFSET               (768 * 1024)
 #define CONFIG_ENV_SECT_SIZE            (64 * 1024)
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index f09822413f..1243a5e804 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -324,7 +324,6 @@
 #define CONFIG_SPL_SPI_LOAD
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	0x20000
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 #define CONFIG_ENV_SECT_SIZE		(4 << 10) /* 4 KB sectors */
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index b72aeda851..571f7b53d8 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -128,7 +128,6 @@
 #define CONFIG_SYS_TEXT_BASE		CONFIG_ISW_ENTRY_ADDR
 #endif
 #undef CONFIG_ENV_IS_IN_FAT
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_MAX_HZ           CONFIG_SF_DEFAULT_SPEED
 #define CONFIG_ENV_SECT_SIZE           (64 << 10) /* 64 KB sectors */
diff --git a/include/configs/ap121.h b/include/configs/ap121.h
index 2284b8bc66..e6778fe0c6 100644
--- a/include/configs/ap121.h
+++ b/include/configs/ap121.h
@@ -41,7 +41,6 @@
 					"64k(NVRAM),64k(ART)"
 
 #define CONFIG_ENV_SPI_MAX_HZ           25000000
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET               0x40000
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #define CONFIG_ENV_SIZE                 0x10000
diff --git a/include/configs/ap143.h b/include/configs/ap143.h
index 2950783097..bd6b83729c 100644
--- a/include/configs/ap143.h
+++ b/include/configs/ap143.h
@@ -45,7 +45,6 @@
 					"64k(ART)"
 
 #define CONFIG_ENV_SPI_MAX_HZ           25000000
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET               0x40000
 #define CONFIG_ENV_SECT_SIZE            0x10000
 #define CONFIG_ENV_SIZE                 0x10000
diff --git a/include/configs/aristainetos-common.h b/include/configs/aristainetos-common.h
index 7360e11ff1..461de801f8 100644
--- a/include/configs/aristainetos-common.h
+++ b/include/configs/aristainetos-common.h
@@ -160,7 +160,6 @@
 
 /* Environment organization */
 #define CONFIG_ENV_SIZE			(12 * 1024)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_BUS		CONFIG_SF_DEFAULT_BUS
 #define CONFIG_ENV_SPI_CS		CONFIG_SF_DEFAULT_CS
diff --git a/include/configs/at91-sama5_common.h b/include/configs/at91-sama5_common.h
index e511d18234..33f2d85319 100644
--- a/include/configs/at91-sama5_common.h
+++ b/include/configs/at91-sama5_common.h
@@ -87,7 +87,6 @@
 					"bootz 0x22000000 - 0x21000000"
 #elif CONFIG_SYS_USE_SERIALFLASH
 /* u-boot env in serial flash, by default is bus 0 and cs 0 */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		0x6000
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_SECT_SIZE		0x1000
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index 7bccee905e..03846b55f5 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -126,7 +126,6 @@
 #ifdef CONFIG_SYS_USE_SPIFLASH
 
 /* bootstrap + u-boot + env + linux in dataflash on CS0 */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		0x5000
 #define CONFIG_ENV_SIZE			0x3000
 #define CONFIG_ENV_SECT_SIZE		0x1000
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index a01072f059..7357e18115 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -125,7 +125,6 @@
 				"bootm 0x22000000"
 #elif defined(CONFIG_SYS_USE_SPIFLASH)
 /* bootstrap + u-boot + env + linux in spi flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET	0x5000
 #define CONFIG_ENV_SIZE		0x3000
 #define CONFIG_ENV_SECT_SIZE	0x1000
@@ -135,7 +134,6 @@
 				"bootm 0x22000000"
 #elif defined(CONFIG_SYS_USE_DATAFLASH)
 /* bootstrap + u-boot + env + linux in data flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET	0x4200
 #define CONFIG_ENV_SIZE		0x4200
 #define CONFIG_ENV_SECT_SIZE	0x210
diff --git a/include/configs/bav335x.h b/include/configs/bav335x.h
index 04a6e06e0f..878731389e 100644
--- a/include/configs/bav335x.h
+++ b/include/configs/bav335x.h
@@ -500,7 +500,6 @@ DEFAULT_LINUX_BOOT_ENV \
 #define CONFIG_SPL_SPI_LOAD
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	0x20000
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 #define CONFIG_ENV_SECT_SIZE		(4 << 10) /* 4 KB sectors */
diff --git a/include/configs/blanche.h b/include/configs/blanche.h
index 50692cba65..9a18046d9c 100755
--- a/include/configs/blanche.h
+++ b/include/configs/blanche.h
@@ -81,7 +81,6 @@
 /* ENV setting */
 #if !defined(CONFIG_MTD_NOR_FLASH)
 #else
-#undef  CONFIG_ENV_IS_IN_SPI_FLASH
 #undef  CONFIG_ENV_ADDR
 #define CONFIG_ENV_SECT_SIZE	(256 * 1024)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_MONITOR_LEN)
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index dba0ee6820..8ea3722098 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -242,7 +242,6 @@ MMCARGS
 
 #define CONFIG_SPL_SPI_LOAD
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	0x20000
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 #define CONFIG_ENV_SECT_SIZE		(4 << 10) /* 4 KB sectors */
diff --git a/include/configs/cgtqmx6eval.h b/include/configs/cgtqmx6eval.h
index 5d797b4403..b36cbb9679 100644
--- a/include/configs/cgtqmx6eval.h
+++ b/include/configs/cgtqmx6eval.h
@@ -245,7 +245,6 @@
 
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #if defined(CONFIG_ENV_IS_IN_SPI_FLASH)
 #define CONFIG_ENV_OFFSET		(768 * 1024)
 #define CONFIG_ENV_SECT_SIZE		(64 * 1024)
diff --git a/include/configs/cl-som-am57x.h b/include/configs/cl-som-am57x.h
index a04f4cd23d..c1cf4132fe 100644
--- a/include/configs/cl-som-am57x.h
+++ b/include/configs/cl-som-am57x.h
@@ -50,7 +50,6 @@
 #define CONFIG_ENV_SIZE			(16 << 10) /* 16 KiB env size */
 #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SECT_SIZE		(64 * 1024)
 #define CONFIG_ENV_OFFSET		(768 * 1024)
 #define CONFIG_ENV_SPI_MAX_HZ		48000000
diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h
index 1d9c1650d5..b217083ac1 100644
--- a/include/configs/cm_fx6.h
+++ b/include/configs/cm_fx6.h
@@ -67,7 +67,6 @@
 				"-(reserved)"
 
 /* Environment */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 #define CONFIG_ENV_SPI_MODE		CONFIG_SF_DEFAULT_MODE
 #define CONFIG_ENV_SPI_BUS		CONFIG_SF_DEFAULT_BUS
diff --git a/include/configs/cm_t43.h b/include/configs/cm_t43.h
index 7b5ca0db0f..f6e0743b53 100644
--- a/include/configs/cm_t43.h
+++ b/include/configs/cm_t43.h
@@ -97,7 +97,6 @@
 #define V_OSCK				24000000  /* Clock output from T2 */
 #define V_SCLK				(V_OSCK)
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SECT_SIZE		(64 * 1024)
 #define CONFIG_ENV_OFFSET		(768 * 1024)
 #define CONFIG_ENV_SPI_MAX_HZ           48000000
diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h
index f9245e06ba..1ac416260e 100644
--- a/include/configs/controlcenterd.h
+++ b/include/configs/controlcenterd.h
@@ -300,7 +300,6 @@
 #if defined(CONFIG_TRAILBLAZER)
 #define CONFIG_ENV_SIZE		0x2000		/* 8KB */
 #elif defined(CONFIG_RAMBOOT_SPIFLASH)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/controlcenterdc.h b/include/configs/controlcenterdc.h
index f10cddafe0..021150ed61 100644
--- a/include/configs/controlcenterdc.h
+++ b/include/configs/controlcenterdc.h
@@ -65,7 +65,6 @@
 #define CONFIG_EHCI_IS_TDI
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS		1
 #define CONFIG_ENV_OFFSET		(1 << 20) /* 1MiB in */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index 70fdb58163..07183c9095 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -74,7 +74,6 @@
 
 #if defined(CONFIG_SPIFLASH)
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS              0
 #define CONFIG_ENV_SPI_CS               0
 #define CONFIG_ENV_SPI_MAX_HZ           10000000
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index 2277215445..100b114e25 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -231,7 +231,6 @@
 #endif
 
 #ifdef CONFIG_USE_SPIFLASH
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(64 << 10)
 #define CONFIG_ENV_OFFSET		(512 << 10)
 #define CONFIG_ENV_SECT_SIZE		(64 << 10)
diff --git a/include/configs/db-88f6720.h b/include/configs/db-88f6720.h
index 699c03f844..cdaaced2eb 100644
--- a/include/configs/db-88f6720.h
+++ b/include/configs/db-88f6720.h
@@ -40,7 +40,6 @@
 #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		(1 << 20) /* 1MiB in */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
 #define CONFIG_ENV_SECT_SIZE		(64 << 10) /* 64KiB sectors */
diff --git a/include/configs/db-88f6820-amc.h b/include/configs/db-88f6820-amc.h
index 0f0ab01f62..864222955f 100644
--- a/include/configs/db-88f6820-amc.h
+++ b/include/configs/db-88f6820-amc.h
@@ -40,7 +40,6 @@
 #define CONFIG_EHCI_IS_TDI
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS		1
 #define CONFIG_ENV_OFFSET		(1 << 20) /* 1MiB in */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h
index 292bfb8f7d..4a9d2f75bf 100644
--- a/include/configs/db-88f6820-gp.h
+++ b/include/configs/db-88f6820-gp.h
@@ -62,7 +62,6 @@
 #define CONFIG_EHCI_IS_TDI
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		(1 << 20) /* 1MiB in */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
 #define CONFIG_ENV_SECT_SIZE		(256 << 10) /* 256KiB sectors */
diff --git a/include/configs/db-mv784mp-gp.h b/include/configs/db-mv784mp-gp.h
index 187ead3e4b..6ad5206fc0 100644
--- a/include/configs/db-mv784mp-gp.h
+++ b/include/configs/db-mv784mp-gp.h
@@ -44,7 +44,6 @@
 #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		(1 << 20) /* 1MiB in */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
 #define CONFIG_ENV_SECT_SIZE		(64 << 10) /* 64KiB sectors */
diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h
index 1c2cc6f4b0..8566bdc569 100644
--- a/include/configs/dra7xx_evm.h
+++ b/include/configs/dra7xx_evm.h
@@ -137,7 +137,6 @@
 #define CONFIG_SYS_SPI_ARGS_OFFS	0x140000
 #define CONFIG_SYS_SPI_ARGS_SIZE	0x80000
 #if defined(CONFIG_QSPI_BOOT)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_MAX_HZ           CONFIG_SF_DEFAULT_SPEED
 #define CONFIG_ENV_SIZE			(64 << 10)
diff --git a/include/configs/dreamplug.h b/include/configs/dreamplug.h
index 9715f297a9..7a739e39d7 100644
--- a/include/configs/dreamplug.h
+++ b/include/configs/dreamplug.h
@@ -32,7 +32,6 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_SPI_FLASH
-#define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #define CONFIG_ENV_SECT_SIZE		0x10000	/* 64k */
 #endif
 
diff --git a/include/configs/ds109.h b/include/configs/ds109.h
index ad7fce84e8..a2c6837348 100644
--- a/include/configs/ds109.h
+++ b/include/configs/ds109.h
@@ -35,7 +35,6 @@
  *  Environment variables configurations
  */
 #ifdef CONFIG_SPI_FLASH
-#define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #define CONFIG_ENV_SECT_SIZE		0x10000	/* 64k */
 #endif
 
diff --git a/include/configs/ds414.h b/include/configs/ds414.h
index aaba5d8eab..a209e6f09c 100644
--- a/include/configs/ds414.h
+++ b/include/configs/ds414.h
@@ -36,7 +36,6 @@
 #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		0x7E0000   /* RedBoot config partition in DTS */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
 #define CONFIG_ENV_SECT_SIZE		(64 << 10) /* 64KiB sectors */
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index 699888b9ea..e98f14f63d 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -87,7 +87,6 @@
 #endif
 
 #ifdef CONFIG_USE_SPIFLASH
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(8 << 10)
 #define CONFIG_ENV_OFFSET		0x80000
 #define CONFIG_ENV_SECT_SIZE		(64 << 10)
diff --git a/include/configs/efi-x86.h b/include/configs/efi-x86.h
index 7763365fe1..f5331915e2 100644
--- a/include/configs/efi-x86.h
+++ b/include/configs/efi-x86.h
@@ -13,7 +13,6 @@
 
 #undef CONFIG_TPM_TIS_BASE_ADDRESS
 
-#undef CONFIG_ENV_IS_IN_SPI_FLASH
 #undef CONFIG_SCSI_AHCI
 #undef CONFIG_INTEL_ICH6_GPIO
 #undef CONFIG_USB_EHCI_PCI
diff --git a/include/configs/ethernut5.h b/include/configs/ethernut5.h
index e7f7a7cbe6..8a5eb89f8f 100644
--- a/include/configs/ethernut5.h
+++ b/include/configs/ethernut5.h
@@ -61,7 +61,6 @@
 #define DATAFLASH_TCSS			(0x1a << 16)
 #define DATAFLASH_TCHS			(0x1 << 24)
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		0x3DE000
 #define CONFIG_ENV_SECT_SIZE		(132 << 10)
 #define CONFIG_ENV_SIZE			CONFIG_ENV_SECT_SIZE
diff --git a/include/configs/exynos5-dt-common.h b/include/configs/exynos5-dt-common.h
index 1b94d07f67..11aa6b8a9a 100644
--- a/include/configs/exynos5-dt-common.h
+++ b/include/configs/exynos5-dt-common.h
@@ -18,7 +18,6 @@
 
 #define CONFIG_EXYNOS5_DT
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BASE	0x12D30000
 #define FLASH_SIZE		(4 << 20)
 #define CONFIG_ENV_OFFSET	(FLASH_SIZE - CONFIG_ENV_SECT_SIZE)
diff --git a/include/configs/ge_bx50v3.h b/include/configs/ge_bx50v3.h
index f60a0298d6..43458a7b64 100644
--- a/include/configs/ge_bx50v3.h
+++ b/include/configs/ge_bx50v3.h
@@ -269,7 +269,6 @@
 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 
 /* environment organization */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE		(8 * 1024)
 #define CONFIG_ENV_OFFSET		(768 * 1024)
 #define CONFIG_ENV_SECT_SIZE		(64 * 1024)
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index 7036ed0ef8..b9e85f249d 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -218,9 +218,6 @@
 #endif
 
 /* Persistent Environment Config */
-#ifdef CONFIG_SPI_FLASH
-  #define CONFIG_ENV_IS_IN_SPI_FLASH
-#endif
 #if defined(CONFIG_ENV_IS_IN_MMC)
   #define CONFIG_SYS_MMC_ENV_DEV         0
   #define CONFIG_SYS_MMC_ENV_PART        1
diff --git a/include/configs/km/km_arm.h b/include/configs/km/km_arm.h
index 9a90e08d65..63319735de 100644
--- a/include/configs/km/km_arm.h
+++ b/include/configs/km/km_arm.h
@@ -214,7 +214,6 @@ int get_scl(void);
  *  Environment variables configurations
  */
 #if defined CONFIG_KM_ENV_IS_IN_SPI_NOR
-#define CONFIG_ENV_IS_IN_SPI_FLASH  /* use SPI-Flash for environment vars */
 #define CONFIG_ENV_OFFSET		0xc0000     /* no bracets! */
 #define CONFIG_ENV_SIZE			0x02000     /* Size of Environment */
 #define CONFIG_ENV_SECT_SIZE		0x10000
diff --git a/include/configs/km/kmp204x-common.h b/include/configs/km/kmp204x-common.h
index 664a64c55a..373e4bc3b4 100644
--- a/include/configs/km/kmp204x-common.h
+++ b/include/configs/km/kmp204x-common.h
@@ -44,7 +44,6 @@
 
 /* Environment in SPI Flash */
 #define CONFIG_SYS_EXTRA_ENV_RELOC
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS              0
 #define CONFIG_ENV_SPI_CS               0
 #define CONFIG_ENV_SPI_MAX_HZ           20000000
diff --git a/include/configs/lacie_kw.h b/include/configs/lacie_kw.h
index 66e65c878c..d3ec21142b 100644
--- a/include/configs/lacie_kw.h
+++ b/include/configs/lacie_kw.h
@@ -137,7 +137,6 @@
 /*
  * Environment variables configurations
  */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SECT_SIZE		0x10000	/* 64KB */
 #define CONFIG_ENV_SIZE			0x1000	/* 4KB */
 #define CONFIG_ENV_ADDR			0x70000
diff --git a/include/configs/ls1012a_common.h b/include/configs/ls1012a_common.h
index 42bbc028d3..74af0b9dc6 100644
--- a/include/configs/ls1012a_common.h
+++ b/include/configs/ls1012a_common.h
@@ -64,7 +64,6 @@
  */
 #define CONFIG_ENV_OVERWRITE
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x40000          /* 256KB */
 #define CONFIG_ENV_OFFSET		0x200000        /* 2MB */
 #define CONFIG_ENV_SECT_SIZE		0x40000
diff --git a/include/configs/ls1021aiot.h b/include/configs/ls1021aiot.h
index e5544f327d..1f2eb52c24 100644
--- a/include/configs/ls1021aiot.h
+++ b/include/configs/ls1021aiot.h
@@ -290,7 +290,6 @@
 #define CONFIG_SYS_MMC_ENV_DEV	0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		0x100000
 #define CONFIG_ENV_SECT_SIZE	0x10000
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index b823ff23bf..251a66e595 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -553,7 +553,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x2000          /* 8KB */
 #define CONFIG_ENV_OFFSET		0x300000        /* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x10000
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 8fe34ef658..b9e5cdbb1e 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -421,7 +421,6 @@
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x20000
 #elif defined(CONFIG_QSPI_BOOT)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		0x300000
 #define CONFIG_ENV_SECT_SIZE		0x10000
diff --git a/include/configs/ls1043aqds.h b/include/configs/ls1043aqds.h
index 740facfa58..415a705508 100644
--- a/include/configs/ls1043aqds.h
+++ b/include/configs/ls1043aqds.h
@@ -417,7 +417,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x2000          /* 8KB */
 #define CONFIG_ENV_OFFSET		0x300000        /* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x10000
diff --git a/include/configs/ls1046aqds.h b/include/configs/ls1046aqds.h
index 782669ad2c..ea99676b7a 100644
--- a/include/configs/ls1046aqds.h
+++ b/include/configs/ls1046aqds.h
@@ -451,7 +451,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #define CONFIG_ENV_SIZE			0x2000
 #elif defined(CONFIG_QSPI_BOOT)
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x2000          /* 8KB */
 #define CONFIG_ENV_OFFSET		0x300000        /* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x10000
diff --git a/include/configs/ls1046ardb.h b/include/configs/ls1046ardb.h
index 1c30462af2..20a5e7f659 100644
--- a/include/configs/ls1046ardb.h
+++ b/include/configs/ls1046ardb.h
@@ -171,7 +171,6 @@
 #define CONFIG_ENV_OFFSET		(3 * 1024 * 1024)
 #define CONFIG_ENV_SIZE			0x2000
 #else
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x2000		/* 8KB */
 #define CONFIG_ENV_OFFSET		0x300000	/* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x40000		/* 256KB */
diff --git a/include/configs/ls2080a_common.h b/include/configs/ls2080a_common.h
index dbca05a3f6..6ae5586d64 100644
--- a/include/configs/ls2080a_common.h
+++ b/include/configs/ls2080a_common.h
@@ -31,7 +31,6 @@
 #endif
 #else
 #define CONFIG_SYS_TEXT_BASE		0x20100000
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x2000          /* 8KB */
 #define CONFIG_ENV_OFFSET		0x300000        /* 3MB */
 #define CONFIG_ENV_SECT_SIZE		0x10000
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h
index b21a285d19..8b94412028 100644
--- a/include/configs/lsxl.h
+++ b/include/configs/lsxl.h
@@ -60,7 +60,6 @@
 #ifdef CONFIG_SPI_FLASH
 #define CONFIG_SYS_MAX_FLASH_BANKS	1
 #define CONFIG_SYS_MAX_FLASH_SECT	8
-#define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #define CONFIG_ENV_SECT_SIZE		0x10000 /* 64K */
 #endif
 
diff --git a/include/configs/maxbcm.h b/include/configs/maxbcm.h
index b82a684cc9..66641ff1c9 100644
--- a/include/configs/maxbcm.h
+++ b/include/configs/maxbcm.h
@@ -36,7 +36,6 @@
 #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		(1 << 20) /* 1MiB in */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
 #define CONFIG_ENV_SECT_SIZE		(64 << 10) /* 64KiB sectors */
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index 5736621d41..d2442068b2 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -119,7 +119,6 @@
 #  define CONFIG_ENV_ADDR	(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SIZE)
 
 # else	/* SPIFLASH && !RAMENV */
-#  define CONFIG_ENV_IS_IN_SPI_FLASH	1
 #  define CONFIG_ENV_SPI_MODE		SPI_MODE_3
 #  define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 #  define CONFIG_ENV_SPI_CS		CONFIG_SF_DEFAULT_CS
diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h
index eb80ac5b48..778cc9e378 100644
--- a/include/configs/mvebu_armada-37xx.h
+++ b/include/configs/mvebu_armada-37xx.h
@@ -79,7 +79,6 @@
 #define CONFIG_ENV_SPI_MODE		CONFIG_SF_DEFAULT_MODE
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		0x180000 /* as Marvell U-Boot version */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
 #define CONFIG_ENV_SECT_SIZE		(64 << 10) /* 64KiB sectors */
diff --git a/include/configs/mvebu_armada-8k.h b/include/configs/mvebu_armada-8k.h
index eca13442ab..53db10f9bc 100644
--- a/include/configs/mvebu_armada-8k.h
+++ b/include/configs/mvebu_armada-8k.h
@@ -77,7 +77,6 @@
 
 /* Environment in SPI NOR flash */
 #ifdef CONFIG_MVEBU_SPI_BOOT
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 /* Environment in NAND flash */
 #endif
 
diff --git a/include/configs/mx6slevk.h b/include/configs/mx6slevk.h
index 0f1a67dbb3..98797b07c1 100644
--- a/include/configs/mx6slevk.h
+++ b/include/configs/mx6slevk.h
@@ -137,7 +137,6 @@
 #define CONFIG_ENV_SIZE			SZ_8K
 
 #if defined CONFIG_SPI_BOOT
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET               (768 * 1024)
 #define CONFIG_ENV_SECT_SIZE            (64 * 1024)
 #define CONFIG_ENV_SPI_BUS              CONFIG_SF_DEFAULT_BUS
diff --git a/include/configs/nitrogen6x.h b/include/configs/nitrogen6x.h
index 6d5b0bd831..a1a0cdaf2e 100644
--- a/include/configs/nitrogen6x.h
+++ b/include/configs/nitrogen6x.h
@@ -270,11 +270,6 @@
 /* Environment organization */
 #define CONFIG_ENV_SIZE			(8 * 1024)
 
-#if defined(CONFIG_SABRELITE)
-#else
-#define CONFIG_ENV_IS_IN_SPI_FLASH
-#endif
-
 #if defined(CONFIG_ENV_IS_IN_MMC)
 #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/odroid_xu3.h b/include/configs/odroid_xu3.h
index 3b920ccf16..697f8d2582 100644
--- a/include/configs/odroid_xu3.h
+++ b/include/configs/odroid_xu3.h
@@ -11,8 +11,6 @@
 #include "exynos5420-common.h"
 #include <configs/exynos5-common.h>
 
-#undef CONFIG_ENV_IS_IN_SPI_FLASH
-
 #define CONFIG_BOARD_COMMON
 
 #define CONFIG_SYS_SDRAM_BASE		0x40000000
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index 83692c8982..6af8e80952 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -212,7 +212,6 @@
 #endif
 
 #ifdef CONFIG_USE_SPIFLASH
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			(64 << 10)
 #define CONFIG_ENV_OFFSET		(256 << 10)
 #define CONFIG_ENV_SECT_SIZE		(64 << 10)
@@ -310,7 +309,6 @@
 #undef CONFIG_ENV_OFFSET
 #define CONFIG_ENV_SIZE		(16 << 10)	/* 16 KiB */
 #define CONFIG_ENV_OFFSET	(51 << 9)	/* Sector 51 */
-#undef CONFIG_ENV_IS_IN_SPI_FLASH
 #endif
 
 #ifndef CONFIG_DIRECT_NOR_BOOT
diff --git a/include/configs/ot1200.h b/include/configs/ot1200.h
index 7aeae7b1fd..0edd237647 100644
--- a/include/configs/ot1200.h
+++ b/include/configs/ot1200.h
@@ -112,7 +112,6 @@
 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 
 /* Environment organization */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE                 (64 * 1024)	/* 64 kb */
 #define CONFIG_ENV_OFFSET               (1024 * 1024)
 /* M25P16 has an erase size of 64 KiB */
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 201310d1d1..066674cb2f 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -772,7 +772,6 @@
  * Environment
  */
 #ifdef CONFIG_SPIFLASH
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_BUS	0
 #define CONFIG_ENV_SPI_CS	0
 #define CONFIG_ENV_SPI_MAX_HZ	10000000
diff --git a/include/configs/pcm058.h b/include/configs/pcm058.h
index 39018ac62f..92087d1066 100644
--- a/include/configs/pcm058.h
+++ b/include/configs/pcm058.h
@@ -106,7 +106,6 @@
 #define CONFIG_SYS_FSL_USDHC_NUM	1
 
 /* Environment organization */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE                (16 * 1024)
 #define CONFIG_ENV_OFFSET		(1024 * SZ_1K)
 #define CONFIG_ENV_SECT_SIZE		(64 * SZ_1K)
diff --git a/include/configs/qemu-x86.h b/include/configs/qemu-x86.h
index 9690757109..64cbc807a6 100644
--- a/include/configs/qemu-x86.h
+++ b/include/configs/qemu-x86.h
@@ -48,7 +48,6 @@
 #undef CONFIG_INTEL_ICH6_GPIO
 
 /* SPI is not supported */
-#undef CONFIG_ENV_IS_IN_SPI_FLASH
 
 #define CONFIG_SPL_FRAMEWORK
 
diff --git a/include/configs/rcar-gen2-common.h b/include/configs/rcar-gen2-common.h
index 365950d729..16f45f2bea 100644
--- a/include/configs/rcar-gen2-common.h
+++ b/include/configs/rcar-gen2-common.h
@@ -52,7 +52,6 @@
 #define CONFIG_SYS_BOOTMAPSZ		(8 * 1024 * 1024)
 
 /* ENV setting */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_ADDR	0xC0000
 
 /* Common ENV setting */
diff --git a/include/configs/sh7752evb.h b/include/configs/sh7752evb.h
index 3342a2966c..46d0f2aede 100644
--- a/include/configs/sh7752evb.h
+++ b/include/configs/sh7752evb.h
@@ -84,7 +84,6 @@
 
 /* ENV setting */
 #define CONFIG_ENV_IS_EMBEDDED
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SECT_SIZE	(64 * 1024)
 #define CONFIG_ENV_ADDR		(0x00080000)
 #define CONFIG_ENV_OFFSET	(CONFIG_ENV_ADDR)
diff --git a/include/configs/sh7753evb.h b/include/configs/sh7753evb.h
index 78670422f7..aa8d05c221 100644
--- a/include/configs/sh7753evb.h
+++ b/include/configs/sh7753evb.h
@@ -84,7 +84,6 @@
 
 /* ENV setting */
 #define CONFIG_ENV_IS_EMBEDDED
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SECT_SIZE	(64 * 1024)
 #define CONFIG_ENV_ADDR		(0x00080000)
 #define CONFIG_ENV_OFFSET	(CONFIG_ENV_ADDR)
diff --git a/include/configs/sh7757lcr.h b/include/configs/sh7757lcr.h
index e9cd3d749a..1759a6f5d9 100644
--- a/include/configs/sh7757lcr.h
+++ b/include/configs/sh7757lcr.h
@@ -94,7 +94,6 @@
 
 /* ENV setting */
 #define CONFIG_ENV_IS_EMBEDDED
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SECT_SIZE	(64 * 1024)
 #define CONFIG_ENV_ADDR		(0x00080000)
 #define CONFIG_ENV_OFFSET	(CONFIG_ENV_ADDR)
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
index 73cfb44881..cd163d64f5 100644
--- a/include/configs/siemens-am33x-common.h
+++ b/include/configs/siemens-am33x-common.h
@@ -215,7 +215,6 @@
  * 0x442000 - 0x800000 : Userland
  */
 #if defined(CONFIG_SPI_BOOT)
-# define CONFIG_ENV_IS_IN_SPI_FLASH
 # define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
 # define CONFIG_ENV_OFFSET		(892 << 10) /* 892 KiB in */
 # define CONFIG_ENV_SECT_SIZE		(4 << 10) /* 4 KB sectors */
diff --git a/include/configs/socfpga_is1.h b/include/configs/socfpga_is1.h
index 68403aa744..febb8f7fcc 100644
--- a/include/configs/socfpga_is1.h
+++ b/include/configs/socfpga_is1.h
@@ -19,7 +19,6 @@
 #define CONFIG_BOOTARGS		"console=ttyS0," __stringify(CONFIG_BAUDRATE)
 #define CONFIG_LOADADDR		0x01000000
 #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 
 /* Ethernet on SoC (EMAC) */
 #if defined(CONFIG_CMD_NET)
diff --git a/include/configs/socfpga_sr1500.h b/include/configs/socfpga_sr1500.h
index 4366061f77..39bf612291 100644
--- a/include/configs/socfpga_sr1500.h
+++ b/include/configs/socfpga_sr1500.h
@@ -24,7 +24,6 @@
 #define PHY_ANEG_TIMEOUT	8000
 
 /* Environment */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 
 /* Enable SPI NOR flash reset, needed for SPI booting */
 #define CONFIG_SPI_N25Q256A_RESET
diff --git a/include/configs/socfpga_vining_fpga.h b/include/configs/socfpga_vining_fpga.h
index e2bdfb12f9..10240a1077 100644
--- a/include/configs/socfpga_vining_fpga.h
+++ b/include/configs/socfpga_vining_fpga.h
@@ -182,7 +182,6 @@
 		"256k(samtec2),"		\
 		"-(rcvrfs);"	/* Recovery */	\
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE
 #define CONFIG_ENV_SECT_SIZE		(64 * 1024)
diff --git a/include/configs/stv0991.h b/include/configs/stv0991.h
index 2f808c6c72..0ac262e095 100644
--- a/include/configs/stv0991.h
+++ b/include/configs/stv0991.h
@@ -19,7 +19,6 @@
 #define PHYS_SDRAM_1_SIZE			0x00198000
 
 #define CONFIG_ENV_SIZE				0x10000
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SECT_SIZE			CONFIG_ENV_SIZE
 #define CONFIG_ENV_OFFSET			0x30000
 #define CONFIG_ENV_ADDR				\
diff --git a/include/configs/theadorable.h b/include/configs/theadorable.h
index 94e207c8c4..3f9b69aeda 100644
--- a/include/configs/theadorable.h
+++ b/include/configs/theadorable.h
@@ -50,7 +50,6 @@
 #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_3
 
 /* Environment in SPI NOR flash */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		(1 << 20) /* 1MiB in */
 #define CONFIG_ENV_SIZE			(64 << 10) /* 64KiB */
 #define CONFIG_ENV_SECT_SIZE		(256 << 10) /* 256KiB sectors */
diff --git a/include/configs/tqma6.h b/include/configs/tqma6.h
index 29e22aa311..b5b71570d1 100644
--- a/include/configs/tqma6.h
+++ b/include/configs/tqma6.h
@@ -166,7 +166,6 @@
 #define TQMA6_UBOOT_SIZE		(TQMA6_UBOOT_SECTOR_SIZE * \
 					 TQMA6_UBOOT_SECTOR_COUNT)
 
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_OFFSET		(TQMA6_UBOOT_SIZE)
 #define CONFIG_ENV_SECT_SIZE		TQMA6_SPI_FLASH_SECTOR_SIZE
diff --git a/include/configs/trimslice.h b/include/configs/trimslice.h
index ab9c5c3ab8..fd36634ae9 100644
--- a/include/configs/trimslice.h
+++ b/include/configs/trimslice.h
@@ -28,7 +28,6 @@
 #define CONFIG_SYS_I2C_TEGRA
 
 /* Environment in SPI */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_MAX_HZ		48000000
 #define CONFIG_ENV_SPI_MODE		SPI_MODE_0
 #define CONFIG_ENV_SECT_SIZE		CONFIG_ENV_SIZE
diff --git a/include/configs/x86-chromebook.h b/include/configs/x86-chromebook.h
index 51366d4d4e..4d02cd45f5 100644
--- a/include/configs/x86-chromebook.h
+++ b/include/configs/x86-chromebook.h
@@ -42,7 +42,6 @@
 #undef CONFIG_ENV_SIZE
 #define CONFIG_ENV_SIZE			0x1000
 #define CONFIG_ENV_SECT_SIZE		0x1000
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_OFFSET		0x003f8000
 
 #define CONFIG_STD_DEVICES_SETTINGS	"stdin=usbkbd,i8042-kbd,serial\0" \
diff --git a/include/configs/x86-common.h b/include/configs/x86-common.h
index d104449e3b..01558a8d6c 100644
--- a/include/configs/x86-common.h
+++ b/include/configs/x86-common.h
@@ -118,7 +118,6 @@
 /*-----------------------------------------------------------------------
  * Environment configuration
  */
-#define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SIZE			0x01000
 
 /*-----------------------------------------------------------------------
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index 9b527feec8..83a2a028e9 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -163,7 +163,6 @@
 /* Environment in NOR flash */
 # elif defined(CONFIG_ZYNQ_QSPI)
 /* Environment in Serial Flash */
-#  define CONFIG_ENV_IS_IN_SPI_FLASH
 # endif
 
 # define CONFIG_ENV_SECT_SIZE		CONFIG_ENV_SIZE
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index b5ade9cf29..ecb554f197 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -645,7 +645,6 @@ CONFIG_ENV_IS_IN_FAT
 CONFIG_ENV_IS_IN_MRAM
 CONFIG_ENV_IS_IN_ONENAND
 CONFIG_ENV_IS_IN_REMOTE
-CONFIG_ENV_IS_IN_SPI_FLASH
 CONFIG_ENV_MAX_ENTRIES
 CONFIG_ENV_MIN_ENTRIES
 CONFIG_ENV_OFFSET_OOB
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 10/30] Convert CONFIG_ENV_IS_IN_REMOTE to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (8 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 09/30] Convert CONFIG_ENV_IS_IN_SPI_FLASH " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 11/30] Convert CONFIG_ENV_IS_IN_FAT " Simon Glass
                   ` (21 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_REMOTE

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 configs/B4860QDS_SRIO_PCIE_BOOT_defconfig |  1 +
 configs/P2041RDB_SRIO_PCIE_BOOT_defconfig |  1 +
 configs/P3041DS_SRIO_PCIE_BOOT_defconfig  |  1 +
 configs/P4080DS_SRIO_PCIE_BOOT_defconfig  |  1 +
 configs/P5020DS_SRIO_PCIE_BOOT_defconfig  |  1 +
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig |  1 +
 configs/T2080RDB_SRIO_PCIE_BOOT_defconfig |  1 +
 configs/T2081QDS_SRIO_PCIE_BOOT_defconfig |  1 +
 configs/T4240QDS_SRIO_PCIE_BOOT_defconfig |  1 +
 env/Kconfig                               | 14 ++++++++++++++
 include/configs/B4860QDS.h                |  1 -
 include/configs/P2041RDB.h                |  1 -
 include/configs/T102xQDS.h                |  1 -
 include/configs/T102xRDB.h                |  1 -
 include/configs/T208xQDS.h                |  1 -
 include/configs/T208xRDB.h                |  1 -
 include/configs/T4240QDS.h                |  1 -
 include/configs/corenet_ds.h              |  1 -
 scripts/config_whitelist.txt              |  1 -
 19 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
index 3f35106fbf..ac9271def7 100644
--- a/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/B4860QDS_SRIO_PCIE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_DATE=y
 CONFIG_CMD_EXT2=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
diff --git a/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
index ebca0cec7b..547467ec25 100644
--- a/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P2041RDB_SRIO_PCIE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P3041DS_SRIO_PCIE_BOOT_defconfig b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
index 390eea869b..321a05807a 100644
--- a/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P3041DS_SRIO_PCIE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P4080DS_SRIO_PCIE_BOOT_defconfig b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
index c2fd7d0586..e993748c06 100644
--- a/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P4080DS_SRIO_PCIE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/P5020DS_SRIO_PCIE_BOOT_defconfig b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
index 068301c44d..de0d5437b3 100644
--- a/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/P5020DS_SRIO_PCIE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index 97527e28a1..682cdd5ca9 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
diff --git a/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
index 2829d06d27..c700c45707 100644
--- a/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080RDB_SRIO_PCIE_BOOT_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 # CONFIG_CMD_IRQ is not set
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_STMICRO=y
diff --git a/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
index 19c48a8f66..95536ff267 100644
--- a/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2081QDS_SRIO_PCIE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_EON=y
diff --git a/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
index e13d7b7444..3536795b29 100644
--- a/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T4240QDS_SRIO_PCIE_BOOT_defconfig
@@ -20,6 +20,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_FSL_CAAM=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
diff --git a/env/Kconfig b/env/Kconfig
index 1f744cc576..3eb46111ff 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -250,6 +250,20 @@ config ENV_IS_IN_NVRAM
 	  can just be read and written to, without any special
 	  provision.
 
+config ENV_IS_IN_REMOTE
+	bool "Environment is in remove memory space"
+	help
+	  Define this if you have a remote memory space which you
+	  want to use for the local device's environment.
+
+	  - CONFIG_ENV_ADDR:
+	  - CONFIG_ENV_SIZE:
+
+	  These two #defines specify the address and size of the
+	  environment area within the remote memory space. The
+	  local device can get the environment from remote memory
+	  space by SRIO or PCIE links.
+
 config ENV_IS_IN_SPI_FLASH
 	bool "Environment is in SPI flash"
 	help
diff --git a/include/configs/B4860QDS.h b/include/configs/B4860QDS.h
index 6ae9851545..f9a677124b 100644
--- a/include/configs/B4860QDS.h
+++ b/include/configs/B4860QDS.h
@@ -132,7 +132,6 @@
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index a31989835b..38fbf3785f 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -81,7 +81,6 @@
 #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h
index 79537755cc..4bcd00426e 100644
--- a/include/configs/T102xQDS.h
+++ b/include/configs/T102xQDS.h
@@ -162,7 +162,6 @@
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index a7f1bbcba7..c3716f76f1 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -185,7 +185,6 @@
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #endif
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index a7b894e316..fd2e3d323f 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -158,7 +158,6 @@
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_OFFSET	(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 274ff49aba..93e0cf6c93 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -144,7 +144,6 @@
 #define CONFIG_ENV_SIZE		0x2000
 #define CONFIG_ENV_OFFSET	(2 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h
index 0c1ec41e66..944dab8068 100644
--- a/include/configs/T4240QDS.h
+++ b/include/configs/T4240QDS.h
@@ -103,7 +103,6 @@
 #define CONFIG_ENV_SIZE			0x2000
 #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index 07183c9095..0ea76b3300 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -92,7 +92,6 @@
 #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
 #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
 #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
-#define CONFIG_ENV_IS_IN_REMOTE
 #define CONFIG_ENV_ADDR		0xffe20000
 #define CONFIG_ENV_SIZE		0x2000
 #elif defined(CONFIG_ENV_IS_NOWHERE)
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index ecb554f197..f1f188bb5c 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -644,7 +644,6 @@ CONFIG_ENV_IS_IN_
 CONFIG_ENV_IS_IN_FAT
 CONFIG_ENV_IS_IN_MRAM
 CONFIG_ENV_IS_IN_ONENAND
-CONFIG_ENV_IS_IN_REMOTE
 CONFIG_ENV_MAX_ENTRIES
 CONFIG_ENV_MIN_ENTRIES
 CONFIG_ENV_OFFSET_OOB
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 11/30] Convert CONFIG_ENV_IS_IN_FAT to Kconfig
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (9 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 10/30] Convert CONFIG_ENV_IS_IN_REMOTE " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 12/30] env: common: Make env_get_addr/get_char_memory() static Simon Glass
                   ` (20 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This converts the following to Kconfig:
   CONFIG_ENV_IS_IN_FAT

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 README                                           | 44 ------------------------
 arch/arm/Kconfig                                 |  1 +
 configs/am335x_evm_defconfig                     |  1 +
 configs/am335x_evm_nor_defconfig                 |  1 +
 configs/am335x_evm_usbspl_defconfig              |  1 +
 configs/am335x_hs_evm_defconfig                  |  1 +
 configs/am43xx_evm_defconfig                     |  1 +
 configs/am43xx_evm_ethboot_defconfig             |  1 +
 configs/am43xx_evm_usbhost_boot_defconfig        |  1 +
 configs/am43xx_hs_evm_defconfig                  |  1 +
 configs/at91sam9m10g45ek_mmc_defconfig           |  1 +
 configs/at91sam9n12ek_mmc_defconfig              |  1 +
 configs/at91sam9rlek_mmc_defconfig               |  1 +
 configs/at91sam9x5ek_mmc_defconfig               |  1 +
 configs/axs101_defconfig                         |  1 +
 configs/axs103_defconfig                         |  1 +
 configs/hikey_defconfig                          |  1 +
 configs/hsdk_defconfig                           |  1 +
 configs/k2g_evm_defconfig                        |  1 +
 configs/k2g_hs_evm_defconfig                     |  1 +
 configs/omap4_panda_defconfig                    |  1 +
 configs/picosam9g45_defconfig                    |  1 +
 configs/sama5d2_xplained_mmc_defconfig           |  1 +
 configs/sama5d36ek_cmp_mmc_defconfig             |  1 +
 configs/sama5d3_xplained_mmc_defconfig           |  1 +
 configs/sama5d3xek_mmc_defconfig                 |  1 +
 configs/sama5d4_xplained_mmc_defconfig           |  1 +
 configs/sama5d4ek_mmc_defconfig                  |  1 +
 configs/xilinx_zynqmp_ep_defconfig               |  5 +--
 configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig |  1 +
 configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig |  1 +
 configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig |  1 +
 configs/xilinx_zynqmp_zcu102_defconfig           |  5 +--
 configs/xilinx_zynqmp_zcu102_revB_defconfig      |  5 +--
 env/Kconfig                                      | 33 ++++++++++++++++++
 include/configs/am335x_evm.h                     |  1 -
 include/configs/am43xx_evm.h                     |  6 ----
 include/configs/at91-sama5_common.h              |  1 -
 include/configs/at91sam9m10g45ek.h               |  1 -
 include/configs/at91sam9n12ek.h                  |  1 -
 include/configs/at91sam9rlek.h                   |  1 -
 include/configs/at91sam9x5ek.h                   |  1 -
 include/configs/axs10x.h                         |  1 -
 include/configs/hikey.h                          |  1 -
 include/configs/hsdk.h                           |  1 -
 include/configs/k2g_evm.h                        |  1 -
 include/configs/omap4_panda.h                    |  1 -
 include/configs/picosam9g45.h                    |  1 -
 include/configs/rpi.h                            |  1 -
 include/configs/xilinx_zynqmp.h                  |  1 -
 scripts/config_whitelist.txt                     |  1 -
 51 files changed, 72 insertions(+), 71 deletions(-)

diff --git a/README b/README
index 713eeb2f45..d8fc199fcd 100644
--- a/README
+++ b/README
@@ -3444,19 +3444,6 @@ environment in RAM: we could work on NVRAM directly, but we want to
 keep settings there always unmodified except somebody uses "saveenv"
 to save the current settings.
 
-- CONFIG_ENV_IS_IN_REMOTE:
-
-	Define this if you have a remote memory space which you
-	want to use for the local device's environment.
-
-	- CONFIG_ENV_ADDR:
-	- CONFIG_ENV_SIZE:
-
-	  These two #defines specify the address and size of the
-	  environment area within the remote memory space. The
-	  local device can get the environment from remote memory
-	  space by SRIO or PCIE links.
-
 BE CAREFUL! For some special cases, the local device can not use
 "saveenv" command. For example, the local device will get the
 environment stored in a remote NOR flash by SRIO or PCIE link,
@@ -3468,37 +3455,6 @@ but it can not erase, write this NOR flash by SRIO or PCIE interface.
 	environment. If redundant environment is used, it will be copied to
 	CONFIG_NAND_ENV_DST + CONFIG_ENV_SIZE.
 
-- CONFIG_ENV_IS_IN_FAT:
-       Define this if you want to use the FAT file system for the environment.
-
-       - FAT_ENV_INTERFACE:
-
-         Define this to a string that is the name of the block device.
-
-       - FAT_ENV_DEVICE_AND_PART:
-
-         Define this to a string to specify the partition of the device. It can
-         be as following:
-
-           "D:P", "D:0", "D", "D:" or "D:auto" (D, P are integers. And P >= 1)
-               - "D:P": device D partition P. Error occurs if device D has no
-                        partition table.
-               - "D:0": device D.
-               - "D" or "D:": device D partition 1 if device D has partition
-                              table, or the whole device D if has no partition
-                              table.
-               - "D:auto": first partition in device D with bootable flag set.
-                           If none, first valid partition in device D. If no
-                           partition table then means device D.
-
-       - FAT_ENV_FILE:
-
-         It's a string of the FAT file name. This file use to store the
-         environment.
-
-       - CONFIG_FAT_WRITE:
-         This must be enabled. Otherwise it cannot save the environment file.
-
 Please note that the environment is read-only until the monitor
 has been relocated to RAM and a RAM copy of the environment has been
 created; also, when using EEPROM you will have to use getenv_f()
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 74791394a5..43071de279 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -488,6 +488,7 @@ 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"
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index ff1e43f226..3dfa5cd949 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -20,6 +20,7 @@ CONFIG_SPL_OS_BOOT=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_LIST="am335x-evm am335x-bone am335x-boneblack am335x-evmsk am335x-bonegreen am335x-icev2"
+CONFIG_ENV_IS_IN_FAT=y
 # CONFIG_BLK is not set
 CONFIG_DFU_MMC=y
 CONFIG_DFU_NAND=y
diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig
index 6ff0aca978..afba0ceaad 100644
--- a/configs/am335x_evm_nor_defconfig
+++ b/configs/am335x_evm_nor_defconfig
@@ -26,6 +26,7 @@ CONFIG_CMD_DFU=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_NAND=y
 CONFIG_DFU_RAM=y
diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig
index a578322e1a..179dfca726 100644
--- a/configs/am335x_evm_usbspl_defconfig
+++ b/configs/am335x_evm_usbspl_defconfig
@@ -20,6 +20,7 @@ CONFIG_SPL_USBETH_SUPPORT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_NAND=y
 CONFIG_DFU_RAM=y
diff --git a/configs/am335x_hs_evm_defconfig b/configs/am335x_hs_evm_defconfig
index b0c88a6273..d8a5c2893a 100644
--- a/configs/am335x_hs_evm_defconfig
+++ b/configs/am335x_hs_evm_defconfig
@@ -26,6 +26,7 @@ CONFIG_SPL_MTD_SUPPORT=y
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_LIST="am335x-evm am335x-bone am335x-boneblack am335x-evmsk am335x-bonegreen am335x-icev2"
+CONFIG_ENV_IS_IN_FAT=y
 # CONFIG_BLK is not set
 CONFIG_DFU_MMC=y
 CONFIG_DFU_NAND=y
diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig
index 3878d2724a..2d40097734 100644
--- a/configs/am43xx_evm_defconfig
+++ b/configs/am43xx_evm_defconfig
@@ -20,6 +20,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_LIST="am437x-gp-evm am437x-sk-evm am43x-epos-evm am437x-idk-evm"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DFU_MMC=y
diff --git a/configs/am43xx_evm_ethboot_defconfig b/configs/am43xx_evm_ethboot_defconfig
index 6df60e83de..1f06fd3415 100644
--- a/configs/am43xx_evm_ethboot_defconfig
+++ b/configs/am43xx_evm_ethboot_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DFU_MMC=y
 CONFIG_DFU_RAM=y
 CONFIG_DFU_SF=y
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig
index 2006957638..74b1c4ccb5 100644
--- a/configs/am43xx_evm_usbhost_boot_defconfig
+++ b/configs/am43xx_evm_usbhost_boot_defconfig
@@ -42,6 +42,7 @@ CONFIG_CMD_FS_GENERIC=y
 CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_LIST="am437x-gp-evm am437x-sk-evm am43x-epos-evm am437x-idk-evm"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DFU_MMC=y
diff --git a/configs/am43xx_hs_evm_defconfig b/configs/am43xx_hs_evm_defconfig
index fb4bb037dd..20286bdc92 100644
--- a/configs/am43xx_hs_evm_defconfig
+++ b/configs/am43xx_hs_evm_defconfig
@@ -30,6 +30,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_ISO_PARTITION=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_LIST="am437x-gp-evm am437x-sk-evm am43x-epos-evm am437x-idk-evm"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DFU_MMC=y
diff --git a/configs/at91sam9m10g45ek_mmc_defconfig b/configs/at91sam9m10g45ek_mmc_defconfig
index 46f082f683..9e3feadb23 100644
--- a/configs/at91sam9m10g45ek_mmc_defconfig
+++ b/configs/at91sam9m10g45ek_mmc_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9n12ek_mmc_defconfig b/configs/at91sam9n12ek_mmc_defconfig
index f323ce8686..1d19fb3384 100644
--- a/configs/at91sam9n12ek_mmc_defconfig
+++ b/configs/at91sam9n12ek_mmc_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9rlek_mmc_defconfig b/configs/at91sam9rlek_mmc_defconfig
index afe28d6136..769940ef42 100644
--- a/configs/at91sam9rlek_mmc_defconfig
+++ b/configs/at91sam9rlek_mmc_defconfig
@@ -24,6 +24,7 @@ CONFIG_CMD_MMC=y
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/at91sam9x5ek_mmc_defconfig b/configs/at91sam9x5ek_mmc_defconfig
index 1aa1dd82b0..dadab0a293 100644
--- a/configs/at91sam9x5ek_mmc_defconfig
+++ b/configs/at91sam9x5ek_mmc_defconfig
@@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/axs101_defconfig b/configs/axs101_defconfig
index 0b15652493..fb1555f1af 100644
--- a/configs/axs101_defconfig
+++ b/configs/axs101_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_MMC=y
diff --git a/configs/axs103_defconfig b/configs/axs103_defconfig
index add24cfe22..234057b600 100644
--- a/configs/axs103_defconfig
+++ b/configs/axs103_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_MMC=y
diff --git a/configs/hikey_defconfig b/configs/hikey_defconfig
index 5981d2f530..12ca2daf3c 100644
--- a/configs/hikey_defconfig
+++ b/configs/hikey_defconfig
@@ -12,6 +12,7 @@ CONFIG_CMD_MMC=y
 CONFIG_CMD_USB=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_CACHE=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_MMC_DW=y
 CONFIG_MMC_DW_K3=y
 CONFIG_USB=y
diff --git a/configs/hsdk_defconfig b/configs/hsdk_defconfig
index 0018c0482e..40aec3f7f2 100644
--- a/configs/hsdk_defconfig
+++ b/configs/hsdk_defconfig
@@ -19,6 +19,7 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_MMC=y
diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig
index a5f1ac59f1..350cc8ddab 100644
--- a/configs/k2g_evm_defconfig
+++ b/configs/k2g_evm_defconfig
@@ -27,6 +27,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DM_MMC=y
diff --git a/configs/k2g_hs_evm_defconfig b/configs/k2g_hs_evm_defconfig
index 51c701ed90..56aa779d5c 100644
--- a/configs/k2g_hs_evm_defconfig
+++ b/configs/k2g_hs_evm_defconfig
@@ -18,6 +18,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 # CONFIG_BLK is not set
 CONFIG_DM_MMC=y
diff --git a/configs/omap4_panda_defconfig b/configs/omap4_panda_defconfig
index 3d91f137e8..a78e0aba78 100644
--- a/configs/omap4_panda_defconfig
+++ b/configs/omap4_panda_defconfig
@@ -22,6 +22,7 @@ CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 # CONFIG_CMD_NFS is not set
 CONFIG_CMD_EXT4_WRITE=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_MMC_OMAP_HS=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
diff --git a/configs/picosam9g45_defconfig b/configs/picosam9g45_defconfig
index aa61e4b65a..ca6d1c5e07 100644
--- a/configs/picosam9g45_defconfig
+++ b/configs/picosam9g45_defconfig
@@ -31,6 +31,7 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_DHCP=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_STORAGE=y
diff --git a/configs/sama5d2_xplained_mmc_defconfig b/configs/sama5d2_xplained_mmc_defconfig
index 2602aff9bc..a8c5d91355 100644
--- a/configs/sama5d2_xplained_mmc_defconfig
+++ b/configs/sama5d2_xplained_mmc_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dmas dma-names"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d36ek_cmp_mmc_defconfig b/configs/sama5d36ek_cmp_mmc_defconfig
index 1c5d85b4ad..0c467e71ce 100644
--- a/configs/sama5d36ek_cmp_mmc_defconfig
+++ b/configs/sama5d36ek_cmp_mmc_defconfig
@@ -23,6 +23,7 @@ CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_CLK=y
 CONFIG_CLK_AT91=y
diff --git a/configs/sama5d3_xplained_mmc_defconfig b/configs/sama5d3_xplained_mmc_defconfig
index 2e42a2e02e..fbb3db233c 100644
--- a/configs/sama5d3_xplained_mmc_defconfig
+++ b/configs/sama5d3_xplained_mmc_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_UBI=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dmas dma-names"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d3xek_mmc_defconfig b/configs/sama5d3xek_mmc_defconfig
index 4cbfa0723f..fc41f1df06 100644
--- a/configs/sama5d3xek_mmc_defconfig
+++ b/configs/sama5d3xek_mmc_defconfig
@@ -37,6 +37,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dmas dma-names"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/sama5d4_xplained_mmc_defconfig b/configs/sama5d4_xplained_mmc_defconfig
index 157fbe4577..bcddd7438e 100644
--- a/configs/sama5d4_xplained_mmc_defconfig
+++ b/configs/sama5d4_xplained_mmc_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dma-names dmas"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_CLK=y
diff --git a/configs/sama5d4ek_mmc_defconfig b/configs/sama5d4ek_mmc_defconfig
index e78460dc94..75ca0e81b0 100644
--- a/configs/sama5d4ek_mmc_defconfig
+++ b/configs/sama5d4ek_mmc_defconfig
@@ -36,6 +36,7 @@ CONFIG_CMD_FAT=y
 CONFIG_OF_CONTROL=y
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-parent dma-names dmas"
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_DM=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/xilinx_zynqmp_ep_defconfig b/configs/xilinx_zynqmp_ep_defconfig
index 578db22e41..61acff9beb 100644
--- a/configs/xilinx_zynqmp_ep_defconfig
+++ b/configs/xilinx_zynqmp_ep_defconfig
@@ -43,11 +43,10 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SATA_CEVA=y
 CONFIG_DFU_RAM=y
 CONFIG_FPGA_XILINX=y
@@ -63,6 +62,8 @@ CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_DM_ETH=y
 CONFIG_ZYNQ_GEM=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_DEBUG_UART_ZYNQ=y
 CONFIG_DEBUG_UART_BASE=0xff000000
 CONFIG_DEBUG_UART_CLOCK=25000000
diff --git a/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig b/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig
index 9daaa06c73..238f7d0940 100644
--- a/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig
@@ -35,6 +35,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig b/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig
index 0f9e4b24fe..49bf7c922d 100644
--- a/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
diff --git a/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig b/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig
index 463a9c7aee..7662a0d5d5 100644
--- a/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig
+++ b/configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig
@@ -28,6 +28,7 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
 CONFIG_FPGA_XILINX=y
diff --git a/configs/xilinx_zynqmp_zcu102_defconfig b/configs/xilinx_zynqmp_zcu102_defconfig
index 4f1524b149..792ae5f978 100644
--- a/configs/xilinx_zynqmp_zcu102_defconfig
+++ b/configs/xilinx_zynqmp_zcu102_defconfig
@@ -36,11 +36,10 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SATA_CEVA=y
 CONFIG_DFU_RAM=y
 CONFIG_FPGA_XILINX=y
@@ -56,6 +55,8 @@ CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_DM_ETH=y
 CONFIG_ZYNQ_GEM=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_DEBUG_UART_ZYNQ=y
 CONFIG_DEBUG_UART_BASE=0xff000000
 CONFIG_DEBUG_UART_CLOCK=100000000
diff --git a/configs/xilinx_zynqmp_zcu102_revB_defconfig b/configs/xilinx_zynqmp_zcu102_revB_defconfig
index 4b944cb6e1..07b8e299bc 100644
--- a/configs/xilinx_zynqmp_zcu102_revB_defconfig
+++ b/configs/xilinx_zynqmp_zcu102_revB_defconfig
@@ -36,11 +36,10 @@ CONFIG_CMD_EXT4_WRITE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 CONFIG_SPL_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_ENV_IS_IN_FAT=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_DM=y
 CONFIG_SPL_DM_SEQ_ALIAS=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SATA_CEVA=y
 CONFIG_DFU_RAM=y
 CONFIG_FPGA_XILINX=y
@@ -56,6 +55,8 @@ CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_DM_ETH=y
 CONFIG_ZYNQ_GEM=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_DEBUG_UART_ZYNQ=y
 CONFIG_DEBUG_UART_BASE=0xff000000
 CONFIG_DEBUG_UART_CLOCK=100000000
diff --git a/env/Kconfig b/env/Kconfig
index 3eb46111ff..f0dc49b4d9 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -74,6 +74,39 @@ config ENV_IS_IN_EEPROM
 	  EEPROM which holds the environment, is reached over
 	  a pca9547 i2c mux with address 0x70, channel 3.
 
+config ENV_IS_IN_FAT
+	bool "Environment is in a FAT filesystem"
+	help
+         Define this if you want to use the FAT file system for the environment.
+
+         - FAT_ENV_INTERFACE:
+
+         Define this to a string that is the name of the block device.
+
+         - FAT_ENV_DEVICE_AND_PART:
+
+         Define this to a string to specify the partition of the device. It can
+         be as following:
+
+           "D:P", "D:0", "D", "D:" or "D:auto" (D, P are integers. And P >= 1)
+               - "D:P": device D partition P. Error occurs if device D has no
+                        partition table.
+               - "D:0": device D.
+               - "D" or "D:": device D partition 1 if device D has partition
+                              table, or the whole device D if has no partition
+                              table.
+               - "D:auto": first partition in device D with bootable flag set.
+                           If none, first valid partition in device D. If no
+                           partition table then means device D.
+
+         - FAT_ENV_FILE:
+
+         It's a string of the FAT file name. This file use to store the
+         environment.
+
+         - CONFIG_FAT_WRITE:
+         This must be enabled. Otherwise it cannot save the environment file.
+
 config ENV_IS_IN_FLASH
 	bool "Environment in flash memory"
 	help
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index 1243a5e804..054fe01b9a 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -357,7 +357,6 @@
 #define CONFIG_SYS_ENV_SECT_SIZE	CONFIG_SYS_NAND_BLOCK_SIZE
 #elif !defined(CONFIG_ENV_IS_NOWHERE)
 /* Not NAND, SPI, NOR or eMMC env, so put ENV in a file on FAT */
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE		"mmc"
 #define FAT_ENV_DEVICE_AND_PART		"0:1"
 #define FAT_ENV_FILE			"uboot.env"
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index 571f7b53d8..a91b7df347 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -71,7 +71,6 @@
 /* NS16550 Configuration */
 #define CONFIG_SYS_NS16550_COM1		0x44e09000	/* Base EVM has UART0 */
 
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE		"mmc"
 #define FAT_ENV_DEVICE_AND_PART		"0:1"
 #define FAT_ENV_FILE			"uboot.env"
@@ -127,7 +126,6 @@
 #ifndef CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_TEXT_BASE		CONFIG_ISW_ENTRY_ADDR
 #endif
-#undef CONFIG_ENV_IS_IN_FAT
 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
 #define CONFIG_ENV_SPI_MAX_HZ           CONFIG_SF_DEFAULT_SPEED
 #define CONFIG_ENV_SECT_SIZE           (64 << 10) /* 64 KB sectors */
@@ -256,10 +254,6 @@
 #define CONFIG_PHYLIB
 #define PHY_ANEG_TIMEOUT	8000 /* PHY needs longer aneg time@1G */
 
-#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_ETH_SUPPORT)
-#undef CONFIG_ENV_IS_IN_FAT
-#endif
-
 #define CONFIG_SYS_RX_ETH_BUFFER	64
 
 /* NAND support */
diff --git a/include/configs/at91-sama5_common.h b/include/configs/at91-sama5_common.h
index 33f2d85319..b4135235d4 100644
--- a/include/configs/at91-sama5_common.h
+++ b/include/configs/at91-sama5_common.h
@@ -53,7 +53,6 @@
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #else
 /* u-boot env in sd/mmc card */
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE	"mmc"
 #define FAT_ENV_DEVICE_AND_PART	"0"
 #define FAT_ENV_FILE		"uboot.env"
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index 9e7fd1e1ae..8b00370cdd 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -113,7 +113,6 @@
  */
 #define FAT_ENV_DEVICE_AND_PART	"0"
 #define FAT_ENV_FILE		"uboot.env"
-#define CONFIG_ENV_IS_IN_FAT
 #define CONFIG_ENV_SIZE		0x4000
 
 #define CONFIG_BOOTARGS		"console=ttyS0,115200 " \
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index 03846b55f5..2616ae4b0a 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -157,7 +157,6 @@
 #define CONFIG_SYS_MMC_ENV_DEV		0
 #else
 /* Use file in FAT file to save environment */
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE		"mmc"
 #define FAT_ENV_FILE			"uboot.env"
 #define FAT_ENV_DEVICE_AND_PART		"0"
diff --git a/include/configs/at91sam9rlek.h b/include/configs/at91sam9rlek.h
index 1d068f4c50..6132076e82 100644
--- a/include/configs/at91sam9rlek.h
+++ b/include/configs/at91sam9rlek.h
@@ -124,7 +124,6 @@
 #else /* CONFIG_SYS_USE_MMC */
 
 /* bootstrap + u-boot + env + linux in mmc */
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE	"mmc"
 #define FAT_ENV_FILE		"uboot.env"
 #define FAT_ENV_DEVICE_AND_PART	"0"
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index 7357e18115..a80fe6a8a6 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -143,7 +143,6 @@
 				"bootm 0x22000000"
 #else /* CONFIG_SYS_USE_MMC */
 /* bootstrap + u-boot + env + linux in mmc */
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE	"mmc"
 #define FAT_ENV_FILE		"uboot.env"
 #define FAT_ENV_DEVICE_AND_PART "0"
diff --git a/include/configs/axs10x.h b/include/configs/axs10x.h
index 908b018800..b583267b3e 100644
--- a/include/configs/axs10x.h
+++ b/include/configs/axs10x.h
@@ -75,7 +75,6 @@
 /*
  * Environment settings
  */
-#define CONFIG_ENV_IS_IN_FAT
 #define CONFIG_ENV_SIZE			SZ_16K
 #define FAT_ENV_INTERFACE		"mmc"
 #define FAT_ENV_DEVICE_AND_PART		"0:1"
diff --git a/include/configs/hikey.h b/include/configs/hikey.h
index 2b4fec4bd4..17b33e8166 100644
--- a/include/configs/hikey.h
+++ b/include/configs/hikey.h
@@ -107,7 +107,6 @@
 
 /* Preserve environment on sd card */
 #define CONFIG_ENV_SIZE			0x1000
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE               "mmc"
 #define FAT_ENV_DEVICE_AND_PART         "1:1"
 #define FAT_ENV_FILE                    "uboot.env"
diff --git a/include/configs/hsdk.h b/include/configs/hsdk.h
index 28ac090c05..68900ac980 100644
--- a/include/configs/hsdk.h
+++ b/include/configs/hsdk.h
@@ -60,7 +60,6 @@
  * Environment settings
  */
 #define CONFIG_ENV_SIZE			SZ_16K
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE		"mmc"
 #define FAT_ENV_DEVICE_AND_PART		"0:1"
 #define FAT_ENV_FILE			"uboot.env"
diff --git a/include/configs/k2g_evm.h b/include/configs/k2g_evm.h
index 1cc3576984..49a11f3d85 100644
--- a/include/configs/k2g_evm.h
+++ b/include/configs/k2g_evm.h
@@ -61,7 +61,6 @@
 #define CONFIG_PHY_MICREL
 #define PHY_ANEG_TIMEOUT	10000 /* PHY needs longer aneg time */
 
-#define CONFIG_ENV_IS_IN_FAT
 #define CONFIG_ENV_SIZE			(256 << 10)  /* 256 KiB */
 #define FAT_ENV_INTERFACE		"mmc"
 #define FAT_ENV_DEVICE_AND_PART		"0:1"
diff --git a/include/configs/omap4_panda.h b/include/configs/omap4_panda.h
index e1263b68bc..a973ce6a62 100644
--- a/include/configs/omap4_panda.h
+++ b/include/configs/omap4_panda.h
@@ -35,7 +35,6 @@
 /* ENV related config options */
 
 #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE               "mmc"
 #define FAT_ENV_DEVICE_AND_PART         "0:1"
 #define FAT_ENV_FILE                    "uboot.env"
diff --git a/include/configs/picosam9g45.h b/include/configs/picosam9g45.h
index c83e559a5a..88f841dfd8 100644
--- a/include/configs/picosam9g45.h
+++ b/include/configs/picosam9g45.h
@@ -115,7 +115,6 @@
  */
 #define FAT_ENV_DEVICE_AND_PART	"0"
 #define FAT_ENV_FILE		"uboot.env"
-#define CONFIG_ENV_IS_IN_FAT
 #define CONFIG_ENV_SIZE		0x4000
 
 #define CONFIG_BOOTARGS		"console=ttyS0,115200 " \
diff --git a/include/configs/rpi.h b/include/configs/rpi.h
index d715eaad14..d79a67fe0d 100644
--- a/include/configs/rpi.h
+++ b/include/configs/rpi.h
@@ -93,7 +93,6 @@
 
 /* Environment */
 #define CONFIG_ENV_SIZE			SZ_16K
-#define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE		"mmc"
 #define FAT_ENV_DEVICE_AND_PART		"0:1"
 #define FAT_ENV_FILE			"uboot.env"
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index 0f4ca7452b..c30e37ccca 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -73,7 +73,6 @@
 # ifndef CONFIG_ZYNQ_SDHCI_MAX_FREQ
 #  define CONFIG_ZYNQ_SDHCI_MAX_FREQ	200000000
 # endif
-# define CONFIG_ENV_IS_IN_FAT
 # define FAT_ENV_DEVICE_AND_PART	"0:auto"
 # define FAT_ENV_FILE			"uboot.env"
 # define FAT_ENV_INTERFACE		"mmc"
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index f1f188bb5c..f83b8019b4 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -641,7 +641,6 @@ CONFIG_ENV_FLAGS_LIST_STATIC
 CONFIG_ENV_FLASHBOOT
 CONFIG_ENV_IS_EMBEDDED
 CONFIG_ENV_IS_IN_
-CONFIG_ENV_IS_IN_FAT
 CONFIG_ENV_IS_IN_MRAM
 CONFIG_ENV_IS_IN_ONENAND
 CONFIG_ENV_MAX_ENTRIES
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 12/30] env: common: Make env_get_addr/get_char_memory() static
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (10 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 11/30] Convert CONFIG_ENV_IS_IN_FAT " Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 13/30] env: common: Drop env_get_addr() Simon Glass
                   ` (19 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

These functions are not used outside this file. Make them static and order
them to avoid forward declarations.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/common.c          | 18 +++++++++---------
 include/environment.h |  4 ----
 2 files changed, 9 insertions(+), 13 deletions(-)

diff --git a/env/common.c b/env/common.c
index 6845f8d8d5..ff3f47e536 100644
--- a/env/common.c
+++ b/env/common.c
@@ -41,7 +41,15 @@ static uchar env_get_char_init(int index)
 		return default_environment[index];
 }
 
-uchar env_get_char_memory(int index)
+static const uchar *env_get_addr(int index)
+{
+	if (gd->env_valid)
+		return (uchar *)(gd->env_addr + index);
+	else
+		return &default_environment[index];
+}
+
+static uchar env_get_char_memory(int index)
 {
 	return *env_get_addr(index);
 }
@@ -55,14 +63,6 @@ uchar env_get_char(int index)
 		return env_get_char_init(index);
 }
 
-const uchar *env_get_addr(int index)
-{
-	if (gd->env_valid)
-		return (uchar *)(gd->env_addr + index);
-	else
-		return &default_environment[index];
-}
-
 /*
  * Read an environment variable as a boolean
  * Return -1 if variable does not exist (default to true)
diff --git a/include/environment.h b/include/environment.h
index 6f94986c6b..d6aa1f0fff 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -202,10 +202,6 @@ extern struct hsearch_data env_htab;
 /* Function that returns a character from the environment */
 unsigned char env_get_char(int);
 
-/* Function that returns a pointer to a value from the environment */
-const unsigned char *env_get_addr(int);
-unsigned char env_get_char_memory(int index);
-
 /* Function that updates CRC of the enironment */
 void env_crc_update(void);
 
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 13/30] env: common: Drop env_get_addr()
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (11 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 12/30] env: common: Make env_get_addr/get_char_memory() static Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 14/30] env: common: Factor out the common env_valid check Simon Glass
                   ` (18 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This function is not used anywhere other than env_get_char(). Move the
code into that function.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/common.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/env/common.c b/env/common.c
index ff3f47e536..ce6b5f927a 100644
--- a/env/common.c
+++ b/env/common.c
@@ -41,17 +41,12 @@ static uchar env_get_char_init(int index)
 		return default_environment[index];
 }
 
-static const uchar *env_get_addr(int index)
+static uchar env_get_char_memory(int index)
 {
 	if (gd->env_valid)
-		return (uchar *)(gd->env_addr + index);
+		return *(uchar *)(gd->env_addr + index);
 	else
-		return &default_environment[index];
-}
-
-static uchar env_get_char_memory(int index)
-{
-	return *env_get_addr(index);
+		return default_environment[index];
 }
 
 uchar env_get_char(int index)
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 14/30] env: common: Factor out the common env_valid check
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (12 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 13/30] env: common: Drop env_get_addr() Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 15/30] env: common: Drop env_get_char_init() Simon Glass
                   ` (17 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

The check for gd->env_valid is used in both the 'if' and 'else' part of
env_get_char(). Move it into that function instead for simplicity. Drop
that code from the two leaf functions.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/common.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/env/common.c b/env/common.c
index ce6b5f927a..10c4e134f4 100644
--- a/env/common.c
+++ b/env/common.c
@@ -34,25 +34,20 @@ __weak uchar env_get_char_spec(int index)
 
 static uchar env_get_char_init(int index)
 {
-	/* if crc was bad, use the default environment */
-	if (gd->env_valid)
-		return env_get_char_spec(index);
-	else
-		return default_environment[index];
+	return env_get_char_spec(index);
 }
 
 static uchar env_get_char_memory(int index)
 {
-	if (gd->env_valid)
-		return *(uchar *)(gd->env_addr + index);
-	else
-		return default_environment[index];
+	return *(uchar *)(gd->env_addr + index);
 }
 
 uchar env_get_char(int index)
 {
-	/* if relocated to RAM */
-	if (gd->flags & GD_FLG_RELOC)
+	/* if env is not set up, or crc was bad, use the default environment */
+	if (!gd->env_valid)
+		return default_environment[index];
+	else if (gd->flags & GD_FLG_RELOC)  /* if relocated to RAM */
 		return env_get_char_memory(index);
 	else
 		return env_get_char_init(index);
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 15/30] env: common: Drop env_get_char_init()
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (13 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 14/30] env: common: Factor out the common env_valid check Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:52 ` [U-Boot] [PATCH 16/30] env: common: Drop env_get_char_memory() Simon Glass
                   ` (16 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This function does nothing but call env_get_char_spec(). Drop it and
adjust its only caller.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/common.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/env/common.c b/env/common.c
index 10c4e134f4..e919269c7f 100644
--- a/env/common.c
+++ b/env/common.c
@@ -32,11 +32,6 @@ __weak uchar env_get_char_spec(int index)
 	return *((uchar *)(gd->env_addr + index));
 }
 
-static uchar env_get_char_init(int index)
-{
-	return env_get_char_spec(index);
-}
-
 static uchar env_get_char_memory(int index)
 {
 	return *(uchar *)(gd->env_addr + index);
@@ -50,7 +45,7 @@ uchar env_get_char(int index)
 	else if (gd->flags & GD_FLG_RELOC)  /* if relocated to RAM */
 		return env_get_char_memory(index);
 	else
-		return env_get_char_init(index);
+		return env_get_char_spec(index);
 }
 
 /*
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 16/30] env: common: Drop env_get_char_memory()
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (14 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 15/30] env: common: Drop env_get_char_init() Simon Glass
@ 2017-07-09 20:52 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 17/30] env: Add an enum for environment state Simon Glass
                   ` (15 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:52 UTC (permalink / raw)
  To: u-boot

This function is the same as env_get_char_spec() apart from dropping the
brackets. Drop the brackets from env_get_char_spec() and use that instead
of env_get_char_memory().

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/common.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/env/common.c b/env/common.c
index e919269c7f..7ed4bb28dd 100644
--- a/env/common.c
+++ b/env/common.c
@@ -28,11 +28,6 @@ struct hsearch_data env_htab = {
 };
 
 __weak uchar env_get_char_spec(int index)
-{
-	return *((uchar *)(gd->env_addr + index));
-}
-
-static uchar env_get_char_memory(int index)
 {
 	return *(uchar *)(gd->env_addr + index);
 }
@@ -42,8 +37,6 @@ uchar env_get_char(int index)
 	/* if env is not set up, or crc was bad, use the default environment */
 	if (!gd->env_valid)
 		return default_environment[index];
-	else if (gd->flags & GD_FLG_RELOC)  /* if relocated to RAM */
-		return env_get_char_memory(index);
 	else
 		return env_get_char_spec(index);
 }
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 17/30] env: Add an enum for environment state
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (15 preceding siblings ...)
  2017-07-09 20:52 ` [U-Boot] [PATCH 16/30] env: common: Drop env_get_char_memory() Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 18/30] env: Rename nand env_location to nand_env_location Simon Glass
                   ` (14 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

At present we have three states for the environment, numbered 0, 1 and 2.
Add an enum to record this to avoid open-coded values.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 board/Arcturus/ucp1020/spl.c       |  3 ++-
 board/freescale/b4860qds/spl.c     |  3 ++-
 board/freescale/c29xpcie/spl.c     |  3 ++-
 board/freescale/p1010rdb/spl.c     |  3 ++-
 board/freescale/p1022ds/spl.c      |  3 ++-
 board/freescale/p1_p2_rdb_pc/spl.c |  3 ++-
 board/freescale/t102xqds/spl.c     |  3 ++-
 board/freescale/t102xrdb/spl.c     |  3 ++-
 board/freescale/t104xrdb/spl.c     |  3 ++-
 board/freescale/t208xqds/spl.c     |  3 ++-
 board/freescale/t208xrdb/spl.c     |  3 ++-
 board/freescale/t4qds/spl.c        |  3 ++-
 board/freescale/t4rdb/spl.c        |  3 ++-
 env/dataflash.c                    |  2 +-
 env/eeprom.c                       | 30 ++++++++++++++--------------
 env/ext4.c                         |  2 +-
 env/fat.c                          |  2 +-
 env/flash.c                        | 22 ++++++++++----------
 env/mmc.c                          | 22 ++++++++++----------
 env/nand.c                         | 41 +++++++++++++++++++-------------------
 env/nvram.c                        |  2 +-
 env/onenand.c                      |  4 ++--
 env/remote.c                       |  2 +-
 env/sata.c                         |  2 +-
 env/sf.c                           | 26 ++++++++++++------------
 env/ubi.c                          | 22 ++++++++++----------
 include/asm-generic/global_data.h  |  2 +-
 include/environment.h              |  7 +++++++
 28 files changed, 124 insertions(+), 103 deletions(-)

diff --git a/board/Arcturus/ucp1020/spl.c b/board/Arcturus/ucp1020/spl.c
index cd484fc44b..b5e7a5db06 100644
--- a/board/Arcturus/ucp1020/spl.c
+++ b/board/Arcturus/ucp1020/spl.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <ns16550.h>
 #include <malloc.h>
 #include <mmc.h>
@@ -99,7 +100,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 	nand_spl_load_image(CONFIG_ENV_OFFSET, CONFIG_ENV_SIZE,
 			    (uchar *)CONFIG_ENV_ADDR);
 	gd->env_addr = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 #else
 	env_relocate();
 #endif
diff --git a/board/freescale/b4860qds/spl.c b/board/freescale/b4860qds/spl.c
index 60d7f0d48a..b1824b07a2 100644
--- a/board/freescale/b4860qds/spl.c
+++ b/board/freescale/b4860qds/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <asm/spl.h>
 #include <malloc.h>
 #include <ns16550.h>
@@ -101,7 +102,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 	nand_spl_load_image(CONFIG_ENV_OFFSET, CONFIG_ENV_SIZE,
 			    (uchar *)CONFIG_ENV_ADDR);
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 #endif
 
 	i2c_init_all();
diff --git a/board/freescale/c29xpcie/spl.c b/board/freescale/c29xpcie/spl.c
index 94093f11a8..28541a72cb 100644
--- a/board/freescale/c29xpcie/spl.c
+++ b/board/freescale/c29xpcie/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <ns16550.h>
 #include <malloc.h>
 #include <mmc.h>
@@ -63,7 +64,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 	nand_spl_load_image(CONFIG_ENV_OFFSET, CONFIG_ENV_SIZE,
 			    (uchar *)CONFIG_ENV_ADDR);
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/board/freescale/p1010rdb/spl.c b/board/freescale/p1010rdb/spl.c
index 2cebc2c002..001308874e 100644
--- a/board/freescale/p1010rdb/spl.c
+++ b/board/freescale/p1010rdb/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <ns16550.h>
 #include <malloc.h>
 #include <mmc.h>
@@ -87,7 +88,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 	nand_spl_load_image(CONFIG_ENV_OFFSET, CONFIG_ENV_SIZE,
 			    (uchar *)CONFIG_ENV_ADDR);
 			    gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 #else
 	env_relocate();
 #endif
diff --git a/board/freescale/p1022ds/spl.c b/board/freescale/p1022ds/spl.c
index a117dc3a2c..94b357d446 100644
--- a/board/freescale/p1022ds/spl.c
+++ b/board/freescale/p1022ds/spl.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <ns16550.h>
 #include <malloc.h>
 #include <mmc.h>
@@ -100,7 +101,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 			    (uchar *)CONFIG_ENV_ADDR);
 
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 #else
 	env_relocate();
 #endif
diff --git a/board/freescale/p1_p2_rdb_pc/spl.c b/board/freescale/p1_p2_rdb_pc/spl.c
index ca7ba5754e..c1d4c36b06 100644
--- a/board/freescale/p1_p2_rdb_pc/spl.c
+++ b/board/freescale/p1_p2_rdb_pc/spl.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <ns16550.h>
 #include <malloc.h>
 #include <mmc.h>
@@ -92,7 +93,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 	nand_spl_load_image(CONFIG_ENV_OFFSET, CONFIG_ENV_SIZE,
 			    (uchar *)CONFIG_ENV_ADDR);
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 #else
 	env_relocate();
 #endif
diff --git a/board/freescale/t102xqds/spl.c b/board/freescale/t102xqds/spl.c
index b987ecea1d..3aa19e6715 100644
--- a/board/freescale/t102xqds/spl.c
+++ b/board/freescale/t102xqds/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <malloc.h>
 #include <ns16550.h>
 #include <nand.h>
@@ -138,7 +139,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 #endif
 
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/board/freescale/t102xrdb/spl.c b/board/freescale/t102xrdb/spl.c
index dc6d9eeef6..ca1e49ffa7 100644
--- a/board/freescale/t102xrdb/spl.c
+++ b/board/freescale/t102xrdb/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <malloc.h>
 #include <ns16550.h>
 #include <nand.h>
@@ -125,7 +126,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 #endif
 
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/board/freescale/t104xrdb/spl.c b/board/freescale/t104xrdb/spl.c
index 2e43307b2d..4fb9323873 100644
--- a/board/freescale/t104xrdb/spl.c
+++ b/board/freescale/t104xrdb/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <malloc.h>
 #include <ns16550.h>
 #include <nand.h>
@@ -119,7 +120,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 			       (uchar *)CONFIG_ENV_ADDR);
 #endif
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/board/freescale/t208xqds/spl.c b/board/freescale/t208xqds/spl.c
index d7d716b690..36961dc9b0 100644
--- a/board/freescale/t208xqds/spl.c
+++ b/board/freescale/t208xqds/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <malloc.h>
 #include <ns16550.h>
 #include <nand.h>
@@ -124,7 +125,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 #endif
 
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/board/freescale/t208xrdb/spl.c b/board/freescale/t208xrdb/spl.c
index b43140148b..f0cc34d788 100644
--- a/board/freescale/t208xrdb/spl.c
+++ b/board/freescale/t208xrdb/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <malloc.h>
 #include <ns16550.h>
 #include <nand.h>
@@ -94,7 +95,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 #endif
 
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/board/freescale/t4qds/spl.c b/board/freescale/t4qds/spl.c
index 9ecdaedda3..750f155493 100644
--- a/board/freescale/t4qds/spl.c
+++ b/board/freescale/t4qds/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <asm/spl.h>
 #include <malloc.h>
 #include <ns16550.h>
@@ -129,7 +130,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 #endif
 
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/board/freescale/t4rdb/spl.c b/board/freescale/t4rdb/spl.c
index 5feab1cfcd..932954e93d 100644
--- a/board/freescale/t4rdb/spl.c
+++ b/board/freescale/t4rdb/spl.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <environment.h>
 #include <asm/spl.h>
 #include <malloc.h>
 #include <ns16550.h>
@@ -87,7 +88,7 @@ void board_init_r(gd_t *gd, ulong dest_addr)
 			   (uchar *)CONFIG_ENV_ADDR);
 
 	gd->env_addr  = (ulong)(CONFIG_ENV_ADDR);
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	i2c_init_all();
 
diff --git a/env/dataflash.c b/env/dataflash.c
index 034e323169..c140b74c98 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -78,7 +78,7 @@ int env_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	return 0;
 }
diff --git a/env/eeprom.c b/env/eeprom.c
index 5f63a6cd4a..ac6b30fa8f 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -71,7 +71,7 @@ uchar env_get_char_spec(int index)
 	unsigned int off = CONFIG_ENV_OFFSET;
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
-	if (gd->env_valid == 2)
+	if (gd->env_valid == ENV_REDUND)
 		off = CONFIG_ENV_OFFSET_REDUND;
 #endif
 	eeprom_bus_read(CONFIG_SYS_DEF_EEPROM_ADDR,
@@ -128,21 +128,21 @@ void env_relocate_spec(void)
 		gd->env_addr	= 0;
 		gd->env_valid	= 0;
 	} else if (crc_ok[0] && !crc_ok[1]) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (!crc_ok[0] && crc_ok[1]) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else {
 		/* both ok - check serial */
 		if (flags[0] == ACTIVE_FLAG && flags[1] == OBSOLETE_FLAG)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (flags[0] == OBSOLETE_FLAG && flags[1] == ACTIVE_FLAG)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else if (flags[0] == 0xFF && flags[1] == 0)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else if (flags[1] == 0xFF && flags[0] == 0)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else /* flags are equal - almost impossible */
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 	}
 
 #else /* CONFIG_ENV_OFFSET_REDUND */
@@ -170,7 +170,7 @@ void env_relocate_spec(void)
 	}
 
 	if (crc == new) {
-		gd->env_valid	= 1;
+		gd->env_valid	= ENV_VALID;
 	} else {
 		gd->env_valid	= 0;
 	}
@@ -178,7 +178,7 @@ void env_relocate_spec(void)
 
 	off = CONFIG_ENV_OFFSET;
 #ifdef CONFIG_ENV_OFFSET_REDUND
-	if (gd->env_valid == 2)
+	if (gd->env_valid == ENV_REDUND)
 		off = CONFIG_ENV_OFFSET_REDUND;
 #endif
 
@@ -205,7 +205,7 @@ int saveenv(void)
 		return rc;
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
-	if (gd->env_valid == 1) {
+	if (gd->env_valid == ENV_VALID) {
 		off	= CONFIG_ENV_OFFSET_REDUND;
 		off_red	= CONFIG_ENV_OFFSET;
 	}
@@ -222,10 +222,10 @@ int saveenv(void)
 				 off_red + offsetof(env_t, flags),
 				 (uchar *)&flag_obsolete, 1);
 
-		if (gd->env_valid == 1)
-			gd->env_valid = 2;
+		if (gd->env_valid == ENV_VALID)
+			gd->env_valid = ENV_REDUND;
 		else
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 	}
 #endif
 	return rc;
@@ -240,6 +240,6 @@ int saveenv(void)
 int env_init(void)
 {
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 	return 0;
 }
diff --git a/env/ext4.c b/env/ext4.c
index adefa7dc99..7bb4ce7cff 100644
--- a/env/ext4.c
+++ b/env/ext4.c
@@ -41,7 +41,7 @@ int env_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	return 0;
 }
diff --git a/env/fat.c b/env/fat.c
index 75616d4c5b..5a2131a5a9 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -29,7 +29,7 @@ int env_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	return 0;
 }
diff --git a/env/flash.c b/env/flash.c
index 004e8849a7..dcf3cd2c62 100644
--- a/env/flash.c
+++ b/env/flash.c
@@ -75,28 +75,28 @@ int env_init(void)
 
 	if (crc1_ok && !crc2_ok) {
 		gd->env_addr	= addr1;
-		gd->env_valid	= 1;
+		gd->env_valid	= ENV_VALID;
 	} else if (!crc1_ok && crc2_ok) {
 		gd->env_addr	= addr2;
-		gd->env_valid	= 1;
+		gd->env_valid	= ENV_VALID;
 	} else if (!crc1_ok && !crc2_ok) {
 		gd->env_addr	= addr_default;
 		gd->env_valid	= 0;
 	} else if (flag1 == ACTIVE_FLAG && flag2 == OBSOLETE_FLAG) {
 		gd->env_addr	= addr1;
-		gd->env_valid	= 1;
+		gd->env_valid	= ENV_VALID;
 	} else if (flag1 == OBSOLETE_FLAG && flag2 == ACTIVE_FLAG) {
 		gd->env_addr	= addr2;
-		gd->env_valid	= 1;
+		gd->env_valid	= ENV_VALID;
 	} else if (flag1 == flag2) {
 		gd->env_addr	= addr1;
-		gd->env_valid	= 2;
+		gd->env_valid	= ENV_REDUND;
 	} else if (flag1 == 0xFF) {
 		gd->env_addr	= addr1;
-		gd->env_valid	= 2;
+		gd->env_valid	= ENV_REDUND;
 	} else if (flag2 == 0xFF) {
 		gd->env_addr	= addr2;
-		gd->env_valid	= 2;
+		gd->env_valid	= ENV_REDUND;
 	}
 
 	return 0;
@@ -211,7 +211,7 @@ int env_init(void)
 {
 	if (crc32(0, env_ptr->data, ENV_SIZE) == env_ptr->crc) {
 		gd->env_addr	= (ulong)&(env_ptr->data);
-		gd->env_valid	= 1;
+		gd->env_valid	= ENV_VALID;
 		return 0;
 	}
 
@@ -309,7 +309,7 @@ void env_relocate_spec(void)
 	    crc32(0, flash_addr_new->data, ENV_SIZE) == flash_addr_new->crc) {
 		char flag = OBSOLETE_FLAG;
 
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 		flash_sect_protect(0, (ulong)flash_addr_new, end_addr_new);
 		flash_write(&flag,
 			    (ulong)&(flash_addr_new->flags),
@@ -321,7 +321,7 @@ void env_relocate_spec(void)
 	    (flash_addr->flags & ACTIVE_FLAG) == ACTIVE_FLAG) {
 		char flag = ACTIVE_FLAG;
 
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 		flash_sect_protect(0, (ulong)flash_addr, end_addr);
 		flash_write(&flag,
 			    (ulong)&(flash_addr->flags),
@@ -329,7 +329,7 @@ void env_relocate_spec(void)
 		flash_sect_protect(1, (ulong)flash_addr, end_addr);
 	}
 
-	if (gd->env_valid == 2)
+	if (gd->env_valid == ENV_REDUND)
 		puts("*** Warning - some problems detected "
 		     "reading environment; recovered successfully\n\n");
 #endif /* CONFIG_ENV_ADDR_REDUND */
diff --git a/env/mmc.c b/env/mmc.c
index 88b043ec35..32764a15c9 100644
--- a/env/mmc.c
+++ b/env/mmc.c
@@ -86,7 +86,7 @@ int env_init(void)
 {
 	/* use default */
 	gd->env_addr	= (ulong)&default_environment[0];
-	gd->env_valid	= 1;
+	gd->env_valid	= ENV_VALID;
 
 	return 0;
 }
@@ -186,7 +186,7 @@ int saveenv(void)
 #ifdef CONFIG_ENV_OFFSET_REDUND
 	env_new->flags	= ++env_flags; /* increase the serial */
 
-	if (gd->env_valid == 1)
+	if (gd->env_valid == ENV_VALID)
 		copy = 1;
 #endif
 
@@ -206,7 +206,7 @@ int saveenv(void)
 	ret = 0;
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
-	gd->env_valid = gd->env_valid == 2 ? 1 : 2;
+	gd->env_valid = gd->env_valid == ENV_REDUND ? ENV_VALID : ENV_REDUND;
 #endif
 
 fini:
@@ -278,26 +278,26 @@ void env_relocate_spec(void)
 		ret = 1;
 		goto fini;
 	} else if (crc1_ok && !crc2_ok) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (!crc1_ok && crc2_ok) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else {
 		/* both ok - check serial */
 		if (tmp_env1->flags == 255 && tmp_env2->flags == 0)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else if (tmp_env2->flags == 255 && tmp_env1->flags == 0)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env1->flags > tmp_env2->flags)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env2->flags > tmp_env1->flags)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else /* flags are equal - almost impossible */
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 	}
 
 	free(env_ptr);
 
-	if (gd->env_valid == 1)
+	if (gd->env_valid == ENV_VALID)
 		ep = tmp_env1;
 	else
 		ep = tmp_env2;
diff --git a/env/nand.c b/env/nand.c
index 2e28171ae0..a67b5ad1ab 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -84,37 +84,37 @@ int env_init(void)
 
 		return 0;
 	} else if (crc1_ok && !crc2_ok) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	}
 #ifdef CONFIG_ENV_OFFSET_REDUND
 	else if (!crc1_ok && crc2_ok) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else {
 		/* both ok - check serial */
 		if (tmp_env1->flags == 255 && tmp_env2->flags == 0)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else if (tmp_env2->flags == 255 && tmp_env1->flags == 0)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env1->flags > tmp_env2->flags)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env2->flags > tmp_env1->flags)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else /* flags are equal - almost impossible */
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 	}
 
-	if (gd->env_valid == 2)
+	if (gd->env_valid == ENV_REDUND)
 		env_ptr = tmp_env2;
 	else
 #endif
-	if (gd->env_valid == 1)
+	if (gd->env_valid == ENV_VALID)
 		env_ptr = tmp_env1;
 
 	gd->env_addr = (ulong)env_ptr->data;
 
 #else /* ENV_IS_EMBEDDED || CONFIG_NAND_ENV_DST */
 	gd->env_addr	= (ulong)&default_environment[0];
-	gd->env_valid	= 1;
+	gd->env_valid	= ENV_VALID;
 #endif /* ENV_IS_EMBEDDED || CONFIG_NAND_ENV_DST */
 
 	return 0;
@@ -215,14 +215,15 @@ int saveenv(void)
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
 	env_new->flags = ++env_flags; /* increase the serial */
-	env_idx = (gd->env_valid == 1);
+	env_idx = (gd->env_valid == ENV_VALID);
 #endif
 
 	ret = erase_and_write_env(&location[env_idx], (u_char *)env_new);
 #ifdef CONFIG_ENV_OFFSET_REDUND
 	if (!ret) {
 		/* preset other copy for next write */
-		gd->env_valid = gd->env_valid == 2 ? 1 : 2;
+		gd->env_valid = gd->env_valid == ENV_REDUND ? ENV_VALID :
+				ENV_REDUND;
 		return ret;
 	}
 
@@ -344,26 +345,26 @@ void env_relocate_spec(void)
 		set_default_env("!bad CRC");
 		goto done;
 	} else if (crc1_ok && !crc2_ok) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (!crc1_ok && crc2_ok) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else {
 		/* both ok - check serial */
 		if (tmp_env1->flags == 255 && tmp_env2->flags == 0)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else if (tmp_env2->flags == 255 && tmp_env1->flags == 0)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env1->flags > tmp_env2->flags)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env2->flags > tmp_env1->flags)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else /* flags are equal - almost impossible */
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 	}
 
 	free(env_ptr);
 
-	if (gd->env_valid == 1)
+	if (gd->env_valid == ENV_VALID)
 		ep = tmp_env1;
 	else
 		ep = tmp_env2;
diff --git a/env/nvram.c b/env/nvram.c
index 524f07d5f8..d046c9393c 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -104,7 +104,7 @@ int env_init(void)
 	if (crc32(0, env_ptr->data, ENV_SIZE) == env_ptr->crc) {
 		gd->env_addr	= (ulong)&env_ptr->data;
 #endif
-		gd->env_valid	= 1;
+		gd->env_valid = ENV_VALID;
 	} else {
 		gd->env_addr	= (ulong)&default_environment[0];
 		gd->env_valid	= 0;
diff --git a/env/onenand.c b/env/onenand.c
index cc3d670de8..d7ad45a0e5 100644
--- a/env/onenand.c
+++ b/env/onenand.c
@@ -60,7 +60,7 @@ void env_relocate_spec(void)
 
 	rc = env_import(buf, 1);
 	if (rc)
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 }
 
 int saveenv(void)
@@ -110,7 +110,7 @@ int env_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	return 0;
 }
diff --git a/env/remote.c b/env/remote.c
index eb977ee1fe..e003e02fb9 100644
--- a/env/remote.c
+++ b/env/remote.c
@@ -29,7 +29,7 @@ int env_init(void)
 {
 	if (crc32(0, env_ptr->data, ENV_SIZE) == env_ptr->crc) {
 		gd->env_addr = (ulong)&(env_ptr->data);
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 		return 0;
 	}
 
diff --git a/env/sata.c b/env/sata.c
index b0cee35a60..64589117f2 100644
--- a/env/sata.c
+++ b/env/sata.c
@@ -37,7 +37,7 @@ int env_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	return 0;
 }
diff --git a/env/sf.c b/env/sf.c
index 45f441a042..1da3549138 100644
--- a/env/sf.c
+++ b/env/sf.c
@@ -93,7 +93,7 @@ int saveenv(void)
 		return ret;
 	env_new.flags	= ACTIVE_FLAG;
 
-	if (gd->env_valid == 1) {
+	if (gd->env_valid == ENV_VALID) {
 		env_new_offset = CONFIG_ENV_OFFSET_REDUND;
 		env_offset = CONFIG_ENV_OFFSET;
 	} else {
@@ -145,7 +145,7 @@ int saveenv(void)
 
 	puts("done\n");
 
-	gd->env_valid = gd->env_valid == 2 ? 1 : 2;
+	gd->env_valid = gd->env_valid == ENV_REDUND ? ENV_VALID : ENV_REDUND;
 
 	printf("Valid environment: %d\n", (int)gd->env_valid);
 
@@ -198,30 +198,30 @@ void env_relocate_spec(void)
 		set_default_env("!bad CRC");
 		goto err_read;
 	} else if (crc1_ok && !crc2_ok) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (!crc1_ok && crc2_ok) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else if (tmp_env1->flags == ACTIVE_FLAG &&
 		   tmp_env2->flags == OBSOLETE_FLAG) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (tmp_env1->flags == OBSOLETE_FLAG &&
 		   tmp_env2->flags == ACTIVE_FLAG) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else if (tmp_env1->flags == tmp_env2->flags) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (tmp_env1->flags == 0xFF) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (tmp_env2->flags == 0xFF) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else {
 		/*
 		 * this differs from code in env_flash.c, but I think a sane
 		 * default path is desirable.
 		 */
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	}
 
-	if (gd->env_valid == 1)
+	if (gd->env_valid == ENV_VALID)
 		ep = tmp_env1;
 	else
 		ep = tmp_env2;
@@ -324,7 +324,7 @@ void env_relocate_spec(void)
 
 	ret = env_import(buf, 1);
 	if (ret)
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 
 err_read:
 	spi_flash_free(env_flash);
@@ -338,7 +338,7 @@ int env_init(void)
 {
 	/* SPI flash isn't usable before relocation */
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	return 0;
 }
diff --git a/env/ubi.c b/env/ubi.c
index 0ac2f65f0b..d37095db0c 100644
--- a/env/ubi.c
+++ b/env/ubi.c
@@ -26,7 +26,7 @@ int env_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = 1;
+	gd->env_valid = ENV_VALID;
 
 	return 0;
 }
@@ -52,7 +52,7 @@ int saveenv(void)
 
 	env_new->flags = ++env_flags; /* increase the serial */
 
-	if (gd->env_valid == 1) {
+	if (gd->env_valid == ENV_VALID) {
 		puts("Writing to redundant UBI... ");
 		if (ubi_volume_write(CONFIG_ENV_UBI_VOLUME_REDUND,
 				     (void *)env_new, CONFIG_ENV_SIZE)) {
@@ -74,7 +74,7 @@ int saveenv(void)
 
 	puts("done\n");
 
-	gd->env_valid = gd->env_valid == 2 ? 1 : 2;
+	gd->env_valid = gd->env_valid == ENV_REDUND ? ENV_VALID : ENV_REDUND;
 
 	return 0;
 }
@@ -155,24 +155,24 @@ void env_relocate_spec(void)
 		set_default_env("!bad CRC");
 		return;
 	} else if (crc1_ok && !crc2_ok) {
-		gd->env_valid = 1;
+		gd->env_valid = ENV_VALID;
 	} else if (!crc1_ok && crc2_ok) {
-		gd->env_valid = 2;
+		gd->env_valid = ENV_REDUND;
 	} else {
 		/* both ok - check serial */
 		if (tmp_env1->flags == 255 && tmp_env2->flags == 0)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else if (tmp_env2->flags == 255 && tmp_env1->flags == 0)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env1->flags > tmp_env2->flags)
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 		else if (tmp_env2->flags > tmp_env1->flags)
-			gd->env_valid = 2;
+			gd->env_valid = ENV_REDUND;
 		else /* flags are equal - almost impossible */
-			gd->env_valid = 1;
+			gd->env_valid = ENV_VALID;
 	}
 
-	if (gd->env_valid == 1)
+	if (gd->env_valid == ENV_VALID)
 		ep = tmp_env1;
 	else
 		ep = tmp_env2;
diff --git a/include/asm-generic/global_data.h b/include/asm-generic/global_data.h
index fb90be9d3e..d8d1b444f2 100644
--- a/include/asm-generic/global_data.h
+++ b/include/asm-generic/global_data.h
@@ -49,7 +49,7 @@ typedef struct global_data {
 	unsigned long precon_buf_idx;	/* Pre-Console buffer index */
 #endif
 	unsigned long env_addr;		/* Address  of Environment struct */
-	unsigned long env_valid;	/* Checksum of Environment valid? */
+	unsigned long env_valid;	/* Environment valid? enum env_valid */
 
 	unsigned long ram_top;		/* Top address of RAM used by U-Boot */
 	unsigned long relocaddr;	/* Start address of U-Boot in RAM */
diff --git a/include/environment.h b/include/environment.h
index d6aa1f0fff..b4c8c48717 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -197,6 +197,13 @@ extern uint mmc_get_env_part(struct mmc *mmc);
 #include <env_flags.h>
 #include <search.h>
 
+/* Value for environment validity */
+enum env_valid {
+	ENV_INVALID,	/* No valid environment */
+	ENV_VALID,	/* First or only environment is valid */
+	ENV_REDUND,	/* Redundant environment is valid */
+};
+
 extern struct hsearch_data env_htab;
 
 /* Function that returns a character from the environment */
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 18/30] env: Rename nand env_location to nand_env_location
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (16 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 17/30] env: Add an enum for environment state Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 19/30] env: Create a location driver for each location Simon Glass
                   ` (13 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

We want to use this name for all environment drivers. Update the nand
driver to use a more specific name.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/nand.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/env/nand.c b/env/nand.c
index a67b5ad1ab..e9188539ca 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -153,12 +153,12 @@ static int writeenv(size_t offset, u_char *buf)
 	return 0;
 }
 
-struct env_location {
+struct nand_env_location {
 	const char *name;
 	const nand_erase_options_t erase_opts;
 };
 
-static int erase_and_write_env(const struct env_location *location,
+static int erase_and_write_env(const struct nand_env_location *location,
 		u_char *env_new)
 {
 	int ret = 0;
@@ -186,7 +186,7 @@ int saveenv(void)
 	int	ret = 0;
 	ALLOC_CACHE_ALIGN_BUFFER(env_t, env_new, 1);
 	int	env_idx = 0;
-	static const struct env_location location[] = {
+	static const struct nand_env_location location[] = {
 		{
 			.name = "NAND",
 			.erase_opts = {
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 19/30] env: Create a location driver for each location
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (17 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 18/30] env: Rename nand env_location to nand_env_location Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 20/30] env: Add a new implementation of environment access Simon Glass
                   ` (12 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

Set up a location driver for each supported environment locatoin. At
present this just points to the global functions and is not used. A
later patch will switch this over to use private functions in each driver.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 configs/CHIP_pro_defconfig |  1 -
 env/dataflash.c            |  8 ++++++
 env/eeprom.c               |  8 ++++++
 env/ext4.c                 |  8 ++++++
 env/fat.c                  | 10 +++++++
 env/flash.c                | 39 +++++++++++++++++++++++---
 env/mmc.c                  | 10 +++++++
 env/nand.c                 | 12 +++++++-
 env/nowhere.c              |  6 ++++
 env/nvram.c                | 10 +++++++
 env/onenand.c              |  8 ++++++
 env/remote.c               |  8 ++++++
 env/sata.c                 |  8 ++++++
 env/sf.c                   | 20 +++++++++++++
 env/ubi.c                  |  8 ++++++
 include/environment.h      | 70 ++++++++++++++++++++++++++++++++++++++++++++++
 16 files changed, 228 insertions(+), 6 deletions(-)

diff --git a/configs/CHIP_pro_defconfig b/configs/CHIP_pro_defconfig
index f151d1a67c..002e6f3e7a 100644
--- a/configs/CHIP_pro_defconfig
+++ b/configs/CHIP_pro_defconfig
@@ -18,7 +18,6 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_CMD_FPGA is not set
 CONFIG_CMD_MTDPARTS=y
 # CONFIG_ENV_IS_IN_MMC is not set
-CONFIG_ENV_IS_NOWHERE=y
 CONFIG_MTDIDS_DEFAULT="nand0=sunxi-nand.0"
 CONFIG_MTDPARTS_DEFAULT="mtdparts=sunxi-nand.0:256k(spl),256k(spl-backup),2m(uboot),2m(uboot-backup),-(UBI)"
 # CONFIG_MMC is not set
diff --git a/env/dataflash.c b/env/dataflash.c
index c140b74c98..9c59d8e63a 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -82,3 +82,11 @@ int env_init(void)
 
 	return 0;
 }
+
+U_BOOT_ENV_LOCATION(dataflash) = {
+	.location	= ENVL_DATAFLASH,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/env/eeprom.c b/env/eeprom.c
index ac6b30fa8f..78569b286b 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -243,3 +243,11 @@ int env_init(void)
 	gd->env_valid = ENV_VALID;
 	return 0;
 }
+
+U_BOOT_ENV_LOCATION(eeprom) = {
+	.location	= ENVL_EEPROM,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/env/ext4.c b/env/ext4.c
index 7bb4ce7cff..c6a84925d9 100644
--- a/env/ext4.c
+++ b/env/ext4.c
@@ -127,3 +127,11 @@ void env_relocate_spec(void)
 err_env_relocate:
 	set_default_env(NULL);
 }
+
+U_BOOT_ENV_LOCATION(ext4) = {
+	.location	= ENVL_EXT4,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/env/fat.c b/env/fat.c
index 5a2131a5a9..f5014dee32 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -108,3 +108,13 @@ void env_relocate_spec(void)
 err_env_relocate:
 	set_default_env(NULL);
 }
+
+U_BOOT_ENV_LOCATION(fat) = {
+	.location	= ENVL_FAT,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+#ifndef CONFIG_SPL_BUILD
+	.save		= env_save_ptr(saveenv),
+#endif
+	.init		= env_init,
+};
diff --git a/env/flash.c b/env/flash.c
index dcf3cd2c62..cf068d11ee 100644
--- a/env/flash.c
+++ b/env/flash.c
@@ -20,10 +20,12 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-#if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_FLASH)
-#define CMD_SAVEENV
-#elif defined(CONFIG_ENV_ADDR_REDUND)
-#error CONFIG_ENV_ADDR_REDUND must have CONFIG_CMD_SAVEENV & CONFIG_CMD_FLASH
+#ifndef CONFIG_SPL_BUILD
+# if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_FLASH)
+#  define CMD_SAVEENV
+# elif defined(CONFIG_ENV_ADDR_REDUND)
+#  error CONFIG_ENV_ADDR_REDUND must have CONFIG_CMD_SAVEENV & CONFIG_CMD_FLASH
+# endif
 #endif
 
 #if defined(CONFIG_ENV_SIZE_REDUND) &&	\
@@ -31,6 +33,18 @@ DECLARE_GLOBAL_DATA_PTR;
 #error CONFIG_ENV_SIZE_REDUND should not be less then CONFIG_ENV_SIZE
 #endif
 
+/* TODO(sjg at chromium.org): Figure out all these special cases */
+#if (!defined(CONFIG_MICROBLAZE) && !defined(CONFIG_ARCH_ZYNQ) && \
+	!defined(CONFIG_TARGET_MCCMON6) && !defined(CONFIG_TARGET_X600) && \
+	!defined(CONFIG_TARGET_EDMINIV2)) || \
+	!defined(CONFIG_SPL_BUILD)
+#define LOADENV
+#endif
+
+#if !defined(CONFIG_TARGET_X600) || !defined(CONFIG_SPL_BUILD)
+#define INITENV
+#endif
+
 char *env_name_spec = "Flash";
 
 #ifdef ENV_IS_EMBEDDED
@@ -58,6 +72,7 @@ static ulong end_addr_new = CONFIG_ENV_ADDR_REDUND + CONFIG_ENV_SECT_SIZE - 1;
 
 
 #ifdef CONFIG_ENV_ADDR_REDUND
+#ifdef INITENV
 int env_init(void)
 {
 	int crc1_ok = 0, crc2_ok = 0;
@@ -101,6 +116,7 @@ int env_init(void)
 
 	return 0;
 }
+#endif
 
 #ifdef CMD_SAVEENV
 int saveenv(void)
@@ -207,6 +223,7 @@ done:
 
 #else /* ! CONFIG_ENV_ADDR_REDUND */
 
+#ifdef INITENV
 int env_init(void)
 {
 	if (crc32(0, env_ptr->data, ENV_SIZE) == env_ptr->crc) {
@@ -219,6 +236,7 @@ int env_init(void)
 	gd->env_valid	= 0;
 	return 0;
 }
+#endif
 
 #ifdef CMD_SAVEENV
 int saveenv(void)
@@ -336,3 +354,16 @@ void env_relocate_spec(void)
 
 	env_import((char *)flash_addr, 1);
 }
+
+U_BOOT_ENV_LOCATION(flash) = {
+	.location	= ENVL_FLASH,
+#ifdef LOADENV
+	.load		= env_relocate_spec,
+#endif
+#ifdef CMD_SAVEENV
+	.save		= env_save_ptr(saveenv),
+#endif
+#ifdef INITENV
+	.init		= env_init,
+#endif
+};
diff --git a/env/mmc.c b/env/mmc.c
index 32764a15c9..4249182d58 100644
--- a/env/mmc.c
+++ b/env/mmc.c
@@ -354,3 +354,13 @@ err:
 #endif
 }
 #endif /* CONFIG_ENV_OFFSET_REDUND */
+
+U_BOOT_ENV_LOCATION(mmc) = {
+	.location	= ENVL_MMC,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+#ifndef CONFIG_SPL_BUILD
+	.save		= env_save_ptr(saveenv),
+#endif
+	.init		= env_init,
+};
diff --git a/env/nand.c b/env/nand.c
index e9188539ca..8a046a13d1 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -24,7 +24,8 @@
 #include <search.h>
 #include <errno.h>
 
-#if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_NAND)
+#if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_NAND) && \
+		!defined(CONFIG_SPL_BUILD)
 #define CMD_SAVEENV
 #elif defined(CONFIG_ENV_OFFSET_REDUND)
 #error CONFIG_ENV_OFFSET_REDUND must have CONFIG_CMD_SAVEENV & CONFIG_CMD_NAND
@@ -414,3 +415,12 @@ void env_relocate_spec(void)
 #endif /* ! ENV_IS_EMBEDDED */
 }
 #endif /* CONFIG_ENV_OFFSET_REDUND */
+
+U_BOOT_ENV_LOCATION(nand) = {
+	.location	= ENVL_NAND,
+	.load		= env_relocate_spec,
+#if defined(CMD_SAVEENV)
+	.save		= env_save_ptr(saveenv),
+#endif
+	.init		= env_init,
+};
diff --git a/env/nowhere.c b/env/nowhere.c
index bdc1ed5e67..c58d299308 100644
--- a/env/nowhere.c
+++ b/env/nowhere.c
@@ -33,3 +33,9 @@ int env_init(void)
 
 	return 0;
 }
+
+U_BOOT_ENV_LOCATION(nowhere) = {
+	.location	= ENVL_NOWHERE,
+	.load		= env_relocate_spec,
+	.init		= env_init,
+};
diff --git a/env/nvram.c b/env/nvram.c
index d046c9393c..4f45eae73e 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -112,3 +112,13 @@ int env_init(void)
 
 	return 0;
 }
+
+U_BOOT_ENV_LOCATION(nvram) = {
+	.location	= ENVL_NVRAM,
+#ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
+	.get_char	= env_get_char_spec,
+#endif
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/env/onenand.c b/env/onenand.c
index d7ad45a0e5..d4dfc02a46 100644
--- a/env/onenand.c
+++ b/env/onenand.c
@@ -114,3 +114,11 @@ int env_init(void)
 
 	return 0;
 }
+
+U_BOOT_ENV_LOCATION(onenand) = {
+	.location	= ENVL_ONENAND,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/env/remote.c b/env/remote.c
index e003e02fb9..c221d55c4f 100644
--- a/env/remote.c
+++ b/env/remote.c
@@ -56,3 +56,11 @@ void env_relocate_spec(void)
 	env_import((char *)env_ptr, 1);
 #endif
 }
+
+U_BOOT_ENV_LOCATION(remote) = {
+	.location	= ENVL_REMOTE,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/env/sata.c b/env/sata.c
index 64589117f2..f7b159a347 100644
--- a/env/sata.c
+++ b/env/sata.c
@@ -125,3 +125,11 @@ void env_relocate_spec(void)
 
 	env_import(buf, 1);
 }
+
+U_BOOT_ENV_LOCATION(sata) = {
+	.location	= ENVL_ESATA,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/env/sf.c b/env/sf.c
index 1da3549138..8f81cf5e40 100644
--- a/env/sf.c
+++ b/env/sf.c
@@ -32,9 +32,15 @@
 # define CONFIG_ENV_SPI_MODE	CONFIG_SF_DEFAULT_MODE
 #endif
 
+#ifndef CONFIG_SPL_BUILD
+#define CMD_SAVEENV
+#endif
+
 #ifdef CONFIG_ENV_OFFSET_REDUND
+#ifdef CMD_SAVEENV
 static ulong env_offset		= CONFIG_ENV_OFFSET;
 static ulong env_new_offset	= CONFIG_ENV_OFFSET_REDUND;
+#endif
 
 #define ACTIVE_FLAG	1
 #define OBSOLETE_FLAG	0
@@ -77,6 +83,7 @@ static int setup_flash_device(void)
 }
 
 #if defined(CONFIG_ENV_OFFSET_REDUND)
+#ifdef CMD_SAVEENV
 int saveenv(void)
 {
 	env_t	env_new;
@@ -155,6 +162,7 @@ int saveenv(void)
 
 	return ret;
 }
+#endif /* CMD_SAVEENV */
 
 void env_relocate_spec(void)
 {
@@ -240,6 +248,7 @@ out:
 	free(tmp_env2);
 }
 #else
+#ifdef CMD_SAVEENV
 int saveenv(void)
 {
 	u32	saved_size, saved_offset, sector;
@@ -299,6 +308,7 @@ int saveenv(void)
 
 	return ret;
 }
+#endif /* CMD_SAVEENV */
 
 void env_relocate_spec(void)
 {
@@ -342,3 +352,13 @@ int env_init(void)
 
 	return 0;
 }
+
+U_BOOT_ENV_LOCATION(sf) = {
+	.location	= ENVL_SPI_FLASH,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+#ifdef CMD_SAVEENV
+	.save		= env_save_ptr(saveenv),
+#endif
+	.init		= env_init,
+};
diff --git a/env/ubi.c b/env/ubi.c
index d37095db0c..16f6d74d2e 100644
--- a/env/ubi.c
+++ b/env/ubi.c
@@ -212,3 +212,11 @@ void env_relocate_spec(void)
 	env_import(buf, 1);
 }
 #endif /* CONFIG_SYS_REDUNDAND_ENVIRONMENT */
+
+U_BOOT_ENV_LOCATION(ubi) = {
+	.location	= ENVL_UBI,
+	.get_char	= env_get_char_spec,
+	.load		= env_relocate_spec,
+	.save		= env_save_ptr(saveenv),
+	.init		= env_init,
+};
diff --git a/include/environment.h b/include/environment.h
index b4c8c48717..c3a75c8a66 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -204,6 +204,76 @@ enum env_valid {
 	ENV_REDUND,	/* Redundant environment is valid */
 };
 
+enum env_location {
+	ENVL_DATAFLASH,
+	ENVL_EEPROM,
+	ENVL_EXT4,
+	ENVL_FAT,
+	ENVL_FLASH,
+	ENVL_MMC,
+	ENVL_NAND,
+	ENVL_NVRAM,
+	ENVL_ONENAND,
+	ENVL_REMOTE,
+	ENVL_SPI_FLASH,
+	ENVL_UBI,
+	ENVL_NOWHERE,
+
+	ENVL_COUNT,
+	ENVL_UNKNOWN,
+};
+
+struct env_driver {
+	enum env_location location;
+
+	/**
+	 * get_char() - Read a character from the environment
+	 *
+	 * This method is optional. If not provided, a default implementation
+	 * will read from gd->env_addr.
+	 *
+	 * @index: Index of character to read (0=first)
+	 * @return character read
+	 */
+	unsigned char (*get_char)(int index);
+
+	/**
+	 * load() - Load the environment from storage
+	 *
+	 * This method is optional. If not provided, no environment will be
+	 * loaded.
+	 */
+	void (*load)(void);
+
+	/**
+	 * save() - Save the environment to storage
+	 *
+	 * This method is required for 'saveenv' to work.
+	 *
+	 * @return 0 if OK, -ve on error
+	 */
+	int (*save)(void);
+
+	/**
+	 * init() - Set up the initial pre-relocation environment
+	 *
+	 * This method is optional.
+	 *
+	 * @return 0 if OK, -ve on error
+	 */
+	int (*init)(void);
+};
+
+/* Declare a new environment location driver */
+#define U_BOOT_ENV_LOCATION(__name)					\
+	ll_entry_declare(struct env_driver, __name, env_driver)
+
+#ifdef CONFIG_CMD_SAVEENV
+#define env_save_ptr(x) x
+#else
+#define env_save_ptr(x) NULL
+#endif
+
 extern struct hsearch_data env_htab;
 
 /* Function that returns a character from the environment */
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 20/30] env: Add a new implementation of environment access
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (18 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 19/30] env: Create a location driver for each location Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 21/30] env: Switch over to use environment location drivers Simon Glass
                   ` (11 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

We plan to move to a environment access via drivers for each location
where the environment can be stored. Add an implementation for this. So
far it is not used, but will be pressed into service in a future patch.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/Makefile |   2 +-
 env/env.c    | 145 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 146 insertions(+), 1 deletion(-)
 create mode 100644 env/env.c

diff --git a/env/Makefile b/env/Makefile
index 4c1bdcfdf4..8df5b9d4c9 100644
--- a/env/Makefile
+++ b/env/Makefile
@@ -5,7 +5,7 @@
 # SPDX-License-Identifier:	GPL-2.0+
 #
 
-obj-y += common.o
+obj-y += common.o env.o
 
 ifndef CONFIG_SPL_BUILD
 obj-y += attr.o
diff --git a/env/env.c b/env/env.c
new file mode 100644
index 0000000000..9f0a04c33c
--- /dev/null
+++ b/env/env.c
@@ -0,0 +1,145 @@
+/*
+ * Copyright (C) 2017 Google, Inc
+ * Written by Simon Glass <sjg@chromium.org>
+ *
+ * SPDX-License-Identifier:     GPL-2.0+
+ */
+
+#include <common.h>
+#include <environment.h>
+
+DECLARE_GLOBAL_DATA_PTR;
+
+static struct env_driver *env_driver_lookup(enum env_location loc)
+{
+	struct env_driver *drv;
+	const int n_ents = ll_entry_count(struct env_driver, env_driver);
+	struct env_driver *entry;
+
+	drv = ll_entry_start(struct env_driver, env_driver);
+	for (entry = drv; entry != drv + n_ents; entry++) {
+		if (loc == entry->location)
+			return entry;
+	}
+
+	/* Not found */
+	return NULL;
+}
+
+static enum env_location env_get_default_location(void)
+{
+	if IS_ENABLED(CONFIG_ENV_IS_IN_DATAFLASH)
+		return ENVL_DATAFLASH;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_EEPROM)
+		return ENVL_EEPROM;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_FAT)
+		return ENVL_FAT;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_FLASH)
+		return ENVL_FLASH;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_MMC)
+		return ENVL_MMC;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_NAND)
+		return ENVL_NAND;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_NVRAM)
+		return ENVL_NVRAM;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_REMOTE)
+		return ENVL_REMOTE;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_SPI_FLASH)
+		return ENVL_SPI_FLASH;
+	else if IS_ENABLED(CONFIG_ENV_IS_IN_UBI)
+		return ENVL_UBI;
+	else if IS_ENABLED(CONFIG_ENV_IS_NOWHERE)
+		return ENVL_NOWHERE;
+	else
+		return ENVL_UNKNOWN;
+}
+
+static struct env_driver *env_driver_lookup_default(void)
+{
+	enum env_location loc = env_get_default_location();
+	struct env_driver *drv;
+
+	drv = env_driver_lookup(loc);
+	if (!drv) {
+		debug("%s: No environment driver for location %d\n", __func__,
+		      loc);
+		return NULL;
+	}
+
+	return drv;
+}
+
+int env_get_char_new(int index)
+{
+	struct env_driver *drv = env_driver_lookup_default();
+	int ret;
+
+	if (!drv)
+		return -ENODEV;
+	if (!drv->get_char)
+		return *(uchar *)(gd->env_addr + index);
+	ret = drv->get_char(index);
+	if (ret < 0) {
+		debug("%s: Environment failed to load (err=%d)\n",
+		      __func__, ret);
+	}
+
+	return ret;
+}
+
+int env_load(void)
+{
+	struct env_driver *drv = env_driver_lookup_default();
+	int ret = 0;
+
+	if (!drv)
+		return -ENODEV;
+	if (!drv->load)
+		return 0;
+	drv->load();  /* TODO(sjg at chromium.org): Make this return an error */
+	if (ret) {
+		debug("%s: Environment failed to load (err=%d)\n", __func__,
+		      ret);
+		return ret;
+	}
+
+	return 0;
+}
+
+int env_save(void)
+{
+	struct env_driver *drv = env_driver_lookup_default();
+	int ret;
+
+	if (!drv)
+		return -ENODEV;
+	if (!drv->save)
+		return -ENOSYS;
+	ret = drv->save();
+	if (ret) {
+		debug("%s: Environment failed to save (err=%d)\n", __func__,
+		      ret);
+		return ret;
+	}
+
+	return 0;
+}
+
+int env_init_new(void)
+{
+	struct env_driver *drv = env_driver_lookup_default();
+	int ret;
+
+	if (!drv)
+		return -ENODEV;
+	if (!drv->init)
+		return -ENOSYS;
+	ret = drv->init();
+	if (ret) {
+		debug("%s: Environment failed to init (err=%d)\n", __func__,
+		      ret);
+		return ret;
+	}
+
+	return 0;
+}
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 21/30] env: Switch over to use environment location drivers
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (19 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 20/30] env: Add a new implementation of environment access Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 22/30] env: Drop common init() functions Simon Glass
                   ` (10 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

Move over to use a the master implementation of the location drivers, with
each method calling out to the appropriate driver.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/dataflash.c | 16 ++++++++--------
 env/eeprom.c    | 16 ++++++++--------
 env/env.c       | 26 ++++++++++++++++++++++++++
 env/ext4.c      | 13 ++++++-------
 env/fat.c       | 17 ++++++++---------
 env/flash.c     | 34 ++++++++++++++++++----------------
 env/mmc.c       | 27 +++++++++++++--------------
 env/nand.c      | 14 +++++++-------
 env/nowhere.c   |  8 ++++----
 env/nvram.c     | 16 ++++++++--------
 env/onenand.c   | 13 ++++++-------
 env/remote.c    | 13 ++++++-------
 env/sata.c      | 13 ++++++-------
 env/sf.c        | 17 ++++++++---------
 env/ubi.c       | 17 ++++++++---------
 15 files changed, 140 insertions(+), 120 deletions(-)

diff --git a/env/dataflash.c b/env/dataflash.c
index 9c59d8e63a..6d95d6409b 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -18,7 +18,7 @@ env_t *env_ptr;
 
 char *env_name_spec = "dataflash";
 
-uchar env_get_char_spec(int index)
+static unsigned char env_dataflash_get_char(int index)
 {
 	uchar c;
 
@@ -27,7 +27,7 @@ uchar env_get_char_spec(int index)
 	return c;
 }
 
-void env_relocate_spec(void)
+static void env_dataflash_load(void)
 {
 	ulong crc, new = 0;
 	unsigned off;
@@ -54,7 +54,7 @@ void env_relocate_spec(void)
 #error No support for redundant environment on dataflash yet!
 #endif
 
-int saveenv(void)
+static int env_dataflash_save(void)
 {
 	env_t env_new;
 	int ret;
@@ -74,7 +74,7 @@ int saveenv(void)
  * We are still running from ROM, so data use is limited.
  * Use a (moderately small) buffer on the stack
  */
-int env_init(void)
+int env_dataflash_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
@@ -85,8 +85,8 @@ int env_init(void)
 
 U_BOOT_ENV_LOCATION(dataflash) = {
 	.location	= ENVL_DATAFLASH,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.get_char	= env_dataflash_get_char,
+	.load		= env_dataflash_load,
+	.save		= env_save_ptr(env_dataflash_save),
+	.init		= env_dataflash_init,
 };
diff --git a/env/eeprom.c b/env/eeprom.c
index 78569b286b..eb69f75f7b 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -65,7 +65,7 @@ static int eeprom_bus_write(unsigned dev_addr, unsigned offset,
 	return rcode;
 }
 
-uchar env_get_char_spec(int index)
+static uchar env_eeprom_get_char(int index)
 {
 	uchar c;
 	unsigned int off = CONFIG_ENV_OFFSET;
@@ -80,7 +80,7 @@ uchar env_get_char_spec(int index)
 	return c;
 }
 
-void env_relocate_spec(void)
+static void env_eeprom_load(void)
 {
 	char buf_env[CONFIG_ENV_SIZE];
 	unsigned int off = CONFIG_ENV_OFFSET;
@@ -188,7 +188,7 @@ void env_relocate_spec(void)
 	env_import(buf_env, 1);
 }
 
-int saveenv(void)
+static int env_eeprom_save(void)
 {
 	env_t	env_new;
 	int	rc;
@@ -237,7 +237,7 @@ int saveenv(void)
  * We are still running from ROM, so data use is limited.
  * Use a (moderately small) buffer on the stack
  */
-int env_init(void)
+static int env_eeprom_init(void)
 {
 	gd->env_addr = (ulong)&default_environment[0];
 	gd->env_valid = ENV_VALID;
@@ -246,8 +246,8 @@ int env_init(void)
 
 U_BOOT_ENV_LOCATION(eeprom) = {
 	.location	= ENVL_EEPROM,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.get_char	= env_eeprom_get_char,
+	.load		= env_eeprom_load,
+	.save		= env_save_ptr(env_eeprom_save),
+	.init		= env_eeprom_init,
 };
diff --git a/env/env.c b/env/env.c
index 9f0a04c33c..608ab7bb39 100644
--- a/env/env.c
+++ b/env/env.c
@@ -143,3 +143,29 @@ int env_init_new(void)
 
 	return 0;
 }
+
+unsigned char env_get_char_spec(int index)
+{
+	int ch;
+
+	ch = env_get_char(index);
+	if (ch < 0)
+		return 0;
+
+	return ch;
+}
+
+void env_relocate_spec(void)
+{
+	env_load();
+}
+
+int saveenv(void)
+{
+	return env_save();
+}
+
+int env_init(void)
+{
+	return env_init_new();
+}
diff --git a/env/ext4.c b/env/ext4.c
index c6a84925d9..aa69219021 100644
--- a/env/ext4.c
+++ b/env/ext4.c
@@ -37,7 +37,7 @@ env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int env_init(void)
+static int env_ext4_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
@@ -47,7 +47,7 @@ int env_init(void)
 }
 
 #ifdef CONFIG_CMD_SAVEENV
-int saveenv(void)
+static int env_ext4_save(void)
 {
 	env_t	env_new;
 	struct blk_desc *dev_desc = NULL;
@@ -88,7 +88,7 @@ int saveenv(void)
 }
 #endif /* CONFIG_CMD_SAVEENV */
 
-void env_relocate_spec(void)
+static void env_ext4_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
 	struct blk_desc *dev_desc = NULL;
@@ -130,8 +130,7 @@ err_env_relocate:
 
 U_BOOT_ENV_LOCATION(ext4) = {
 	.location	= ENVL_EXT4,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.load		= env_ext4_load,
+	.save		= env_save_ptr(env_ext4_save),
+	.init		= env_ext4_init,
 };
diff --git a/env/fat.c b/env/fat.c
index f5014dee32..8f49bc55f3 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -25,7 +25,7 @@ env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int env_init(void)
+static int env_fat_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
@@ -34,8 +34,8 @@ int env_init(void)
 	return 0;
 }
 
-#ifdef CONFIG_CMD_SAVEENV
-int saveenv(void)
+#if defined(CONFIG_CMD_SAVEENV) && !defined(CONFIG_SPL_BUILD)
+static int env_fat_save(void)
 {
 	env_t	env_new;
 	struct blk_desc *dev_desc = NULL;
@@ -72,9 +72,9 @@ int saveenv(void)
 	puts("done\n");
 	return 0;
 }
-#endif /* CONFIG_CMD_SAVEENV */
+#endif /* CONFIG_CMD_SAVEENV && !CONFIG_SPL_BUILD */
 
-void env_relocate_spec(void)
+static void env_fat_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
 	struct blk_desc *dev_desc = NULL;
@@ -111,10 +111,9 @@ err_env_relocate:
 
 U_BOOT_ENV_LOCATION(fat) = {
 	.location	= ENVL_FAT,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
+	.load		= env_fat_load,
 #ifndef CONFIG_SPL_BUILD
-	.save		= env_save_ptr(saveenv),
+	.save		= env_save_ptr(env_fat_save),
 #endif
-	.init		= env_init,
+	.init		= env_fat_init,
 };
diff --git a/env/flash.c b/env/flash.c
index cf068d11ee..6ec9b61883 100644
--- a/env/flash.c
+++ b/env/flash.c
@@ -50,30 +50,30 @@ char *env_name_spec = "Flash";
 #ifdef ENV_IS_EMBEDDED
 env_t *env_ptr = &environment;
 
-static env_t *flash_addr = (env_t *)CONFIG_ENV_ADDR;
+static __maybe_unused env_t *flash_addr = (env_t *)CONFIG_ENV_ADDR;
 
 #else /* ! ENV_IS_EMBEDDED */
 
 env_t *env_ptr = (env_t *)CONFIG_ENV_ADDR;
-static env_t *flash_addr = (env_t *)CONFIG_ENV_ADDR;
+static __maybe_unused env_t *flash_addr = (env_t *)CONFIG_ENV_ADDR;
 #endif /* ENV_IS_EMBEDDED */
 
-#if defined(CMD_SAVEENV) || defined(CONFIG_ENV_ADDR_REDUND)
 /* CONFIG_ENV_ADDR is supposed to be on sector boundary */
-static ulong end_addr = CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE - 1;
-#endif
+static ulong __maybe_unused end_addr =
+		CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE - 1;
 
 #ifdef CONFIG_ENV_ADDR_REDUND
-static env_t *flash_addr_new = (env_t *)CONFIG_ENV_ADDR_REDUND;
+
+static env_t __maybe_unused *flash_addr_new = (env_t *)CONFIG_ENV_ADDR_REDUND;
 
 /* CONFIG_ENV_ADDR_REDUND is supposed to be on sector boundary */
-static ulong end_addr_new = CONFIG_ENV_ADDR_REDUND + CONFIG_ENV_SECT_SIZE - 1;
+static ulong __maybe_unused end_addr_new =
+		CONFIG_ENV_ADDR_REDUND + CONFIG_ENV_SECT_SIZE - 1;
 #endif /* CONFIG_ENV_ADDR_REDUND */
 
-
 #ifdef CONFIG_ENV_ADDR_REDUND
 #ifdef INITENV
-int env_init(void)
+static int env_flash_init(void)
 {
 	int crc1_ok = 0, crc2_ok = 0;
 
@@ -119,7 +119,7 @@ int env_init(void)
 #endif
 
 #ifdef CMD_SAVEENV
-int saveenv(void)
+static int env_flash_save(void)
 {
 	env_t	env_new;
 	char	*saved_data = NULL;
@@ -224,7 +224,7 @@ done:
 #else /* ! CONFIG_ENV_ADDR_REDUND */
 
 #ifdef INITENV
-int env_init(void)
+static int env_flash_init(void)
 {
 	if (crc32(0, env_ptr->data, ENV_SIZE) == env_ptr->crc) {
 		gd->env_addr	= (ulong)&(env_ptr->data);
@@ -239,7 +239,7 @@ int env_init(void)
 #endif
 
 #ifdef CMD_SAVEENV
-int saveenv(void)
+static int env_flash_save(void)
 {
 	env_t	env_new;
 	int	rc = 1;
@@ -309,7 +309,8 @@ done:
 
 #endif /* CONFIG_ENV_ADDR_REDUND */
 
-void env_relocate_spec(void)
+#ifdef LOADENV
+static void env_flash_load(void)
 {
 #ifdef CONFIG_ENV_ADDR_REDUND
 	if (gd->env_addr != (ulong)&(flash_addr->data)) {
@@ -354,16 +355,17 @@ void env_relocate_spec(void)
 
 	env_import((char *)flash_addr, 1);
 }
+#endif /* LOADENV */
 
 U_BOOT_ENV_LOCATION(flash) = {
 	.location	= ENVL_FLASH,
 #ifdef LOADENV
-	.load		= env_relocate_spec,
+	.load		= env_flash_load,
 #endif
 #ifdef CMD_SAVEENV
-	.save		= env_save_ptr(saveenv),
+	.save		= env_save_ptr(env_flash_save),
 #endif
 #ifdef INITENV
-	.init		= env_init,
+	.init		= env_flash_init,
 #endif
 };
diff --git a/env/mmc.c b/env/mmc.c
index 4249182d58..2bdeeb7dc6 100644
--- a/env/mmc.c
+++ b/env/mmc.c
@@ -82,7 +82,7 @@ __weak int mmc_get_env_dev(void)
 	return CONFIG_SYS_MMC_ENV_DEV;
 }
 
-int env_init(void)
+static int env_mmc_init(void)
 {
 	/* use default */
 	gd->env_addr	= (ulong)&default_environment[0];
@@ -145,7 +145,11 @@ static void fini_mmc_for_env(struct mmc *mmc)
 #endif
 }
 
-#ifdef CONFIG_CMD_SAVEENV
+#ifdef CONFIG_ENV_OFFSET_REDUND
+static unsigned char env_flags;
+#endif
+
+#if defined(CONFIG_CMD_SAVEENV) && !defined(CONFIG_SPL_BUILD)
 static inline int write_env(struct mmc *mmc, unsigned long size,
 			    unsigned long offset, const void *buffer)
 {
@@ -160,11 +164,7 @@ static inline int write_env(struct mmc *mmc, unsigned long size,
 	return (n == blk_cnt) ? 0 : -1;
 }
 
-#ifdef CONFIG_ENV_OFFSET_REDUND
-static unsigned char env_flags;
-#endif
-
-int saveenv(void)
+static int env_mmc_save(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(env_t, env_new, 1);
 	int dev = mmc_get_env_dev();
@@ -213,7 +213,7 @@ fini:
 	fini_mmc_for_env(mmc);
 	return ret;
 }
-#endif /* CONFIG_CMD_SAVEENV */
+#endif /* CONFIG_CMD_SAVEENV && !CONFIG_SPL_BUILD */
 
 static inline int read_env(struct mmc *mmc, unsigned long size,
 			   unsigned long offset, const void *buffer)
@@ -230,7 +230,7 @@ static inline int read_env(struct mmc *mmc, unsigned long size,
 }
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
-void env_relocate_spec(void)
+static void env_mmc_load(void)
 {
 #if !defined(ENV_IS_EMBEDDED)
 	struct mmc *mmc;
@@ -314,7 +314,7 @@ err:
 #endif
 }
 #else /* ! CONFIG_ENV_OFFSET_REDUND */
-void env_relocate_spec(void)
+static void env_mmc_load(void)
 {
 #if !defined(ENV_IS_EMBEDDED)
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
@@ -357,10 +357,9 @@ err:
 
 U_BOOT_ENV_LOCATION(mmc) = {
 	.location	= ENVL_MMC,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
+	.load		= env_mmc_load,
 #ifndef CONFIG_SPL_BUILD
-	.save		= env_save_ptr(saveenv),
+	.save		= env_save_ptr(env_mmc_save),
 #endif
-	.init		= env_init,
+	.init		= env_mmc_init,
 };
diff --git a/env/nand.c b/env/nand.c
index 8a046a13d1..6382669913 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -64,7 +64,7 @@ DECLARE_GLOBAL_DATA_PTR;
  * This way the SPL loads not only the U-Boot image from NAND but
  * also the environment.
  */
-int env_init(void)
+static int env_nand_init(void)
 {
 #if defined(ENV_IS_EMBEDDED) || defined(CONFIG_NAND_ENV_DST)
 	int crc1_ok = 0, crc2_ok = 0;
@@ -182,7 +182,7 @@ static int erase_and_write_env(const struct nand_env_location *location,
 static unsigned char env_flags;
 #endif
 
-int saveenv(void)
+static int env_nand_save(void)
 {
 	int	ret = 0;
 	ALLOC_CACHE_ALIGN_BUFFER(env_t, env_new, 1);
@@ -313,7 +313,7 @@ int get_nand_env_oob(struct mtd_info *mtd, unsigned long *result)
 #endif
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
-void env_relocate_spec(void)
+static void env_nand_load(void)
 {
 #if !defined(ENV_IS_EMBEDDED)
 	int read1_fail = 0, read2_fail = 0;
@@ -385,7 +385,7 @@ done:
  * device i.e., nand_dev_desc + 0. This is also the behaviour using
  * the new NAND code.
  */
-void env_relocate_spec(void)
+static void env_nand_load(void)
 {
 #if !defined(ENV_IS_EMBEDDED)
 	int ret;
@@ -418,9 +418,9 @@ void env_relocate_spec(void)
 
 U_BOOT_ENV_LOCATION(nand) = {
 	.location	= ENVL_NAND,
-	.load		= env_relocate_spec,
+	.load		= env_nand_load,
 #if defined(CMD_SAVEENV)
-	.save		= env_save_ptr(saveenv),
+	.save		= env_save_ptr(env_nand_save),
 #endif
-	.init		= env_init,
+	.init		= env_nand_init,
 };
diff --git a/env/nowhere.c b/env/nowhere.c
index c58d299308..6a67ab09ff 100644
--- a/env/nowhere.c
+++ b/env/nowhere.c
@@ -17,7 +17,7 @@ DECLARE_GLOBAL_DATA_PTR;
 
 env_t *env_ptr;
 
-void env_relocate_spec(void)
+static void env_nowhere_load(void)
 {
 }
 
@@ -26,7 +26,7 @@ void env_relocate_spec(void)
  *
  * We are still running from ROM, so data use is limited
  */
-int env_init(void)
+static int env_nowhere_init(void)
 {
 	gd->env_addr	= (ulong)&default_environment[0];
 	gd->env_valid	= 0;
@@ -36,6 +36,6 @@ int env_init(void)
 
 U_BOOT_ENV_LOCATION(nowhere) = {
 	.location	= ENVL_NOWHERE,
-	.load		= env_relocate_spec,
-	.init		= env_init,
+	.load		= env_nowhere_load,
+	.init		= env_nowhere_init,
 };
diff --git a/env/nvram.c b/env/nvram.c
index 4f45eae73e..09091b8eb7 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -44,7 +44,7 @@ env_t *env_ptr = (env_t *)CONFIG_ENV_ADDR;
 char *env_name_spec = "NVRAM";
 
 #ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
-uchar env_get_char_spec(int index)
+static uchar env_nvram_get_char(int index)
 {
 	uchar c;
 
@@ -54,7 +54,7 @@ uchar env_get_char_spec(int index)
 }
 #endif
 
-void env_relocate_spec(void)
+static void env_nvram_load(void)
 {
 	char buf[CONFIG_ENV_SIZE];
 
@@ -66,7 +66,7 @@ void env_relocate_spec(void)
 	env_import(buf, 1);
 }
 
-int saveenv(void)
+static int env_nvram_save(void)
 {
 	env_t	env_new;
 	int	rcode = 0;
@@ -89,7 +89,7 @@ int saveenv(void)
  *
  * We are still running from ROM, so data use is limited
  */
-int env_init(void)
+static int env_nvram_init(void)
 {
 #if defined(CONFIG_SYS_NVRAM_ACCESS_ROUTINE)
 	ulong crc;
@@ -116,9 +116,9 @@ int env_init(void)
 U_BOOT_ENV_LOCATION(nvram) = {
 	.location	= ENVL_NVRAM,
 #ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
-	.get_char	= env_get_char_spec,
+	.get_char	= env_nvram_get_char,
 #endif
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.load		= env_nvram_load,
+	.save		= env_save_ptr(env_nvram_save),
+	.init		= env_nvram_init,
 };
diff --git a/env/onenand.c b/env/onenand.c
index d4dfc02a46..f72aa4b036 100644
--- a/env/onenand.c
+++ b/env/onenand.c
@@ -28,7 +28,7 @@ char *env_name_spec = "OneNAND";
 
 DECLARE_GLOBAL_DATA_PTR;
 
-void env_relocate_spec(void)
+static void env_onenand_load(void)
 {
 	struct mtd_info *mtd = &onenand_mtd;
 #ifdef CONFIG_ENV_ADDR_FLEX
@@ -63,7 +63,7 @@ void env_relocate_spec(void)
 		gd->env_valid = ENV_VALID;
 }
 
-int saveenv(void)
+static int env_onenand_save(void)
 {
 	env_t	env_new;
 	int ret;
@@ -106,7 +106,7 @@ int saveenv(void)
 	return 0;
 }
 
-int env_init(void)
+static int env_onenand_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
@@ -117,8 +117,7 @@ int env_init(void)
 
 U_BOOT_ENV_LOCATION(onenand) = {
 	.location	= ENVL_ONENAND,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.load		= env_onenand_load,
+	.save		= env_save_ptr(env_onenand_save),
+	.init		= env_onenand_init,
 };
diff --git a/env/remote.c b/env/remote.c
index c221d55c4f..0324cba099 100644
--- a/env/remote.c
+++ b/env/remote.c
@@ -25,7 +25,7 @@ DECLARE_GLOBAL_DATA_PTR;
 #define CONFIG_ENV_OFFSET 0
 #endif
 
-int env_init(void)
+static int env_remote_init(void)
 {
 	if (crc32(0, env_ptr->data, ENV_SIZE) == env_ptr->crc) {
 		gd->env_addr = (ulong)&(env_ptr->data);
@@ -39,7 +39,7 @@ int env_init(void)
 }
 
 #ifdef CONFIG_CMD_SAVEENV
-int saveenv(void)
+static int env_remote_save(void)
 {
 #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
 	printf("Can not support the 'saveenv' when boot from SRIO or PCIE!\n");
@@ -50,7 +50,7 @@ int saveenv(void)
 }
 #endif /* CONFIG_CMD_SAVEENV */
 
-void env_relocate_spec(void)
+static void env_remote_load(void)
 {
 #ifndef ENV_IS_EMBEDDED
 	env_import((char *)env_ptr, 1);
@@ -59,8 +59,7 @@ void env_relocate_spec(void)
 
 U_BOOT_ENV_LOCATION(remote) = {
 	.location	= ENVL_REMOTE,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.load		= env_remote_load,
+	.save		= env_save_ptr(env_remote_save),
+	.init		= env_remote_init,
 };
diff --git a/env/sata.c b/env/sata.c
index f7b159a347..6f9099873d 100644
--- a/env/sata.c
+++ b/env/sata.c
@@ -33,7 +33,7 @@ __weak int sata_get_env_dev(void)
 	return CONFIG_SYS_SATA_ENV_DEV;
 }
 
-int env_init(void)
+static int env_sata_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
@@ -56,7 +56,7 @@ static inline int write_env(struct blk_desc *sata, unsigned long size,
 	return (n == blk_cnt) ? 0 : -1;
 }
 
-int saveenv(void)
+static int env_sata_save(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(env_t, env_new, 1);
 	struct blk_desc *sata = NULL;
@@ -102,7 +102,7 @@ static inline int read_env(struct blk_desc *sata, unsigned long size,
 	return (n == blk_cnt) ? 0 : -1;
 }
 
-void env_relocate_spec(void)
+static void env_sata_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
 	struct blk_desc *sata = NULL;
@@ -128,8 +128,7 @@ void env_relocate_spec(void)
 
 U_BOOT_ENV_LOCATION(sata) = {
 	.location	= ENVL_ESATA,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.load		= env_sata_load,
+	.save		= env_save_ptr(env_sata_save),
+	.init		= env_sata_init,
 };
diff --git a/env/sf.c b/env/sf.c
index 8f81cf5e40..82babaab67 100644
--- a/env/sf.c
+++ b/env/sf.c
@@ -84,7 +84,7 @@ static int setup_flash_device(void)
 
 #if defined(CONFIG_ENV_OFFSET_REDUND)
 #ifdef CMD_SAVEENV
-int saveenv(void)
+static int env_sf_save(void)
 {
 	env_t	env_new;
 	char	*saved_buffer = NULL, flag = OBSOLETE_FLAG;
@@ -164,7 +164,7 @@ int saveenv(void)
 }
 #endif /* CMD_SAVEENV */
 
-void env_relocate_spec(void)
+static void env_sf_load(void)
 {
 	int ret;
 	int crc1_ok = 0, crc2_ok = 0;
@@ -249,7 +249,7 @@ out:
 }
 #else
 #ifdef CMD_SAVEENV
-int saveenv(void)
+static int env_sf_save(void)
 {
 	u32	saved_size, saved_offset, sector;
 	char	*saved_buffer = NULL;
@@ -310,7 +310,7 @@ int saveenv(void)
 }
 #endif /* CMD_SAVEENV */
 
-void env_relocate_spec(void)
+static void env_sf_load(void)
 {
 	int ret;
 	char *buf = NULL;
@@ -344,7 +344,7 @@ out:
 }
 #endif
 
-int env_init(void)
+static int env_sf_init(void)
 {
 	/* SPI flash isn't usable before relocation */
 	gd->env_addr = (ulong)&default_environment[0];
@@ -355,10 +355,9 @@ int env_init(void)
 
 U_BOOT_ENV_LOCATION(sf) = {
 	.location	= ENVL_SPI_FLASH,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
+	.load		= env_sf_load,
 #ifdef CMD_SAVEENV
-	.save		= env_save_ptr(saveenv),
+	.save		= env_save_ptr(env_sf_save),
 #endif
-	.init		= env_init,
+	.init		= env_sf_init,
 };
diff --git a/env/ubi.c b/env/ubi.c
index 16f6d74d2e..82a9c3bd03 100644
--- a/env/ubi.c
+++ b/env/ubi.c
@@ -22,7 +22,7 @@ env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int env_init(void)
+static int env_ubi_init(void)
 {
 	/* use default */
 	gd->env_addr = (ulong)&default_environment[0];
@@ -35,7 +35,7 @@ int env_init(void)
 #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT
 static unsigned char env_flags;
 
-int saveenv(void)
+static int env_ubi_save(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(env_t, env_new, 1);
 	int ret;
@@ -79,7 +79,7 @@ int saveenv(void)
 	return 0;
 }
 #else /* ! CONFIG_SYS_REDUNDAND_ENVIRONMENT */
-int saveenv(void)
+static int env_ubi_save(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(env_t, env_new, 1);
 	int ret;
@@ -108,7 +108,7 @@ int saveenv(void)
 #endif /* CONFIG_CMD_SAVEENV */
 
 #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT
-void env_relocate_spec(void)
+static void env_ubi_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, env1_buf, CONFIG_ENV_SIZE);
 	ALLOC_CACHE_ALIGN_BUFFER(char, env2_buf, CONFIG_ENV_SIZE);
@@ -181,7 +181,7 @@ void env_relocate_spec(void)
 	env_import((char *)ep, 0);
 }
 #else /* ! CONFIG_SYS_REDUNDAND_ENVIRONMENT */
-void env_relocate_spec(void)
+static void env_ubi_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
 
@@ -215,8 +215,7 @@ void env_relocate_spec(void)
 
 U_BOOT_ENV_LOCATION(ubi) = {
 	.location	= ENVL_UBI,
-	.get_char	= env_get_char_spec,
-	.load		= env_relocate_spec,
-	.save		= env_save_ptr(saveenv),
-	.init		= env_init,
+	.load		= env_ubi_load,
+	.save		= env_save_ptr(env_ubi_save),
+	.init		= env_ubi_init,
 };
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 22/30] env: Drop common init() functions
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (20 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 21/30] env: Switch over to use environment location drivers Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 23/30] env: Drop the env_name_spec global Simon Glass
                   ` (9 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

Most of the init() implementations just use the default environment.
Adjust env_init_new() to do this automatically, and drop the redundant
code.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/dataflash.c       | 16 ----------------
 env/eeprom.c          | 14 --------------
 env/env.c             | 14 +++++++++-----
 env/ext4.c            | 10 ----------
 env/fat.c             | 10 ----------
 env/mmc.c             | 10 ----------
 env/nowhere.c         | 19 -------------------
 env/onenand.c         | 10 ----------
 env/remote.c          |  4 +---
 env/sata.c            | 10 ----------
 env/sf.c              | 10 ----------
 env/ubi.c             | 10 ----------
 include/environment.h |  3 ++-
 13 files changed, 12 insertions(+), 128 deletions(-)

diff --git a/env/dataflash.c b/env/dataflash.c
index 6d95d6409b..8ab482b3b4 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -68,25 +68,9 @@ static int env_dataflash_save(void)
 				CONFIG_ENV_SIZE);
 }
 
-/*
- * Initialize environment use
- *
- * We are still running from ROM, so data use is limited.
- * Use a (moderately small) buffer on the stack
- */
-int env_dataflash_init(void)
-{
-	/* use default */
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-
-	return 0;
-}
-
 U_BOOT_ENV_LOCATION(dataflash) = {
 	.location	= ENVL_DATAFLASH,
 	.get_char	= env_dataflash_get_char,
 	.load		= env_dataflash_load,
 	.save		= env_save_ptr(env_dataflash_save),
-	.init		= env_dataflash_init,
 };
diff --git a/env/eeprom.c b/env/eeprom.c
index eb69f75f7b..3cc412620a 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -231,23 +231,9 @@ static int env_eeprom_save(void)
 	return rc;
 }
 
-/*
- * Initialize Environment use
- *
- * We are still running from ROM, so data use is limited.
- * Use a (moderately small) buffer on the stack
- */
-static int env_eeprom_init(void)
-{
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-	return 0;
-}
-
 U_BOOT_ENV_LOCATION(eeprom) = {
 	.location	= ENVL_EEPROM,
 	.get_char	= env_eeprom_get_char,
 	.load		= env_eeprom_load,
 	.save		= env_save_ptr(env_eeprom_save),
-	.init		= env_eeprom_init,
 };
diff --git a/env/env.c b/env/env.c
index 608ab7bb39..73547002d1 100644
--- a/env/env.c
+++ b/env/env.c
@@ -128,14 +128,18 @@ int env_save(void)
 int env_init_new(void)
 {
 	struct env_driver *drv = env_driver_lookup_default();
-	int ret;
+	int ret = -ENOSYS;
 
 	if (!drv)
 		return -ENODEV;
-	if (!drv->init)
-		return -ENOSYS;
-	ret = drv->init();
-	if (ret) {
+	if (drv->init)
+		ret = drv->init();
+	if (ret == -ENOENT) {
+		gd->env_addr = (ulong)&default_environment[0];
+		gd->env_valid = ENV_VALID;
+
+		return 0;
+	} else if (ret) {
 		debug("%s: Environment failed to init (err=%d)\n", __func__,
 		      ret);
 		return ret;
diff --git a/env/ext4.c b/env/ext4.c
index aa69219021..25a5cbecdd 100644
--- a/env/ext4.c
+++ b/env/ext4.c
@@ -37,15 +37,6 @@ env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
 
-static int env_ext4_init(void)
-{
-	/* use default */
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-
-	return 0;
-}
-
 #ifdef CONFIG_CMD_SAVEENV
 static int env_ext4_save(void)
 {
@@ -132,5 +123,4 @@ U_BOOT_ENV_LOCATION(ext4) = {
 	.location	= ENVL_EXT4,
 	.load		= env_ext4_load,
 	.save		= env_save_ptr(env_ext4_save),
-	.init		= env_ext4_init,
 };
diff --git a/env/fat.c b/env/fat.c
index 8f49bc55f3..146ecbab89 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -25,15 +25,6 @@ env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
 
-static int env_fat_init(void)
-{
-	/* use default */
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-
-	return 0;
-}
-
 #if defined(CONFIG_CMD_SAVEENV) && !defined(CONFIG_SPL_BUILD)
 static int env_fat_save(void)
 {
@@ -115,5 +106,4 @@ U_BOOT_ENV_LOCATION(fat) = {
 #ifndef CONFIG_SPL_BUILD
 	.save		= env_save_ptr(env_fat_save),
 #endif
-	.init		= env_fat_init,
 };
diff --git a/env/mmc.c b/env/mmc.c
index 2bdeeb7dc6..2dd0382bfb 100644
--- a/env/mmc.c
+++ b/env/mmc.c
@@ -82,15 +82,6 @@ __weak int mmc_get_env_dev(void)
 	return CONFIG_SYS_MMC_ENV_DEV;
 }
 
-static int env_mmc_init(void)
-{
-	/* use default */
-	gd->env_addr	= (ulong)&default_environment[0];
-	gd->env_valid	= ENV_VALID;
-
-	return 0;
-}
-
 #ifdef CONFIG_SYS_MMC_ENV_PART
 __weak uint mmc_get_env_part(struct mmc *mmc)
 {
@@ -361,5 +352,4 @@ U_BOOT_ENV_LOCATION(mmc) = {
 #ifndef CONFIG_SPL_BUILD
 	.save		= env_save_ptr(env_mmc_save),
 #endif
-	.init		= env_mmc_init,
 };
diff --git a/env/nowhere.c b/env/nowhere.c
index 6a67ab09ff..1d2ae85a57 100644
--- a/env/nowhere.c
+++ b/env/nowhere.c
@@ -17,25 +17,6 @@ DECLARE_GLOBAL_DATA_PTR;
 
 env_t *env_ptr;
 
-static void env_nowhere_load(void)
-{
-}
-
-/*
- * Initialize Environment use
- *
- * We are still running from ROM, so data use is limited
- */
-static int env_nowhere_init(void)
-{
-	gd->env_addr	= (ulong)&default_environment[0];
-	gd->env_valid	= 0;
-
-	return 0;
-}
-
 U_BOOT_ENV_LOCATION(nowhere) = {
 	.location	= ENVL_NOWHERE,
-	.load		= env_nowhere_load,
-	.init		= env_nowhere_init,
 };
diff --git a/env/onenand.c b/env/onenand.c
index f72aa4b036..cb1ab53216 100644
--- a/env/onenand.c
+++ b/env/onenand.c
@@ -106,18 +106,8 @@ static int env_onenand_save(void)
 	return 0;
 }
 
-static int env_onenand_init(void)
-{
-	/* use default */
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-
-	return 0;
-}
-
 U_BOOT_ENV_LOCATION(onenand) = {
 	.location	= ENVL_ONENAND,
 	.load		= env_onenand_load,
 	.save		= env_save_ptr(env_onenand_save),
-	.init		= env_onenand_init,
 };
diff --git a/env/remote.c b/env/remote.c
index 0324cba099..c5dce5b966 100644
--- a/env/remote.c
+++ b/env/remote.c
@@ -33,9 +33,7 @@ static int env_remote_init(void)
 		return 0;
 	}
 
-	gd->env_addr = (ulong)default_environment;
-	gd->env_valid = 0;
-	return 0;
+	return -ENOENT;
 }
 
 #ifdef CONFIG_CMD_SAVEENV
diff --git a/env/sata.c b/env/sata.c
index 6f9099873d..a5ff54c287 100644
--- a/env/sata.c
+++ b/env/sata.c
@@ -33,15 +33,6 @@ __weak int sata_get_env_dev(void)
 	return CONFIG_SYS_SATA_ENV_DEV;
 }
 
-static int env_sata_init(void)
-{
-	/* use default */
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-
-	return 0;
-}
-
 #ifdef CONFIG_CMD_SAVEENV
 static inline int write_env(struct blk_desc *sata, unsigned long size,
 			    unsigned long offset, void *buffer)
@@ -130,5 +121,4 @@ U_BOOT_ENV_LOCATION(sata) = {
 	.location	= ENVL_ESATA,
 	.load		= env_sata_load,
 	.save		= env_save_ptr(env_sata_save),
-	.init		= env_sata_init,
 };
diff --git a/env/sf.c b/env/sf.c
index 82babaab67..a07641b7d4 100644
--- a/env/sf.c
+++ b/env/sf.c
@@ -344,20 +344,10 @@ out:
 }
 #endif
 
-static int env_sf_init(void)
-{
-	/* SPI flash isn't usable before relocation */
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-
-	return 0;
-}
-
 U_BOOT_ENV_LOCATION(sf) = {
 	.location	= ENVL_SPI_FLASH,
 	.load		= env_sf_load,
 #ifdef CMD_SAVEENV
 	.save		= env_save_ptr(env_sf_save),
 #endif
-	.init		= env_sf_init,
 };
diff --git a/env/ubi.c b/env/ubi.c
index 82a9c3bd03..773fcf0ed2 100644
--- a/env/ubi.c
+++ b/env/ubi.c
@@ -22,15 +22,6 @@ env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
 
-static int env_ubi_init(void)
-{
-	/* use default */
-	gd->env_addr = (ulong)&default_environment[0];
-	gd->env_valid = ENV_VALID;
-
-	return 0;
-}
-
 #ifdef CONFIG_CMD_SAVEENV
 #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT
 static unsigned char env_flags;
@@ -217,5 +208,4 @@ U_BOOT_ENV_LOCATION(ubi) = {
 	.location	= ENVL_UBI,
 	.load		= env_ubi_load,
 	.save		= env_save_ptr(env_ubi_save),
-	.init		= env_ubi_init,
 };
diff --git a/include/environment.h b/include/environment.h
index c3a75c8a66..87727f2b29 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -259,7 +259,8 @@ struct env_driver {
 	 *
 	 * This method is optional.
 	 *
-	 * @return 0 if OK, -ve on error
+	 * @return 0 if OK, -ENOENT if no initial environment could be found,
+	 * other -ve on error
 	 */
 	int (*init)(void);
 };
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 23/30] env: Drop the env_name_spec global
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (21 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 22/30] env: Drop common init() functions Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 24/30] env: Drop unused env_ptr variables Simon Glass
                   ` (8 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

Add a name to the driver and use that instead of the global variable
declared by each driver.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 cmd/nvedit.c          |  4 +++-
 env/dataflash.c       |  3 +--
 env/eeprom.c          |  3 +--
 env/env.c             |  2 +-
 env/ext4.c            |  3 +--
 env/fat.c             |  3 +--
 env/flash.c           |  3 +--
 env/mmc.c             |  3 +--
 env/nand.c            |  3 +--
 env/nowhere.c         |  1 +
 env/nvram.c           |  3 +--
 env/onenand.c         |  3 +--
 env/remote.c          |  3 +--
 env/sata.c            |  3 +--
 env/sf.c              |  3 +--
 env/ubi.c             |  2 --
 include/environment.h | 19 +++++++++++++++----
 17 files changed, 32 insertions(+), 32 deletions(-)

diff --git a/cmd/nvedit.c b/cmd/nvedit.c
index cd17db6409..75df997592 100644
--- a/cmd/nvedit.c
+++ b/cmd/nvedit.c
@@ -706,7 +706,9 @@ ulong getenv_ulong(const char *name, int base, ulong default_val)
 static int do_env_save(cmd_tbl_t *cmdtp, int flag, int argc,
 		       char * const argv[])
 {
-	printf("Saving Environment to %s...\n", env_name_spec);
+	struct env_driver *env = env_driver_lookup_default();
+
+	printf("Saving Environment to %s...\n", env->name);
 
 	return saveenv() ? 1 : 0;
 }
diff --git a/env/dataflash.c b/env/dataflash.c
index 8ab482b3b4..9421a6a5b2 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -16,8 +16,6 @@ DECLARE_GLOBAL_DATA_PTR;
 
 env_t *env_ptr;
 
-char *env_name_spec = "dataflash";
-
 static unsigned char env_dataflash_get_char(int index)
 {
 	uchar c;
@@ -70,6 +68,7 @@ static int env_dataflash_save(void)
 
 U_BOOT_ENV_LOCATION(dataflash) = {
 	.location	= ENVL_DATAFLASH,
+	ENV_NAME("dataflash")
 	.get_char	= env_dataflash_get_char,
 	.load		= env_dataflash_load,
 	.save		= env_save_ptr(env_dataflash_save),
diff --git a/env/eeprom.c b/env/eeprom.c
index 3cc412620a..2c795b9236 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -23,8 +23,6 @@ DECLARE_GLOBAL_DATA_PTR;
 
 env_t *env_ptr;
 
-char *env_name_spec = "EEPROM";
-
 static int eeprom_bus_read(unsigned dev_addr, unsigned offset,
 			   uchar *buffer, unsigned cnt)
 {
@@ -233,6 +231,7 @@ static int env_eeprom_save(void)
 
 U_BOOT_ENV_LOCATION(eeprom) = {
 	.location	= ENVL_EEPROM,
+	ENV_NAME("EEPROM")
 	.get_char	= env_eeprom_get_char,
 	.load		= env_eeprom_load,
 	.save		= env_save_ptr(env_eeprom_save),
diff --git a/env/env.c b/env/env.c
index 73547002d1..a649457270 100644
--- a/env/env.c
+++ b/env/env.c
@@ -54,7 +54,7 @@ static enum env_location env_get_default_location(void)
 		return ENVL_UNKNOWN;
 }
 
-static struct env_driver *env_driver_lookup_default(void)
+struct env_driver *env_driver_lookup_default(void)
 {
 	enum env_location loc = env_get_default_location();
 	struct env_driver *drv;
diff --git a/env/ext4.c b/env/ext4.c
index 25a5cbecdd..5acdf0eda0 100644
--- a/env/ext4.c
+++ b/env/ext4.c
@@ -31,8 +31,6 @@
 #include <ext4fs.h>
 #include <mmc.h>
 
-char *env_name_spec = "EXT4";
-
 env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -121,6 +119,7 @@ err_env_relocate:
 
 U_BOOT_ENV_LOCATION(ext4) = {
 	.location	= ENVL_EXT4,
+	ENV_NAME("EXT4")
 	.load		= env_ext4_load,
 	.save		= env_save_ptr(env_ext4_save),
 };
diff --git a/env/fat.c b/env/fat.c
index 146ecbab89..cf33549fda 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -19,8 +19,6 @@
 #include <fat.h>
 #include <mmc.h>
 
-char *env_name_spec = "FAT";
-
 env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -102,6 +100,7 @@ err_env_relocate:
 
 U_BOOT_ENV_LOCATION(fat) = {
 	.location	= ENVL_FAT,
+	ENV_NAME("FAT")
 	.load		= env_fat_load,
 #ifndef CONFIG_SPL_BUILD
 	.save		= env_save_ptr(env_fat_save),
diff --git a/env/flash.c b/env/flash.c
index 6ec9b61883..2d72c51622 100644
--- a/env/flash.c
+++ b/env/flash.c
@@ -45,8 +45,6 @@ DECLARE_GLOBAL_DATA_PTR;
 #define INITENV
 #endif
 
-char *env_name_spec = "Flash";
-
 #ifdef ENV_IS_EMBEDDED
 env_t *env_ptr = &environment;
 
@@ -359,6 +357,7 @@ static void env_flash_load(void)
 
 U_BOOT_ENV_LOCATION(flash) = {
 	.location	= ENVL_FLASH,
+	ENV_NAME("Flash")
 #ifdef LOADENV
 	.load		= env_flash_load,
 #endif
diff --git a/env/mmc.c b/env/mmc.c
index 2dd0382bfb..ae10b5b1f8 100644
--- a/env/mmc.c
+++ b/env/mmc.c
@@ -23,8 +23,6 @@
 #error CONFIG_ENV_SIZE_REDUND should be the same as CONFIG_ENV_SIZE
 #endif
 
-char *env_name_spec = "MMC";
-
 #ifdef ENV_IS_EMBEDDED
 env_t *env_ptr = &environment;
 #else /* ! ENV_IS_EMBEDDED */
@@ -348,6 +346,7 @@ err:
 
 U_BOOT_ENV_LOCATION(mmc) = {
 	.location	= ENVL_MMC,
+	ENV_NAME("MMC")
 	.load		= env_mmc_load,
 #ifndef CONFIG_SPL_BUILD
 	.save		= env_save_ptr(env_mmc_save),
diff --git a/env/nand.c b/env/nand.c
index 6382669913..98b1dfc618 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -40,8 +40,6 @@
 #define CONFIG_ENV_RANGE	CONFIG_ENV_SIZE
 #endif
 
-char *env_name_spec = "NAND";
-
 #if defined(ENV_IS_EMBEDDED)
 env_t *env_ptr = &environment;
 #elif defined(CONFIG_NAND_ENV_DST)
@@ -418,6 +416,7 @@ static void env_nand_load(void)
 
 U_BOOT_ENV_LOCATION(nand) = {
 	.location	= ENVL_NAND,
+	ENV_NAME("NAND")
 	.load		= env_nand_load,
 #if defined(CMD_SAVEENV)
 	.save		= env_save_ptr(env_nand_save),
diff --git a/env/nowhere.c b/env/nowhere.c
index 1d2ae85a57..1a17d6978b 100644
--- a/env/nowhere.c
+++ b/env/nowhere.c
@@ -19,4 +19,5 @@ env_t *env_ptr;
 
 U_BOOT_ENV_LOCATION(nowhere) = {
 	.location	= ENVL_NOWHERE,
+	ENV_NAME("nowhere")
 };
diff --git a/env/nvram.c b/env/nvram.c
index 09091b8eb7..0f4b491fd3 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -41,8 +41,6 @@ env_t *env_ptr;
 env_t *env_ptr = (env_t *)CONFIG_ENV_ADDR;
 #endif
 
-char *env_name_spec = "NVRAM";
-
 #ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
 static uchar env_nvram_get_char(int index)
 {
@@ -115,6 +113,7 @@ static int env_nvram_init(void)
 
 U_BOOT_ENV_LOCATION(nvram) = {
 	.location	= ENVL_NVRAM,
+	ENV_NAME("NVRAM")
 #ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
 	.get_char	= env_nvram_get_char,
 #endif
diff --git a/env/onenand.c b/env/onenand.c
index cb1ab53216..319f553262 100644
--- a/env/onenand.c
+++ b/env/onenand.c
@@ -21,8 +21,6 @@
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/onenand.h>
 
-char *env_name_spec = "OneNAND";
-
 #define ONENAND_MAX_ENV_SIZE	CONFIG_ENV_SIZE
 #define ONENAND_ENV_SIZE(mtd)	(ONENAND_MAX_ENV_SIZE - ENV_HEADER_SIZE)
 
@@ -108,6 +106,7 @@ static int env_onenand_save(void)
 
 U_BOOT_ENV_LOCATION(onenand) = {
 	.location	= ENVL_ONENAND,
+	ENV_NAME("OneNAND")
 	.load		= env_onenand_load,
 	.save		= env_save_ptr(env_onenand_save),
 };
diff --git a/env/remote.c b/env/remote.c
index c5dce5b966..0d8865bd67 100644
--- a/env/remote.c
+++ b/env/remote.c
@@ -11,8 +11,6 @@
 #include <environment.h>
 #include <linux/stddef.h>
 
-char *env_name_spec = "Remote";
-
 #ifdef ENV_IS_EMBEDDED
 env_t *env_ptr = &environment;
 #else /* ! ENV_IS_EMBEDDED */
@@ -57,6 +55,7 @@ static void env_remote_load(void)
 
 U_BOOT_ENV_LOCATION(remote) = {
 	.location	= ENVL_REMOTE,
+	ENV_NAME("Remote")
 	.load		= env_remote_load,
 	.save		= env_save_ptr(env_remote_save),
 	.init		= env_remote_init,
diff --git a/env/sata.c b/env/sata.c
index a5ff54c287..16d8f939db 100644
--- a/env/sata.c
+++ b/env/sata.c
@@ -24,8 +24,6 @@
 #error CONFIG_ENV_OFFSET or CONFIG_ENV_SIZE not defined
 #endif
 
-char *env_name_spec = "SATA";
-
 DECLARE_GLOBAL_DATA_PTR;
 
 __weak int sata_get_env_dev(void)
@@ -119,6 +117,7 @@ static void env_sata_load(void)
 
 U_BOOT_ENV_LOCATION(sata) = {
 	.location	= ENVL_ESATA,
+	ENV_NAME("SATA")
 	.load		= env_sata_load,
 	.save		= env_save_ptr(env_sata_save),
 };
diff --git a/env/sf.c b/env/sf.c
index a07641b7d4..07386c629a 100644
--- a/env/sf.c
+++ b/env/sf.c
@@ -48,8 +48,6 @@ static ulong env_new_offset	= CONFIG_ENV_OFFSET_REDUND;
 
 DECLARE_GLOBAL_DATA_PTR;
 
-char *env_name_spec = "SPI Flash";
-
 static struct spi_flash *env_flash;
 
 static int setup_flash_device(void)
@@ -346,6 +344,7 @@ out:
 
 U_BOOT_ENV_LOCATION(sf) = {
 	.location	= ENVL_SPI_FLASH,
+	ENV_NAME("SPI Flash")
 	.load		= env_sf_load,
 #ifdef CMD_SAVEENV
 	.save		= env_save_ptr(env_sf_save),
diff --git a/env/ubi.c b/env/ubi.c
index 773fcf0ed2..0f1e5bcd22 100644
--- a/env/ubi.c
+++ b/env/ubi.c
@@ -16,8 +16,6 @@
 #include <ubi_uboot.h>
 #undef crc32
 
-char *env_name_spec = "UBI";
-
 env_t *env_ptr;
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/include/environment.h b/include/environment.h
index 87727f2b29..03fe00f215 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -143,10 +143,6 @@ extern unsigned long nand_env_oob_offset;
 # define ENV_HEADER_SIZE	(sizeof(uint32_t))
 #endif
 
-#if defined(CONFIG_CMD_SAVEENV) && !defined(CONFIG_ENV_IS_NOWHERE)
-extern char *env_name_spec;
-#endif
-
 #ifdef CONFIG_ENV_AES
 /* Make sure the payload is multiple of AES block size */
 #define ENV_SIZE ((CONFIG_ENV_SIZE - ENV_HEADER_SIZE) & ~(16 - 1))
@@ -224,6 +220,7 @@ enum env_location {
 };
 
 struct env_driver {
+	const char *name;
 	enum env_location location;
 
 	/**
@@ -269,6 +266,13 @@ struct env_driver {
 #define U_BOOT_ENV_LOCATION(__name)					\
 	ll_entry_declare(struct env_driver, __name, env_driver)
 
+/* Declare the name of a location */
+#ifdef CONFIG_CMD_SAVEENV
+#define ENV_NAME(_name) .name = _name,
+#else
+#define ENV_NAME(_name)
+#endif
+
 #ifdef CONFIG_CMD_SAVEENV
 #define env_save_ptr(x) x
 #else
@@ -298,6 +302,13 @@ int env_import(const char *buf, int check);
 /* Export from hash table into binary representation */
 int env_export(env_t *env_out);
 
+/**
+ * env_driver_lookup_default() - Look up the default environment driver
+ *
+ * @return pointer to driver, or NULL if none (which should not happen)
+ */
+struct env_driver *env_driver_lookup_default(void);
+
 #endif /* DO_DEPS_ONLY */
 
 #endif /* _ENVIRONMENT_H_ */
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 24/30] env: Drop unused env_ptr variables
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (22 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 23/30] env: Drop the env_name_spec global Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 25/30] env: Drop env_init_new() Simon Glass
                   ` (7 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

This variable is declared as a global in most environment location
drivers. But it is not used outside the drivers and most of the
declarations are unnecessary.

Also some drivers call free() on env_ptr which seems wrong since it is
not in the heap.

Drop the variable where possible, and all calls to free().

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/dataflash.c | 2 --
 env/eeprom.c    | 4 ----
 env/ext4.c      | 2 --
 env/fat.c       | 2 --
 env/mmc.c       | 8 --------
 env/nand.c      | 2 --
 env/nowhere.c   | 2 --
 env/nvram.c     | 1 -
 env/ubi.c       | 2 --
 9 files changed, 25 deletions(-)

diff --git a/env/dataflash.c b/env/dataflash.c
index 9421a6a5b2..28dcf6fa1c 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -14,8 +14,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-env_t *env_ptr;
-
 static unsigned char env_dataflash_get_char(int index)
 {
 	uchar c;
diff --git a/env/eeprom.c b/env/eeprom.c
index 2c795b9236..39adccabbe 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -21,8 +21,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-env_t *env_ptr;
-
 static int eeprom_bus_read(unsigned dev_addr, unsigned offset,
 			   uchar *buffer, unsigned cnt)
 {
@@ -196,8 +194,6 @@ static int env_eeprom_save(void)
 	char flag_obsolete	= OBSOLETE_FLAG;
 #endif
 
-	BUG_ON(env_ptr != NULL);
-
 	rc = env_export(&env_new);
 	if (rc)
 		return rc;
diff --git a/env/ext4.c b/env/ext4.c
index 5acdf0eda0..ee073a8b7c 100644
--- a/env/ext4.c
+++ b/env/ext4.c
@@ -31,8 +31,6 @@
 #include <ext4fs.h>
 #include <mmc.h>
 
-env_t *env_ptr;
-
 DECLARE_GLOBAL_DATA_PTR;
 
 #ifdef CONFIG_CMD_SAVEENV
diff --git a/env/fat.c b/env/fat.c
index cf33549fda..323288a0f0 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -19,8 +19,6 @@
 #include <fat.h>
 #include <mmc.h>
 
-env_t *env_ptr;
-
 DECLARE_GLOBAL_DATA_PTR;
 
 #if defined(CONFIG_CMD_SAVEENV) && !defined(CONFIG_SPL_BUILD)
diff --git a/env/mmc.c b/env/mmc.c
index ae10b5b1f8..cf85bc232f 100644
--- a/env/mmc.c
+++ b/env/mmc.c
@@ -23,12 +23,6 @@
 #error CONFIG_ENV_SIZE_REDUND should be the same as CONFIG_ENV_SIZE
 #endif
 
-#ifdef ENV_IS_EMBEDDED
-env_t *env_ptr = &environment;
-#else /* ! ENV_IS_EMBEDDED */
-env_t *env_ptr;
-#endif /* ENV_IS_EMBEDDED */
-
 DECLARE_GLOBAL_DATA_PTR;
 
 #if !defined(CONFIG_ENV_OFFSET)
@@ -284,8 +278,6 @@ static void env_mmc_load(void)
 			gd->env_valid = ENV_VALID;
 	}
 
-	free(env_ptr);
-
 	if (gd->env_valid == ENV_VALID)
 		ep = tmp_env1;
 	else
diff --git a/env/nand.c b/env/nand.c
index 98b1dfc618..695957ea1c 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -361,8 +361,6 @@ static void env_nand_load(void)
 			gd->env_valid = ENV_VALID;
 	}
 
-	free(env_ptr);
-
 	if (gd->env_valid == ENV_VALID)
 		ep = tmp_env1;
 	else
diff --git a/env/nowhere.c b/env/nowhere.c
index 1a17d6978b..d60de494e6 100644
--- a/env/nowhere.c
+++ b/env/nowhere.c
@@ -15,8 +15,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-env_t *env_ptr;
-
 U_BOOT_ENV_LOCATION(nowhere) = {
 	.location	= ENVL_NOWHERE,
 	ENV_NAME("nowhere")
diff --git a/env/nvram.c b/env/nvram.c
index 0f4b491fd3..ac389ace62 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -36,7 +36,6 @@ DECLARE_GLOBAL_DATA_PTR;
 #ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
 extern void *nvram_read(void *dest, const long src, size_t count);
 extern void nvram_write(long dest, const void *src, size_t count);
-env_t *env_ptr;
 #else
 env_t *env_ptr = (env_t *)CONFIG_ENV_ADDR;
 #endif
diff --git a/env/ubi.c b/env/ubi.c
index 0f1e5bcd22..65be2b1bbf 100644
--- a/env/ubi.c
+++ b/env/ubi.c
@@ -16,8 +16,6 @@
 #include <ubi_uboot.h>
 #undef crc32
 
-env_t *env_ptr;
-
 DECLARE_GLOBAL_DATA_PTR;
 
 #ifdef CONFIG_CMD_SAVEENV
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 25/30] env: Drop env_init_new()
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (23 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 24/30] env: Drop unused env_ptr variables Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 26/30] env: Drop env_get_char_spec() Simon Glass
                   ` (6 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

Now that env_init() is only defined once we can drop the env_init_new()
name and just use env_init().

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/env.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/env/env.c b/env/env.c
index a649457270..70ce2857c3 100644
--- a/env/env.c
+++ b/env/env.c
@@ -125,7 +125,7 @@ int env_save(void)
 	return 0;
 }
 
-int env_init_new(void)
+int env_init(void)
 {
 	struct env_driver *drv = env_driver_lookup_default();
 	int ret = -ENOSYS;
@@ -169,7 +169,3 @@ int saveenv(void)
 	return env_save();
 }
 
-int env_init(void)
-{
-	return env_init_new();
-}
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 26/30] env: Drop env_get_char_spec()
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (24 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 25/30] env: Drop env_init_new() Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 27/30] env: Drop env_relocate_spec() in favour of env_load() Simon Glass
                   ` (5 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

We only have a single implementation of this function now and it is called
env_get_char(). Drop the old function and the weak version.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/common.c          | 14 --------------
 env/env.c             | 15 +++------------
 include/environment.h | 14 ++++++++++----
 3 files changed, 13 insertions(+), 30 deletions(-)

diff --git a/env/common.c b/env/common.c
index 7ed4bb28dd..9f1d21adbd 100644
--- a/env/common.c
+++ b/env/common.c
@@ -27,20 +27,6 @@ struct hsearch_data env_htab = {
 	.change_ok = env_flags_validate,
 };
 
-__weak uchar env_get_char_spec(int index)
-{
-	return *(uchar *)(gd->env_addr + index);
-}
-
-uchar env_get_char(int index)
-{
-	/* if env is not set up, or crc was bad, use the default environment */
-	if (!gd->env_valid)
-		return default_environment[index];
-	else
-		return env_get_char_spec(index);
-}
-
 /*
  * Read an environment variable as a boolean
  * Return -1 if variable does not exist (default to true)
diff --git a/env/env.c b/env/env.c
index 70ce2857c3..809889f55e 100644
--- a/env/env.c
+++ b/env/env.c
@@ -69,11 +69,13 @@ struct env_driver *env_driver_lookup_default(void)
 	return drv;
 }
 
-int env_get_char_new(int index)
+int env_get_char(int index)
 {
 	struct env_driver *drv = env_driver_lookup_default();
 	int ret;
 
+	if (!gd->env_valid)
+		return default_environment[index];
 	if (!drv)
 		return -ENODEV;
 	if (!drv->get_char)
@@ -148,17 +150,6 @@ int env_init(void)
 	return 0;
 }
 
-unsigned char env_get_char_spec(int index)
-{
-	int ch;
-
-	ch = env_get_char(index);
-	if (ch < 0)
-		return 0;
-
-	return ch;
-}
-
 void env_relocate_spec(void)
 {
 	env_load();
diff --git a/include/environment.h b/include/environment.h
index 03fe00f215..a494500825 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -171,7 +171,6 @@ extern const unsigned char default_environment[];
 extern env_t *env_ptr;
 
 extern void env_relocate_spec(void);
-extern unsigned char env_get_char_spec(int);
 
 #if defined(CONFIG_NEEDS_MANUAL_RELOC)
 extern void env_reloc(void);
@@ -281,9 +280,6 @@ struct env_driver {
 
 extern struct hsearch_data env_htab;
 
-/* Function that returns a character from the environment */
-unsigned char env_get_char(int);
-
 /* Function that updates CRC of the enironment */
 void env_crc_update(void);
 
@@ -309,6 +305,16 @@ int env_export(env_t *env_out);
  */
 struct env_driver *env_driver_lookup_default(void);
 
+/**
+ * env_get_char() - Get a character from the early environment
+ *
+ * This reads from the pre-relocation environemnt
+ *
+ * @index: Index of character to read (0 = first)
+ * @return character read, or -ve on error
+ */
+int env_get_char(int index);
+
 #endif /* DO_DEPS_ONLY */
 
 #endif /* _ENVIRONMENT_H_ */
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 27/30] env: Drop env_relocate_spec() in favour of env_load()
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (25 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 26/30] env: Drop env_get_char_spec() Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 28/30] env: Drop saveenv() in favour of env_save() Simon Glass
                   ` (4 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

This is a strange name for a function that loads the environment. There is
now only one implementation of this function, so use the new env_load()
function directly instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 board/birdland/bav335x/board.c              | 2 +-
 board/gateworks/gw_ventana/gw_ventana_spl.c | 2 +-
 board/tcl/sl50/board.c                      | 2 +-
 board/ti/am335x/board.c                     | 2 +-
 board/ti/am57xx/board.c                     | 2 +-
 board/ti/dra7xx/evm.c                       | 2 +-
 env/common.c                                | 2 +-
 env/env.c                                   | 5 -----
 include/environment.h                       | 9 +++++++--
 9 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/board/birdland/bav335x/board.c b/board/birdland/bav335x/board.c
index 67aca3cc43..b49365e157 100644
--- a/board/birdland/bav335x/board.c
+++ b/board/birdland/bav335x/board.c
@@ -162,7 +162,7 @@ int spl_start_uboot(void)
 
 #ifdef CONFIG_SPL_ENV_SUPPORT
 	env_init();
-	env_relocate_spec();
+	env_load();
 	if (getenv_yesno("boot_os") != 1)
 		return 1;
 #endif
diff --git a/board/gateworks/gw_ventana/gw_ventana_spl.c b/board/gateworks/gw_ventana/gw_ventana_spl.c
index 6060b44216..d6effc8f55 100644
--- a/board/gateworks/gw_ventana/gw_ventana_spl.c
+++ b/board/gateworks/gw_ventana/gw_ventana_spl.c
@@ -690,7 +690,7 @@ int spl_start_uboot(void)
 	debug("%s\n", __func__);
 #ifdef CONFIG_SPL_ENV_SUPPORT
 	env_init();
-	env_relocate_spec();
+	env_load();
 	debug("boot_os=%s\n", getenv("boot_os"));
 	if (getenv_yesno("boot_os") == 1)
 		ret = 0;
diff --git a/board/tcl/sl50/board.c b/board/tcl/sl50/board.c
index e89ee35d30..d3c953e993 100644
--- a/board/tcl/sl50/board.c
+++ b/board/tcl/sl50/board.c
@@ -76,7 +76,7 @@ int spl_start_uboot(void)
 
 #ifdef CONFIG_SPL_ENV_SUPPORT
 	env_init();
-	env_relocate_spec();
+	env_load();
 	if (getenv_yesno("boot_os") != 1)
 		return 1;
 #endif
diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
index 0a16529b5f..ac0592b725 100644
--- a/board/ti/am335x/board.c
+++ b/board/ti/am335x/board.c
@@ -249,7 +249,7 @@ int spl_start_uboot(void)
 
 #ifdef CONFIG_SPL_ENV_SUPPORT
 	env_init();
-	env_relocate_spec();
+	env_load();
 	if (getenv_yesno("boot_os") != 1)
 		return 1;
 #endif
diff --git a/board/ti/am57xx/board.c b/board/ti/am57xx/board.c
index bf8c8e1a67..e4f1681860 100644
--- a/board/ti/am57xx/board.c
+++ b/board/ti/am57xx/board.c
@@ -737,7 +737,7 @@ int spl_start_uboot(void)
 
 #ifdef CONFIG_SPL_ENV_SUPPORT
 	env_init();
-	env_relocate_spec();
+	env_load();
 	if (getenv_yesno("boot_os") != 1)
 		return 1;
 #endif
diff --git a/board/ti/dra7xx/evm.c b/board/ti/dra7xx/evm.c
index 7d36f03fa1..23be2c70e4 100644
--- a/board/ti/dra7xx/evm.c
+++ b/board/ti/dra7xx/evm.c
@@ -825,7 +825,7 @@ int spl_start_uboot(void)
 
 #ifdef CONFIG_SPL_ENV_SUPPORT
 	env_init();
-	env_relocate_spec();
+	env_load();
 	if (getenv_yesno("boot_os") != 1)
 		return 1;
 #endif
diff --git a/env/common.c b/env/common.c
index 9f1d21adbd..b63b5fc12f 100644
--- a/env/common.c
+++ b/env/common.c
@@ -229,7 +229,7 @@ void env_relocate(void)
 		set_default_env("!bad CRC");
 #endif
 	} else {
-		env_relocate_spec();
+		env_load();
 	}
 }
 
diff --git a/env/env.c b/env/env.c
index 809889f55e..d2704f4861 100644
--- a/env/env.c
+++ b/env/env.c
@@ -150,11 +150,6 @@ int env_init(void)
 	return 0;
 }
 
-void env_relocate_spec(void)
-{
-	env_load();
-}
-
 int saveenv(void)
 {
 	return env_save();
diff --git a/include/environment.h b/include/environment.h
index a494500825..fa82f72baf 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -170,8 +170,6 @@ extern env_t environment;
 extern const unsigned char default_environment[];
 extern env_t *env_ptr;
 
-extern void env_relocate_spec(void);
-
 #if defined(CONFIG_NEEDS_MANUAL_RELOC)
 extern void env_reloc(void);
 #endif
@@ -315,6 +313,13 @@ struct env_driver *env_driver_lookup_default(void);
  */
 int env_get_char(int index);
 
+/**
+ * env_load() - Load the environment from storage
+ *
+ * @return 0 if OK, -ve on error
+ */
+int env_load(void);
+
 #endif /* DO_DEPS_ONLY */
 
 #endif /* _ENVIRONMENT_H_ */
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 28/30] env: Drop saveenv() in favour of env_save()
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (26 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 27/30] env: Drop env_relocate_spec() in favour of env_load() Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-10 20:08   ` Wolfgang Denk
  2017-07-09 20:53 ` [U-Boot] [PATCH 29/30] env: Adjust the get_char() method to return an int Simon Glass
                   ` (3 subsequent siblings)
  31 siblings, 1 reply; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

Use the env_save() function directly now that there is only one
implementation of saveenv().

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/arm/mach-omap2/boot-common.c       | 3 ++-
 board/siemens/taurus/taurus.c           | 5 +++--
 board/toradex/apalis_imx6/apalis_imx6.c | 3 ++-
 cmd/nvedit.c                            | 2 +-
 drivers/bootcount/bootcount_env.c       | 3 ++-
 env/env.c                               | 6 ------
 include/common.h                        | 1 -
 include/environment.h                   | 7 +++++++
 8 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/arch/arm/mach-omap2/boot-common.c b/arch/arm/mach-omap2/boot-common.c
index b77506df83..435adf19ff 100644
--- a/arch/arm/mach-omap2/boot-common.c
+++ b/arch/arm/mach-omap2/boot-common.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <ahci.h>
+#include <environment.h>
 #include <spl.h>
 #include <asm/omap_common.h>
 #include <asm/arch/omap.h>
@@ -248,7 +249,7 @@ int fb_set_reboot_flag(void)
 {
 	printf("Setting reboot to fastboot flag ...\n");
 	setenv("dofastboot", "1");
-	saveenv();
+	env_save();
 	return 0;
 }
 #endif
diff --git a/board/siemens/taurus/taurus.c b/board/siemens/taurus/taurus.c
index 4aa8d64869..3b742ebc22 100644
--- a/board/siemens/taurus/taurus.c
+++ b/board/siemens/taurus/taurus.c
@@ -15,6 +15,7 @@
 #include <command.h>
 #include <common.h>
 #include <dm.h>
+#include <environment.h>
 #include <asm/io.h>
 #include <asm/arch/at91sam9260_matrix.h>
 #include <asm/arch/at91sam9_smc.h>
@@ -405,7 +406,7 @@ static int upgrade_failure_fallback(void)
 	setenv("bootargs", '\0');
 	setenv("upgrade_available", '\0');
 	setenv("boot_retries", '\0');
-	saveenv();
+	env_save();
 
 	return 0;
 }
@@ -424,7 +425,7 @@ static int do_upgrade_available(cmd_tbl_t *cmdtp, int flag, int argc,
 		boot_retry++;
 		sprintf(boot_buf, "%lx", boot_retry);
 		setenv("boot_retries", boot_buf);
-		saveenv();
+		env_save();
 
 		/*
 		 * Here the boot_retries count is checked, and if the
diff --git a/board/toradex/apalis_imx6/apalis_imx6.c b/board/toradex/apalis_imx6/apalis_imx6.c
index 166b93f0c5..d64896bb5b 100644
--- a/board/toradex/apalis_imx6/apalis_imx6.c
+++ b/board/toradex/apalis_imx6/apalis_imx6.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <environment.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/mxc_hdmi.h>
@@ -818,7 +819,7 @@ int board_late_init(void)
 			setenv("fdt_file", FDT_FILE_V1_0);
 			printf("patching fdt_file to " FDT_FILE_V1_0 "\n");
 #ifndef CONFIG_ENV_IS_NOWHERE
-			saveenv();
+			env_save();
 #endif
 		}
 	}
diff --git a/cmd/nvedit.c b/cmd/nvedit.c
index 75df997592..4431ef66d8 100644
--- a/cmd/nvedit.c
+++ b/cmd/nvedit.c
@@ -710,7 +710,7 @@ static int do_env_save(cmd_tbl_t *cmdtp, int flag, int argc,
 
 	printf("Saving Environment to %s...\n", env->name);
 
-	return saveenv() ? 1 : 0;
+	return env_save() ? 1 : 0;
 }
 
 U_BOOT_CMD(
diff --git a/drivers/bootcount/bootcount_env.c b/drivers/bootcount/bootcount_env.c
index 2d6e8db126..7f22dd0748 100644
--- a/drivers/bootcount/bootcount_env.c
+++ b/drivers/bootcount/bootcount_env.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <environment.h>
 
 void bootcount_store(ulong a)
 {
@@ -13,7 +14,7 @@ void bootcount_store(ulong a)
 
 	if (upgrade_available) {
 		setenv_ulong("bootcount", a);
-		saveenv();
+		env_save();
 	}
 }
 
diff --git a/env/env.c b/env/env.c
index d2704f4861..9d232c1f34 100644
--- a/env/env.c
+++ b/env/env.c
@@ -149,9 +149,3 @@ int env_init(void)
 
 	return 0;
 }
-
-int saveenv(void)
-{
-	return env_save();
-}
-
diff --git a/include/common.h b/include/common.h
index 638c45b954..883b95dce6 100644
--- a/include/common.h
+++ b/include/common.h
@@ -335,7 +335,6 @@ ulong getenv_hex(const char *varname, ulong default_val);
  * Return -1 if variable does not exist (default to true)
  */
 int getenv_yesno(const char *var);
-int	saveenv	     (void);
 int	setenv	     (const char *, const char *);
 int setenv_ulong(const char *varname, ulong value);
 int setenv_hex(const char *varname, ulong value);
diff --git a/include/environment.h b/include/environment.h
index fa82f72baf..faf4d6adbb 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -320,6 +320,13 @@ int env_get_char(int index);
  */
 int env_load(void);
 
+/**
+ * env_save() - Save the environment to storage
+ *
+ * @return 0 if OK, -ve on error
+ */
+int env_save(void);
+
 #endif /* DO_DEPS_ONLY */
 
 #endif /* _ENVIRONMENT_H_ */
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 29/30] env: Adjust the get_char() method to return an int
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (27 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 28/30] env: Drop saveenv() in favour of env_save() Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-09 20:53 ` [U-Boot] [PATCH 30/30] env: Adjust the load() method to return an error Simon Glass
                   ` (2 subsequent siblings)
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

In principle this can fail, e.g. if the index is out of range. Adjust the
driver signature to allow returning an error code.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/dataflash.c       | 2 +-
 env/eeprom.c          | 2 +-
 env/nvram.c           | 2 +-
 include/environment.h | 4 ++--
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/env/dataflash.c b/env/dataflash.c
index 28dcf6fa1c..afa08f8fd5 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -14,7 +14,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-static unsigned char env_dataflash_get_char(int index)
+static int env_dataflash_get_char(int index)
 {
 	uchar c;
 
diff --git a/env/eeprom.c b/env/eeprom.c
index 39adccabbe..fbe4fd4efc 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -61,7 +61,7 @@ static int eeprom_bus_write(unsigned dev_addr, unsigned offset,
 	return rcode;
 }
 
-static uchar env_eeprom_get_char(int index)
+static int env_eeprom_get_char(int index)
 {
 	uchar c;
 	unsigned int off = CONFIG_ENV_OFFSET;
diff --git a/env/nvram.c b/env/nvram.c
index ac389ace62..85af37d4a0 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -41,7 +41,7 @@ env_t *env_ptr = (env_t *)CONFIG_ENV_ADDR;
 #endif
 
 #ifdef CONFIG_SYS_NVRAM_ACCESS_ROUTINE
-static uchar env_nvram_get_char(int index)
+static int env_nvram_get_char(int index)
 {
 	uchar c;
 
diff --git a/include/environment.h b/include/environment.h
index faf4d6adbb..6889089d38 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -227,9 +227,9 @@ struct env_driver {
 	 * will read from gd->env_addr.
 	 *
 	 * @index: Index of character to read (0=first)
-	 * @return character read
+	 * @return character read, or -ve on error
 	 */
-	unsigned char (*get_char)(int index);
+	int (*get_char)(int index);
 
 	/**
 	 * load() - Load the environment from storage
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 30/30] env: Adjust the load() method to return an error
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (28 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 29/30] env: Adjust the get_char() method to return an int Simon Glass
@ 2017-07-09 20:53 ` Simon Glass
  2017-07-10  8:10 ` [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Christophe LEROY
  2017-07-12 12:24 ` Tom Rini
  31 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-09 20:53 UTC (permalink / raw)
  To: u-boot

The load() methods have inconsistent behaviour on error. Some of them load
an empty default environment. Some load an environment containing an error
message. Others do nothing.

As a step in the right direction, have the method return an error code.
Then the caller could handle this itself in a consistent way.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 env/dataflash.c       |  4 +++-
 env/eeprom.c          |  4 +++-
 env/ext4.c            |  6 ++++--
 env/fat.c             |  6 ++++--
 env/flash.c           |  4 +++-
 env/mmc.c             | 19 +++++++++++--------
 env/nand.c            | 18 +++++++++++++-----
 env/nvram.c           |  4 +++-
 env/onenand.c         |  4 +++-
 env/remote.c          |  4 +++-
 env/sata.c            | 15 +++++++++------
 env/sf.c              | 20 +++++++++++++-------
 env/ubi.c             | 16 ++++++++++------
 include/environment.h |  4 +++-
 14 files changed, 85 insertions(+), 43 deletions(-)

diff --git a/env/dataflash.c b/env/dataflash.c
index afa08f8fd5..77bc595e0d 100644
--- a/env/dataflash.c
+++ b/env/dataflash.c
@@ -23,7 +23,7 @@ static int env_dataflash_get_char(int index)
 	return c;
 }
 
-static void env_dataflash_load(void)
+static int env_dataflash_load(void)
 {
 	ulong crc, new = 0;
 	unsigned off;
@@ -44,6 +44,8 @@ static void env_dataflash_load(void)
 		env_import(buf, 1);
 	else
 		set_default_env("!bad CRC");
+
+	return 0;
 }
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
diff --git a/env/eeprom.c b/env/eeprom.c
index fbe4fd4efc..08ef6307fc 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -76,7 +76,7 @@ static int env_eeprom_get_char(int index)
 	return c;
 }
 
-static void env_eeprom_load(void)
+static int env_eeprom_load(void)
 {
 	char buf_env[CONFIG_ENV_SIZE];
 	unsigned int off = CONFIG_ENV_OFFSET;
@@ -182,6 +182,8 @@ static void env_eeprom_load(void)
 		off, (uchar *)buf_env, CONFIG_ENV_SIZE);
 
 	env_import(buf_env, 1);
+
+	return 0;
 }
 
 static int env_eeprom_save(void)
diff --git a/env/ext4.c b/env/ext4.c
index ee073a8b7c..65202213d3 100644
--- a/env/ext4.c
+++ b/env/ext4.c
@@ -75,7 +75,7 @@ static int env_ext4_save(void)
 }
 #endif /* CONFIG_CMD_SAVEENV */
 
-static void env_ext4_load(void)
+static int env_ext4_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
 	struct blk_desc *dev_desc = NULL;
@@ -109,10 +109,12 @@ static void env_ext4_load(void)
 	}
 
 	env_import(buf, 1);
-	return;
+	return 0;
 
 err_env_relocate:
 	set_default_env(NULL);
+
+	return -EIO;
 }
 
 U_BOOT_ENV_LOCATION(ext4) = {
diff --git a/env/fat.c b/env/fat.c
index 323288a0f0..ccbfca644a 100644
--- a/env/fat.c
+++ b/env/fat.c
@@ -61,7 +61,7 @@ static int env_fat_save(void)
 }
 #endif /* CONFIG_CMD_SAVEENV && !CONFIG_SPL_BUILD */
 
-static void env_fat_load(void)
+static int env_fat_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
 	struct blk_desc *dev_desc = NULL;
@@ -90,10 +90,12 @@ static void env_fat_load(void)
 	}
 
 	env_import(buf, 1);
-	return;
+	return 0;
 
 err_env_relocate:
 	set_default_env(NULL);
+
+	return -EIO;
 }
 
 U_BOOT_ENV_LOCATION(fat) = {
diff --git a/env/flash.c b/env/flash.c
index 2d72c51622..b60be57a8d 100644
--- a/env/flash.c
+++ b/env/flash.c
@@ -308,7 +308,7 @@ done:
 #endif /* CONFIG_ENV_ADDR_REDUND */
 
 #ifdef LOADENV
-static void env_flash_load(void)
+static int env_flash_load(void)
 {
 #ifdef CONFIG_ENV_ADDR_REDUND
 	if (gd->env_addr != (ulong)&(flash_addr->data)) {
@@ -352,6 +352,8 @@ static void env_flash_load(void)
 #endif /* CONFIG_ENV_ADDR_REDUND */
 
 	env_import((char *)flash_addr, 1);
+
+	return 0;
 }
 #endif /* LOADENV */
 
diff --git a/env/mmc.c b/env/mmc.c
index cf85bc232f..c7746492af 100644
--- a/env/mmc.c
+++ b/env/mmc.c
@@ -213,7 +213,7 @@ static inline int read_env(struct mmc *mmc, unsigned long size,
 }
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
-static void env_mmc_load(void)
+static int env_mmc_load(void)
 {
 #if !defined(ENV_IS_EMBEDDED)
 	struct mmc *mmc;
@@ -232,13 +232,13 @@ static void env_mmc_load(void)
 
 	errmsg = init_mmc_for_env(mmc);
 	if (errmsg) {
-		ret = 1;
+		ret = -EIO;
 		goto err;
 	}
 
 	if (mmc_get_env_addr(mmc, 0, &offset1) ||
 	    mmc_get_env_addr(mmc, 1, &offset2)) {
-		ret = 1;
+		ret = -EIO;
 		goto fini;
 	}
 
@@ -258,7 +258,7 @@ static void env_mmc_load(void)
 
 	if (!crc1_ok && !crc2_ok) {
 		errmsg = "!bad CRC";
-		ret = 1;
+		ret = -EIO;
 		goto fini;
 	} else if (crc1_ok && !crc2_ok) {
 		gd->env_valid = ENV_VALID;
@@ -292,10 +292,12 @@ fini:
 err:
 	if (ret)
 		set_default_env(errmsg);
+
 #endif
+	return ret;
 }
 #else /* ! CONFIG_ENV_OFFSET_REDUND */
-static void env_mmc_load(void)
+static int env_mmc_load(void)
 {
 #if !defined(ENV_IS_EMBEDDED)
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
@@ -309,18 +311,18 @@ static void env_mmc_load(void)
 
 	errmsg = init_mmc_for_env(mmc);
 	if (errmsg) {
-		ret = 1;
+		ret = -EIO;
 		goto err;
 	}
 
 	if (mmc_get_env_addr(mmc, 0, &offset)) {
-		ret = 1;
+		ret = -EIO;
 		goto fini;
 	}
 
 	if (read_env(mmc, CONFIG_ENV_SIZE, offset, buf)) {
 		errmsg = "!read failed";
-		ret = 1;
+		ret = -EIO;
 		goto fini;
 	}
 
@@ -333,6 +335,7 @@ err:
 	if (ret)
 		set_default_env(errmsg);
 #endif
+	return ret;
 }
 #endif /* CONFIG_ENV_OFFSET_REDUND */
 
diff --git a/env/nand.c b/env/nand.c
index 695957ea1c..63d59fd6f3 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -298,7 +298,7 @@ int get_nand_env_oob(struct mtd_info *mtd, unsigned long *result)
 	}
 
 	if (oob_buf[0] == ENV_OOB_MARKER) {
-		*result = oob_buf[1] * mtd->erasesize;
+		*result = ovoid ob_buf[1] * mtd->erasesize;
 	} else if (oob_buf[0] == ENV_OOB_MARKER_OLD) {
 		*result = oob_buf[1];
 	} else {
@@ -311,18 +311,22 @@ int get_nand_env_oob(struct mtd_info *mtd, unsigned long *result)
 #endif
 
 #ifdef CONFIG_ENV_OFFSET_REDUND
-static void env_nand_load(void)
+static int env_nand_load(void)
 {
-#if !defined(ENV_IS_EMBEDDED)
+#if defined(ENV_IS_EMBEDDED)
+	return 0;
+#else
 	int read1_fail = 0, read2_fail = 0;
 	int crc1_ok = 0, crc2_ok = 0;
 	env_t *ep, *tmp_env1, *tmp_env2;
+	int ret = 0;
 
 	tmp_env1 = (env_t *)malloc(CONFIG_ENV_SIZE);
 	tmp_env2 = (env_t *)malloc(CONFIG_ENV_SIZE);
 	if (tmp_env1 == NULL || tmp_env2 == NULL) {
 		puts("Can't allocate buffers for environment\n");
 		set_default_env("!malloc() failed");
+		ret = -EIO;
 		goto done;
 	}
 
@@ -342,6 +346,7 @@ static void env_nand_load(void)
 
 	if (!crc1_ok && !crc2_ok) {
 		set_default_env("!bad CRC");
+		ret = -EIO;
 		goto done;
 	} else if (crc1_ok && !crc2_ok) {
 		gd->env_valid = ENV_VALID;
@@ -373,6 +378,7 @@ done:
 	free(tmp_env1);
 	free(tmp_env2);
 
+	return ret;
 #endif /* ! ENV_IS_EMBEDDED */
 }
 #else /* ! CONFIG_ENV_OFFSET_REDUND */
@@ -381,7 +387,7 @@ done:
  * device i.e., nand_dev_desc + 0. This is also the behaviour using
  * the new NAND code.
  */
-static void env_nand_load(void)
+static int env_nand_load(void)
 {
 #if !defined(ENV_IS_EMBEDDED)
 	int ret;
@@ -404,11 +410,13 @@ static void env_nand_load(void)
 	ret = readenv(CONFIG_ENV_OFFSET, (u_char *)buf);
 	if (ret) {
 		set_default_env("!readenv() failed");
-		return;
+		return -EIO;
 	}
 
 	env_import(buf, 1);
 #endif /* ! ENV_IS_EMBEDDED */
+
+	return 0;
 }
 #endif /* CONFIG_ENV_OFFSET_REDUND */
 
diff --git a/env/nvram.c b/env/nvram.c
index 85af37d4a0..5fb3115ce6 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -51,7 +51,7 @@ static int env_nvram_get_char(int index)
 }
 #endif
 
-static void env_nvram_load(void)
+static int env_nvram_load(void)
 {
 	char buf[CONFIG_ENV_SIZE];
 
@@ -61,6 +61,8 @@ static void env_nvram_load(void)
 	memcpy(buf, (void *)CONFIG_ENV_ADDR, CONFIG_ENV_SIZE);
 #endif
 	env_import(buf, 1);
+
+	return 0;
 }
 
 static int env_nvram_save(void)
diff --git a/env/onenand.c b/env/onenand.c
index 319f553262..2e3045c5f5 100644
--- a/env/onenand.c
+++ b/env/onenand.c
@@ -26,7 +26,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-static void env_onenand_load(void)
+static int env_onenand_load(void)
 {
 	struct mtd_info *mtd = &onenand_mtd;
 #ifdef CONFIG_ENV_ADDR_FLEX
@@ -59,6 +59,8 @@ static void env_onenand_load(void)
 	rc = env_import(buf, 1);
 	if (rc)
 		gd->env_valid = ENV_VALID;
+
+	return rc ? 0 : -EIO;
 }
 
 static int env_onenand_save(void)
diff --git a/env/remote.c b/env/remote.c
index 0d8865bd67..c013fdd4b0 100644
--- a/env/remote.c
+++ b/env/remote.c
@@ -46,11 +46,13 @@ static int env_remote_save(void)
 }
 #endif /* CONFIG_CMD_SAVEENV */
 
-static void env_remote_load(void)
+static int env_remote_load(void)
 {
 #ifndef ENV_IS_EMBEDDED
 	env_import((char *)env_ptr, 1);
 #endif
+
+	return 0;
 }
 
 U_BOOT_ENV_LOCATION(remote) = {
diff --git a/env/sata.c b/env/sata.c
index 16d8f939db..a77029774e 100644
--- a/env/sata.c
+++ b/env/sata.c
@@ -98,21 +98,24 @@ static void env_sata_load(void)
 	int env_sata;
 
 	if (sata_initialize())
-		return;
+		return -EIO;
 
 	env_sata = sata_get_env_dev();
 
 	sata = sata_get_dev(env_sata);
 	if (sata == NULL) {
-		printf("Unknown SATA(%d) device for environment!\n",
-		       env_sata);
-		return;
+		printf("Unknown SATA(%d) device for environment!\n", env_sata);
+		return -EIO;
 	}
 
-	if (read_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, buf))
-		return set_default_env(NULL);
+	if (read_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, buf)) {
+		set_default_env(NULL);
+		return -EIO;
+	}
 
 	env_import(buf, 1);
+
+	return 0;
 }
 
 U_BOOT_ENV_LOCATION(sata) = {
diff --git a/env/sf.c b/env/sf.c
index 07386c629a..6f74371c09 100644
--- a/env/sf.c
+++ b/env/sf.c
@@ -61,7 +61,7 @@ static int setup_flash_device(void)
 				     0, 0, &new);
 	if (ret) {
 		set_default_env("!spi_flash_probe_bus_cs() failed");
-		return 1;
+		return ret;
 	}
 
 	env_flash = dev_get_uclass_priv(new);
@@ -73,7 +73,7 @@ static int setup_flash_device(void)
 			CONFIG_ENV_SPI_MAX_HZ, CONFIG_ENV_SPI_MODE);
 		if (!env_flash) {
 			set_default_env("!spi_flash_probe() failed");
-			return 1;
+			return -EIO;
 		}
 	}
 #endif
@@ -95,7 +95,7 @@ static int env_sf_save(void)
 
 	ret = env_export(&env_new);
 	if (ret)
-		return ret;
+		return -EIO;
 	env_new.flags	= ACTIVE_FLAG;
 
 	if (gd->env_valid == ENV_VALID) {
@@ -112,7 +112,7 @@ static int env_sf_save(void)
 		saved_offset = env_new_offset + CONFIG_ENV_SIZE;
 		saved_buffer = memalign(ARCH_DMA_MINALIGN, saved_size);
 		if (!saved_buffer) {
-			ret = 1;
+			ret = -ENOMEM;
 			goto done;
 		}
 		ret = spi_flash_read(env_flash, saved_offset,
@@ -162,7 +162,7 @@ static int env_sf_save(void)
 }
 #endif /* CMD_SAVEENV */
 
-static void env_sf_load(void)
+static int env_sf_load(void)
 {
 	int ret;
 	int crc1_ok = 0, crc2_ok = 0;
@@ -176,6 +176,7 @@ static void env_sf_load(void)
 			CONFIG_ENV_SIZE);
 	if (!tmp_env1 || !tmp_env2) {
 		set_default_env("!malloc() failed");
+		ret = -EIO;
 		goto out;
 	}
 
@@ -202,6 +203,7 @@ static void env_sf_load(void)
 
 	if (!crc1_ok && !crc2_ok) {
 		set_default_env("!bad CRC");
+		ret = -EIO;
 		goto err_read;
 	} else if (crc1_ok && !crc2_ok) {
 		gd->env_valid = ENV_VALID;
@@ -244,6 +246,8 @@ err_read:
 out:
 	free(tmp_env1);
 	free(tmp_env2);
+
+	return ret;
 }
 #else
 #ifdef CMD_SAVEENV
@@ -308,7 +312,7 @@ static int env_sf_save(void)
 }
 #endif /* CMD_SAVEENV */
 
-static void env_sf_load(void)
+static int env_sf_load(void)
 {
 	int ret;
 	char *buf = NULL;
@@ -316,7 +320,7 @@ static void env_sf_load(void)
 	buf = (char *)memalign(ARCH_DMA_MINALIGN, CONFIG_ENV_SIZE);
 	if (!buf) {
 		set_default_env("!malloc() failed");
-		return;
+		return -EIO;
 	}
 
 	ret = setup_flash_device();
@@ -339,6 +343,8 @@ err_read:
 	env_flash = NULL;
 out:
 	free(buf);
+
+	return ret;
 }
 #endif
 
diff --git a/env/ubi.c b/env/ubi.c
index 65be2b1bbf..6ac86c8571 100644
--- a/env/ubi.c
+++ b/env/ubi.c
@@ -95,7 +95,7 @@ static int env_ubi_save(void)
 #endif /* CONFIG_CMD_SAVEENV */
 
 #ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT
-static void env_ubi_load(void)
+static int env_ubi_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, env1_buf, CONFIG_ENV_SIZE);
 	ALLOC_CACHE_ALIGN_BUFFER(char, env2_buf, CONFIG_ENV_SIZE);
@@ -120,7 +120,7 @@ static void env_ubi_load(void)
 		printf("\n** Cannot find mtd partition \"%s\"\n",
 		       CONFIG_ENV_UBI_PART);
 		set_default_env(NULL);
-		return;
+		return -EIO;
 	}
 
 	if (ubi_volume_read(CONFIG_ENV_UBI_VOLUME, (void *)tmp_env1,
@@ -140,7 +140,7 @@ static void env_ubi_load(void)
 
 	if (!crc1_ok && !crc2_ok) {
 		set_default_env("!bad CRC");
-		return;
+		return -EIO;
 	} else if (crc1_ok && !crc2_ok) {
 		gd->env_valid = ENV_VALID;
 	} else if (!crc1_ok && crc2_ok) {
@@ -166,9 +166,11 @@ static void env_ubi_load(void)
 
 	env_flags = ep->flags;
 	env_import((char *)ep, 0);
+
+	return 0;
 }
 #else /* ! CONFIG_SYS_REDUNDAND_ENVIRONMENT */
-static void env_ubi_load(void)
+static int env_ubi_load(void)
 {
 	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
 
@@ -186,17 +188,19 @@ static void env_ubi_load(void)
 		printf("\n** Cannot find mtd partition \"%s\"\n",
 		       CONFIG_ENV_UBI_PART);
 		set_default_env(NULL);
-		return;
+		return -EIO;
 	}
 
 	if (ubi_volume_read(CONFIG_ENV_UBI_VOLUME, buf, CONFIG_ENV_SIZE)) {
 		printf("\n** Unable to read env from %s:%s **\n",
 		       CONFIG_ENV_UBI_PART, CONFIG_ENV_UBI_VOLUME);
 		set_default_env(NULL);
-		return;
+		return -EIO;
 	}
 
 	env_import(buf, 1);
+
+	return 0;
 }
 #endif /* CONFIG_SYS_REDUNDAND_ENVIRONMENT */
 
diff --git a/include/environment.h b/include/environment.h
index 6889089d38..94448f7458 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -236,8 +236,10 @@ struct env_driver {
 	 *
 	 * This method is optional. If not provided, no environment will be
 	 * loaded.
+	 *
+	 * @return 0 if OK, -ve on error
 	 */
-	void (*load)(void);
+	int (*load)(void);
 
 	/**
 	 * save() - Save the environment to storage
-- 
2.13.2.725.g09c95d1e9-goog

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (29 preceding siblings ...)
  2017-07-09 20:53 ` [U-Boot] [PATCH 30/30] env: Adjust the load() method to return an error Simon Glass
@ 2017-07-10  8:10 ` Christophe LEROY
  2017-07-10 16:38   ` Simon Glass
  2017-07-12 12:24 ` Tom Rini
  31 siblings, 1 reply; 44+ messages in thread
From: Christophe LEROY @ 2017-07-10  8:10 UTC (permalink / raw)
  To: u-boot

Simon,

Le 09/07/2017 à 22:52, Simon Glass a écrit :
> The environment code is ripe for improvement in various ways. It has lots
> of duplication and inconsistencies between how things work with different
> environment locations. It does not properly use Kconfig. Error checking
> and handling is patchy.
> 
> This series makes a start at improving things:
> 
> - moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig
> - introduces the concept of a location driver for the environment
> - drops some of the duplicated code
> - improves error handling a little (more to be done here)
> - moves code into a new env/ directory
> 
> There is still much more to do:
> - complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)
> - unify environment settings so that all locations support the same options
> - try to rationalise the redundancy code (can we create a common
>      implementation used by all drivers?)
> - allow environment in multiple locations (e.g. as a fallback)
> - figure out why CONFIG_ENV_IS_IN_FLASH enables the environment in flash
>      even in SPL, which other locations do not
> 
> 
> Simon Glass (30):
>    Makefile: Rename 'env' target to 'environ'
>    Move environment files from common/ to env/
>    Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig
>    env: Move help from README to Kconfig
>    Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
>    Convert CONFIG_ENV_IS_IN_NVRAM to Kconfig
>    Convert CONFIG_ENV_IS_IN_EEPROM to Kconfig
>    Convert CONFIG_ENV_IS_IN_DATAFLASH to Kconfig
>    Convert CONFIG_ENV_IS_IN_SPI_FLASH to Kconfig
>    Convert CONFIG_ENV_IS_IN_REMOTE to Kconfig
>    Convert CONFIG_ENV_IS_IN_FAT to Kconfig
>    env: common: Make env_get_addr/get_char_memory() static
>    env: common: Drop env_get_addr()
>    env: common: Factor out the common env_valid check
>    env: common: Drop env_get_char_init()
>    env: common: Drop env_get_char_memory()
>    env: Add an enum for environment state
>    env: Rename nand env_location to nand_env_location
>    env: Create a location driver for each location
>    env: Add a new implementation of environment access
>    env: Switch over to use environment location drivers
>    env: Drop common init() functions
>    env: Drop the env_name_spec global
>    env: Drop unused env_ptr variables
>    env: Drop env_init_new()
>    env: Drop env_get_char_spec()
>    env: Drop env_relocate_spec() in favour of env_load()
>    env: Drop saveenv() in favour of env_save()
>    env: Adjust the get_char() method to return an int
>    env: Adjust the load() method to return an error
> 
>   Kconfig                                            |   2 +
>   Makefile                                           |   5 +-
>   README                                             | 352 ------------------
>   arch/Kconfig                                       |   1 +
>   arch/arm/Kconfig                                   |   2 +
>   arch/arm/cpu/armv7/mx6/Kconfig                     |   1 +
>   arch/arm/cpu/armv7/mx7/Kconfig                     |   1 +
>   arch/arm/mach-exynos/Kconfig                       |   1 +
>   arch/arm/mach-integrator/Kconfig                   |   2 +
>   arch/arm/mach-mvebu/Kconfig                        |   1 +
>   arch/arm/mach-omap2/boot-common.c                  |   3 +-
>   arch/arm/mach-sunxi/Kconfig                        |   6 +
>   arch/arm/mach-tegra/Kconfig                        |   3 +
>   arch/m68k/Kconfig                                  |   8 +
>   arch/microblaze/Kconfig                            |   1 +
>   arch/mips/Kconfig                                  |   7 +
>   arch/powerpc/Kconfig                               |   1 +
>   arch/powerpc/cpu/mpc83xx/Kconfig                   |   6 +
>   arch/powerpc/cpu/mpc85xx/Kconfig                   |   4 +
>   arch/powerpc/cpu/mpc86xx/Kconfig                   |   1 +

It looks like the mpc8xx has been left behind.

Christophe

>   arch/sh/Kconfig                                    |   3 +
>   arch/sh/cpu/u-boot.lds                             |   4 +-
>   arch/x86/cpu/baytrail/Kconfig                      |   1 +
>   board/Arcturus/ucp1020/spl.c                       |   3 +-
>   board/birdland/bav335x/board.c                     |   2 +-
>   board/freescale/b4860qds/spl.c                     |   3 +-
>   board/freescale/c29xpcie/spl.c                     |   3 +-
>   board/freescale/mx31ads/u-boot.lds                 |   2 +-
>   board/freescale/p1010rdb/spl.c                     |   3 +-
>   board/freescale/p1022ds/spl.c                      |   3 +-
>   board/freescale/p1_p2_rdb_pc/spl.c                 |   3 +-
>   board/freescale/t102xqds/spl.c                     |   3 +-
>   board/freescale/t102xrdb/spl.c                     |   3 +-
>   board/freescale/t104xrdb/spl.c                     |   3 +-
>   board/freescale/t208xqds/spl.c                     |   3 +-
>   board/freescale/t208xrdb/spl.c                     |   3 +-
>   board/freescale/t4qds/spl.c                        |   3 +-
>   board/freescale/t4rdb/spl.c                        |   3 +-
>   board/gateworks/gw_ventana/gw_ventana_spl.c        |   2 +-
>   board/siemens/taurus/taurus.c                      |   5 +-
>   board/tcl/sl50/board.c                             |   2 +-
>   board/ti/am335x/board.c                            |   2 +-
>   board/ti/am57xx/board.c                            |   2 +-
>   board/ti/dra7xx/evm.c                              |   2 +-
>   board/toradex/apalis_imx6/apalis_imx6.c            |   3 +-
>   cmd/nvedit.c                                       |   6 +-
>   common/Kconfig                                     |  69 ----
>   common/Makefile                                    |  49 +--
>   configs/10m50_defconfig                            |   1 +
>   configs/3c120_defconfig                            |   1 +
>   configs/B4420QDS_NAND_defconfig                    |   1 +
>   configs/B4420QDS_SPIFLASH_defconfig                |   1 +
>   configs/B4420QDS_defconfig                         |   1 +
>   configs/B4860QDS_NAND_defconfig                    |   1 +
>   configs/B4860QDS_SECURE_BOOT_defconfig             |   1 +
>   configs/B4860QDS_SPIFLASH_defconfig                |   1 +
>   configs/B4860QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
>   configs/B4860QDS_defconfig                         |   1 +
>   configs/BSC9131RDB_NAND_SYSCLK100_defconfig        |   1 +
>   configs/BSC9131RDB_NAND_defconfig                  |   1 +
>   configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig    |   1 +
>   configs/BSC9131RDB_SPIFLASH_defconfig              |   1 +
>   configs/BSC9132QDS_NAND_DDRCLK100_SECURE_defconfig |   1 +
>   configs/BSC9132QDS_NAND_DDRCLK100_defconfig        |   1 +
>   configs/BSC9132QDS_NAND_DDRCLK133_SECURE_defconfig |   1 +
>   configs/BSC9132QDS_NAND_DDRCLK133_defconfig        |   1 +
>   configs/BSC9132QDS_NOR_DDRCLK100_SECURE_defconfig  |   1 +
>   configs/BSC9132QDS_NOR_DDRCLK100_defconfig         |   1 +
>   configs/BSC9132QDS_NOR_DDRCLK133_SECURE_defconfig  |   1 +
>   configs/BSC9132QDS_NOR_DDRCLK133_defconfig         |   1 +
>   .../BSC9132QDS_SDCARD_DDRCLK100_SECURE_defconfig   |   1 +
>   configs/BSC9132QDS_SDCARD_DDRCLK100_defconfig      |   1 +
>   .../BSC9132QDS_SDCARD_DDRCLK133_SECURE_defconfig   |   1 +
>   configs/BSC9132QDS_SDCARD_DDRCLK133_defconfig      |   1 +
>   .../BSC9132QDS_SPIFLASH_DDRCLK100_SECURE_defconfig |   1 +
>   configs/BSC9132QDS_SPIFLASH_DDRCLK100_defconfig    |   1 +
>   .../BSC9132QDS_SPIFLASH_DDRCLK133_SECURE_defconfig |   1 +
>   configs/BSC9132QDS_SPIFLASH_DDRCLK133_defconfig    |   1 +
>   configs/C29XPCIE_NAND_defconfig                    |   1 +
>   configs/C29XPCIE_NOR_SECBOOT_defconfig             |   1 +
>   configs/C29XPCIE_SPIFLASH_SECBOOT_defconfig        |   1 +
>   configs/C29XPCIE_SPIFLASH_defconfig                |   1 +
>   configs/C29XPCIE_defconfig                         |   1 +
>   configs/CHIP_defconfig                             |   2 +
>   configs/CHIP_pro_defconfig                         |   1 +
>   configs/Cyrus_P5020_defconfig                      |   1 +
>   configs/Cyrus_P5040_defconfig                      |   1 +
>   configs/M5208EVBE_defconfig                        |   1 +
>   configs/M52277EVB_defconfig                        |   1 +
>   configs/M52277EVB_stmicro_defconfig                |   1 +
>   configs/M5235EVB_Flash32_defconfig                 |   1 +
>   configs/M5235EVB_defconfig                         |   1 +
>   configs/M53017EVB_defconfig                        |   1 +
>   configs/M54418TWR_defconfig                        |   1 +
>   configs/M54418TWR_nand_mii_defconfig               |   1 +
>   configs/M54418TWR_nand_rmii_defconfig              |   1 +
>   configs/M54418TWR_nand_rmii_lowfreq_defconfig      |   1 +
>   configs/M54418TWR_serial_mii_defconfig             |   1 +
>   configs/M54418TWR_serial_rmii_defconfig            |   1 +
>   configs/M54451EVB_defconfig                        |   1 +
>   configs/M54451EVB_stmicro_defconfig                |   1 +
>   configs/M54455EVB_a66_defconfig                    |   1 +
>   configs/M54455EVB_defconfig                        |   1 +
>   configs/M54455EVB_i66_defconfig                    |   1 +
>   configs/M54455EVB_intel_defconfig                  |   1 +
>   configs/M54455EVB_stm33_defconfig                  |   1 +
>   configs/MPC8308RDB_defconfig                       |   1 +
>   configs/MPC8313ERDB_33_defconfig                   |   1 +
>   configs/MPC8313ERDB_66_defconfig                   |   1 +
>   configs/MPC8313ERDB_NAND_33_defconfig              |   1 +
>   configs/MPC8313ERDB_NAND_66_defconfig              |   1 +
>   configs/MPC8315ERDB_defconfig                      |   1 +
>   configs/MPC8323ERDB_defconfig                      |   1 +
>   configs/MPC8349EMDS_defconfig                      |   1 +
>   configs/MPC837XEMDS_HOST_defconfig                 |   1 +
>   configs/MPC837XEMDS_defconfig                      |   1 +
>   configs/MPC837XERDB_defconfig                      |   1 +
>   configs/MPC8536DS_36BIT_defconfig                  |   1 +
>   configs/MPC8536DS_SDCARD_defconfig                 |   1 +
>   configs/MPC8536DS_SPIFLASH_defconfig               |   1 +
>   configs/MPC8536DS_defconfig                        |   1 +
>   configs/MPC8541CDS_defconfig                       |   1 +
>   configs/MPC8541CDS_legacy_defconfig                |   1 +
>   configs/MPC8544DS_defconfig                        |   3 +-
>   configs/MPC8555CDS_defconfig                       |   1 +
>   configs/MPC8555CDS_legacy_defconfig                |   1 +
>   configs/MPC8568MDS_defconfig                       |   1 +
>   configs/MPC8569MDS_ATM_defconfig                   |   1 +
>   configs/MPC8569MDS_defconfig                       |   1 +
>   configs/MPC8610HPCD_defconfig                      |   2 +-
>   configs/MigoR_defconfig                            |   1 +
>   configs/P1010RDB-PA_36BIT_NAND_SECBOOT_defconfig   |   1 +
>   configs/P1010RDB-PA_36BIT_NAND_defconfig           |   1 +
>   configs/P1010RDB-PA_36BIT_NOR_SECBOOT_defconfig    |   1 +
>   configs/P1010RDB-PA_36BIT_NOR_defconfig            |   1 +
>   configs/P1010RDB-PA_36BIT_SDCARD_defconfig         |   1 +
>   .../P1010RDB-PA_36BIT_SPIFLASH_SECBOOT_defconfig   |   1 +
>   configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig       |   1 +
>   configs/P1010RDB-PA_NAND_SECBOOT_defconfig         |   1 +
>   configs/P1010RDB-PA_NAND_defconfig                 |   1 +
>   configs/P1010RDB-PA_NOR_SECBOOT_defconfig          |   1 +
>   configs/P1010RDB-PA_NOR_defconfig                  |   1 +
>   configs/P1010RDB-PA_SDCARD_defconfig               |   1 +
>   configs/P1010RDB-PA_SPIFLASH_SECBOOT_defconfig     |   1 +
>   configs/P1010RDB-PA_SPIFLASH_defconfig             |   1 +
>   configs/P1010RDB-PB_36BIT_NAND_SECBOOT_defconfig   |   1 +
>   configs/P1010RDB-PB_36BIT_NAND_defconfig           |   1 +
>   configs/P1010RDB-PB_36BIT_NOR_SECBOOT_defconfig    |   1 +
>   configs/P1010RDB-PB_36BIT_NOR_defconfig            |   1 +
>   configs/P1010RDB-PB_36BIT_SDCARD_defconfig         |   1 +
>   .../P1010RDB-PB_36BIT_SPIFLASH_SECBOOT_defconfig   |   1 +
>   configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig       |   1 +
>   configs/P1010RDB-PB_NAND_SECBOOT_defconfig         |   1 +
>   configs/P1010RDB-PB_NAND_defconfig                 |   1 +
>   configs/P1010RDB-PB_NOR_SECBOOT_defconfig          |   1 +
>   configs/P1010RDB-PB_NOR_defconfig                  |   1 +
>   configs/P1010RDB-PB_SDCARD_defconfig               |   1 +
>   configs/P1010RDB-PB_SPIFLASH_SECBOOT_defconfig     |   1 +
>   configs/P1010RDB-PB_SPIFLASH_defconfig             |   1 +
>   configs/P1020MBG-PC_36BIT_SDCARD_defconfig         |   1 +
>   configs/P1020MBG-PC_36BIT_defconfig                |   1 +
>   configs/P1020MBG-PC_SDCARD_defconfig               |   1 +
>   configs/P1020MBG-PC_defconfig                      |   1 +
>   configs/P1020RDB-PC_36BIT_NAND_defconfig           |   1 +
>   configs/P1020RDB-PC_36BIT_SDCARD_defconfig         |   1 +
>   configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig       |   1 +
>   configs/P1020RDB-PC_36BIT_defconfig                |   1 +
>   configs/P1020RDB-PC_NAND_defconfig                 |   1 +
>   configs/P1020RDB-PC_SDCARD_defconfig               |   1 +
>   configs/P1020RDB-PC_SPIFLASH_defconfig             |   1 +
>   configs/P1020RDB-PC_defconfig                      |   1 +
>   configs/P1020RDB-PD_NAND_defconfig                 |   1 +
>   configs/P1020RDB-PD_SDCARD_defconfig               |   1 +
>   configs/P1020RDB-PD_SPIFLASH_defconfig             |   1 +
>   configs/P1020RDB-PD_defconfig                      |   1 +
>   configs/P1020UTM-PC_36BIT_SDCARD_defconfig         |   1 +
>   configs/P1020UTM-PC_36BIT_defconfig                |   1 +
>   configs/P1020UTM-PC_SDCARD_defconfig               |   1 +
>   configs/P1020UTM-PC_defconfig                      |   1 +
>   configs/P1021RDB-PC_36BIT_NAND_defconfig           |   1 +
>   configs/P1021RDB-PC_36BIT_SDCARD_defconfig         |   1 +
>   configs/P1021RDB-PC_36BIT_SPIFLASH_defconfig       |   1 +
>   configs/P1021RDB-PC_36BIT_defconfig                |   1 +
>   configs/P1021RDB-PC_NAND_defconfig                 |   1 +
>   configs/P1021RDB-PC_SDCARD_defconfig               |   1 +
>   configs/P1021RDB-PC_SPIFLASH_defconfig             |   1 +
>   configs/P1021RDB-PC_defconfig                      |   1 +
>   configs/P1022DS_36BIT_NAND_defconfig               |   1 +
>   configs/P1022DS_36BIT_SDCARD_defconfig             |   1 +
>   configs/P1022DS_36BIT_SPIFLASH_defconfig           |   1 +
>   configs/P1022DS_36BIT_defconfig                    |   1 +
>   configs/P1022DS_NAND_defconfig                     |   1 +
>   configs/P1022DS_SDCARD_defconfig                   |   1 +
>   configs/P1022DS_SPIFLASH_defconfig                 |   1 +
>   configs/P1022DS_defconfig                          |   1 +
>   configs/P1023RDB_defconfig                         |   1 +
>   configs/P1024RDB_36BIT_defconfig                   |   1 +
>   configs/P1024RDB_NAND_defconfig                    |   1 +
>   configs/P1024RDB_SDCARD_defconfig                  |   1 +
>   configs/P1024RDB_SPIFLASH_defconfig                |   1 +
>   configs/P1024RDB_defconfig                         |   1 +
>   configs/P1025RDB_36BIT_defconfig                   |   1 +
>   configs/P1025RDB_NAND_defconfig                    |   1 +
>   configs/P1025RDB_SDCARD_defconfig                  |   1 +
>   configs/P1025RDB_SPIFLASH_defconfig                |   1 +
>   configs/P1025RDB_defconfig                         |   1 +
>   configs/P2020RDB-PC_36BIT_NAND_defconfig           |   1 +
>   configs/P2020RDB-PC_36BIT_SDCARD_defconfig         |   1 +
>   configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig       |   1 +
>   configs/P2020RDB-PC_36BIT_defconfig                |   1 +
>   configs/P2020RDB-PC_NAND_defconfig                 |   1 +
>   configs/P2020RDB-PC_SDCARD_defconfig               |   1 +
>   configs/P2020RDB-PC_SPIFLASH_defconfig             |   1 +
>   configs/P2020RDB-PC_defconfig                      |   1 +
>   configs/P2041RDB_NAND_defconfig                    |   1 +
>   configs/P2041RDB_SDCARD_defconfig                  |   1 +
>   configs/P2041RDB_SECURE_BOOT_defconfig             |   1 +
>   configs/P2041RDB_SPIFLASH_defconfig                |   1 +
>   configs/P2041RDB_SRIO_PCIE_BOOT_defconfig          |   1 +
>   configs/P2041RDB_defconfig                         |   1 +
>   configs/P3041DS_NAND_SECURE_BOOT_defconfig         |   1 +
>   configs/P3041DS_NAND_defconfig                     |   1 +
>   configs/P3041DS_SDCARD_defconfig                   |   1 +
>   configs/P3041DS_SECURE_BOOT_defconfig              |   1 +
>   configs/P3041DS_SPIFLASH_defconfig                 |   1 +
>   configs/P3041DS_SRIO_PCIE_BOOT_defconfig           |   1 +
>   configs/P3041DS_defconfig                          |   1 +
>   configs/P4080DS_SDCARD_defconfig                   |   1 +
>   configs/P4080DS_SECURE_BOOT_defconfig              |   1 +
>   configs/P4080DS_SPIFLASH_defconfig                 |   1 +
>   configs/P4080DS_SRIO_PCIE_BOOT_defconfig           |   1 +
>   configs/P4080DS_defconfig                          |   1 +
>   configs/P5020DS_NAND_SECURE_BOOT_defconfig         |   1 +
>   configs/P5020DS_NAND_defconfig                     |   1 +
>   configs/P5020DS_SDCARD_defconfig                   |   1 +
>   configs/P5020DS_SECURE_BOOT_defconfig              |   1 +
>   configs/P5020DS_SPIFLASH_defconfig                 |   1 +
>   configs/P5020DS_SRIO_PCIE_BOOT_defconfig           |   1 +
>   configs/P5020DS_defconfig                          |   1 +
>   configs/P5040DS_NAND_SECURE_BOOT_defconfig         |   1 +
>   configs/P5040DS_NAND_defconfig                     |   1 +
>   configs/P5040DS_SDCARD_defconfig                   |   1 +
>   configs/P5040DS_SECURE_BOOT_defconfig              |   1 +
>   configs/P5040DS_SPIFLASH_defconfig                 |   1 +
>   configs/P5040DS_defconfig                          |   1 +
>   configs/T1023RDB_NAND_defconfig                    |   1 +
>   configs/T1023RDB_SDCARD_defconfig                  |   1 +
>   configs/T1023RDB_SECURE_BOOT_defconfig             |   1 +
>   configs/T1023RDB_SPIFLASH_defconfig                |   1 +
>   configs/T1023RDB_defconfig                         |   1 +
>   configs/T1024QDS_DDR4_SECURE_BOOT_defconfig        |   1 +
>   configs/T1024QDS_DDR4_defconfig                    |   1 +
>   configs/T1024QDS_NAND_defconfig                    |   1 +
>   configs/T1024QDS_SDCARD_defconfig                  |   1 +
>   configs/T1024QDS_SECURE_BOOT_defconfig             |   1 +
>   configs/T1024QDS_SPIFLASH_defconfig                |   1 +
>   configs/T1024QDS_defconfig                         |   1 +
>   configs/T1024RDB_NAND_defconfig                    |   1 +
>   configs/T1024RDB_SDCARD_defconfig                  |   1 +
>   configs/T1024RDB_SECURE_BOOT_defconfig             |   1 +
>   configs/T1024RDB_SPIFLASH_defconfig                |   1 +
>   configs/T1024RDB_defconfig                         |   1 +
>   configs/T1040D4RDB_NAND_defconfig                  |   1 +
>   configs/T1040D4RDB_SDCARD_defconfig                |   1 +
>   configs/T1040D4RDB_SECURE_BOOT_defconfig           |   1 +
>   configs/T1040D4RDB_SPIFLASH_defconfig              |   1 +
>   configs/T1040D4RDB_defconfig                       |   1 +
>   configs/T1040QDS_DDR4_defconfig                    |   1 +
>   configs/T1040QDS_SECURE_BOOT_defconfig             |   1 +
>   configs/T1040QDS_defconfig                         |   1 +
>   configs/T1040RDB_NAND_defconfig                    |   1 +
>   configs/T1040RDB_SDCARD_defconfig                  |   1 +
>   configs/T1040RDB_SECURE_BOOT_defconfig             |   1 +
>   configs/T1040RDB_SPIFLASH_defconfig                |   1 +
>   configs/T1040RDB_defconfig                         |   1 +
>   configs/T1042D4RDB_NAND_defconfig                  |   1 +
>   configs/T1042D4RDB_SDCARD_defconfig                |   1 +
>   configs/T1042D4RDB_SECURE_BOOT_defconfig           |   1 +
>   configs/T1042D4RDB_SPIFLASH_defconfig              |   1 +
>   configs/T1042D4RDB_defconfig                       |   1 +
>   configs/T1042RDB_PI_NAND_SECURE_BOOT_defconfig     |   2 +
>   configs/T1042RDB_PI_NAND_defconfig                 |   1 +
>   configs/T1042RDB_PI_SDCARD_defconfig               |   1 +
>   configs/T1042RDB_PI_SPIFLASH_defconfig             |   1 +
>   configs/T1042RDB_PI_defconfig                      |   1 +
>   configs/T1042RDB_SECURE_BOOT_defconfig             |   1 +
>   configs/T1042RDB_defconfig                         |   1 +
>   configs/T2080QDS_NAND_defconfig                    |   1 +
>   configs/T2080QDS_SDCARD_defconfig                  |   1 +
>   configs/T2080QDS_SECURE_BOOT_defconfig             |   1 +
>   configs/T2080QDS_SPIFLASH_defconfig                |   1 +
>   configs/T2080QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
>   configs/T2080QDS_defconfig                         |   1 +
>   configs/T2080RDB_NAND_defconfig                    |   1 +
>   configs/T2080RDB_SDCARD_defconfig                  |   1 +
>   configs/T2080RDB_SECURE_BOOT_defconfig             |   1 +
>   configs/T2080RDB_SPIFLASH_defconfig                |   1 +
>   configs/T2080RDB_SRIO_PCIE_BOOT_defconfig          |   1 +
>   configs/T2080RDB_defconfig                         |   1 +
>   configs/T2081QDS_NAND_defconfig                    |   1 +
>   configs/T2081QDS_SDCARD_defconfig                  |   1 +
>   configs/T2081QDS_SPIFLASH_defconfig                |   1 +
>   configs/T2081QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
>   configs/T2081QDS_defconfig                         |   1 +
>   configs/T4160QDS_NAND_defconfig                    |   1 +
>   configs/T4160QDS_SDCARD_defconfig                  |   1 +
>   configs/T4160QDS_SECURE_BOOT_defconfig             |   1 +
>   configs/T4160QDS_defconfig                         |   1 +
>   configs/T4160RDB_defconfig                         |   1 +
>   configs/T4240QDS_NAND_defconfig                    |   1 +
>   configs/T4240QDS_SDCARD_defconfig                  |   1 +
>   configs/T4240QDS_SECURE_BOOT_defconfig             |   1 +
>   configs/T4240QDS_SRIO_PCIE_BOOT_defconfig          |   1 +
>   configs/T4240QDS_defconfig                         |   1 +
>   configs/T4240RDB_SDCARD_defconfig                  |   1 +
>   configs/T4240RDB_defconfig                         |   1 +
>   configs/TQM834x_defconfig                          |   1 +
>   configs/TWR-P1025_defconfig                        |   1 +
>   configs/UCP1020_SPIFLASH_defconfig                 |   1 +
>   configs/UCP1020_defconfig                          |   1 +
>   configs/adp-ae3xx_defconfig                        |   1 +
>   configs/adp-ag101p_defconfig                       |   1 +
>   configs/alt_defconfig                              |   1 +
>   configs/am335x_baltos_defconfig                    |   1 +
>   configs/am335x_boneblack_defconfig                 |   1 +
>   configs/am335x_boneblack_vboot_defconfig           |   1 +
>   configs/am335x_evm_defconfig                       |   1 +
>   configs/am335x_evm_nor_defconfig                   |   1 +
>   configs/am335x_evm_norboot_defconfig               |   1 +
>   configs/am335x_evm_spiboot_defconfig               |   1 +
>   configs/am335x_evm_usbspl_defconfig                |   1 +
>   configs/am335x_hs_evm_defconfig                    |   1 +
>   configs/am335x_igep003x_defconfig                  |   1 +
>   configs/am335x_shc_defconfig                       |   1 +
>   configs/am335x_shc_ict_defconfig                   |   1 +
>   configs/am335x_shc_netboot_defconfig               |   1 +
>   configs/am335x_shc_prompt_defconfig                |   1 +
>   configs/am335x_shc_sdboot_defconfig                |   1 +
>   configs/am335x_shc_sdboot_prompt_defconfig         |   1 +
>   configs/am335x_sl50_defconfig                      |   1 +
>   configs/am3517_crane_defconfig                     |   1 +
>   configs/am3517_evm_defconfig                       |   1 +
>   configs/am43xx_evm_defconfig                       |   1 +
>   configs/am43xx_evm_ethboot_defconfig               |   1 +
>   configs/am43xx_evm_qspiboot_defconfig              |   1 +
>   configs/am43xx_evm_usbhost_boot_defconfig          |   1 +
>   configs/am43xx_hs_evm_defconfig                    |   1 +
>   configs/am57xx_evm_defconfig                       |   1 +
>   configs/am57xx_evm_nodt_defconfig                  |   1 +
>   configs/am57xx_hs_evm_defconfig                    |   1 +
>   configs/amcore_defconfig                           |   1 +
>   configs/ap121_defconfig                            |   1 +
>   configs/ap143_defconfig                            |   1 +
>   configs/ap325rxa_defconfig                         |   1 +
>   configs/ap_sh4a_4a_defconfig                       |   1 +
>   configs/apalis_imx6_defconfig                      |   1 +
>   configs/apalis_imx6_nospl_com_defconfig            |   1 +
>   configs/apalis_imx6_nospl_it_defconfig             |   1 +
>   configs/apf27_defconfig                            |   1 +
>   configs/apx4devkit_defconfig                       |   1 +
>   configs/aristainetos2_defconfig                    |   1 +
>   configs/aristainetos2b_defconfig                   |   1 +
>   configs/aristainetos_defconfig                     |   1 +
>   configs/armadillo-800eva_defconfig                 |   1 +
>   configs/arndale_defconfig                          |   1 +
>   configs/aspenite_defconfig                         |   1 +
>   configs/at91rm9200ek_defconfig                     |   1 +
>   configs/at91rm9200ek_ram_defconfig                 |   1 +
>   configs/at91sam9260ek_dataflash_cs0_defconfig      |   1 +
>   configs/at91sam9260ek_dataflash_cs1_defconfig      |   1 +
>   configs/at91sam9260ek_nandflash_defconfig          |   1 +
>   configs/at91sam9261ek_dataflash_cs0_defconfig      |   1 +
>   configs/at91sam9261ek_dataflash_cs3_defconfig      |   1 +
>   configs/at91sam9261ek_nandflash_defconfig          |   1 +
>   configs/at91sam9263ek_dataflash_cs0_defconfig      |   1 +
>   configs/at91sam9263ek_dataflash_defconfig          |   1 +
>   configs/at91sam9263ek_nandflash_defconfig          |   1 +
>   configs/at91sam9263ek_norflash_boot_defconfig      |   1 +
>   configs/at91sam9263ek_norflash_defconfig           |   1 +
>   configs/at91sam9g10ek_dataflash_cs0_defconfig      |   1 +
>   configs/at91sam9g10ek_dataflash_cs3_defconfig      |   1 +
>   configs/at91sam9g10ek_nandflash_defconfig          |   1 +
>   configs/at91sam9g20ek_2mmc_defconfig               |   1 +
>   configs/at91sam9g20ek_2mmc_nandflash_defconfig     |   1 +
>   configs/at91sam9g20ek_dataflash_cs0_defconfig      |   1 +
>   configs/at91sam9g20ek_dataflash_cs1_defconfig      |   1 +
>   configs/at91sam9g20ek_nandflash_defconfig          |   1 +
>   configs/at91sam9m10g45ek_mmc_defconfig             |   1 +
>   configs/at91sam9m10g45ek_nandflash_defconfig       |   1 +
>   configs/at91sam9n12ek_mmc_defconfig                |   1 +
>   configs/at91sam9n12ek_nandflash_defconfig          |   1 +
>   configs/at91sam9n12ek_spiflash_defconfig           |   1 +
>   configs/at91sam9rlek_dataflash_defconfig           |   1 +
>   configs/at91sam9rlek_mmc_defconfig                 |   1 +
>   configs/at91sam9rlek_nandflash_defconfig           |   1 +
>   configs/at91sam9x5ek_dataflash_defconfig           |   1 +
>   configs/at91sam9x5ek_mmc_defconfig                 |   1 +
>   configs/at91sam9x5ek_nandflash_defconfig           |   1 +
>   configs/at91sam9x5ek_spiflash_defconfig            |   1 +
>   configs/at91sam9xeek_dataflash_cs0_defconfig       |   1 +
>   configs/at91sam9xeek_dataflash_cs1_defconfig       |   1 +
>   configs/at91sam9xeek_nandflash_defconfig           |   1 +
>   configs/axm_defconfig                              |   1 +
>   configs/axs101_defconfig                           |   1 +
>   configs/axs103_defconfig                           |   1 +
>   configs/bayleybay_defconfig                        |   2 +-
>   configs/bcm11130_defconfig                         |   1 +
>   configs/bcm11130_nand_defconfig                    |   1 +
>   configs/bcm23550_w1d_defconfig                     |   1 +
>   configs/bcm28155_ap_defconfig                      |   1 +
>   configs/bcm28155_w1d_defconfig                     |   1 +
>   configs/bcm911360_entphn-ns_defconfig              |   1 +
>   configs/bcm911360_entphn_defconfig                 |   1 +
>   configs/bcm911360k_defconfig                       |   1 +
>   configs/bcm958300k-ns_defconfig                    |   1 +
>   configs/bcm958300k_defconfig                       |   1 +
>   configs/bcm958305k_defconfig                       |   1 +
>   configs/bcm958622hr_defconfig                      |   1 +
>   configs/bcm958712k_defconfig                       |   1 +
>   configs/bg0900_defconfig                           |   1 +
>   configs/birdland_bav335a_defconfig                 |   1 +
>   configs/birdland_bav335b_defconfig                 |   1 +
>   configs/bk4r1_defconfig                            |   3 +-
>   configs/blanche_defconfig                          |   1 +
>   configs/brppt1_mmc_defconfig                       |   1 +
>   configs/brppt1_nand_defconfig                      |   1 +
>   configs/brppt1_spi_defconfig                       |   1 +
>   configs/brxre1_defconfig                           |   1 +
>   configs/caddy2_defconfig                           |   1 +
>   configs/cairo_defconfig                            |   1 +
>   configs/calimain_defconfig                         |   1 +
>   configs/cgtqmx6eval_defconfig                      |   1 +
>   configs/chiliboard_defconfig                       |   1 +
>   configs/chromebit_mickey_defconfig                 |   1 +
>   configs/chromebook_jerry_defconfig                 |   1 +
>   configs/chromebook_link64_defconfig                |   5 +-
>   configs/chromebook_link_defconfig                  |   5 +-
>   configs/chromebook_minnie_defconfig                |   1 +
>   configs/chromebook_samus_defconfig                 |   3 +-
>   configs/chromebox_panther_defconfig                |   5 +-
>   configs/cl-som-am57x_defconfig                     |   1 +
>   configs/clearfog_defconfig                         |   1 +
>   configs/cm_fx6_defconfig                           |   1 +
>   configs/cm_t335_defconfig                          |   1 +
>   configs/cm_t3517_defconfig                         |   1 +
>   configs/cm_t35_defconfig                           |   1 +
>   configs/cm_t43_defconfig                           |   1 +
>   configs/cm_t54_defconfig                           |   3 +-
>   configs/colibri_imx6_defconfig                     |   1 +
>   configs/colibri_imx6_nospl_defconfig               |   1 +
>   configs/colibri_imx7_defconfig                     |   1 +
>   configs/colibri_pxa270_defconfig                   |   1 +
>   configs/colibri_t20_defconfig                      |   1 +
>   configs/colibri_vf_defconfig                       |   3 +-
>   ...conga-qeval20-qa3-e3845-internal-uart_defconfig |   1 +
>   .../controlcenterd_36BIT_SDCARD_DEVELOP_defconfig  |   1 +
>   configs/controlcenterd_36BIT_SDCARD_defconfig      |   1 +
>   .../controlcenterd_TRAILBLAZER_DEVELOP_defconfig   |   1 +
>   configs/controlcenterd_TRAILBLAZER_defconfig       |   1 +
>   configs/controlcenterdc_defconfig                  |   3 +-
>   configs/coreboot-x86_defconfig                     |   1 +
>   configs/corvus_defconfig                           |   1 +
>   configs/cougarcanyon2_defconfig                    |   3 +-
>   configs/crownbay_defconfig                         |   3 +-
>   configs/d2net_v2_defconfig                         |   1 +
>   configs/da850_am18xxevm_defconfig                  |   1 +
>   configs/da850evm_defconfig                         |   1 +
>   configs/da850evm_direct_nor_defconfig              |   1 +
>   configs/dalmore_defconfig                          |   1 +
>   configs/db-88f6720_defconfig                       |   1 +
>   configs/db-88f6820-amc_defconfig                   |   1 +
>   configs/db-88f6820-gp_defconfig                    |   3 +-
>   configs/dbau1000_defconfig                         |   1 +
>   configs/dbau1100_defconfig                         |   1 +
>   configs/dbau1500_defconfig                         |   1 +
>   configs/dbau1550_defconfig                         |   1 +
>   configs/dbau1550_el_defconfig                      |   1 +
>   configs/devkit3250_defconfig                       |   1 +
>   configs/devkit8000_defconfig                       |   1 +
>   configs/dms-ba16-1g_defconfig                      |   1 +
>   configs/dms-ba16_defconfig                         |   1 +
>   configs/dns325_defconfig                           |   1 +
>   configs/dockstar_defconfig                         |   1 +
>   configs/dra7xx_evm_defconfig                       |   3 +-
>   configs/dra7xx_hs_evm_defconfig                    |   3 +-
>   configs/draco_defconfig                            |   1 +
>   configs/dragonboard410c_defconfig                  |   1 +
>   configs/dreamplug_defconfig                        |   1 +
>   configs/ds109_defconfig                            |   1 +
>   configs/duovero_defconfig                          |   1 +
>   configs/ea20_defconfig                             |   1 +
>   configs/eco5pk_defconfig                           |   1 +
>   configs/ecovec_defconfig                           |   1 +
>   configs/edb9315a_defconfig                         |   1 +
>   configs/edminiv2_defconfig                         |   1 +
>   configs/efi-x86_defconfig                          |   1 +
>   configs/espresso7420_defconfig                     |   1 +
>   configs/espt_defconfig                             |   1 +
>   configs/etamin_defconfig                           |   1 +
>   configs/ethernut5_defconfig                        |   1 +
>   configs/evb-ast2500_defconfig                      |   1 +
>   configs/evb-px5_defconfig                          |   1 +
>   configs/evb-rk3036_defconfig                       |   1 +
>   configs/evb-rk3288_defconfig                       |   1 +
>   configs/evb-rk3328_defconfig                       |   1 +
>   configs/evb-rk3399_defconfig                       |   1 +
>   configs/evb-rv1108_defconfig                       |   1 +
>   configs/fennec-rk3288_defconfig                    |   1 +
>   configs/firefly-rk3288_defconfig                   |   1 +
>   configs/firefly-rk3399_defconfig                   |   1 +
>   configs/flea3_defconfig                            |   1 +
>   configs/galileo_defconfig                          |   1 +
>   configs/ge_b450v3_defconfig                        |   1 +
>   configs/ge_b650v3_defconfig                        |   1 +
>   configs/ge_b850v3_defconfig                        |   1 +
>   configs/geekbox_defconfig                          |   1 +
>   configs/goflexhome_defconfig                       |   1 +
>   configs/gose_defconfig                             |   1 +
>   configs/gplugd_defconfig                           |   1 +
>   configs/gurnard_defconfig                          |   1 +
>   configs/guruplug_defconfig                         |   1 +
>   configs/gwventana_emmc_defconfig                   |   1 +
>   configs/gwventana_gw5904_defconfig                 |   1 +
>   configs/gwventana_nand_defconfig                   |   1 +
>   configs/h2200_defconfig                            |   1 +
>   configs/harmony_defconfig                          |   1 +
>   configs/highbank_defconfig                         |   3 +-
>   configs/hikey_defconfig                            |   1 +
>   configs/hrcon_defconfig                            |   1 +
>   configs/hrcon_dh_defconfig                         |   1 +
>   configs/hsdk_defconfig                             |   1 +
>   configs/ib62x0_defconfig                           |   1 +
>   configs/iconnect_defconfig                         |   1 +
>   configs/ids8313_defconfig                          |   1 +
>   configs/igep0020_defconfig                         |   1 +
>   configs/igep0030_defconfig                         |   1 +
>   configs/igep0032_defconfig                         |   1 +
>   configs/imgtec_xilfpga_defconfig                   |   1 +
>   configs/imx31_phycore_defconfig                    |   1 +
>   configs/imx31_phycore_eet_defconfig                |   1 +
>   configs/imx6q_logic_defconfig                      |   1 +
>   configs/imx6qdl_icore_mmc_defconfig                |   7 +-
>   configs/imx6qdl_icore_nand_defconfig               |  12 +-
>   configs/imx6qdl_icore_rqs_mmc_defconfig            |   9 +-
>   configs/imx6ul_geam_mmc_defconfig                  |   7 +-
>   configs/imx6ul_geam_nand_defconfig                 |   7 +-
>   configs/imx6ul_isiot_emmc_defconfig                |   7 +-
>   configs/imx6ul_isiot_mmc_defconfig                 |   7 +-
>   configs/imx6ul_isiot_nand_defconfig                |   7 +-
>   configs/inetspace_v2_defconfig                     |   1 +
>   configs/integratorap_cm720t_defconfig              |   1 +
>   configs/integratorap_cm920t_defconfig              |   1 +
>   configs/integratorap_cm926ejs_defconfig            |   1 +
>   configs/integratorap_cm946es_defconfig             |   1 +
>   configs/ipam390_defconfig                          |   1 +
>   configs/k2e_evm_defconfig                          |   1 +
>   configs/k2e_hs_evm_defconfig                       |   1 +
>   configs/k2g_evm_defconfig                          |   1 +
>   configs/k2g_hs_evm_defconfig                       |   1 +
>   configs/k2hk_evm_defconfig                         |   1 +
>   configs/k2hk_hs_evm_defconfig                      |   1 +
>   configs/k2l_evm_defconfig                          |   1 +
>   configs/kc1_defconfig                              |   1 +
>   configs/km_kirkwood_128m16_defconfig               |   1 +
>   configs/km_kirkwood_defconfig                      |   1 +
>   configs/km_kirkwood_pci_defconfig                  |   1 +
>   configs/kmcoge4_defconfig                          |   1 +
>   configs/kmcoge5ne_defconfig                        |   1 +
>   configs/kmcoge5un_defconfig                        |   1 +
>   configs/kmeter1_defconfig                          |   1 +
>   configs/kmlion1_defconfig                          |   1 +
>   configs/kmnusa_defconfig                           |   1 +
>   configs/kmsugp1_defconfig                          |   1 +
>   configs/kmsuv31_defconfig                          |   1 +
>   configs/koelsch_defconfig                          |   1 +
>   configs/kylin-rk3036_defconfig                     |   1 +
>   configs/kzm9g_defconfig                            |   1 +
>   configs/lager_defconfig                            |   1 +
>   configs/legoev3_defconfig                          |   1 +
>   configs/liteboard_defconfig                        |   1 +
>   configs/ls1012afrdm_qspi_defconfig                 |   1 +
>   configs/ls1012aqds_qspi_defconfig                  |   3 +-
>   configs/ls1012ardb_qspi_SECURE_BOOT_defconfig      |   1 +
>   configs/ls1012ardb_qspi_defconfig                  |   1 +
>   configs/ls1021aiot_qspi_defconfig                  |   1 +
>   configs/ls1021aiot_sdcard_defconfig                |   1 +
>   configs/ls1021aqds_ddr4_nor_defconfig              |   1 +
>   configs/ls1021aqds_ddr4_nor_lpuart_defconfig       |   1 +
>   configs/ls1021aqds_nand_defconfig                  |   1 +
>   configs/ls1021aqds_nor_SECURE_BOOT_defconfig       |   1 +
>   configs/ls1021aqds_nor_defconfig                   |   1 +
>   configs/ls1021aqds_nor_lpuart_defconfig            |   1 +
>   configs/ls1021aqds_qspi_defconfig                  |   1 +
>   configs/ls1021aqds_sdcard_ifc_defconfig            |   1 +
>   configs/ls1021aqds_sdcard_qspi_defconfig           |   1 +
>   configs/ls1021atwr_nor_SECURE_BOOT_defconfig       |   1 +
>   configs/ls1021atwr_nor_defconfig                   |   1 +
>   configs/ls1021atwr_nor_lpuart_defconfig            |   1 +
>   configs/ls1021atwr_qspi_defconfig                  |   1 +
>   .../ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig    |   2 +
>   configs/ls1021atwr_sdcard_ifc_defconfig            |   1 +
>   configs/ls1021atwr_sdcard_qspi_defconfig           |   1 +
>   configs/ls1043aqds_defconfig                       |   1 +
>   configs/ls1043aqds_lpuart_defconfig                |   1 +
>   configs/ls1043aqds_nand_defconfig                  |   1 +
>   configs/ls1043aqds_nor_ddr3_defconfig              |   1 +
>   configs/ls1043aqds_qspi_defconfig                  |   1 +
>   configs/ls1043aqds_sdcard_ifc_defconfig            |   1 +
>   configs/ls1043aqds_sdcard_qspi_defconfig           |   1 +
>   configs/ls1043ardb_SECURE_BOOT_defconfig           |   1 +
>   configs/ls1043ardb_defconfig                       |   1 +
>   configs/ls1043ardb_nand_SECURE_BOOT_defconfig      |   2 +
>   configs/ls1043ardb_nand_defconfig                  |   1 +
>   configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig    |   2 +
>   configs/ls1043ardb_sdcard_defconfig                |   1 +
>   configs/ls1046aqds_SECURE_BOOT_defconfig           |   1 +
>   configs/ls1046aqds_defconfig                       |   1 +
>   configs/ls1046aqds_lpuart_defconfig                |   1 +
>   configs/ls1046aqds_nand_defconfig                  |   1 +
>   configs/ls1046aqds_qspi_defconfig                  |   1 +
>   configs/ls1046aqds_sdcard_ifc_defconfig            |   1 +
>   configs/ls1046aqds_sdcard_qspi_defconfig           |   1 +
>   configs/ls1046ardb_emmc_defconfig                  |   1 +
>   configs/ls1046ardb_qspi_SECURE_BOOT_defconfig      |   1 +
>   configs/ls1046ardb_qspi_defconfig                  |   1 +
>   configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig    |   2 +
>   configs/ls1046ardb_sdcard_defconfig                |   1 +
>   configs/ls2080a_emu_defconfig                      |   1 +
>   configs/ls2080a_simu_defconfig                     |   1 +
>   configs/ls2080aqds_SECURE_BOOT_defconfig           |   1 +
>   configs/ls2080aqds_defconfig                       |   1 +
>   configs/ls2080aqds_nand_defconfig                  |   1 +
>   configs/ls2080aqds_qspi_defconfig                  |   1 +
>   configs/ls2080aqds_sdcard_defconfig                |   1 +
>   configs/ls2080ardb_SECURE_BOOT_defconfig           |   1 +
>   configs/ls2080ardb_defconfig                       |   1 +
>   configs/ls2080ardb_nand_defconfig                  |   1 +
>   configs/ls2081ardb_defconfig                       |   3 +-
>   configs/ls2088ardb_qspi_defconfig                  |   1 +
>   configs/lschlv2_defconfig                          |   1 +
>   configs/lsxhl_defconfig                            |   1 +
>   configs/m28evk_defconfig                           |   1 +
>   configs/m53evk_defconfig                           |   1 +
>   configs/ma5d4evk_defconfig                         |  17 +-
>   configs/marsboard_defconfig                        |   3 +-
>   configs/mccmon6_nor_defconfig                      |   1 +
>   configs/mccmon6_sd_defconfig                       |   1 +
>   configs/mcx_defconfig                              |   1 +
>   configs/medcom-wide_defconfig                      |   1 +
>   configs/meesc_dataflash_defconfig                  |   1 +
>   configs/meesc_defconfig                            |   1 +
>   configs/mgcoge3un_defconfig                        |   1 +
>   configs/microblaze-generic_defconfig               |   1 +
>   configs/minnowmax_defconfig                        |   2 +-
>   configs/miqi-rk3288_defconfig                      |   1 +
>   configs/mpc8308_p1m_defconfig                      |   1 +
>   configs/ms7722se_defconfig                         |   1 +
>   configs/ms7750se_defconfig                         |   1 +
>   configs/mt_ventoux_defconfig                       |   1 +
>   configs/mvebu_db-88f3720_defconfig                 |   1 +
>   configs/mvebu_db-88f7040-nand_defconfig            |   1 +
>   configs/mvebu_db-88f7040_defconfig                 |   1 +
>   configs/mvebu_db-88f8040_defconfig                 |   1 +
>   configs/mvebu_espressobin-88f3720_defconfig        |   1 +
>   configs/mvebu_mcbin-88f8040_defconfig              |   1 +
>   configs/mx23_olinuxino_defconfig                   |   1 +
>   configs/mx23evk_defconfig                          |   1 +
>   configs/mx25pdk_defconfig                          |   1 +
>   configs/mx28evk_auart_console_defconfig            |   3 +-
>   configs/mx28evk_defconfig                          |   2 +-
>   configs/mx28evk_nand_defconfig                     |   2 +-
>   configs/mx28evk_spi_defconfig                      |   2 +-
>   configs/mx31ads_defconfig                          |   1 +
>   configs/mx31pdk_defconfig                          |   1 +
>   configs/mx35pdk_defconfig                          |   1 +
>   configs/mx51evk_defconfig                          |   1 +
>   configs/mx53ard_defconfig                          |   1 +
>   configs/mx53cx9020_defconfig                       |   1 +
>   configs/mx53evk_defconfig                          |   1 +
>   configs/mx53loco_defconfig                         |   1 +
>   configs/mx53smd_defconfig                          |   1 +
>   configs/mx6cuboxi_defconfig                        |   1 +
>   configs/mx6dlarm2_defconfig                        |   1 +
>   configs/mx6dlarm2_lpddr2_defconfig                 |   1 +
>   configs/mx6dlsabreauto_defconfig                   |   1 +
>   configs/mx6qarm2_defconfig                         |   1 +
>   configs/mx6qarm2_lpddr2_defconfig                  |   1 +
>   configs/mx6qpsabreauto_defconfig                   |   1 +
>   configs/mx6qsabreauto_defconfig                    |   1 +
>   configs/mx6qsabrelite_defconfig                    |   1 +
>   configs/mx6sabresd_defconfig                       |   1 +
>   configs/mx6slevk_defconfig                         |   1 +
>   configs/mx6slevk_spinor_defconfig                  |   1 +
>   configs/mx6slevk_spl_defconfig                     |   1 +
>   configs/mx6sllevk_defconfig                        |   1 +
>   configs/mx6sllevk_plugin_defconfig                 |   1 +
>   configs/mx6ul_14x14_evk_defconfig                  |   1 +
>   configs/mx6ul_9x9_evk_defconfig                    |   1 +
>   configs/mx6ull_14x14_evk_defconfig                 |   1 +
>   configs/mx6ull_14x14_evk_plugin_defconfig          |   1 +
>   configs/mx7ulp_evk_defconfig                       |   1 +
>   configs/mx7ulp_evk_plugin_defconfig                |   1 +
>   configs/nas220_defconfig                           |   1 +
>   configs/net2big_v2_defconfig                       |   1 +
>   configs/netspace_lite_v2_defconfig                 |   1 +
>   configs/netspace_max_v2_defconfig                  |   1 +
>   configs/netspace_mini_v2_defconfig                 |   1 +
>   configs/netspace_v2_defconfig                      |   1 +
>   configs/nitrogen6dl2g_defconfig                    |   1 +
>   configs/nitrogen6dl_defconfig                      |   1 +
>   configs/nitrogen6q2g_defconfig                     |   1 +
>   configs/nitrogen6q_defconfig                       |   1 +
>   configs/nitrogen6s1g_defconfig                     |   1 +
>   configs/nitrogen6s_defconfig                       |   1 +
>   configs/nokia_rx51_defconfig                       |   1 +
>   configs/novena_defconfig                           |   1 +
>   configs/nsa310s_defconfig                          |   1 +
>   configs/nsim_700_defconfig                         |   1 +
>   configs/nsim_700be_defconfig                       |   1 +
>   configs/nsim_hs38_defconfig                        |   1 +
>   configs/nsim_hs38be_defconfig                      |   1 +
>   configs/odroid-c2_defconfig                        |   1 +
>   configs/odroid-xu3_defconfig                       |   2 +-
>   configs/omap3_beagle_defconfig                     |   1 +
>   configs/omap3_evm_defconfig                        |   1 +
>   configs/omap3_ha_defconfig                         |   1 +
>   configs/omap3_logic_defconfig                      |   1 +
>   configs/omap3_overo_defconfig                      |   1 +
>   configs/omap3_pandora_defconfig                    |   1 +
>   configs/omap3_zoom1_defconfig                      |   1 +
>   configs/omap4_panda_defconfig                      |   1 +
>   configs/omap4_sdp4430_defconfig                    |   1 +
>   configs/omap5_uevm_defconfig                       |   3 +-
>   configs/omapl138_lcdk_defconfig                    |   1 +
>   configs/openrd_base_defconfig                      |   1 +
>   configs/openrd_client_defconfig                    |   1 +
>   configs/openrd_ultimate_defconfig                  |   1 +
>   configs/opos6uldev_defconfig                       |   1 +
>   configs/ot1200_defconfig                           |   1 +
>   configs/ot1200_spl_defconfig                       |   1 +
>   configs/paz00_defconfig                            |   1 +
>   configs/pb1000_defconfig                           |   1 +
>   configs/pcm051_rev1_defconfig                      |   1 +
>   configs/pcm051_rev3_defconfig                      |   1 +
>   configs/pcm052_defconfig                           |   3 +-
>   configs/pcm058_defconfig                           |   1 +
>   configs/peach-pi_defconfig                         |   1 +
>   configs/peach-pit_defconfig                        |   1 +
>   configs/pengwyn_defconfig                          |   1 +
>   configs/pepper_defconfig                           |   1 +
>   configs/pic32mzdask_defconfig                      |   1 +
>   configs/pico-imx6ul_defconfig                      |   1 +
>   configs/pico-imx7d_defconfig                       |   8 +-
>   configs/picosam9g45_defconfig                      |   1 +
>   configs/platinum_picon_defconfig                   |   1 +
>   configs/platinum_titanium_defconfig                |   1 +
>   configs/plutux_defconfig                           |   1 +
>   configs/pm9261_defconfig                           |   1 +
>   configs/pm9263_defconfig                           |   1 +
>   configs/pm9g45_defconfig                           |   1 +
>   configs/pogo_e02_defconfig                         |   1 +
>   configs/popmetal-rk3288_defconfig                  |   1 +
>   configs/porter_defconfig                           |   1 +
>   configs/portl2_defconfig                           |   1 +
>   configs/puma-rk3399_defconfig                      |   1 +
>   configs/pxm2_defconfig                             |   1 +
>   configs/qemu-ppce500_defconfig                     |   1 +
>   configs/qemu-x86_64_defconfig                      |   1 +
>   configs/qemu-x86_defconfig                         |   1 +
>   configs/qemu-x86_efi_payload32_defconfig           |   1 +
>   configs/qemu-x86_efi_payload64_defconfig           |   1 +
>   configs/r0p7734_defconfig                          |   1 +
>   configs/r2dplus_defconfig                          |   1 +
>   configs/r7780mp_defconfig                          |   1 +
>   configs/r8a7795_salvator-x_defconfig               |   1 +
>   configs/r8a7796_salvator-x_defconfig               |   1 +
>   configs/rastaban_defconfig                         |   1 +
>   configs/riotboard_defconfig                        |   3 +-
>   configs/rock2_defconfig                            |   1 +
>   configs/rock_defconfig                             |   1 +
>   configs/rut_defconfig                              |   1 +
>   configs/s32v234evb_defconfig                       |   1 +
>   configs/s5p_goni_defconfig                         |   1 +
>   configs/sama5d2_ptc_nandflash_defconfig            |   1 +
>   configs/sama5d2_ptc_spiflash_defconfig             |   1 +
>   configs/sama5d2_xplained_mmc_defconfig             |   1 +
>   configs/sama5d2_xplained_spiflash_defconfig        |   1 +
>   configs/sama5d36ek_cmp_mmc_defconfig               |   1 +
>   configs/sama5d36ek_cmp_nandflash_defconfig         |   1 +
>   configs/sama5d36ek_cmp_spiflash_defconfig          |   1 +
>   configs/sama5d3_xplained_mmc_defconfig             |   1 +
>   configs/sama5d3_xplained_nandflash_defconfig       |   1 +
>   configs/sama5d3xek_mmc_defconfig                   |   1 +
>   configs/sama5d3xek_nandflash_defconfig             |   1 +
>   configs/sama5d3xek_spiflash_defconfig              |   1 +
>   configs/sama5d4_xplained_mmc_defconfig             |   1 +
>   configs/sama5d4_xplained_nandflash_defconfig       |   1 +
>   configs/sama5d4_xplained_spiflash_defconfig        |   1 +
>   configs/sama5d4ek_mmc_defconfig                    |   1 +
>   configs/sama5d4ek_nandflash_defconfig              |   1 +
>   configs/sama5d4ek_spiflash_defconfig               |   1 +
>   configs/sandbox_defconfig                          |   1 +
>   configs/sandbox_flattree_defconfig                 |   1 +
>   configs/sandbox_noblk_defconfig                    |   1 +
>   configs/sandbox_spl_defconfig                      |   1 +
>   configs/sansa_fuze_plus_defconfig                  |   1 +
>   configs/sc_sps_1_defconfig                         |   1 +
>   configs/seaboard_defconfig                         |   1 +
>   configs/secomx6quq7_defconfig                      |   2 +-
>   configs/sh7752evb_defconfig                        |   1 +
>   configs/sh7753evb_defconfig                        |   1 +
>   configs/sh7757lcr_defconfig                        |   1 +
>   configs/sh7763rdp_defconfig                        |   1 +
>   configs/sh7785lcr_32bit_defconfig                  |   1 +
>   configs/sh7785lcr_defconfig                        |   1 +
>   configs/sheep-rk3368_defconfig                     |   1 +
>   configs/sheevaplug_defconfig                       |   1 +
>   configs/silk_defconfig                             |   1 +
>   configs/smartweb_defconfig                         |   1 +
>   configs/smdk5250_defconfig                         |   1 +
>   configs/smdk5420_defconfig                         |   1 +
>   configs/snapper9260_defconfig                      |   1 +
>   configs/snapper9g20_defconfig                      |   1 +
>   configs/sniper_defconfig                           |   1 +
>   configs/snow_defconfig                             |   1 +
>   configs/socfpga_arria10_defconfig                  |   1 +
>   configs/socfpga_arria5_defconfig                   |   1 +
>   configs/socfpga_cyclone5_defconfig                 |   1 +
>   configs/socfpga_de0_nano_soc_defconfig             |   1 +
>   configs/socfpga_de10_nano_defconfig                |   1 +
>   configs/socfpga_de1_soc_defconfig                  |   1 +
>   configs/socfpga_is1_defconfig                      |   1 +
>   configs/socfpga_mcvevk_defconfig                   |   1 +
>   configs/socfpga_sockit_defconfig                   |   1 +
>   configs/socfpga_socrates_defconfig                 |   1 +
>   configs/socfpga_sr1500_defconfig                   |   1 +
>   configs/socfpga_vining_fpga_defconfig              |   1 +
>   configs/socrates_defconfig                         |   1 +
>   configs/som-db5800-som-6867_defconfig              |   2 +-
>   configs/spear300_defconfig                         |   1 +
>   configs/spear300_nand_defconfig                    |   1 +
>   configs/spear300_usbtty_defconfig                  |   1 +
>   configs/spear300_usbtty_nand_defconfig             |   1 +
>   configs/spear310_defconfig                         |   1 +
>   configs/spear310_nand_defconfig                    |   1 +
>   configs/spear310_pnor_defconfig                    |   1 +
>   configs/spear310_usbtty_defconfig                  |   1 +
>   configs/spear310_usbtty_nand_defconfig             |   1 +
>   configs/spear310_usbtty_pnor_defconfig             |   1 +
>   configs/spear320_defconfig                         |   1 +
>   configs/spear320_nand_defconfig                    |   1 +
>   configs/spear320_pnor_defconfig                    |   1 +
>   configs/spear320_usbtty_defconfig                  |   1 +
>   configs/spear320_usbtty_nand_defconfig             |   1 +
>   configs/spear320_usbtty_pnor_defconfig             |   1 +
>   configs/spear600_defconfig                         |   1 +
>   configs/spear600_nand_defconfig                    |   1 +
>   configs/spear600_usbtty_defconfig                  |   1 +
>   configs/spear600_usbtty_nand_defconfig             |   1 +
>   configs/spring_defconfig                           |   1 +
>   configs/stih410-b2260_defconfig                    |   1 +
>   configs/stm32f429-discovery_defconfig              |   1 +
>   configs/stm32f746-disco_defconfig                  |   1 +
>   configs/stout_defconfig                            |   1 +
>   configs/stv0991_defconfig                          |   1 +
>   configs/tao3530_defconfig                          |   1 +
>   configs/taurus_defconfig                           |   1 +
>   configs/tb100_defconfig                            |   1 +
>   configs/tbs2910_defconfig                          |   1 +
>   configs/tec_defconfig                              |   1 +
>   configs/thuban_defconfig                           |   1 +
>   configs/thunderx_88xx_defconfig                    |   1 +
>   configs/ti814x_evm_defconfig                       |   1 +
>   configs/ti816x_evm_defconfig                       |   6 +-
>   configs/tinker-rk3288_defconfig                    |   1 +
>   configs/titanium_defconfig                         |   1 +
>   configs/topic_miami_defconfig                      |   1 +
>   configs/topic_miamilite_defconfig                  |   5 +-
>   configs/topic_miamiplus_defconfig                  |   3 +-
>   configs/tplink_wdr4300_defconfig                   |   1 +
>   configs/tqma6dl_mba6_mmc_defconfig                 |   1 +
>   configs/tqma6dl_mba6_spi_defconfig                 |   1 +
>   configs/tqma6q_mba6_mmc_defconfig                  |   1 +
>   configs/tqma6q_mba6_spi_defconfig                  |   1 +
>   configs/tqma6s_mba6_mmc_defconfig                  |   1 +
>   configs/tqma6s_mba6_spi_defconfig                  |   1 +
>   configs/tqma6s_wru4_mmc_defconfig                  |   1 +
>   configs/tricorder_defconfig                        |   1 +
>   configs/tricorder_flash_defconfig                  |   1 +
>   configs/trimslice_defconfig                        |   1 +
>   configs/ts4600_defconfig                           |   2 +-
>   configs/ts4800_defconfig                           |   1 +
>   configs/twister_defconfig                          |   1 +
>   configs/udoo_defconfig                             |   1 +
>   configs/usb_a9263_dataflash_defconfig              |   1 +
>   configs/usbarmory_defconfig                        |   1 +
>   configs/vct_platinum_defconfig                     |   1 +
>   configs/vct_platinum_small_defconfig               |   1 +
>   configs/vct_platinumavc_defconfig                  |   1 +
>   configs/vct_platinumavc_small_defconfig            |   1 +
>   configs/vct_premium_defconfig                      |   1 +
>   configs/vct_premium_small_defconfig                |   1 +
>   configs/ve8313_defconfig                           |   1 +
>   configs/ventana_defconfig                          |   1 +
>   configs/vexpress_aemv8a_dram_defconfig             |   1 +
>   configs/vexpress_aemv8a_juno_defconfig             |   1 +
>   configs/vexpress_aemv8a_semi_defconfig             |   1 +
>   configs/vexpress_ca15_tc2_defconfig                |   1 +
>   configs/vexpress_ca5x2_defconfig                   |   1 +
>   configs/vexpress_ca9x4_defconfig                   |   1 +
>   configs/vf610twr_defconfig                         |   3 +-
>   configs/vf610twr_nand_defconfig                    |   3 +-
>   configs/vinco_defconfig                            |   1 +
>   configs/vme8349_defconfig                          |   1 +
>   configs/wandboard_defconfig                        |   1 +
>   configs/warp_defconfig                             |   1 +
>   configs/woodburn_defconfig                         |   1 +
>   configs/woodburn_sd_defconfig                      |   1 +
>   configs/work_92105_defconfig                       |   1 +
>   configs/x600_defconfig                             |   1 +
>   configs/xfi3_defconfig                             |   1 +
>   configs/xilinx_zynqmp_ep_defconfig                 |   5 +-
>   configs/xilinx_zynqmp_zc1751_xm015_dc1_defconfig   |   1 +
>   configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig   |   1 +
>   configs/xilinx_zynqmp_zc1751_xm018_dc4_defconfig   |   1 +
>   configs/xilinx_zynqmp_zc1751_xm019_dc5_defconfig   |   1 +
>   configs/xilinx_zynqmp_zcu102_defconfig             |   5 +-
>   configs/xilinx_zynqmp_zcu102_revB_defconfig        |   5 +-
>   configs/xpedite550x_defconfig                      |   1 +
>   configs/xpress_defconfig                           |   1 +
>   configs/xpress_spl_defconfig                       |   1 +
>   configs/xtfpga_defconfig                           |   1 +
>   configs/zc5202_defconfig                           |   1 +
>   configs/zc5601_defconfig                           |   1 +
>   configs/zipitz2_defconfig                          |   1 +
>   configs/zmx25_defconfig                            |   1 +
>   configs/zynq_microzed_defconfig                    |   1 +
>   configs/zynq_picozed_defconfig                     |   1 +
>   configs/zynq_zc702_defconfig                       |   1 +
>   configs/zynq_zc706_defconfig                       |   1 +
>   configs/zynq_zc770_xm010_defconfig                 |   1 +
>   configs/zynq_zc770_xm011_defconfig                 |   1 +
>   configs/zynq_zc770_xm012_defconfig                 |   1 +
>   configs/zynq_zc770_xm013_defconfig                 |   1 +
>   configs/zynq_zed_defconfig                         |   1 +
>   configs/zynq_zybo_defconfig                        |   1 +
>   drivers/bootcount/bootcount_env.c                  |   3 +-
>   env/Kconfig                                        | 403 +++++++++++++++++++++
>   env/Makefile                                       |  57 +++
>   common/env_attr.c => env/attr.c                    |   0
>   common/env_callback.c => env/callback.c            |   0
>   common/env_common.c => env/common.c                |  38 +-
>   common/env_dataflash.c => env/dataflash.c          |  33 +-
>   common/env_eeprom.c => env/eeprom.c                |  61 ++--
>   common/env_embedded.c => env/embedded.c            |   0
>   env/env.c                                          | 151 ++++++++
>   common/env_ext4.c => env/ext4.c                    |  28 +-
>   common/env_fat.c => env/fat.c                      |  34 +-
>   common/env_flags.c => env/flags.c                  |   0
>   common/env_flash.c => env/flash.c                  |  92 +++--
>   common/env_mmc.c => env/mmc.c                      |  81 ++---
>   common/env_nand.c => env/nand.c                    |  86 +++--
>   common/env_nowhere.c => env/nowhere.c              |  22 +-
>   common/env_nvram.c => env/nvram.c                  |  26 +-
>   common/env_onenand.c => env/onenand.c              |  24 +-
>   common/env_remote.c => env/remote.c                |  24 +-
>   common/env_sata.c => env/sata.c                    |  37 +-
>   common/env_sf.c => env/sf.c                        |  76 ++--
>   common/env_ubi.c => env/ubi.c                      |  59 ++-
>   include/asm-generic/global_data.h                  |   2 +-
>   include/common.h                                   |   1 -
>   include/config_fsl_chain_trust.h                   |  11 -
>   include/configs/10m50_devboard.h                   |   1 -
>   include/configs/3c120_devboard.h                   |   1 -
>   include/configs/B4860QDS.h                         |   8 -
>   include/configs/BSC9131RDB.h                       |   3 -
>   include/configs/BSC9132QDS.h                       |   5 -
>   include/configs/C29XPCIE.h                         |   3 -
>   include/configs/M5208EVBE.h                        |   5 +-
>   include/configs/M52277EVB.h                        |   3 -
>   include/configs/M5235EVB.h                         |   3 +-
>   include/configs/M5249EVB.h                         |   6 +-
>   include/configs/M5253DEMO.h                        |   6 +-
>   include/configs/M5253EVBE.h                        |   4 +-
>   include/configs/M5272C3.h                          |   6 +-
>   include/configs/M5275EVB.h                         |   6 +-
>   include/configs/M5282EVB.h                         |   3 +-
>   include/configs/M53017EVB.h                        |   3 +-
>   include/configs/M5329EVB.h                         |   5 +-
>   include/configs/M5373EVB.h                         |   5 +-
>   include/configs/M54418TWR.h                        |   2 -
>   include/configs/M54451EVB.h                        |   2 -
>   include/configs/M54455EVB.h                        |   3 -
>   include/configs/M5475EVB.h                         |   1 -
>   include/configs/M5485EVB.h                         |   1 -
>   include/configs/MPC8308RDB.h                       |   1 -
>   include/configs/MPC8313ERDB.h                      |   3 -
>   include/configs/MPC8315ERDB.h                      |   2 -
>   include/configs/MPC8323ERDB.h                      |   2 -
>   include/configs/MPC832XEMDS.h                      |   2 -
>   include/configs/MPC8349EMDS.h                      |   2 -
>   include/configs/MPC8349ITX.h                       |   2 -
>   include/configs/MPC837XEMDS.h                      |   2 -
>   include/configs/MPC837XERDB.h                      |   2 -
>   include/configs/MPC8536DS.h                        |   4 -
>   include/configs/MPC8540ADS.h                       |   2 -
>   include/configs/MPC8541CDS.h                       |   1 -
>   include/configs/MPC8544DS.h                        |   1 -
>   include/configs/MPC8548CDS.h                       |   1 -
>   include/configs/MPC8555CDS.h                       |   1 -
>   include/configs/MPC8560ADS.h                       |   2 -
>   include/configs/MPC8568MDS.h                       |   1 -
>   include/configs/MPC8569MDS.h                       |   1 -
>   include/configs/MPC8572DS.h                        |   1 -
>   include/configs/MPC8610HPCD.h                      |   2 -
>   include/configs/MPC8641HPCN.h                      |   2 -
>   include/configs/MigoR.h                            |   1 -
>   include/configs/P1010RDB.h                         |   5 -
>   include/configs/P1022DS.h                          |   5 -
>   include/configs/P1023RDB.h                         |   1 -
>   include/configs/P2041RDB.h                         |   8 -
>   include/configs/T102xQDS.h                         |   5 -
>   include/configs/T102xRDB.h                         |   5 -
>   include/configs/T1040QDS.h                         |   5 -
>   include/configs/T104xRDB.h                         |   4 -
>   include/configs/T208xQDS.h                         |   5 -
>   include/configs/T208xRDB.h                         |   5 -
>   include/configs/T4240QDS.h                         |   8 -
>   include/configs/T4240RDB.h                         |   7 -
>   include/configs/TQM834x.h                          |   1 -
>   include/configs/UCP1020.h                          |   5 -
>   include/configs/adp-ae3xx.h                        |   1 -
>   include/configs/adp-ag101p.h                       |   1 -
>   include/configs/advantech_dms-ba16.h               |   1 -
>   include/configs/am335x_evm.h                       |   6 -
>   include/configs/am335x_igep003x.h                  |   1 -
>   include/configs/am335x_shc.h                       |   9 -
>   include/configs/am335x_sl50.h                      |   4 -
>   include/configs/am3517_crane.h                     |   1 -
>   include/configs/am3517_evm.h                       |   1 -
>   include/configs/am43xx_evm.h                       |   8 -
>   include/configs/am57xx_evm.h                       |   1 -
>   include/configs/amcore.h                           |   5 +-
>   include/configs/ap121.h                            |   1 -
>   include/configs/ap143.h                            |   1 -
>   include/configs/ap325rxa.h                         |   1 -
>   include/configs/ap_sh4a_4a.h                       |   1 -
>   include/configs/apalis-tk1.h                       |   1 -
>   include/configs/apalis_imx6.h                      |   2 -
>   include/configs/apalis_t30.h                       |   1 -
>   include/configs/apf27.h                            |   1 -
>   include/configs/apx4devkit.h                       |   1 -
>   include/configs/aristainetos-common.h              |   1 -
>   include/configs/armadillo-800eva.h                 |   1 -
>   include/configs/arndale.h                          |   1 -
>   include/configs/aspenite.h                         |   1 -
>   include/configs/astro_mcf5373l.h                   |   4 +-
>   include/configs/at91-sama5_common.h                |   3 -
>   include/configs/at91rm9200ek.h                     |   1 -
>   include/configs/at91sam9260ek.h                    |   4 -
>   include/configs/at91sam9261ek.h                    |   3 -
>   include/configs/at91sam9263ek.h                    |   3 -
>   include/configs/at91sam9m10g45ek.h                 |   2 -
>   include/configs/at91sam9n12ek.h                    |   3 -
>   include/configs/at91sam9rlek.h                     |   3 -
>   include/configs/at91sam9x5ek.h                     |   4 -
>   include/configs/atngw100.h                         |   1 -
>   include/configs/atngw100mkii.h                     |   1 -
>   include/configs/atstk1002.h                        |   1 -
>   include/configs/axs10x.h                           |   1 -
>   include/configs/baltos.h                           |   1 -
>   include/configs/bav335x.h                          |   7 -
>   include/configs/bcm23550_w1d.h                     |   1 -
>   include/configs/bcm28155_ap.h                      |   1 -
>   include/configs/bcm_ep_board.h                     |   1 -
>   include/configs/bcm_northstar2.h                   |   1 -
>   include/configs/beaver.h                           |   1 -
>   include/configs/bg0900.h                           |   1 -
>   include/configs/blanche.h                          |   2 -
>   include/configs/boston.h                           |   1 -
>   include/configs/brppt1.h                           |   9 -
>   include/configs/brxre1.h                           |   2 -
>   include/configs/calimain.h                         |   1 -
>   include/configs/cardhu.h                           |   1 -
>   include/configs/cei-tk1-som.h                      |   1 -
>   include/configs/cgtqmx6eval.h                      |   1 -
>   include/configs/chiliboard.h                       |   1 -
>   include/configs/cl-som-am57x.h                     |   1 -
>   include/configs/clearfog.h                         |   1 -
>   include/configs/cm_fx6.h                           |   1 -
>   include/configs/cm_t335.h                          |   1 -
>   include/configs/cm_t35.h                           |   1 -
>   include/configs/cm_t3517.h                         |   1 -
>   include/configs/cm_t43.h                           |   1 -
>   include/configs/cm_t54.h                           |   1 -
>   include/configs/cobra5272.h                        |   6 +-
>   include/configs/colibri_imx6.h                     |   2 -
>   include/configs/colibri_imx7.h                     |   1 -
>   include/configs/colibri_pxa270.h                   |   5 -
>   include/configs/colibri_t20.h                      |   1 -
>   include/configs/colibri_t30.h                      |   1 -
>   include/configs/comtrend_ar5387un.h                |   1 -
>   include/configs/comtrend_ct5361.h                  |   1 -
>   include/configs/comtrend_vr3032u.h                 |   1 -
>   include/configs/controlcenterd.h                   |   3 -
>   include/configs/controlcenterdc.h                  |   1 -
>   include/configs/corenet_ds.h                       |   8 -
>   include/configs/corvus.h                           |   1 -
>   include/configs/cyrus.h                            |   1 -
>   include/configs/da850evm.h                         |   7 -
>   include/configs/dalmore.h                          |   1 -
>   include/configs/db-88f6720.h                       |   1 -
>   include/configs/db-88f6820-amc.h                   |   1 -
>   include/configs/db-88f6820-gp.h                    |   1 -
>   include/configs/db-mv784mp-gp.h                    |   1 -
>   include/configs/dbau1x00.h                         |   2 -
>   include/configs/devkit3250.h                       |   1 -
>   include/configs/devkit8000.h                       |   1 -
>   include/configs/dns325.h                           |   3 -
>   include/configs/dockstar.h                         |   3 -
>   include/configs/dra7xx_evm.h                       |   3 -
>   include/configs/dragonboard410c.h                  |   1 -
>   include/configs/dreamplug.h                        |   3 -
>   include/configs/ds109.h                            |   3 -
>   include/configs/ds414.h                            |   1 -
>   include/configs/duovero.h                          |   1 -
>   include/configs/e2220-1170.h                       |   1 -
>   include/configs/ea20.h                             |   4 -
>   include/configs/eb_cpu5282.h                       |   1 -
>   include/configs/ecovec.h                           |   1 -
>   include/configs/edb93xx.h                          |   1 -
>   include/configs/edminiv2.h                         |   1 -
>   include/configs/efi-x86.h                          |   2 -
>   include/configs/el6x_common.h                      |   2 -
>   include/configs/espresso7420.h                     |   1 -
>   include/configs/espt.h                             |   1 -
>   include/configs/ethernut5.h                        |   1 -
>   include/configs/evb_ast2500.h                      |   2 -
>   include/configs/evb_px5.h                          |   1 -
>   include/configs/evb_rk3288.h                       |   1 -
>   include/configs/evb_rk3328.h                       |   1 -
>   include/configs/evb_rk3399.h                       |   1 -
>   include/configs/exynos5-dt-common.h                |   1 -
>   include/configs/fennec_rk3288.h                    |   1 -
>   include/configs/firefly-rk3288.h                   |   1 -
>   include/configs/flea3.h                            |   2 -
>   include/configs/ge_bx50v3.h                        |   1 -
>   include/configs/geekbox.h                          |   1 -
>   include/configs/goflexhome.h                       |   3 -
>   include/configs/gplugd.h                           |   1 -
>   include/configs/grasshopper.h                      |   1 -
>   include/configs/guruplug.h                         |   3 -
>   include/configs/gw_ventana.h                       |   7 -
>   include/configs/h2200.h                            |   1 -
>   include/configs/harmony.h                          |   1 -
>   include/configs/highbank.h                         |   1 -
>   include/configs/hikey.h                            |   1 -
>   include/configs/hrcon.h                            |   2 -
>   include/configs/hsdk.h                             |   1 -
>   include/configs/huawei_hg556a.h                    |   1 -
>   include/configs/ib62x0.h                           |   3 -
>   include/configs/iconnect.h                         |   3 -
>   include/configs/ids8313.h                          |   1 -
>   include/configs/imgtec_xilfpga.h                   |   1 -
>   include/configs/imx27lite-common.h                 |   1 -
>   include/configs/imx31_phycore.h                    |   1 -
>   include/configs/imx6_logic.h                       |   1 -
>   include/configs/integratorap.h                     |   1 -
>   include/configs/integratorcp.h                     |   1 -
>   include/configs/ipam390.h                          |   1 -
>   include/configs/jetson-tk1.h                       |   1 -
>   include/configs/k2e_evm.h                          |   1 -
>   include/configs/k2g_evm.h                          |   1 -
>   include/configs/k2hk_evm.h                         |   1 -
>   include/configs/k2l_evm.h                          |   1 -
>   include/configs/kc1.h                              |   1 -
>   include/configs/km/km83xx-common.h                 |   2 -
>   include/configs/km/km_arm.h                        |   2 -
>   include/configs/km/kmp204x-common.h                |   1 -
>   include/configs/kylin_rk3036.h                     |   2 -
>   include/configs/kzm9g.h                            |   1 -
>   include/configs/lacie_kw.h                         |   1 -
>   include/configs/legoev3.h                          |   1 -
>   include/configs/liteboard.h                        |   1 -
>   include/configs/ls1012a_common.h                   |   1 -
>   include/configs/ls1021aiot.h                       |   2 -
>   include/configs/ls1021aqds.h                       |   4 -
>   include/configs/ls1021atwr.h                       |   3 -
>   include/configs/ls1043aqds.h                       |   4 -
>   include/configs/ls1043ardb.h                       |   3 -
>   include/configs/ls1046aqds.h                       |   4 -
>   include/configs/ls1046ardb.h                       |   2 -
>   include/configs/ls2080a_common.h                   |   1 -
>   include/configs/ls2080a_emu.h                      |   1 -
>   include/configs/ls2080a_simu.h                     |   1 -
>   include/configs/ls2080aqds.h                       |   3 -
>   include/configs/ls2080ardb.h                       |   2 -
>   include/configs/lsxl.h                             |   3 -
>   include/configs/m28evk.h                           |   3 -
>   include/configs/m53evk.h                           |   3 -
>   include/configs/ma5d4evk.h                         |   1 -
>   include/configs/malta.h                            |   1 -
>   include/configs/maxbcm.h                           |   1 -
>   include/configs/mccmon6.h                          |   1 -
>   include/configs/mcx.h                              |   1 -
>   include/configs/medcom-wide.h                      |   1 -
>   include/configs/meesc.h                            |   2 -
>   include/configs/meson-gxbb-common.h                |   1 -
>   include/configs/microblaze-generic.h               |   5 -
>   include/configs/miqi_rk3288.h                      |   1 -
>   include/configs/mpc8308_p1m.h                      |   1 -
>   include/configs/mpr2.h                             |   1 -
>   include/configs/ms7720se.h                         |   1 -
>   include/configs/ms7722se.h                         |   1 -
>   include/configs/ms7750se.h                         |   1 -
>   include/configs/mvebu_armada-37xx.h                |   1 -
>   include/configs/mvebu_armada-8k.h                  |   3 -
>   include/configs/mx23_olinuxino.h                   |   1 -
>   include/configs/mx23evk.h                          |   1 -
>   include/configs/mx25pdk.h                          |   1 -
>   include/configs/mx31ads.h                          |   1 -
>   include/configs/mx31pdk.h                          |   1 -
>   include/configs/mx35pdk.h                          |   3 -
>   include/configs/mx51evk.h                          |   1 -
>   include/configs/mx53ard.h                          |   1 -
>   include/configs/mx53cx9020.h                       |   1 -
>   include/configs/mx53evk.h                          |   1 -
>   include/configs/mx53loco.h                         |   1 -
>   include/configs/mx53smd.h                          |   1 -
>   include/configs/mx6cuboxi.h                        |   1 -
>   include/configs/mx6qarm2.h                         |   1 -
>   include/configs/mx6sabre_common.h                  |   2 -
>   include/configs/mx6slevk.h                         |   2 -
>   include/configs/mx6sllevk.h                        |   1 -
>   include/configs/mx6sxsabreauto.h                   |   1 -
>   include/configs/mx6sxsabresd.h                     |   1 -
>   include/configs/mx6ul_14x14_evk.h                  |   1 -
>   include/configs/mx6ullevk.h                        |   1 -
>   include/configs/mx7dsabresd.h                      |   1 -
>   include/configs/mx7ulp_evk.h                       |   1 -
>   include/configs/nas220.h                           |   3 -
>   include/configs/netgear_cg3100d.h                  |   1 -
>   include/configs/nitrogen6x.h                       |   6 -
>   include/configs/nokia_rx51.h                       |   2 -
>   include/configs/novena.h                           |   3 -
>   include/configs/nsa310s.h                          |   3 -
>   include/configs/nsim.h                             |   1 -
>   include/configs/nyan-big.h                         |   1 -
>   include/configs/odroid.h                           |   1 -
>   include/configs/odroid_xu3.h                       |   4 -
>   include/configs/omap3_beagle.h                     |   1 -
>   include/configs/omap3_cairo.h                      |   1 -
>   include/configs/omap3_evm.h                        |   1 -
>   include/configs/omap3_igep00x0.h                   |   1 -
>   include/configs/omap3_logic.h                      |   1 -
>   include/configs/omap3_overo.h                      |   1 -
>   include/configs/omap3_pandora.h                    |   1 -
>   include/configs/omap3_zoom1.h                      |   1 -
>   include/configs/omap4_panda.h                      |   1 -
>   include/configs/omap4_sdp4430.h                    |   1 -
>   include/configs/omap5_uevm.h                       |   1 -
>   include/configs/omapl138_lcdk.h                    |  13 -
>   include/configs/openrd.h                           |   3 -
>   include/configs/opos6uldev.h                       |   1 -
>   include/configs/origen.h                           |   1 -
>   include/configs/ot1200.h                           |   1 -
>   include/configs/p1_p2_rdb_pc.h                     |   5 -
>   include/configs/p1_twr.h                           |   3 -
>   include/configs/p2371-0000.h                       |   1 -
>   include/configs/p2371-2180.h                       |   1 -
>   include/configs/p2571.h                            |   1 -
>   include/configs/p2771-0000.h                       |   1 -
>   include/configs/paz00.h                            |   1 -
>   include/configs/pb1x00.h                           |   2 -
>   include/configs/pcm051.h                           |   1 -
>   include/configs/pcm058.h                           |   1 -
>   include/configs/pengwyn.h                          |   1 -
>   include/configs/pepper.h                           |   1 -
>   include/configs/pic32mzdask.h                      |   1 -
>   include/configs/pico-imx6ul.h                      |   1 -
>   include/configs/pico-imx7d.h                       |   1 -
>   include/configs/picosam9g45.h                      |   1 -
>   include/configs/platinum.h                         |   2 -
>   include/configs/plutux.h                           |   1 -
>   include/configs/pm9261.h                           |   3 -
>   include/configs/pm9263.h                           |   3 -
>   include/configs/pm9g45.h                           |   1 -
>   include/configs/pogo_e02.h                         |   3 -
>   include/configs/popmetal_rk3288.h                  |   1 -
>   include/configs/puma_rk3399.h                      |   1 -
>   include/configs/qemu-mips.h                        |   2 -
>   include/configs/qemu-mips64.h                      |   2 -
>   include/configs/qemu-ppce500.h                     |   2 -
>   include/configs/qemu-x86.h                         |   2 -
>   include/configs/r0p7734.h                          |   1 -
>   include/configs/r2dplus.h                          |   1 -
>   include/configs/r7780mp.h                          |   1 -
>   include/configs/rcar-gen2-common.h                 |   1 -
>   include/configs/rk3036_common.h                    |   1 -
>   include/configs/rock.h                             |   1 -
>   include/configs/rock2.h                            |   1 -
>   include/configs/rpi.h                              |   1 -
>   include/configs/rsk7203.h                          |   1 -
>   include/configs/rsk7264.h                          |   1 -
>   include/configs/rsk7269.h                          |   1 -
>   include/configs/rv1108_common.h                    |   1 -
>   include/configs/s32v234evb.h                       |   1 -
>   include/configs/s5p_goni.h                         |   1 -
>   include/configs/s5pc210_universal.h                |   1 -
>   include/configs/sagem_f at st1704.h                   |   1 -
>   include/configs/salvator-x.h                       |   1 -
>   include/configs/sama5d2_ptc.h                      |   1 -
>   include/configs/sama5d3_xplained.h                 |   2 -
>   include/configs/sama5d3xek.h                       |   2 -
>   include/configs/sandbox.h                          |   1 -
>   include/configs/sansa_fuze_plus.h                  |   1 -
>   include/configs/sbc8349.h                          |   2 -
>   include/configs/sbc8548.h                          |   1 -
>   include/configs/sbc8641d.h                         |   1 -
>   include/configs/sc_sps_1.h                         |   3 -
>   include/configs/seaboard.h                         |   1 -
>   include/configs/sfr_nb4_ser.h                      |   1 -
>   include/configs/sh7752evb.h                        |   1 -
>   include/configs/sh7753evb.h                        |   1 -
>   include/configs/sh7757lcr.h                        |   1 -
>   include/configs/sh7763rdp.h                        |   1 -
>   include/configs/sh7785lcr.h                        |   1 -
>   include/configs/sheep_rk3368.h                     |   1 -
>   include/configs/sheevaplug.h                       |   3 -
>   include/configs/shmin.h                            |   1 -
>   include/configs/siemens-am33x-common.h             |   5 -
>   include/configs/smartweb.h                         |   1 -
>   include/configs/smdkv310.h                         |   1 -
>   include/configs/snapper9260.h                      |   1 -
>   include/configs/snapper9g45.h                      |   1 -
>   include/configs/sniper.h                           |   1 -
>   include/configs/socfpga_arria10_socdk.h            |   1 -
>   include/configs/socfpga_arria5_socdk.h             |   2 -
>   include/configs/socfpga_cyclone5_socdk.h           |   2 -
>   include/configs/socfpga_de0_nano_soc.h             |   2 -
>   include/configs/socfpga_de10_nano.h                |   2 -
>   include/configs/socfpga_de1_soc.h                  |   2 -
>   include/configs/socfpga_is1.h                      |   1 -
>   include/configs/socfpga_mcvevk.h                   |   1 -
>   include/configs/socfpga_sockit.h                   |   2 -
>   include/configs/socfpga_socrates.h                 |   2 -
>   include/configs/socfpga_sr1500.h                   |   1 -
>   include/configs/socfpga_vining_fpga.h              |   1 -
>   include/configs/socrates.h                         |   1 -
>   include/configs/spear3xx_evb.h                     |   6 -
>   include/configs/spear6xx_evb.h                     |   6 -
>   include/configs/stih410-b2260.h                    |   1 -
>   include/configs/stm32f429-discovery.h              |   1 -
>   include/configs/stm32f746-disco.h                  |   1 -
>   include/configs/strider.h                          |   2 -
>   include/configs/stv0991.h                          |   1 -
>   include/configs/tam3517-common.h                   |   1 -
>   include/configs/tao3530.h                          |   1 -
>   include/configs/taurus.h                           |   1 -
>   include/configs/tb100.h                            |   1 -
>   include/configs/tbs2910.h                          |   1 -
>   include/configs/tec-ng.h                           |   1 -
>   include/configs/tec.h                              |   1 -
>   include/configs/theadorable.h                      |   1 -
>   include/configs/thunderx_88xx.h                    |   1 -
>   include/configs/ti814x_evm.h                       |   2 -
>   include/configs/ti816x_evm.h                       |   1 -
>   include/configs/tinker_rk3288.h                    |   1 -
>   include/configs/titanium.h                         |   2 -
>   include/configs/topic_miami.h                      |   1 -
>   include/configs/tplink_wdr4300.h                   |   1 -
>   include/configs/tqma6.h                            |   2 -
>   include/configs/trats.h                            |   1 -
>   include/configs/trats2.h                           |   1 -
>   include/configs/tricorder.h                        |   5 -
>   include/configs/trimslice.h                        |   1 -
>   include/configs/ts4800.h                           |   1 -
>   include/configs/udoo.h                             |   1 -
>   include/configs/udoo_neo.h                         |   1 -
>   include/configs/uniphier.h                         |   3 -
>   include/configs/usb_a9263.h                        |   1 -
>   include/configs/usbarmory.h                        |   1 -
>   include/configs/vct.h                              |   1 -
>   include/configs/ve8313.h                           |   1 -
>   include/configs/venice2.h                          |   1 -
>   include/configs/ventana.h                          |   1 -
>   include/configs/vexpress_aemv8a.h                  |   1 -
>   include/configs/vexpress_common.h                  |   1 -
>   include/configs/veyron.h                           |   1 -
>   include/configs/vining_2000.h                      |   1 -
>   include/configs/vme8349.h                          |   2 -
>   include/configs/wandboard.h                        |   1 -
>   include/configs/warp.h                             |   1 -
>   include/configs/warp7.h                            |   1 -
>   include/configs/woodburn_common.h                  |   2 -
>   include/configs/work_92105.h                       |   1 -
>   include/configs/x600.h                             |   2 -
>   include/configs/x86-chromebook.h                   |   2 -
>   include/configs/x86-common.h                       |   1 -
>   include/configs/xfi3.h                             |   1 -
>   include/configs/xilinx-ppc.h                       |   2 -
>   include/configs/xilinx_zynqmp.h                    |   4 -
>   include/configs/xpedite517x.h                      |   1 -
>   include/configs/xpedite520x.h                      |   1 -
>   include/configs/xpedite537x.h                      |   1 -
>   include/configs/xpedite550x.h                      |   1 -
>   include/configs/xpress.h                           |   1 -
>   include/configs/xtfpga.h                           |   1 -
>   include/configs/zipitz2.h                          |   1 -
>   include/configs/zmx25.h                            |   1 -
>   include/configs/zynq-common.h                      |   4 -
>   include/environment.h                              | 131 ++++++-
>   scripts/Makefile.spl                               |   4 +-
>   scripts/config_whitelist.txt                       |   7 -
>   tools/Makefile                                     |   4 +-
>   1415 files changed, 2196 insertions(+), 1797 deletions(-)
>   create mode 100644 env/Kconfig
>   create mode 100644 env/Makefile
>   rename common/env_attr.c => env/attr.c (100%)
>   rename common/env_callback.c => env/callback.c (100%)
>   rename common/env_common.c => env/common.c (88%)
>   rename common/env_dataflash.c => env/dataflash.c (75%)
>   rename common/env_eeprom.c => env/eeprom.c (86%)
>   rename common/env_embedded.c => env/embedded.c (100%)
>   create mode 100644 env/env.c
>   rename common/env_ext4.c => env/ext4.c (91%)
>   rename common/env_fat.c => env/fat.c (84%)
>   rename common/env_flags.c => env/flags.c (100%)
>   rename common/env_flash.c => env/flash.c (80%)
>   rename common/env_mmc.c => env/mmc.c (88%)
>   rename common/env_nand.c => env/nand.c (86%)
>   rename common/env_nowhere.c => env/nowhere.c (58%)
>   rename common/env_nvram.c => env/nvram.c (86%)
>   rename common/env_onenand.c => env/onenand.c (89%)
>   rename common/env_remote.c => env/remote.c (73%)
>   rename common/env_sata.c => env/sata.c (84%)
>   rename common/env_sf.c => env/sf.c (87%)
>   rename common/env_ubi.c => env/ubi.c (87%)
> 

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
  2017-07-10  8:10 ` [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Christophe LEROY
@ 2017-07-10 16:38   ` Simon Glass
  2017-07-11  7:59     ` Christophe LEROY
  0 siblings, 1 reply; 44+ messages in thread
From: Simon Glass @ 2017-07-10 16:38 UTC (permalink / raw)
  To: u-boot

Hi Christophe,

On 10 July 2017 at 02:10, Christophe LEROY <christophe.leroy@c-s.fr> wrote:
> Simon,
>
> Le 09/07/2017 à 22:52, Simon Glass a écrit :
>>
>> The environment code is ripe for improvement in various ways. It has lots
>> of duplication and inconsistencies between how things work with different
>> environment locations. It does not properly use Kconfig. Error checking
>> and handling is patchy.
>>
>> This series makes a start at improving things:
>>
>> - moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig
>> - introduces the concept of a location driver for the environment
>> - drops some of the duplicated code
>> - improves error handling a little (more to be done here)
>> - moves code into a new env/ directory
>>
>> There is still much more to do:
>> - complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)
>> - unify environment settings so that all locations support the same
>> options
>> - try to rationalise the redundancy code (can we create a common
>>      implementation used by all drivers?)
>> - allow environment in multiple locations (e.g. as a fallback)
>> - figure out why CONFIG_ENV_IS_IN_FLASH enables the environment in flash
>>      even in SPL, which other locations do not
>>
>>
>> Simon Glass (30):
>>    Makefile: Rename 'env' target to 'environ'
>>    Move environment files from common/ to env/
>>    Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig
>>    env: Move help from README to Kconfig
>>    Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
>>    Convert CONFIG_ENV_IS_IN_NVRAM to Kconfig
>>    Convert CONFIG_ENV_IS_IN_EEPROM to Kconfig
>>    Convert CONFIG_ENV_IS_IN_DATAFLASH to Kconfig
>>    Convert CONFIG_ENV_IS_IN_SPI_FLASH to Kconfig
>>    Convert CONFIG_ENV_IS_IN_REMOTE to Kconfig
>>    Convert CONFIG_ENV_IS_IN_FAT to Kconfig
>>    env: common: Make env_get_addr/get_char_memory() static
>>    env: common: Drop env_get_addr()
>>    env: common: Factor out the common env_valid check
>>    env: common: Drop env_get_char_init()
>>    env: common: Drop env_get_char_memory()
>>    env: Add an enum for environment state
>>    env: Rename nand env_location to nand_env_location
>>    env: Create a location driver for each location
>>    env: Add a new implementation of environment access
>>    env: Switch over to use environment location drivers
>>    env: Drop common init() functions
>>    env: Drop the env_name_spec global
>>    env: Drop unused env_ptr variables
>>    env: Drop env_init_new()
>>    env: Drop env_get_char_spec()
>>    env: Drop env_relocate_spec() in favour of env_load()
>>    env: Drop saveenv() in favour of env_save()
>>    env: Adjust the get_char() method to return an int
>>    env: Adjust the load() method to return an error
>>
>>   Kconfig                                            |   2 +
>>   Makefile                                           |   5 +-
>>   README                                             | 352
>> ------------------
>>   arch/Kconfig                                       |   1 +
>>   arch/arm/Kconfig                                   |   2 +
>>   arch/arm/cpu/armv7/mx6/Kconfig                     |   1 +
>>   arch/arm/cpu/armv7/mx7/Kconfig                     |   1 +
>>   arch/arm/mach-exynos/Kconfig                       |   1 +
>>   arch/arm/mach-integrator/Kconfig                   |   2 +
>>   arch/arm/mach-mvebu/Kconfig                        |   1 +
>>   arch/arm/mach-omap2/boot-common.c                  |   3 +-
>>   arch/arm/mach-sunxi/Kconfig                        |   6 +
>>   arch/arm/mach-tegra/Kconfig                        |   3 +
>>   arch/m68k/Kconfig                                  |   8 +
>>   arch/microblaze/Kconfig                            |   1 +
>>   arch/mips/Kconfig                                  |   7 +
>>   arch/powerpc/Kconfig                               |   1 +
>>   arch/powerpc/cpu/mpc83xx/Kconfig                   |   6 +
>>   arch/powerpc/cpu/mpc85xx/Kconfig                   |   4 +
>>   arch/powerpc/cpu/mpc86xx/Kconfig                   |   1 +
>
>
> It looks like the mpc8xx has been left behind.

It may just be that there are no useful 'imply' targets there.

>
> Christophe

[..]

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 28/30] env: Drop saveenv() in favour of env_save()
  2017-07-09 20:53 ` [U-Boot] [PATCH 28/30] env: Drop saveenv() in favour of env_save() Simon Glass
@ 2017-07-10 20:08   ` Wolfgang Denk
  2017-07-12  0:32     ` Simon Glass
  0 siblings, 1 reply; 44+ messages in thread
From: Wolfgang Denk @ 2017-07-10 20:08 UTC (permalink / raw)
  To: u-boot

Dear Simon,

In message <20170709205313.116174-29-sjg@chromium.org> you wrote:
> Use the env_save() function directly now that there is only one
> implementation of saveenv().
...

>  	printf("Setting reboot to fastboot flag ...\n");
>  	setenv("dofastboot", "1");
> -	saveenv();
> +	env_save();

Hm... the old name saveenv() was once derived from the command line
command with the same name, in the same way as setenv() is/was.

One can argument that your new name env_save( corresponds to the more
modern "env <subcommand>" syntax - but should we then not also
rename  setenv()  into  env_set() , so we use a consistent naming
scheme again?

Reviewed-by: Wolfgang Denk <wd@denx.de>

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
He'd heard her use that sweet, innocent  tone  of  voice  before.  It
meant that, pretty soon, there was going to be trouble.
                                        - Terry Pratchett, _Truckers_

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
  2017-07-09 20:52 ` [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH " Simon Glass
@ 2017-07-10 22:09   ` Daniel Schwierzeck
  2017-07-18 14:00     ` Simon Glass
  0 siblings, 1 reply; 44+ messages in thread
From: Daniel Schwierzeck @ 2017-07-10 22:09 UTC (permalink / raw)
  To: u-boot



Am 09.07.2017 um 22:52 schrieb Simon Glass:
> This converts the following to Kconfig:
>    CONFIG_ENV_IS_IN_FLASH
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 

...

> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 579371e8ee..3046d90b4d 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -21,6 +21,7 @@ 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"
> @@ -42,6 +43,7 @@ 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"
> @@ -108,6 +110,7 @@ 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"
> @@ -197,6 +200,7 @@ 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.
> @@ -297,6 +301,7 @@ config CPU_MIPS32
>  config CPU_MIPS64
>  	bool
>  	default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
> +	imply ENV_IS_IN_FLASH

this is wrong as CONFIG_CPU_MIPS64 is a generic MIPS symbol and not a
specific for a machine or board

>  
>  config MIPS_TUNE_4KC
>  	bool
> @@ -401,6 +406,7 @@ config DYNAMIC_IO_PORT_BASE
>  
>  config MIPS_CM
>  	bool
> +	imply ENV_IS_IN_FLASH

dito for CONFIG_MIPS_CM

>  	help
>  	  Select this if your system contains a MIPS Coherence Manager and you
>  	  wish U-Boot to configure it or make use of it to retrieve system

...

> diff --git a/configs/vct_platinum_defconfig b/configs/vct_platinum_defconfig
> index f8b9d7e61b..0e4fcbaa26 100644
> --- a/configs/vct_platinum_defconfig
> +++ b/configs/vct_platinum_defconfig
> @@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
>  CONFIG_CMD_PING=y
>  CONFIG_CMD_SNTP=y
>  CONFIG_CMD_FAT=y
> +CONFIG_ENV_IS_IN_FLASH=y

for consistency with the other MIPS boards in this patch, this should be
added as "imply CONFIG_ENV_IS_IN_FLASH" in arch/mips/Kconfig under
"config TARGET_VCT"

>  CONFIG_MTD_NOR_FLASH=y
>  CONFIG_SYS_NS16550=y
>  CONFIG_USB=y
> diff --git a/configs/vct_platinum_small_defconfig b/configs/vct_platinum_small_defconfig
> index 2b49d4c9a0..eafece0723 100644
> --- a/configs/vct_platinum_small_defconfig
> +++ b/configs/vct_platinum_small_defconfig
> @@ -18,5 +18,6 @@ CONFIG_SYS_PROMPT="$ "
>  # CONFIG_CMD_NFS is not set
>  # CONFIG_CMD_MISC is not set
>  # CONFIG_ISO_PARTITION is not set
> +CONFIG_ENV_IS_IN_FLASH=y

dito

>  CONFIG_MTD_NOR_FLASH=y
>  CONFIG_SYS_NS16550=y
> diff --git a/configs/vct_platinumavc_defconfig b/configs/vct_platinumavc_defconfig
> index 5efe2236a3..ebbf6c1a02 100644
> --- a/configs/vct_platinumavc_defconfig
> +++ b/configs/vct_platinumavc_defconfig
> @@ -11,5 +11,6 @@ CONFIG_CMD_I2C=y
>  CONFIG_CMD_DHCP=y
>  # CONFIG_CMD_NFS is not set
>  # CONFIG_ISO_PARTITION is not set
> +CONFIG_ENV_IS_IN_FLASH=y

dito

>  CONFIG_MTD_NOR_FLASH=y
>  CONFIG_SYS_NS16550=y
> diff --git a/configs/vct_platinumavc_small_defconfig b/configs/vct_platinumavc_small_defconfig
> index 1b5c125893..f7823ef050 100644
> --- a/configs/vct_platinumavc_small_defconfig
> +++ b/configs/vct_platinumavc_small_defconfig
> @@ -18,5 +18,6 @@ CONFIG_SYS_PROMPT="$ "
>  # CONFIG_CMD_NFS is not set
>  # CONFIG_CMD_MISC is not set
>  # CONFIG_ISO_PARTITION is not set
> +CONFIG_ENV_IS_IN_FLASH=y

dito

>  CONFIG_MTD_NOR_FLASH=y
>  CONFIG_SYS_NS16550=y
> diff --git a/configs/vct_premium_defconfig b/configs/vct_premium_defconfig
> index 24f776b49f..f89a0a5ee5 100644
> --- a/configs/vct_premium_defconfig
> +++ b/configs/vct_premium_defconfig
> @@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
>  CONFIG_CMD_PING=y
>  CONFIG_CMD_SNTP=y
>  CONFIG_CMD_FAT=y
> +CONFIG_ENV_IS_IN_FLASH=y

dito

>  CONFIG_MTD_NOR_FLASH=y
>  CONFIG_SYS_NS16550=y
>  CONFIG_USB=y
> diff --git a/configs/vct_premium_small_defconfig b/configs/vct_premium_small_defconfig
> index 276650dbe1..0420cd15a6 100644
> --- a/configs/vct_premium_small_defconfig
> +++ b/configs/vct_premium_small_defconfig
> @@ -18,5 +18,6 @@ CONFIG_SYS_PROMPT="$ "
>  # CONFIG_CMD_NFS is not set
>  # CONFIG_CMD_MISC is not set
>  # CONFIG_ISO_PARTITION is not set
> +CONFIG_ENV_IS_IN_FLASH=y

dito

>  CONFIG_MTD_NOR_FLASH=y
>  CONFIG_SYS_NS16550=y


-- 
- Daniel

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170711/c09ebeb5/attachment.sig>

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
  2017-07-10 16:38   ` Simon Glass
@ 2017-07-11  7:59     ` Christophe LEROY
  2017-07-12  0:32       ` Simon Glass
  0 siblings, 1 reply; 44+ messages in thread
From: Christophe LEROY @ 2017-07-11  7:59 UTC (permalink / raw)
  To: u-boot

Hi Simon,

Le 10/07/2017 à 18:38, Simon Glass a écrit :
> Hi Christophe,
> 
> On 10 July 2017 at 02:10, Christophe LEROY <christophe.leroy@c-s.fr> wrote:
>> Simon,
>>
>> Le 09/07/2017 à 22:52, Simon Glass a écrit :
>>>
>>> The environment code is ripe for improvement in various ways. It has lots
>>> of duplication and inconsistencies between how things work with different
>>> environment locations. It does not properly use Kconfig. Error checking
>>> and handling is patchy.
>>>
>>> This series makes a start at improving things:
>>>
>>> - moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig
>>> - introduces the concept of a location driver for the environment
>>> - drops some of the duplicated code
>>> - improves error handling a little (more to be done here)
>>> - moves code into a new env/ directory
>>>
>>> There is still much more to do:
>>> - complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)
>>> - unify environment settings so that all locations support the same
>>> options
>>> - try to rationalise the redundancy code (can we create a common
>>>       implementation used by all drivers?)
>>> - allow environment in multiple locations (e.g. as a fallback)
>>> - figure out why CONFIG_ENV_IS_IN_FLASH enables the environment in flash
>>>       even in SPL, which other locations do not
>>>
>>>
>>> Simon Glass (30):
>>>     Makefile: Rename 'env' target to 'environ'
>>>     Move environment files from common/ to env/
>>>     Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig
>>>     env: Move help from README to Kconfig
>>>     Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
>>>     Convert CONFIG_ENV_IS_IN_NVRAM to Kconfig
>>>     Convert CONFIG_ENV_IS_IN_EEPROM to Kconfig
>>>     Convert CONFIG_ENV_IS_IN_DATAFLASH to Kconfig
>>>     Convert CONFIG_ENV_IS_IN_SPI_FLASH to Kconfig
>>>     Convert CONFIG_ENV_IS_IN_REMOTE to Kconfig
>>>     Convert CONFIG_ENV_IS_IN_FAT to Kconfig
>>>     env: common: Make env_get_addr/get_char_memory() static
>>>     env: common: Drop env_get_addr()
>>>     env: common: Factor out the common env_valid check
>>>     env: common: Drop env_get_char_init()
>>>     env: common: Drop env_get_char_memory()
>>>     env: Add an enum for environment state
>>>     env: Rename nand env_location to nand_env_location
>>>     env: Create a location driver for each location
>>>     env: Add a new implementation of environment access
>>>     env: Switch over to use environment location drivers
>>>     env: Drop common init() functions
>>>     env: Drop the env_name_spec global
>>>     env: Drop unused env_ptr variables
>>>     env: Drop env_init_new()
>>>     env: Drop env_get_char_spec()
>>>     env: Drop env_relocate_spec() in favour of env_load()
>>>     env: Drop saveenv() in favour of env_save()
>>>     env: Adjust the get_char() method to return an int
>>>     env: Adjust the load() method to return an error
>>>
>>>    Kconfig                                            |   2 +
>>>    Makefile                                           |   5 +-
>>>    README                                             | 352
>>> ------------------
>>>    arch/Kconfig                                       |   1 +
>>>    arch/arm/Kconfig                                   |   2 +
>>>    arch/arm/cpu/armv7/mx6/Kconfig                     |   1 +
>>>    arch/arm/cpu/armv7/mx7/Kconfig                     |   1 +
>>>    arch/arm/mach-exynos/Kconfig                       |   1 +
>>>    arch/arm/mach-integrator/Kconfig                   |   2 +
>>>    arch/arm/mach-mvebu/Kconfig                        |   1 +
>>>    arch/arm/mach-omap2/boot-common.c                  |   3 +-
>>>    arch/arm/mach-sunxi/Kconfig                        |   6 +
>>>    arch/arm/mach-tegra/Kconfig                        |   3 +
>>>    arch/m68k/Kconfig                                  |   8 +
>>>    arch/microblaze/Kconfig                            |   1 +
>>>    arch/mips/Kconfig                                  |   7 +
>>>    arch/powerpc/Kconfig                               |   1 +
>>>    arch/powerpc/cpu/mpc83xx/Kconfig                   |   6 +
>>>    arch/powerpc/cpu/mpc85xx/Kconfig                   |   4 +
>>>    arch/powerpc/cpu/mpc86xx/Kconfig                   |   1 +
>>
>>
>> It looks like the mpc8xx has been left behind.
> 
> It may just be that there are no useful 'imply' targets there.

include/configs/MCR3000.h contains the following:

#define CONFIG_ENV_IS_IN_FLASH	1
#define CONFIG_ENV_SECT_SIZE	(64 * 1024)
#define CONFIG_ENV_SIZE		CONFIG_ENV_SECT_SIZE
#define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_MONITOR_LEN)
#define CONFIG_ENV_OFFSET	(CONFIG_ENV_ADDR - CONFIG_SYS_FLASH_BASE)
#define CONFIG_ENV_OVERWRITE	1

So I would expect something about it in your serie. Maybe is it because 
this target was added recently in mainline ?

christophe

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
  2017-07-11  7:59     ` Christophe LEROY
@ 2017-07-12  0:32       ` Simon Glass
  0 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-12  0:32 UTC (permalink / raw)
  To: u-boot

Hi Christophe,

On 11 July 2017 at 01:59, Christophe LEROY <christophe.leroy@c-s.fr> wrote:
> Hi Simon,
>
>
> Le 10/07/2017 à 18:38, Simon Glass a écrit :
>>
>> Hi Christophe,
>>
>> On 10 July 2017 at 02:10, Christophe LEROY <christophe.leroy@c-s.fr>
>> wrote:
>>>
>>> Simon,
>>>
>>> Le 09/07/2017 à 22:52, Simon Glass a écrit :
>>>>
>>>>
>>>> The environment code is ripe for improvement in various ways. It has
>>>> lots
>>>> of duplication and inconsistencies between how things work with
>>>> different
>>>> environment locations. It does not properly use Kconfig. Error checking
>>>> and handling is patchy.
>>>>
>>>> This series makes a start at improving things:
>>>>
>>>> - moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig
>>>> - introduces the concept of a location driver for the environment
>>>> - drops some of the duplicated code
>>>> - improves error handling a little (more to be done here)
>>>> - moves code into a new env/ directory
>>>>
>>>> There is still much more to do:
>>>> - complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)
>>>> - unify environment settings so that all locations support the same
>>>> options
>>>> - try to rationalise the redundancy code (can we create a common
>>>>       implementation used by all drivers?)
>>>> - allow environment in multiple locations (e.g. as a fallback)
>>>> - figure out why CONFIG_ENV_IS_IN_FLASH enables the environment in flash
>>>>       even in SPL, which other locations do not
>>>>
>>>>
>>>> Simon Glass (30):
>>>>     Makefile: Rename 'env' target to 'environ'
>>>>     Move environment files from common/ to env/
>>>>     Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig
>>>>     env: Move help from README to Kconfig
>>>>     Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
>>>>     Convert CONFIG_ENV_IS_IN_NVRAM to Kconfig
>>>>     Convert CONFIG_ENV_IS_IN_EEPROM to Kconfig
>>>>     Convert CONFIG_ENV_IS_IN_DATAFLASH to Kconfig
>>>>     Convert CONFIG_ENV_IS_IN_SPI_FLASH to Kconfig
>>>>     Convert CONFIG_ENV_IS_IN_REMOTE to Kconfig
>>>>     Convert CONFIG_ENV_IS_IN_FAT to Kconfig
>>>>     env: common: Make env_get_addr/get_char_memory() static
>>>>     env: common: Drop env_get_addr()
>>>>     env: common: Factor out the common env_valid check
>>>>     env: common: Drop env_get_char_init()
>>>>     env: common: Drop env_get_char_memory()
>>>>     env: Add an enum for environment state
>>>>     env: Rename nand env_location to nand_env_location
>>>>     env: Create a location driver for each location
>>>>     env: Add a new implementation of environment access
>>>>     env: Switch over to use environment location drivers
>>>>     env: Drop common init() functions
>>>>     env: Drop the env_name_spec global
>>>>     env: Drop unused env_ptr variables
>>>>     env: Drop env_init_new()
>>>>     env: Drop env_get_char_spec()
>>>>     env: Drop env_relocate_spec() in favour of env_load()
>>>>     env: Drop saveenv() in favour of env_save()
>>>>     env: Adjust the get_char() method to return an int
>>>>     env: Adjust the load() method to return an error
>>>>
>>>>    Kconfig                                            |   2 +
>>>>    Makefile                                           |   5 +-
>>>>    README                                             | 352
>>>> ------------------
>>>>    arch/Kconfig                                       |   1 +
>>>>    arch/arm/Kconfig                                   |   2 +
>>>>    arch/arm/cpu/armv7/mx6/Kconfig                     |   1 +
>>>>    arch/arm/cpu/armv7/mx7/Kconfig                     |   1 +
>>>>    arch/arm/mach-exynos/Kconfig                       |   1 +
>>>>    arch/arm/mach-integrator/Kconfig                   |   2 +
>>>>    arch/arm/mach-mvebu/Kconfig                        |   1 +
>>>>    arch/arm/mach-omap2/boot-common.c                  |   3 +-
>>>>    arch/arm/mach-sunxi/Kconfig                        |   6 +
>>>>    arch/arm/mach-tegra/Kconfig                        |   3 +
>>>>    arch/m68k/Kconfig                                  |   8 +
>>>>    arch/microblaze/Kconfig                            |   1 +
>>>>    arch/mips/Kconfig                                  |   7 +
>>>>    arch/powerpc/Kconfig                               |   1 +
>>>>    arch/powerpc/cpu/mpc83xx/Kconfig                   |   6 +
>>>>    arch/powerpc/cpu/mpc85xx/Kconfig                   |   4 +
>>>>    arch/powerpc/cpu/mpc86xx/Kconfig                   |   1 +
>>>
>>>
>>>
>>> It looks like the mpc8xx has been left behind.
>>
>>
>> It may just be that there are no useful 'imply' targets there.
>
>
> include/configs/MCR3000.h contains the following:
>
> #define CONFIG_ENV_IS_IN_FLASH  1
> #define CONFIG_ENV_SECT_SIZE    (64 * 1024)
> #define CONFIG_ENV_SIZE         CONFIG_ENV_SECT_SIZE
> #define CONFIG_ENV_ADDR         (CONFIG_SYS_FLASH_BASE +
> CONFIG_SYS_MONITOR_LEN)
> #define CONFIG_ENV_OFFSET       (CONFIG_ENV_ADDR - CONFIG_SYS_FLASH_BASE)
> #define CONFIG_ENV_OVERWRITE    1
>
> So I would expect something about it in your serie. Maybe is it because this
> target was added recently in mainline ?

Yes it looks like I need to rerun that. Overall I'm not happy with how
the flash stuff has turned out and will be taking another look.

Regards,
Simon

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 28/30] env: Drop saveenv() in favour of env_save()
  2017-07-10 20:08   ` Wolfgang Denk
@ 2017-07-12  0:32     ` Simon Glass
  0 siblings, 0 replies; 44+ messages in thread
From: Simon Glass @ 2017-07-12  0:32 UTC (permalink / raw)
  To: u-boot

Hi Wolfgang,

On 10 July 2017 at 14:08, Wolfgang Denk <wd@denx.de> wrote:
> Dear Simon,
>
> In message <20170709205313.116174-29-sjg@chromium.org> you wrote:
>> Use the env_save() function directly now that there is only one
>> implementation of saveenv().
> ...
>
>>       printf("Setting reboot to fastboot flag ...\n");
>>       setenv("dofastboot", "1");
>> -     saveenv();
>> +     env_save();
>
> Hm... the old name saveenv() was once derived from the command line
> command with the same name, in the same way as setenv() is/was.
>
> One can argument that your new name env_save( corresponds to the more
> modern "env <subcommand>" syntax - but should we then not also
> rename  setenv()  into  env_set() , so we use a consistent naming
> scheme again?

Yes that makes sense. I'll add it to my list, thanks.

>
> Reviewed-by: Wolfgang Denk <wd@denx.de>
>
> Best regards,
>
> Wolfgang Denk
>
> --
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
> He'd heard her use that sweet, innocent  tone  of  voice  before.  It
> meant that, pretty soon, there was going to be trouble.
>                                         - Terry Pratchett, _Truckers_

Regards,
Simon

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
  2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
                   ` (30 preceding siblings ...)
  2017-07-10  8:10 ` [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Christophe LEROY
@ 2017-07-12 12:24 ` Tom Rini
  2017-07-13 16:45   ` Simon Glass
  31 siblings, 1 reply; 44+ messages in thread
From: Tom Rini @ 2017-07-12 12:24 UTC (permalink / raw)
  To: u-boot

On Sun, Jul 09, 2017 at 02:52:43PM -0600, Simon Glass wrote:

> The environment code is ripe for improvement in various ways. It has lots
> of duplication and inconsistencies between how things work with different
> environment locations. It does not properly use Kconfig. Error checking
> and handling is patchy.
> 
> This series makes a start at improving things:
> 
> - moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig

After this, did you do some checks to make sure that everyone was
migrated correctly?  I ask since I had made an attempt a while back to
convert and I found a lot of cases that didn't happen right and ended up
hacking up something to have every target print all of the env related
options to a file (and have buildman save it).  But it might have been..

> - introduces the concept of a location driver for the environment
> - drops some of the duplicated code
> - improves error handling a little (more to be done here)
> - moves code into a new env/ directory
> 
> There is still much more to do:
> - complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)

Because I was converting these parts as well.

Overall the series looks good.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170712/333a4b61/attachment.sig>

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
  2017-07-12 12:24 ` Tom Rini
@ 2017-07-13 16:45   ` Simon Glass
  2017-07-18  0:56     ` Tom Rini
  0 siblings, 1 reply; 44+ messages in thread
From: Simon Glass @ 2017-07-13 16:45 UTC (permalink / raw)
  To: u-boot

Hi Tom,

On 12 July 2017 at 06:24, Tom Rini <trini@konsulko.com> wrote:
>
> On Sun, Jul 09, 2017 at 02:52:43PM -0600, Simon Glass wrote:
>
> > The environment code is ripe for improvement in various ways. It has lots
> > of duplication and inconsistencies between how things work with different
> > environment locations. It does not properly use Kconfig. Error checking
> > and handling is patchy.
> >
> > This series makes a start at improving things:
> >
> > - moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig
>
> After this, did you do some checks to make sure that everyone was
> migrated correctly?  I ask since I had made an attempt a while back to
> convert and I found a lot of cases that didn't happen right and ended up
> hacking up something to have every target print all of the env related
> options to a file (and have buildman save it).  But it might have been..


I need to do another pass with this series. I noticed that it doesn't
bisect properly (i.e. some interim commits mess things up that later
ones fix).

>
>
> > - introduces the concept of a location driver for the environment
> > - drops some of the duplicated code
> > - improves error handling a little (more to be done here)
> > - moves code into a new env/ directory
> >
> > There is still much more to do:
> > - complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)
>
> Because I was converting these parts as well.

I think that is much harder because this option often uses other
options in its expression, but perhaps it is not as bad as I think.

>
> Overall the series looks good.

OK thanks. I'll make time to respin this and send v2 next week.

Regards,
Simon

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers
  2017-07-13 16:45   ` Simon Glass
@ 2017-07-18  0:56     ` Tom Rini
  0 siblings, 0 replies; 44+ messages in thread
From: Tom Rini @ 2017-07-18  0:56 UTC (permalink / raw)
  To: u-boot

On Thu, Jul 13, 2017 at 10:45:10AM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On 12 July 2017 at 06:24, Tom Rini <trini@konsulko.com> wrote:
> >
> > On Sun, Jul 09, 2017 at 02:52:43PM -0600, Simon Glass wrote:
> >
> > > The environment code is ripe for improvement in various ways. It has lots
> > > of duplication and inconsistencies between how things work with different
> > > environment locations. It does not properly use Kconfig. Error checking
> > > and handling is patchy.
> > >
> > > This series makes a start at improving things:
> > >
> > > - moves the rest of the CONFIG_ENV_IS_IN_... options to Kconfig
> >
> > After this, did you do some checks to make sure that everyone was
> > migrated correctly?  I ask since I had made an attempt a while back to
> > convert and I found a lot of cases that didn't happen right and ended up
> > hacking up something to have every target print all of the env related
> > options to a file (and have buildman save it).  But it might have been..
> 
> I need to do another pass with this series. I noticed that it doesn't
> bisect properly (i.e. some interim commits mess things up that later
> ones fix).

OK.

> > > - introduces the concept of a location driver for the environment
> > > - drops some of the duplicated code
> > > - improves error handling a little (more to be done here)
> > > - moves code into a new env/ directory
> > >
> > > There is still much more to do:
> > > - complete Kconfig conversion (e.g. CONFIG_ENV_SIZE)
> >
> > Because I was converting these parts as well.
> 
> I think that is much harder because this option often uses other
> options in its expression, but perhaps it is not as bad as I think.

It's pretty awful, in some respects.  Once I gave in and hacked buildman
and U-Boot to have a "host tool" that would have the calculated values,
spit that out and save the output file it wasn't too bad to convert.
Best to save it for a follow up series :)

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170717/1afe6d77/attachment.sig>

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
  2017-07-10 22:09   ` Daniel Schwierzeck
@ 2017-07-18 14:00     ` Simon Glass
  2017-07-18 15:01       ` Daniel Schwierzeck
  0 siblings, 1 reply; 44+ messages in thread
From: Simon Glass @ 2017-07-18 14:00 UTC (permalink / raw)
  To: u-boot

Hi Daniel,

On 10 July 2017 at 15:09, Daniel Schwierzeck
<daniel.schwierzeck@gmail.com> wrote:
>
>
> Am 09.07.2017 um 22:52 schrieb Simon Glass:
>> This converts the following to Kconfig:
>>    CONFIG_ENV_IS_IN_FLASH
>>
>> Signed-off-by: Simon Glass <sjg@chromium.org>
>> ---
>>
>
> ...
>
>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> index 579371e8ee..3046d90b4d 100644
>> --- a/arch/mips/Kconfig
>> +++ b/arch/mips/Kconfig
>> @@ -21,6 +21,7 @@ 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"
>> @@ -42,6 +43,7 @@ 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"
>> @@ -108,6 +110,7 @@ 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"
>> @@ -197,6 +200,7 @@ 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.
>> @@ -297,6 +301,7 @@ config CPU_MIPS32
>>  config CPU_MIPS64
>>       bool
>>       default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
>> +     imply ENV_IS_IN_FLASH
>
> this is wrong as CONFIG_CPU_MIPS64 is a generic MIPS symbol and not a
> specific for a machine or board

Well the intent is to reduce the number of changes to individual
boards / defconfig files. So in fact I want to use this more generic
option.

>
>>
>>  config MIPS_TUNE_4KC
>>       bool
>> @@ -401,6 +406,7 @@ config DYNAMIC_IO_PORT_BASE
>>
>>  config MIPS_CM
>>       bool
>> +     imply ENV_IS_IN_FLASH
>
> dito for CONFIG_MIPS_CM
>
>>       help
>>         Select this if your system contains a MIPS Coherence Manager and you
>>         wish U-Boot to configure it or make use of it to retrieve system
>
> ...
>
>> diff --git a/configs/vct_platinum_defconfig b/configs/vct_platinum_defconfig
>> index f8b9d7e61b..0e4fcbaa26 100644
>> --- a/configs/vct_platinum_defconfig
>> +++ b/configs/vct_platinum_defconfig
>> @@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
>>  CONFIG_CMD_PING=y
>>  CONFIG_CMD_SNTP=y
>>  CONFIG_CMD_FAT=y
>> +CONFIG_ENV_IS_IN_FLASH=y
>
> for consistency with the other MIPS boards in this patch, this should be
> added as "imply CONFIG_ENV_IS_IN_FLASH" in arch/mips/Kconfig under
> "config TARGET_VCT"

If there are only 1-2 boards affected then I think it makes more sense
to put the change in the defconfig file. Adjusting Kconfig for
individual boards just seems odd...?

Regards,
Simon

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
  2017-07-18 14:00     ` Simon Glass
@ 2017-07-18 15:01       ` Daniel Schwierzeck
  2017-07-18 16:55         ` Tom Rini
  0 siblings, 1 reply; 44+ messages in thread
From: Daniel Schwierzeck @ 2017-07-18 15:01 UTC (permalink / raw)
  To: u-boot

2017-07-18 16:00 GMT+02:00 Simon Glass <sjg@chromium.org>:
> Hi Daniel,
>
> On 10 July 2017 at 15:09, Daniel Schwierzeck
> <daniel.schwierzeck@gmail.com> wrote:
>>
>>
>> Am 09.07.2017 um 22:52 schrieb Simon Glass:
>>> This converts the following to Kconfig:
>>>    CONFIG_ENV_IS_IN_FLASH
>>>
>>> Signed-off-by: Simon Glass <sjg@chromium.org>
>>> ---
>>>
>>
>> ...
>>
>>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>>> index 579371e8ee..3046d90b4d 100644
>>> --- a/arch/mips/Kconfig
>>> +++ b/arch/mips/Kconfig
>>> @@ -21,6 +21,7 @@ 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"
>>> @@ -42,6 +43,7 @@ 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"
>>> @@ -108,6 +110,7 @@ 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"
>>> @@ -197,6 +200,7 @@ 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.
>>> @@ -297,6 +301,7 @@ config CPU_MIPS32
>>>  config CPU_MIPS64
>>>       bool
>>>       default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
>>> +     imply ENV_IS_IN_FLASH
>>
>> this is wrong as CONFIG_CPU_MIPS64 is a generic MIPS symbol and not a
>> specific for a machine or board
>
> Well the intent is to reduce the number of changes to individual
> boards / defconfig files. So in fact I want to use this more generic
> option.

yes, but adding "imply ENV_IS_IN_FLASH" to the Kconfig symbols
CPU_MIPS64 and MIPS_CM is wrong due to the logical intent of these
symbols. If you want to add the imply for all MIPS boards, then the
correct place would be the MIPS symbol in arch/Kconfig. But enabling
ENV_IS_IN_FLASH for all MIPS boards would be wrong too. Thus the
"imply ENV_IS_IN_FLASH" only makes sense with the TARGET_* symbols
because these describe default board configs.

>
>>
>>>
>>>  config MIPS_TUNE_4KC
>>>       bool
>>> @@ -401,6 +406,7 @@ config DYNAMIC_IO_PORT_BASE
>>>
>>>  config MIPS_CM
>>>       bool
>>> +     imply ENV_IS_IN_FLASH
>>
>> dito for CONFIG_MIPS_CM
>>
>>>       help
>>>         Select this if your system contains a MIPS Coherence Manager and you
>>>         wish U-Boot to configure it or make use of it to retrieve system
>>
>> ...
>>
>>> diff --git a/configs/vct_platinum_defconfig b/configs/vct_platinum_defconfig
>>> index f8b9d7e61b..0e4fcbaa26 100644
>>> --- a/configs/vct_platinum_defconfig
>>> +++ b/configs/vct_platinum_defconfig
>>> @@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
>>>  CONFIG_CMD_PING=y
>>>  CONFIG_CMD_SNTP=y
>>>  CONFIG_CMD_FAT=y
>>> +CONFIG_ENV_IS_IN_FLASH=y
>>
>> for consistency with the other MIPS boards in this patch, this should be
>> added as "imply CONFIG_ENV_IS_IN_FLASH" in arch/mips/Kconfig under
>> "config TARGET_VCT"
>
> If there are only 1-2 boards affected then I think it makes more sense
> to put the change in the defconfig file. Adjusting Kconfig for
> individual boards just seems odd...?
>

but you already touched all TARGET_* symbols in arch/mips/Kconfig
except TARGET_VCT. Instead you patched all defconfig files for the 12
VCT related boards which is contrary to the intention of your patch.

So please only update the TARGET_* options either in arch/mips/Kconfig
or arch/mips/mach-*/Kconfig, thanks.

-- 
- Daniel

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH to Kconfig
  2017-07-18 15:01       ` Daniel Schwierzeck
@ 2017-07-18 16:55         ` Tom Rini
  0 siblings, 0 replies; 44+ messages in thread
From: Tom Rini @ 2017-07-18 16:55 UTC (permalink / raw)
  To: u-boot

On Tue, Jul 18, 2017 at 05:01:39PM +0200, Daniel Schwierzeck wrote:
> 2017-07-18 16:00 GMT+02:00 Simon Glass <sjg@chromium.org>:
> > Hi Daniel,
> >
> > On 10 July 2017 at 15:09, Daniel Schwierzeck
> > <daniel.schwierzeck@gmail.com> wrote:
> >>
> >>
> >> Am 09.07.2017 um 22:52 schrieb Simon Glass:
> >>> This converts the following to Kconfig:
> >>>    CONFIG_ENV_IS_IN_FLASH
> >>>
> >>> Signed-off-by: Simon Glass <sjg@chromium.org>
> >>> ---
> >>>
> >>
> >> ...
> >>
> >>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> >>> index 579371e8ee..3046d90b4d 100644
> >>> --- a/arch/mips/Kconfig
> >>> +++ b/arch/mips/Kconfig
> >>> @@ -21,6 +21,7 @@ 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"
> >>> @@ -42,6 +43,7 @@ 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"
> >>> @@ -108,6 +110,7 @@ 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"
> >>> @@ -197,6 +200,7 @@ 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.
> >>> @@ -297,6 +301,7 @@ config CPU_MIPS32
> >>>  config CPU_MIPS64
> >>>       bool
> >>>       default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
> >>> +     imply ENV_IS_IN_FLASH
> >>
> >> this is wrong as CONFIG_CPU_MIPS64 is a generic MIPS symbol and not a
> >> specific for a machine or board
> >
> > Well the intent is to reduce the number of changes to individual
> > boards / defconfig files. So in fact I want to use this more generic
> > option.
> 
> yes, but adding "imply ENV_IS_IN_FLASH" to the Kconfig symbols
> CPU_MIPS64 and MIPS_CM is wrong due to the logical intent of these
> symbols. If you want to add the imply for all MIPS boards, then the
> correct place would be the MIPS symbol in arch/Kconfig. But enabling
> ENV_IS_IN_FLASH for all MIPS boards would be wrong too. Thus the
> "imply ENV_IS_IN_FLASH" only makes sense with the TARGET_* symbols
> because these describe default board configs.
> 
> >
> >>
> >>>
> >>>  config MIPS_TUNE_4KC
> >>>       bool
> >>> @@ -401,6 +406,7 @@ config DYNAMIC_IO_PORT_BASE
> >>>
> >>>  config MIPS_CM
> >>>       bool
> >>> +     imply ENV_IS_IN_FLASH
> >>
> >> dito for CONFIG_MIPS_CM
> >>
> >>>       help
> >>>         Select this if your system contains a MIPS Coherence Manager and you
> >>>         wish U-Boot to configure it or make use of it to retrieve system
> >>
> >> ...
> >>
> >>> diff --git a/configs/vct_platinum_defconfig b/configs/vct_platinum_defconfig
> >>> index f8b9d7e61b..0e4fcbaa26 100644
> >>> --- a/configs/vct_platinum_defconfig
> >>> +++ b/configs/vct_platinum_defconfig
> >>> @@ -12,6 +12,7 @@ CONFIG_CMD_DHCP=y
> >>>  CONFIG_CMD_PING=y
> >>>  CONFIG_CMD_SNTP=y
> >>>  CONFIG_CMD_FAT=y
> >>> +CONFIG_ENV_IS_IN_FLASH=y
> >>
> >> for consistency with the other MIPS boards in this patch, this should be
> >> added as "imply CONFIG_ENV_IS_IN_FLASH" in arch/mips/Kconfig under
> >> "config TARGET_VCT"
> >
> > If there are only 1-2 boards affected then I think it makes more sense
> > to put the change in the defconfig file. Adjusting Kconfig for
> > individual boards just seems odd...?
> >
> 
> but you already touched all TARGET_* symbols in arch/mips/Kconfig
> except TARGET_VCT. Instead you patched all defconfig files for the 12
> VCT related boards which is contrary to the intention of your patch.
> 
> So please only update the TARGET_* options either in arch/mips/Kconfig
> or arch/mips/mach-*/Kconfig, thanks.

To echo this, the moveconfig.py imply logic is good, but we then need to
see if it follows the human logic side.  ie environment is a board
choice, not SoC/etc, so we need to shuffle it around to the right area.
Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170718/97290ff2/attachment.sig>

^ permalink raw reply	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2017-07-18 16:55 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-09 20:52 [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 01/30] Makefile: Rename 'env' target to 'environ' Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 02/30] Move environment files from common/ to env/ Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 03/30] Convert CONFIG_ENV_IS_IN_MMC et al to Kconfig Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 04/30] env: Move help from README " Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 05/30] Convert CONFIG_ENV_IS_IN_FLASH " Simon Glass
2017-07-10 22:09   ` Daniel Schwierzeck
2017-07-18 14:00     ` Simon Glass
2017-07-18 15:01       ` Daniel Schwierzeck
2017-07-18 16:55         ` Tom Rini
2017-07-09 20:52 ` [U-Boot] [PATCH 06/30] Convert CONFIG_ENV_IS_IN_NVRAM " Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 07/30] Convert CONFIG_ENV_IS_IN_EEPROM " Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 08/30] Convert CONFIG_ENV_IS_IN_DATAFLASH " Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 09/30] Convert CONFIG_ENV_IS_IN_SPI_FLASH " Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 10/30] Convert CONFIG_ENV_IS_IN_REMOTE " Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 11/30] Convert CONFIG_ENV_IS_IN_FAT " Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 12/30] env: common: Make env_get_addr/get_char_memory() static Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 13/30] env: common: Drop env_get_addr() Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 14/30] env: common: Factor out the common env_valid check Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 15/30] env: common: Drop env_get_char_init() Simon Glass
2017-07-09 20:52 ` [U-Boot] [PATCH 16/30] env: common: Drop env_get_char_memory() Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 17/30] env: Add an enum for environment state Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 18/30] env: Rename nand env_location to nand_env_location Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 19/30] env: Create a location driver for each location Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 20/30] env: Add a new implementation of environment access Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 21/30] env: Switch over to use environment location drivers Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 22/30] env: Drop common init() functions Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 23/30] env: Drop the env_name_spec global Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 24/30] env: Drop unused env_ptr variables Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 25/30] env: Drop env_init_new() Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 26/30] env: Drop env_get_char_spec() Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 27/30] env: Drop env_relocate_spec() in favour of env_load() Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 28/30] env: Drop saveenv() in favour of env_save() Simon Glass
2017-07-10 20:08   ` Wolfgang Denk
2017-07-12  0:32     ` Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 29/30] env: Adjust the get_char() method to return an int Simon Glass
2017-07-09 20:53 ` [U-Boot] [PATCH 30/30] env: Adjust the load() method to return an error Simon Glass
2017-07-10  8:10 ` [U-Boot] [PATCH 00/30] env: Move environment code to use location drivers Christophe LEROY
2017-07-10 16:38   ` Simon Glass
2017-07-11  7:59     ` Christophe LEROY
2017-07-12  0:32       ` Simon Glass
2017-07-12 12:24 ` Tom Rini
2017-07-13 16:45   ` Simon Glass
2017-07-18  0:56     ` Tom Rini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.