global: Move remaining CONFIG_SYS_* to CFG_SYS_*
[platform/kernel/u-boot.git] / env / Kconfig
index 67ff172..4e506ae 100644 (file)
@@ -3,6 +3,24 @@ menu "Environment"
 config ENV_SUPPORT
        def_bool y
 
+config ENV_SOURCE_FILE
+       string "Environment file to use"
+       default ""
+       help
+         This sets the basename to use to generate the default environment.
+         This a text file as described in doc/usage/environment.rst
+
+         The file must be in the board directory and have a .env extension, so
+         the resulting filename is typically
+         board/<vendor>/<board>/<CONFIG_ENV_SOURCE_FILE>.env
+
+         If the file is not present, an error is produced.
+
+         If this CONFIG is empty, U-Boot uses CONFIG SYS_BOARD as a default, if
+         the file board/<vendor>/<board>/<SYS_BOARD>.env exists. Otherwise the
+         environment is assumed to come from the ad-hoc
+         CONFIG_EXTRA_ENV_SETTINGS #define
+
 config SAVEENV
        def_bool y if CMD_SAVEENV
 
@@ -12,6 +30,22 @@ config ENV_OVERWRITE
          Use this to permit overriding of certain environmental variables
          like Ethernet and Serial
 
+config ENV_MIN_ENTRIES
+       int "Minimum number of entries in the environment hashtable"
+       default 64
+       help
+         Minimum number of entries in the hash table that is used internally
+         to store the environment settings.
+
+config ENV_MAX_ENTRIES
+       int "Maximumm number of entries in the environment hashtable"
+       default 512
+       help
+         Maximum number of entries in the hash table that is used internally
+         to store the environment settings. The default setting is supposed to
+         be generous and should work in most cases. This setting can be used
+         to tune behaviour; see lib/hashtable.c for details.
+
 config ENV_IS_NOWHERE
        bool "Environment is not stored"
        default y if !ENV_IS_IN_EEPROM && !ENV_IS_IN_EXT4 && \
@@ -44,10 +78,6 @@ config ENV_IS_IN_EEPROM
          still be one byte because the extra address bits are hidden
          in the chip address.
 
-         - 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
@@ -110,7 +140,7 @@ config ENV_IS_IN_FLASH
           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_OFFSET is used relative to CFG_SYS_FLASH_BASE.
 
          CONFIG_ENV_ADDR:
 
@@ -204,6 +234,11 @@ config ENV_IS_IN_MMC
          This value may also be positive or negative; this is handled in the
          same way as CONFIG_ENV_OFFSET.
 
+         In case CONFIG_SYS_MMC_ENV_PART is 1 (i.e. environment in eMMC boot
+         partition) then setting CONFIG_ENV_OFFSET_REDUND to the same value
+         as CONFIG_ENV_OFFSET makes use of the second eMMC boot partition for
+         the redundant environment copy.
+
          This value is also in units of bytes, but must also be aligned to
          an MMC sector boundary.
 
@@ -229,14 +264,6 @@ config ENV_IS_IN_NAND
          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
@@ -245,6 +272,16 @@ config ENV_IS_IN_NAND
          Currently, CONFIG_ENV_OFFSET_REDUND is not supported when
          using CONFIG_ENV_OFFSET_OOB.
 
+config ENV_RANGE
+       hex "Length of the region in which the environment can be written"
+       depends on ENV_IS_IN_NAND
+       range ENV_SIZE 0x7fffffff
+       default ENV_SIZE
+       help
+         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_IS_IN_NVRAM
        bool "Environment in a non-volatile RAM"
        depends on !CHAIN_OF_TRUST
@@ -301,6 +338,7 @@ config ENV_IS_IN_SPI_FLASH
        default y if NORTHBRIDGE_INTEL_IVYBRIDGE
        default y if INTEL_QUARK
        default y if INTEL_QUEENSBAY
