uboot/env/Kconfig
<<
>>
Prefs
   1menu "Environment"
   2
   3config ENV_IS_NOWHERE
   4        bool "Environment is not stored"
   5        depends on !ENV_IS_IN_EEPROM
   6        depends on !ENV_IS_IN_FAT
   7        depends on !ENV_IS_IN_FLASH
   8        depends on !ENV_IS_IN_MMC
   9        depends on !ENV_IS_IN_NAND
  10        depends on !ENV_IS_IN_NVRAM
  11        depends on !ENV_IS_IN_ONENAND
  12        depends on !ENV_IS_IN_REMOTE
  13        depends on !ENV_IS_IN_SPI_FLASH
  14        depends on !ENV_IS_IN_UBI
  15        default y
  16        help
  17          Define this if you don't want to or can't have an environment stored
  18          on a storage medium. In this case the environemnt will still exist
  19          while U-Boot is running, but once U-Boot exits it will not be
  20          stored. U-Boot will therefore always start up with a default
  21          environment.
  22
  23config ENV_IS_IN_EEPROM
  24        bool "Environment in EEPROM"
  25        depends on !CHAIN_OF_TRUST
  26        help
  27          Use this if you have an EEPROM or similar serial access
  28          device and a driver for it.
  29
  30          - CONFIG_ENV_OFFSET:
  31          - CONFIG_ENV_SIZE:
  32
  33          These two #defines specify the offset and size of the
  34          environment area within the total memory of your EEPROM.
  35
  36          Note that we consider the length of the address field to
  37          still be one byte because the extra address bits are hidden
  38          in the chip address.
  39
  40          - CONFIG_ENV_EEPROM_IS_ON_I2C
  41          define this, if you have I2C and SPI activated, and your
  42          EEPROM, which holds the environment, is on the I2C bus.
  43
  44          - CONFIG_I2C_ENV_EEPROM_BUS
  45          if you have an Environment on an EEPROM reached over
  46          I2C muxes, you can define here, how to reach this
  47          EEPROM. For example:
  48
  49          #define CONFIG_I2C_ENV_EEPROM_BUS       1
  50
  51          EEPROM which holds the environment, is reached over
  52          a pca9547 i2c mux with address 0x70, channel 3.
  53
  54config ENV_IS_IN_FAT
  55        bool "Environment is in a FAT filesystem"
  56        depends on !CHAIN_OF_TRUST
  57        default y if ARCH_BCM283X
  58        default y if ARCH_SUNXI && MMC
  59        default y if MMC_OMAP_HS && TI_COMMON_CMD_OPTIONS
  60        select FS_FAT
  61        select FAT_WRITE
  62        help
  63          Define this if you want to use the FAT file system for the environment.
  64
  65config ENV_IS_IN_EXT4
  66        bool "Environment is in a EXT4 filesystem"
  67        depends on !CHAIN_OF_TRUST
  68        select EXT4_WRITE
  69        help
  70          Define this if you want to use the EXT4 file system for the environment.
  71
  72config ENV_IS_IN_FLASH
  73        bool "Environment in flash memory"
  74        depends on !CHAIN_OF_TRUST
  75        default y if ARCH_CINTEGRATOR
  76        default y if ARCH_INTEGRATOR_CP
  77        default y if M548x || M547x || M5282 || MCF547x_8x
  78        default y if MCF532x || MCF52x2
  79        default y if MPC86xx || MPC83xx
  80        default y if ARCH_MPC8572 || ARCH_MPC8548 || ARCH_MPC8641
  81        default y if SH && !CPU_SH4
  82        help
  83          Define this if you have a flash device which you want to use for the
  84          environment.
  85
  86          a) The environment occupies one whole flash sector, which is
  87           "embedded" in the text segment with the U-Boot code. This
  88           happens usually with "bottom boot sector" or "top boot
  89           sector" type flash chips, which have several smaller
  90           sectors at the start or the end. For instance, such a
  91           layout can have sector sizes of 8, 2x4, 16, Nx32 kB. In
  92           such a case you would place the environment in one of the
  93           4 kB sectors - with U-Boot code before and after it. With
  94           "top boot sector" type flash chips, you would put the
  95           environment in one of the last sectors, leaving a gap
  96           between U-Boot and the environment.
  97
  98          CONFIG_ENV_OFFSET:
  99
 100           Offset of environment data (variable area) to the
 101           beginning of flash memory; for instance, with bottom boot
 102           type flash chips the second sector can be used: the offset
 103           for this sector is given here.
 104
 105           CONFIG_ENV_OFFSET is used relative to CONFIG_SYS_FLASH_BASE.
 106
 107          CONFIG_ENV_ADDR:
 108
 109           This is just another way to specify the start address of
 110           the flash sector containing the environment (instead of
 111           CONFIG_ENV_OFFSET).
 112
 113          CONFIG_ENV_SECT_SIZE:
 114
 115           Size of the sector containing the environment.
 116
 117
 118          b) Sometimes flash chips have few, equal sized, BIG sectors.
 119           In such a case you don't want to spend a whole sector for
 120           the environment.
 121
 122          CONFIG_ENV_SIZE:
 123
 124           If you use this in combination with CONFIG_ENV_IS_IN_FLASH
 125           and CONFIG_ENV_SECT_SIZE, you can specify to use only a part
 126           of this flash sector for the environment. This saves
 127           memory for the RAM copy of the environment.
 128
 129           It may also save flash memory if you decide to use this
 130           when your environment is "embedded" within U-Boot code,
 131           since then the remainder of the flash sector could be used
 132           for U-Boot code. It should be pointed out that this is
 133           STRONGLY DISCOURAGED from a robustness point of view:
 134           updating the environment in flash makes it always
 135           necessary to erase the WHOLE sector. If something goes
 136           wrong before the contents has been restored from a copy in
 137           RAM, your target system will be dead.
 138
 139          CONFIG_ENV_ADDR_REDUND
 140          CONFIG_ENV_SIZE_REDUND
 141
 142           These settings describe a second storage area used to hold
 143           a redundant copy of the environment data, so that there is
 144           a valid backup copy in case there is a power failure during
 145           a "saveenv" operation.
 146
 147          BE CAREFUL! Any changes to the flash layout, and some changes to the
 148          source code will make it necessary to adapt <board>/u-boot.lds*
 149          accordingly!
 150
 151config ENV_IS_IN_MMC
 152        bool "Environment in an MMC device"
 153        depends on !CHAIN_OF_TRUST
 154        depends on MMC
 155        default y if ARCH_EXYNOS4
 156        default y if MX6SX || MX7D
 157        default y if TEGRA30 || TEGRA124
 158        default y if TEGRA_ARMV8_COMMON
 159        help
 160          Define this if you have an MMC device which you want to use for the
 161          environment.
 162
 163          CONFIG_SYS_MMC_ENV_DEV:
 164
 165          Specifies which MMC device the environment is stored in.
 166
 167          CONFIG_SYS_MMC_ENV_PART (optional):
 168
 169          Specifies which MMC partition the environment is stored in. If not
 170          set, defaults to partition 0, the user area. Common values might be
 171          1 (first MMC boot partition), 2 (second MMC boot partition).
 172
 173          CONFIG_ENV_OFFSET:
 174          CONFIG_ENV_SIZE:
 175
 176          These two #defines specify the offset and size of the environment
 177          area within the specified MMC device.
 178
 179          If offset is positive (the usual case), it is treated as relative to
 180          the start of the MMC partition. If offset is negative, it is treated
 181          as relative to the end of the MMC partition. This can be useful if
 182          your board may be fitted with different MMC devices, which have
 183          different sizes for the MMC partitions, and you always want the
 184          environment placed at the very end of the partition, to leave the
 185          maximum possible space before it, to store other data.
 186
 187          These two values are in units of bytes, but must be aligned to an
 188          MMC sector boundary.
 189
 190          CONFIG_ENV_OFFSET_REDUND (optional):
 191
 192          Specifies a second storage area, of CONFIG_ENV_SIZE size, used to
 193          hold a redundant copy of the environment data. This provides a
 194          valid backup copy in case the other copy is corrupted, e.g. due
 195          to a power failure during a "saveenv" operation.
 196
 197          This value may also be positive or negative; this is handled in the
 198          same way as CONFIG_ENV_OFFSET.
 199
 200          This value is also in units of bytes, but must also be aligned to
 201          an MMC sector boundary.
 202
 203          CONFIG_ENV_SIZE_REDUND (optional):
 204
 205          This value need not be set, even when CONFIG_ENV_OFFSET_REDUND is
 206          set. If this value is set, it must be set to the same value as
 207          CONFIG_ENV_SIZE.
 208
 209config ENV_IS_IN_NAND
 210        bool "Environment in a NAND device"
 211        depends on !CHAIN_OF_TRUST
 212        help
 213          Define this if you have a NAND device which you want to use for the
 214          environment.
 215
 216          - CONFIG_ENV_OFFSET:
 217          - CONFIG_ENV_SIZE:
 218
 219          These two #defines specify the offset and size of the environment
 220          area within the first NAND device.  CONFIG_ENV_OFFSET must be
 221          aligned to an erase block boundary.
 222
 223          - CONFIG_ENV_OFFSET_REDUND (optional):
 224
 225          This setting describes a second storage area of CONFIG_ENV_SIZE
 226          size used to hold a redundant copy of the environment data, so
 227          that there is a valid backup copy in case there is a power failure
 228          during a "saveenv" operation.  CONFIG_ENV_OFFSET_REDUND must be
 229          aligned to an erase block boundary.
 230
 231          - CONFIG_ENV_RANGE (optional):
 232
 233          Specifies the length of the region in which the environment
 234          can be written.  This should be a multiple of the NAND device's
 235          block size.  Specifying a range with more erase blocks than
 236          are needed to hold CONFIG_ENV_SIZE allows bad blocks within
 237          the range to be avoided.
 238
 239          - CONFIG_ENV_OFFSET_OOB (optional):
 240
 241          Enables support for dynamically retrieving the offset of the
 242          environment from block zero's out-of-band data.  The
 243          "nand env.oob" command can be used to record this offset.
 244          Currently, CONFIG_ENV_OFFSET_REDUND is not supported when
 245          using CONFIG_ENV_OFFSET_OOB.
 246
 247config ENV_IS_IN_NVRAM
 248        bool "Environment in a non-volatile RAM"
 249        depends on !CHAIN_OF_TRUST
 250        help
 251          Define this if you have some non-volatile memory device
 252          (NVRAM, battery buffered SRAM) which you want to use for the
 253          environment.
 254
 255          - CONFIG_ENV_ADDR:
 256          - CONFIG_ENV_SIZE:
 257
 258          These two #defines are used to determine the memory area you
 259          want to use for environment. It is assumed that this memory
 260          can just be read and written to, without any special
 261          provision.
 262
 263config ENV_IS_IN_ONENAND
 264        bool "Environment is in OneNAND"
 265        depends on !CHAIN_OF_TRUST
 266        help
 267          Define this if you want to put your local device's environment in
 268          OneNAND.
 269
 270          - CONFIG_ENV_ADDR:
 271          - CONFIG_ENV_SIZE:
 272
 273          These two #defines are used to determine the device range you
 274          want to use for environment. It is assumed that this memory
 275          can just be read and written to, without any special
 276          provision.
 277
 278config ENV_IS_IN_REMOTE
 279        bool "Environment is in remove memory space"
 280        depends on !CHAIN_OF_TRUST
 281        help
 282          Define this if you have a remote memory space which you
 283          want to use for the local device's environment.
 284
 285          - CONFIG_ENV_ADDR:
 286          - CONFIG_ENV_SIZE:
 287
 288          These two #defines specify the address and size of the
 289          environment area within the remote memory space. The
 290          local device can get the environment from remote memory
 291          space by SRIO or PCIE links.
 292
 293config ENV_IS_IN_SPI_FLASH
 294        bool "Environment is in SPI flash"
 295        depends on !CHAIN_OF_TRUST
 296        default y if ARMADA_XP
 297        default y if INTEL_BAYTRAIL
 298        default y if INTEL_BRASWELL
 299        default y if INTEL_BROADWELL
 300        default y if NORTHBRIDGE_INTEL_IVYBRIDGE
 301        default y if INTEL_QUARK
 302        default y if INTEL_QUEENSBAY
 303        help
 304          Define this if you have a SPI Flash memory device which you
 305          want to use for the environment.
 306
 307          - CONFIG_ENV_OFFSET:
 308          - CONFIG_ENV_SIZE:
 309
 310          These two #defines specify the offset and size of the
 311          environment area within the SPI Flash. CONFIG_ENV_OFFSET must be
 312          aligned to an erase sector boundary.
 313
 314          - CONFIG_ENV_SECT_SIZE:
 315
 316          Define the SPI flash's sector size.
 317
 318          - CONFIG_ENV_OFFSET_REDUND (optional):
 319
 320          This setting describes a second storage area of CONFIG_ENV_SIZE
 321          size used to hold a redundant copy of the environment data, so
 322          that there is a valid backup copy in case there is a power failure
 323          during a "saveenv" operation. CONFIG_ENV_OFFSET_REDUND must be
 324          aligned to an erase sector boundary.
 325
 326          - CONFIG_ENV_SPI_BUS (optional):
 327          - CONFIG_ENV_SPI_CS (optional):
 328
 329          Define the SPI bus and chip select. If not defined they will be 0.
 330
 331          - CONFIG_ENV_SPI_MAX_HZ (optional):
 332
 333          Define the SPI max work clock. If not defined then use 1MHz.
 334
 335          - CONFIG_ENV_SPI_MODE (optional):
 336
 337          Define the SPI work mode. If not defined then use SPI_MODE_3.
 338
 339config ENV_IS_IN_UBI
 340        bool "Environment in a UBI volume"
 341        depends on !CHAIN_OF_TRUST
 342        help
 343          Define this if you have an UBI volume that you want to use for the
 344          environment.  This has the benefit of wear-leveling the environment
 345          accesses, which is important on NAND.
 346
 347          - CONFIG_ENV_UBI_PART:
 348
 349          Define this to a string that is the mtd partition containing the UBI.
 350
 351          - CONFIG_ENV_UBI_VOLUME:
 352
 353          Define this to the name of the volume that you want to store the
 354          environment in.
 355
 356          - CONFIG_ENV_UBI_VOLUME_REDUND:
 357
 358          Define this to the name of another volume to store a second copy of
 359          the environment in.  This will enable redundant environments in UBI.
 360          It is assumed that both volumes are in the same MTD partition.
 361
 362config ENV_FAT_INTERFACE
 363        string "Name of the block device for the environment"
 364        depends on ENV_IS_IN_FAT
 365        default "mmc" if ARCH_SUNXI
 366        default "mmc" if TI_COMMON_CMD_OPTIONS || ARCH_ZYNQMP || ARCH_AT91
 367        help
 368          Define this to a string that is the name of the block device.
 369
 370config ENV_FAT_DEVICE_AND_PART
 371        string "Device and partition for where to store the environemt in FAT"
 372        depends on ENV_IS_IN_FAT
 373        default "0:1" if TI_COMMON_CMD_OPTIONS
 374        default "0:auto" if ARCH_ZYNQMP
 375        default "0:auto" if ARCH_SUNXI && MMC_SUNXI_SLOT_EXTRA = -1
 376        default "1:auto" if ARCH_SUNXI && MMC_SUNXI_SLOT_EXTRA != -1
 377        default "0" if ARCH_AT91
 378        help
 379          Define this to a string to specify the partition of the device. It can
 380          be as following:
 381
 382            "D:P", "D:0", "D", "D:" or "D:auto" (D, P are integers. And P >= 1)
 383               - "D:P": device D partition P. Error occurs if device D has no
 384                        partition table.
 385               - "D:0": device D.
 386               - "D" or "D:": device D partition 1 if device D has partition
 387                              table, or the whole device D if has no partition
 388                              table.
 389               - "D:auto": first partition in device D with bootable flag set.
 390                           If none, first valid partition in device D. If no
 391                           partition table then means device D.
 392
 393config ENV_FAT_FILE
 394        string "Name of the FAT file to use for the environemnt"
 395        depends on ENV_IS_IN_FAT
 396        default "uboot.env"
 397        help
 398          It's a string of the FAT file name. This file use to store the
 399          environment.
 400
 401config ENV_EXT4_INTERFACE
 402        string "Name of the block device for the environment"
 403        depends on ENV_IS_IN_EXT4
 404        help
 405          Define this to a string that is the name of the block device.
 406
 407config ENV_EXT4_DEVICE_AND_PART
 408        string "Device and partition for where to store the environemt in EXT4"
 409        depends on ENV_IS_IN_EXT4
 410        help
 411          Define this to a string to specify the partition of the device. It can
 412          be as following:
 413
 414            "D:P", "D:0", "D", "D:" or "D:auto" (D, P are integers. And P >= 1)
 415               - "D:P": device D partition P. Error occurs if device D has no
 416                        partition table.
 417               - "D:0": device D.
 418               - "D" or "D:": device D partition 1 if device D has partition
 419                              table, or the whole device D if has no partition
 420                              table.
 421               - "D:auto": first partition in device D with bootable flag set.
 422                           If none, first valid partition in device D. If no
 423                           partition table then means device D.
 424
 425config ENV_EXT4_FILE
 426        string "Name of the EXT4 file to use for the environemnt"
 427        depends on ENV_IS_IN_EXT4
 428        default "uboot.env"
 429        help
 430          It's a string of the EXT4 file name. This file use to store the
 431          environment (explicit path to the file)
 432
 433if ARCH_SUNXI
 434
 435config ENV_OFFSET
 436        hex "Environment Offset"
 437        depends on !ENV_IS_IN_UBI
 438        depends on !ENV_IS_NOWHERE
 439        default 0x88000 if ARCH_SUNXI
 440        help
 441          Offset from the start of the device (or partition)
 442
 443config ENV_SIZE
 444        hex "Environment Size"
 445        depends on !ENV_IS_NOWHERE
 446        default 0x20000 if ARCH_SUNXI
 447        help
 448          Size of the environment storage area
 449
 450config ENV_UBI_PART
 451        string "UBI partition name"
 452        depends on ENV_IS_IN_UBI
 453        help
 454          MTD partition containing the UBI device
 455
 456config ENV_UBI_VOLUME
 457        string "UBI volume name"
 458        depends on ENV_IS_IN_UBI
 459        help
 460          Name of the volume that you want to store the environment in.
 461
 462endif
 463
 464if ARCH_ROCKCHIP
 465
 466config ENV_OFFSET
 467        hex
 468        depends on !ENV_IS_IN_UBI
 469        depends on !ENV_IS_NOWHERE
 470        default 0x3f8000
 471        help
 472          Offset from the start of the device (or partition)
 473
 474config ENV_SIZE
 475        hex
 476        default 0x8000
 477        help
 478          Size of the environment storage area
 479
 480endif
 481
 482config USE_DEFAULT_ENV_FILE
 483        bool "Create default environment from file"
 484        help
 485          Normally, the default environment is automatically generated
 486          based on the settings of various CONFIG_* options, as well
 487          as the CONFIG_EXTRA_ENV_SETTINGS. By selecting this option,
 488          you can instead define the entire default environment in an
 489          external file.
 490
 491config DEFAULT_ENV_FILE
 492        string "Path to default environment file"
 493        depends on USE_DEFAULT_ENV_FILE
 494        help
 495          The path containing the default environment. The format is
 496          the same as accepted by the mkenvimage tool: lines
 497          containing key=value pairs, blank lines and lines beginning
 498          with # are ignored.
 499
 500config ENV_VARS_UBOOT_RUNTIME_CONFIG
 501        bool "Add run-time information to the environment"
 502        help
 503          Enable this in order to add variables describing certain
 504          run-time determined information about the hardware to the
 505          environment.  These will be named board_name, board_rev.
 506
 507endmenu
 508