env: ubi: KConfig: add CONFIG_ENV_UBI_VOLUME_REDUND
[oweals/u-boot.git] / env / Kconfig
index f23be00a547fd43c4b127778b73000e56a3105c2..b8bdfb0920aabbcc5439f85df4ce3185bbcf7bb9 100644 (file)
@@ -2,18 +2,12 @@ menu "Environment"
 
 config ENV_IS_NOWHERE
        bool "Environment is not stored"
-       depends on !ENV_IS_IN_EEPROM
-       depends on !ENV_IS_IN_EXT4
-       depends on !ENV_IS_IN_FAT
-       depends on !ENV_IS_IN_FLASH
-       depends on !ENV_IS_IN_MMC
-       depends on !ENV_IS_IN_NAND
-       depends on !ENV_IS_IN_NVRAM
-       depends on !ENV_IS_IN_ONENAND
-       depends on !ENV_IS_IN_REMOTE
-       depends on !ENV_IS_IN_SPI_FLASH
-       depends on !ENV_IS_IN_UBI
-       default y
+       default y if !ENV_IS_IN_EEPROM && !ENV_IS_IN_EXT4 && \
+                    !ENV_IS_IN_FAT && !ENV_IS_IN_FLASH && \
+                    !ENV_IS_IN_MMC && !ENV_IS_IN_NAND && \
+                    !ENV_IS_IN_NVRAM && !ENV_IS_IN_ONENAND && \
+                    !ENV_IS_IN_REMOTE && !ENV_IS_IN_SPI_FLASH && \
+                    !ENV_IS_IN_UBI
        help
          Define this if you don't want to or can't have an environment stored
          on a storage medium. In this case the environment will still exist
@@ -293,7 +287,7 @@ config ENV_IS_IN_REMOTE
 
 config ENV_IS_IN_SPI_FLASH
        bool "Environment is in SPI flash"
-       depends on !CHAIN_OF_TRUST
+       depends on !CHAIN_OF_TRUST && SPI
        default y if ARMADA_XP
        default y if INTEL_BAYTRAIL
        default y if INTEL_BRASWELL
@@ -324,18 +318,57 @@ config ENV_IS_IN_SPI_FLASH
          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):
+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
+       help
+         Force the SPI chip select for environment.
+         If not defined, use CONFIG_SF_DEFAULT_CS.
 
-         Define the SPI bus and chip select. If not defined they will be 0.
+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_ENV_SPI_MAX_HZ (optional):
+config USE_ENV_SPI_MAX_HZ
+       bool "SPI flash max frequency for environment"
+       depends on ENV_IS_IN_SPI_FLASH
+       help
+         Force the SPI max work clock for environment.
+         If not defined, use CONFIG_SF_DEFAULT_SPEED.
 
-         Define the SPI max work clock. If not defined then use 1MHz.
+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_ENV_SPI_MODE (optional):
+config USE_ENV_SPI_MODE
+       bool "SPI flash mode for environment"
+       depends on ENV_IS_IN_SPI_FLASH
+       help
+         Force the SPI work mode for environment.
 
-         Define the SPI work mode. If not defined then use SPI_MODE_3.
+config ENV_SPI_MODE
+       hex "Value of SPI flash work mode for environment"
+       depends on USE_ENV_SPI_MODE
+       help
+         Value of the SPI work mode for environment.
+         See include/spi.h for value.
 
 config ENV_IS_IN_UBI
        bool "Environment in a UBI volume"
@@ -431,7 +464,7 @@ config ENV_EXT4_FILE
          It's a string of the EXT4 file name. This file use to store the
          environment (explicit path to the file)
 
-if ARCH_ROCKCHIP || ARCH_SUNXI || ARCH_ZYNQ || ARCH_ZYNQMP
+if ARCH_ROCKCHIP || ARCH_SUNXI || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL || ARC || ARCH_STM32MP
 
 config ENV_OFFSET
        hex "Environment Offset"
@@ -441,6 +474,7 @@ config ENV_OFFSET
        default 0x88000 if ARCH_SUNXI
        default 0xE0000 if ARCH_ZYNQ
        default 0x1E00000 if ARCH_ZYNQMP
+       default 0 if ARC
        help
          Offset from the start of the device (or partition)
 
@@ -448,7 +482,8 @@ config ENV_SIZE
        hex "Environment Size"
        default 0x40000 if ENV_IS_IN_SPI_FLASH && ARCH_ZYNQMP
        default 0x20000 if ARCH_SUNXI || ARCH_ZYNQ
-       default 0x8000 if ARCH_ROCKCHIP || ARCH_ZYNQMP
+       default 0x8000 if ARCH_ROCKCHIP || ARCH_ZYNQMP || ARCH_VERSAL
+       default 0x4000 if ARC
        help
          Size of the environment storage area
 
@@ -472,6 +507,12 @@ config ENV_UBI_VOLUME
        help
          Name of the volume that you want to store the environment in.
 
+config ENV_UBI_VOLUME_REDUND
+       string "UBI redundant volume name"
+       depends on ENV_IS_IN_UBI
+       help
+         Name of the redundant volume that you want to store the environment in.
+
 endif
 
 config USE_DEFAULT_ENV_FILE