+       default y if ARCH_SUNXI
        help
          Define this if you have a SPI Flash memory device which you
          want to use for the environment.
@@ -338,54 +376,31 @@ config ENV_SECT_SIZE_AUTO
          different sector sizes, and CONFIG_ENV_SECT_SIZE should be
          set to that value.
 
-config USE_ENV_SPI_BUS
-       bool "SPI flash bus for environment"
-       depends on ENV_IS_IN_SPI_FLASH
-       help
-         Force the SPI bus for environment.
-         If not defined, use CONFIG_SF_DEFAULT_BUS.
-
 config ENV_SPI_BUS
        int "Value of SPI flash bus for environment"
-       depends on USE_ENV_SPI_BUS
-       help
-         Value the SPI bus and chip select for environment.
-
-config USE_ENV_SPI_CS
-       bool "SPI flash chip select for environment"
        depends on ENV_IS_IN_SPI_FLASH
+       default SF_DEFAULT_BUS
        help
-         Force the SPI chip select for environment.
-         If not defined, use CONFIG_SF_DEFAULT_CS.
+         Value the SPI bus and chip select for environment.
 
 config ENV_SPI_CS
        int "Value of SPI flash chip select for environment"
-       depends on USE_ENV_SPI_CS
-       help
-         Value of the SPI chip select for environment.
-
-config USE_ENV_SPI_MAX_HZ
-       bool "SPI flash max frequency for environment"
        depends on ENV_IS_IN_SPI_FLASH
+       default SF_DEFAULT_CS
        help
-         Force the SPI max work clock for environment.
-         If not defined, use CONFIG_SF_DEFAULT_SPEED.
+         Value of the SPI chip select for environment.
 
 config ENV_SPI_MAX_HZ
        int "Value of SPI flash max frequency for environment"
-       depends on USE_ENV_SPI_MAX_HZ
-       help
-         Value of the SPI max work clock for environment.
-
-config USE_ENV_SPI_MODE
-       bool "SPI flash mode for environment"
        depends on ENV_IS_IN_SPI_FLASH
+       default SF_DEFAULT_SPEED
        help
-         Force the SPI work mode for environment.
+         Value of the SPI max work clock for environment.
 
 config ENV_SPI_MODE
        hex "Value of SPI flash work mode for environment"
-       depends on USE_ENV_SPI_MODE
+       depends on ENV_IS_IN_SPI_FLASH
+       default SF_DEFAULT_MODE
        help
          Value of the SPI work mode for environment.
          See include/spi.h for value.
@@ -540,10 +555,10 @@ config ENV_OFFSET
                    ENV_IS_IN_SPI_FLASH
        default 0x3f8000 if ARCH_ROCKCHIP && ENV_IS_IN_MMC
        default 0x140000 if ARCH_ROCKCHIP && ENV_IS_IN_SPI_FLASH
-       default 0x88000 if ARCH_SUNXI
+       default 0xF0000 if ARCH_SUNXI
        default 0xE0000 if ARCH_ZYNQ
        default 0x1E00000 if ARCH_ZYNQMP
-       default 0x7F40000 if ARCH_VERSAL
+       default 0x7F40000 if ARCH_VERSAL || ARCH_VERSAL_NET
        default 0 if ARC
        default 0x140000 if ARCH_AT91
        default 0x260000 if ARCH_OMAP2PLUS
@@ -555,6 +570,7 @@ config ENV_OFFSET_REDUND
        hex "Redundant environment offset"
        depends on (ENV_IS_IN_EEPROM || ENV_IS_IN_MMC || ENV_IS_IN_NAND || \
                    ENV_IS_IN_SPI_FLASH) && SYS_REDUNDAND_ENVIRONMENT
+       default 0x10C0000 if MICROBLAZE
        default 0
        help
          Offset from the start of the device (or partition) of the redundant
@@ -563,10 +579,11 @@ config ENV_OFFSET_REDUND
 config ENV_SIZE
        hex "Environment Size"
        default 0x40000 if ENV_IS_IN_SPI_FLASH && ARCH_ZYNQMP
