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_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
 
 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
 
          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 && \
 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.
 
          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
          - 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.
 
           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:
 
 
          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.
 
          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.
 
          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.
 
          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
          - 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.
 
          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
 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 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.
        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.
 
          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"
 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
        depends on ENV_IS_IN_SPI_FLASH
+       default SF_DEFAULT_BUS
        help
        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"
 
 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
        depends on ENV_IS_IN_SPI_FLASH
+       default SF_DEFAULT_CS
        help
        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"
 
 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
        depends on ENV_IS_IN_SPI_FLASH
+       default SF_DEFAULT_SPEED
        help
        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"
 
 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.
        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
                    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 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
        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
        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
        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
 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_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
        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
        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 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.
 
        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 || \
 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.
        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"
 
 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
        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"
 
 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
        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"
 
 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.
        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
 
 
 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
 config VERSION_VARIABLE
        bool "Add a 'ver' environment variable with the U-Boot version"
        help