-       default 0x20000 if ARCH_SUNXI || ARCH_ZYNQ || ARCH_OMAP2PLUS || ARCH_AT91
+       default 0x20000 if ARCH_ZYNQ || ARCH_OMAP2PLUS || ARCH_AT91
+       default 0x10000 if ARCH_SUNXI
        default 0x8000 if ARCH_ROCKCHIP && ENV_IS_IN_MMC
        default 0x2000 if ARCH_ROCKCHIP && ENV_IS_IN_SPI_FLASH
-       default 0x8000 if ARCH_ZYNQMP || ARCH_VERSAL
+       default 0x8000 if ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET
        default 0x4000 if ARC
        default 0x1f000
        help
@@ -576,9 +593,10 @@ config ENV_SECT_SIZE
        hex "Environment Sector-Size"
        depends on ENV_IS_IN_FLASH || ENV_IS_IN_SPI_FLASH
        default 0x2000 if ARCH_ROCKCHIP
-       default 0x40000 if ARCH_ZYNQMP || ARCH_VERSAL
+       default 0x40000 if ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET
        default 0x20000 if ARCH_ZYNQ || ARCH_OMAP2PLUS || ARCH_AT91
        default 0x20000 if MICROBLAZE && ENV_IS_IN_SPI_FLASH
+       default 0x10000 if ARCH_SUNXI && ENV_IS_IN_SPI_FLASH
        help
          Size of the sector containing the environment.
 
@@ -616,7 +634,7 @@ config SYS_RELOC_GD_ENV_ADDR
 config SYS_MMC_ENV_DEV
        int "mmc device number"
        depends on ENV_IS_IN_MMC || ENV_IS_IN_FAT || SYS_LS_PPA_FW_IN_MMC || \
-               CMD_MVEBU_BUBT || FMAN_ENET || QE
+               CMD_MVEBU_BUBT || FMAN_ENET || QE || PHY_CORTINA
        default 0
        help
          MMC device number on the platform where the environment is stored.
@@ -689,7 +707,6 @@ config ENV_FDT_PATH
 
 config ENV_APPEND
        bool "Always append the environment with new data"
-       default n
        help
          If defined, the environment hash table is only ever appended with new
          data, but the existing hash table can never be dropped and reloaded
@@ -698,7 +715,6 @@ config ENV_APPEND
 
 config ENV_WRITEABLE_LIST
        bool "Permit write access only to listed variables"
-       default n
        help
          If defined, only environment variables which explicitly set the 'w'
          writeable flag can be written and modified at runtime. No variables
@@ -706,7 +722,6 @@ config ENV_WRITEABLE_LIST
 
 config ENV_ACCESS_IGNORE_FORCE
        bool "Block forced environment operations"
-       default n
        help
          If defined, don't allow the -f switch to env set override variable
          access flags.
@@ -826,6 +841,31 @@ config TPL_ENV_IS_IN_FLASH
 
 endif
 
+config USE_BOOTFILE
+       bool "Add a 'bootfile' environment variable"
+       help
+         The "bootfile" variable is used in some cases to allow for
+         controlling what file U-Boot will attempt to load and boot.  To set
+         this, enable this option and set the value in the next question.
+
+config BOOTFILE
+       string "'bootfile' environment variable value"
+       depends on USE_BOOTFILE
+       help
+         The value to set the "bootfile" variable to.
+
+config USE_ETHPRIME
+       bool "Add an 'ethprime' environment variable"
+       help
+         The "ethprime" variable is used in some cases to control which
+         network interface is used first.
+
+config ETHPRIME
+       string "'ethprime' environment variable value"
+       depends on USE_ETHPRIME
+       help
+         The value to set the "ethprime" variable to.
+
 config VERSION_VARIABLE
        bool "Add a 'ver' environment variable with the U-Boot version"
        help