1menu "Environment" 2 3config ENV_SUPPORT 4 def_bool y 5 6config ENV_SOURCE_FILE 7 string "Environment file to use" 8 default "" 9 help 10 This sets the basename to use to generate the default environment. 11 This a text file as described in doc/usage/environment.rst 12 13 The file must be in the board directory and have a .env extension, so 14 the resulting filename is typically 15 board/<vendor>/<board>/<CONFIG_ENV_SOURCE_FILE>.env 16 17 If the file is not present, an error is produced. 18 19 If this CONFIG is empty, U-Boot uses CONFIG SYS_BOARD as a default, if 20 the file board/<vendor>/<board>/<SYS_BOARD>.env exists. Otherwise the 21 environment is assumed to come from the ad-hoc 22 CFG_EXTRA_ENV_SETTINGS #define 23 24config SAVEENV 25 def_bool y if CMD_SAVEENV 26 27config ENV_OVERWRITE 28 bool "Enable overwriting environment" 29 help 30 Use this to permit overriding of certain environmental variables 31 like Ethernet and Serial 32 33config OVERWRITE_ETHADDR_ONCE 34 bool "Enable overwriting ethaddr environment variables once" 35 depends on !ENV_OVERWRITE 36 help 37 Enable this to allow for the ethaddr environment variables to be 38 overwritten one time per boot, only. This allows for a default 39 to be installed in the environment, which can be changed exactly ONCE 40 by the user. 41 42config ENV_MIN_ENTRIES 43 int "Minimum number of entries in the environment hashtable" 44 default 64 45 help 46 Minimum number of entries in the hash table that is used internally 47 to store the environment settings. 48 49config ENV_MAX_ENTRIES 50 int "Maximumm number of entries in the environment hashtable" 51 default 512 52 help 53 Maximum number of entries in the hash table that is used internally 54 to store the environment settings. The default setting is supposed to 55 be generous and should work in most cases. This setting can be used 56 to tune behaviour; see lib/hashtable.c for details. 57 58config ENV_IS_NOWHERE 59 bool "Environment is not stored" 60 default y if !ENV_IS_IN_EEPROM && !ENV_IS_IN_EXT4 && \ 61 !ENV_IS_IN_FAT && !ENV_IS_IN_FLASH && \ 62 !ENV_IS_IN_MMC && !ENV_IS_IN_NAND && \ 63 !ENV_IS_IN_NVRAM && !ENV_IS_IN_ONENAND && \ 64 !ENV_IS_IN_REMOTE && !ENV_IS_IN_SPI_FLASH && \ 65 !ENV_IS_IN_UBI 66 help 67 Define this if you don't want to or can't have an environment stored 68 on a storage medium. In this case the environment will still exist 69 while U-Boot is running, but once U-Boot exits it will not be 70 stored. U-Boot will therefore always start up with a default 71 environment. 72 73config ENV_IS_IN_EEPROM 74 bool "Environment in EEPROM" 75 depends on !CHAIN_OF_TRUST 76 help 77 Use this if you have an EEPROM or similar serial access 78 device and a driver for it. 79 80 - CONFIG_ENV_OFFSET: 81 - CONFIG_ENV_SIZE: 82 83 These two #defines specify the offset and size of the 84 environment area within the total memory of your EEPROM. 85 86 Note that we consider the length of the address field to 87 still be one byte because the extra address bits are hidden 88 in the chip address. 89 90 EEPROM which holds the environment, is reached over 91 a pca9547 i2c mux with address 0x70, channel 3. 92 93config ENV_IS_IN_FAT 94 bool "Environment is in a FAT filesystem" 95 depends on !CHAIN_OF_TRUST 96 default y if ARCH_BCM283X 97 default y if ARCH_SUNXI && MMC 98 default y if MMC_OMAP_HS && TI_COMMON_CMD_OPTIONS 99 select FS_FAT 100 select FAT_WRITE 101 help 102 Define this if you want to use the FAT file system for the environment. 103 104config ENV_IS_IN_EXT4 105 bool "Environment is in a EXT4 filesystem" 106 depends on !CHAIN_OF_TRUST 107 select FS_EXT4 108 select EXT4_WRITE 109 help 110 Define this if you want to use the EXT4 file system for the environment. 111 112config ENV_IS_IN_FLASH 113 bool "Environment in flash memory" 114 depends on !CHAIN_OF_TRUST 115 default y if ARCH_CINTEGRATOR 116 default y if ARCH_INTEGRATOR_CP 117 default y if M548x || M547x || M5282 118 default y if MCF532x || MCF52x2 119 default y if MPC86xx || MPC83xx 120 default y if ARCH_MPC8548 121 default y if SH && !CPU_SH4 122 help 123 Define this if you have a flash device which you want to use for the 124 environment. 125 126 a) The environment occupies one whole flash sector, which is 127 "embedded" in the text segment with the U-Boot code. This 128 happens usually with "bottom boot sector" or "top boot 129 sector" type flash chips, which have several smaller 130 sectors at the start or the end. For instance, such a 131 layout can have sector sizes of 8, 2x4, 16, Nx32 kB. In 132 such a case you would place the environment in one of the 133 4 kB sectors - with U-Boot code before and after it. With 134 "top boot sector" type flash chips, you would put the 135 environment in one of the last sectors, leaving a gap 136 between U-Boot and the environment. 137 138 CONFIG_ENV_OFFSET: 139 140 Offset of environment data (variable area) to the 141 beginning of flash memory; for instance, with bottom boot 142 type flash chips the second sector can be used: the offset 143 for this sector is given here. 144 145 CONFIG_ENV_OFFSET is used relative to CFG_SYS_FLASH_BASE. 146 147 CONFIG_ENV_ADDR: 148 149 This is just another way to specify the start address of 150 the flash sector containing the environment (instead of 151 CONFIG_ENV_OFFSET). 152 153 CONFIG_ENV_SECT_SIZE: 154 155 Size of the sector containing the environment. 156 157 158 b) Sometimes flash chips have few, equal sized, BIG sectors. 159 In such a case you don't want to spend a whole sector for 160 the environment. 161 162 CONFIG_ENV_SIZE: 163 164 If you use this in combination with CONFIG_ENV_IS_IN_FLASH 165 and CONFIG_ENV_SECT_SIZE, you can specify to use only a part 166 of this flash sector for the environment. This saves 167 memory for the RAM copy of the environment. 168 169 It may also save flash memory if you decide to use this 170 when your environment is "embedded" within U-Boot code, 171 since then the remainder of the flash sector could be used 172 for U-Boot code. It should be pointed out that this is 173 STRONGLY DISCOURAGED from a robustness point of view: 174 updating the environment in flash makes it always 175 necessary to erase the WHOLE sector. If something goes 176 wrong before the contents has been restored from a copy in 177 RAM, your target system will be dead. 178 179 CONFIG_ENV_ADDR_REDUND 180 181 These settings describe a second storage area used to hold 182 a redundant copy of the environment data, so that there is 183 a valid backup copy in case there is a power failure during 184 a "saveenv" operation. 185 186 BE CAREFUL! Any changes to the flash layout, and some changes to the 187 source code will make it necessary to adapt <board>/u-boot.lds* 188 accordingly! 189 190config ENV_IS_IN_MMC 191 bool "Environment in an MMC device" 192 depends on !CHAIN_OF_TRUST 193 depends on MMC 194 default y if ARCH_EXYNOS4 195 default y if MX6SX || MX7D 196 default y if TEGRA30 || TEGRA124 197 default y if TEGRA_ARMV8_COMMON 198 help 199 Define this if you have an MMC device which you want to use for the 200 environment. 201 202 CONFIG_SYS_MMC_ENV_DEV: 203 204 Specifies which MMC device the environment is stored in. 205 206 CONFIG_SYS_MMC_ENV_PART (optional): 207 208 Specifies which MMC partition the environment is stored in. If not 209 set, defaults to partition 0, the user area. Common values might be 210 1 (first MMC boot partition), 2 (second MMC boot partition). 211 212 CONFIG_ENV_OFFSET: 213 CONFIG_ENV_SIZE: 214 215 These two #defines specify the offset and size of the environment 216 area within the specified MMC device. 217 218 If offset is positive (the usual case), it is treated as relative to 219 the start of the MMC partition. If offset is negative, it is treated 220 as relative to the end of the MMC partition. This can be useful if 221 your board may be fitted with different MMC devices, which have 222 different sizes for the MMC partitions, and you always want the 223 environment placed at the very end of the partition, to leave the 224 maximum possible space before it, to store other data. 225 226 These two values are in units of bytes, but must be aligned to an 227 MMC sector boundary. 228 229 CONFIG_ENV_OFFSET_REDUND (optional): 230 231 Specifies a second storage area, of CONFIG_ENV_SIZE size, used to 232 hold a redundant copy of the environment data. This provides a 233 valid backup copy in case the other copy is corrupted, e.g. due 234 to a power failure during a "saveenv" operation. 235 236 This value may also be positive or negative; this is handled in the 237 same way as CONFIG_ENV_OFFSET. 238 239 In case CONFIG_SYS_MMC_ENV_PART is 1 (i.e. environment in eMMC boot 240 partition) then setting CONFIG_ENV_OFFSET_REDUND to the same value 241 as CONFIG_ENV_OFFSET makes use of the second eMMC boot partition for 242 the redundant environment copy. 243 244 This value is also in units of bytes, but must also be aligned to 245 an MMC sector boundary. 246 247 CONFIG_ENV_MMC_USE_DT (optional): 248 249 These define forces the configuration by the config node in device 250 tree with partition name: "u-boot,mmc-env-partition" or with 251 offset: "u-boot,mmc-env-offset", "u-boot,mmc-env-offset-redundant". 252 CONFIG_ENV_OFFSET and CONFIG_ENV_OFFSET_REDUND are not used. 253 254config ENV_IS_IN_NAND 255 bool "Environment in a NAND device" 256 depends on !CHAIN_OF_TRUST 257 help 258 Define this if you have a NAND device which you want to use for the 259 environment. 260 261 - CONFIG_ENV_OFFSET: 262 - CONFIG_ENV_SIZE: 263 264 These two #defines specify the offset and size of the environment 265 area within the first NAND device. CONFIG_ENV_OFFSET must be 266 aligned to an erase block boundary. 267 268 - CONFIG_ENV_OFFSET_REDUND (optional): 269 270 This setting describes a second storage area of CONFIG_ENV_SIZE 271 size used to hold a redundant copy of the environment data, so 272 that there is a valid backup copy in case there is a power failure 273 during a "saveenv" operation. CONFIG_ENV_OFFSET_REDUND must be 274 aligned to an erase block boundary. 275 276 - CONFIG_ENV_OFFSET_OOB (optional): 277 278 Enables support for dynamically retrieving the offset of the 279 environment from block zero's out-of-band data. The 280 "nand env.oob" command can be used to record this offset. 281 Currently, CONFIG_ENV_OFFSET_REDUND is not supported when 282 using CONFIG_ENV_OFFSET_OOB. 283 284config ENV_RANGE 285 hex "Length of the region in which the environment can be written" 286 depends on ENV_IS_IN_NAND 287 range ENV_SIZE 0x7fffffff 288 default ENV_SIZE 289 help 290 This should be a multiple of the NAND device's block size. 291 Specifying a range with more erase blocks than are needed to hold 292 CONFIG_ENV_SIZE allows bad blocks within the range to be avoided. 293 294config ENV_IS_IN_NVRAM 295 bool "Environment in a non-volatile RAM" 296 depends on !CHAIN_OF_TRUST 297 help 298 Define this if you have some non-volatile memory device 299 (NVRAM, battery buffered SRAM) which you want to use for the 300 environment. 301 302 - CONFIG_ENV_ADDR: 303 - CONFIG_ENV_SIZE: 304 305 These two #defines are used to determine the memory area you 306 want to use for environment. It is assumed that this memory 307 can just be read and written to, without any special 308 provision. 309 310config ENV_IS_IN_ONENAND 311 bool "Environment is in OneNAND" 312 depends on !CHAIN_OF_TRUST 313 help 314 Define this if you want to put your local device's environment in 315 OneNAND. 316 317 - CONFIG_ENV_ADDR: 318 - CONFIG_ENV_SIZE: 319 320 These two #defines are used to determine the device range you 321 want to use for environment. It is assumed that this memory 322 can just be read and written to, without any special 323 provision. 324 325config ENV_IS_IN_REMOTE 326 bool "Environment is in remote memory space" 327 depends on !CHAIN_OF_TRUST 328 help 329 Define this if you have a remote memory space which you 330 want to use for the local device's environment. 331 332 - CONFIG_ENV_ADDR: 333 - CONFIG_ENV_SIZE: 334 335 These two #defines specify the address and size of the 336 environment area within the remote memory space. The 337 local device can get the environment from remote memory 338 space by SRIO or PCIE links. 339 340config ENV_IS_IN_SPI_FLASH 341 bool "Environment is in SPI flash" 342 depends on !CHAIN_OF_TRUST && SPI 343 default y if ARMADA_XP 344 default y if INTEL_BAYTRAIL 345 default y if INTEL_BRASWELL 346 default y if INTEL_BROADWELL 347 default y if NORTHBRIDGE_INTEL_IVYBRIDGE 348 default y if INTEL_QUARK 349 default y if INTEL_QUEENSBAY 350 default y if ARCH_SUNXI 351 help 352 Define this if you have a SPI Flash memory device which you 353 want to use for the environment. 354 355 - CONFIG_ENV_OFFSET: 356 - CONFIG_ENV_SIZE: 357 358 These two #defines specify the offset and size of the 359 environment area within the SPI Flash. CONFIG_ENV_OFFSET must be 360 aligned to an erase sector boundary. 361 362 - CONFIG_ENV_SECT_SIZE: 363 364 Define the SPI flash's sector size. 365 366 - CONFIG_ENV_OFFSET_REDUND (optional): 367 368 This setting describes a second storage area of CONFIG_ENV_SIZE 369 size used to hold a redundant copy of the environment data, so 370 that there is a valid backup copy in case there is a power failure 371 during a "saveenv" operation. CONFIG_ENV_OFFSET_REDUND must be 372 aligned to an erase sector boundary. 373 374config ENV_SECT_SIZE_AUTO 375 bool "Use automatically detected sector size" 376 depends on ENV_IS_IN_SPI_FLASH 377 help 378 Some boards exist in multiple variants, with different 379 flashes having different sector sizes. In such cases, you 380 can select this option to make U-Boot use the actual sector 381 size when figuring out how much to erase, which can thus be 382 more efficient on the flashes with smaller erase size. Since 383 the environment must always be aligned on a sector boundary, 384 CONFIG_ENV_OFFSET must be aligned to the largest of the 385 different sector sizes, and CONFIG_ENV_SECT_SIZE should be 386 set to that value. 387 388config ENV_SPI_BUS 389 int "Value of SPI flash bus for environment" 390 depends on ENV_IS_IN_SPI_FLASH 391 default SF_DEFAULT_BUS 392 help 393 Value the SPI bus and chip select for environment. 394 395config ENV_SPI_CS 396 int "Value of SPI flash chip select for environment" 397 depends on ENV_IS_IN_SPI_FLASH 398 default SF_DEFAULT_CS 399 help 400 Value of the SPI chip select for environment. 401 402config ENV_SPI_MAX_HZ 403 int "Value of SPI flash max frequency for environment" 404 depends on ENV_IS_IN_SPI_FLASH 405 default SF_DEFAULT_SPEED 406 help 407 Value of the SPI max work clock for environment. 408 409config ENV_SPI_MODE 410 hex "Value of SPI flash work mode for environment" 411 depends on ENV_IS_IN_SPI_FLASH 412 default SF_DEFAULT_MODE 413 help 414 Value of the SPI work mode for environment. 415 See include/spi.h for value. 416 417config ENV_SPI_EARLY 418 bool "Access Environment in SPI flashes before relocation" 419 depends on ENV_IS_IN_SPI_FLASH 420 help 421 Enable this if you want to use Environment in SPI flash 422 before relocation. Call env_init() and than you can use 423 env_get_f() for accessing Environment variables. 424 425config ENV_IS_IN_UBI 426 bool "Environment in a UBI volume" 427 depends on !CHAIN_OF_TRUST 428 depends on MTD_UBI 429 depends on CMD_UBI 430 help 431 Define this if you have an UBI volume that you want to use for the 432 environment. This has the benefit of wear-leveling the environment 433 accesses, which is important on NAND. 434 435 - CONFIG_ENV_UBI_PART: 436 437 Define this to a string that is the mtd partition containing the UBI. 438 439 - CONFIG_ENV_UBI_VOLUME: 440 441 Define this to the name of the volume that you want to store the 442 environment in. 443 444 - CONFIG_ENV_UBI_VOLUME_REDUND: 445 446 Define this to the name of another volume to store a second copy of 447 the environment in. This will enable redundant environments in UBI. 448 It is assumed that both volumes are in the same MTD partition. 449 450config SYS_REDUNDAND_ENVIRONMENT 451 bool "Enable redundant environment support" 452 help 453 Normally, the environemt is stored in a single location. By 454 selecting this option, you can then define where to hold a redundant 455 copy of the environment data, so that there is a valid backup copy in 456 case there is a power failure during a "saveenv" operation. 457 Also this config changes the binary environment structure handling 458 which is used by env import/export commands which are independent of 459 storing variables to redundant location on a non volatile device. 460 461config ENV_FAT_INTERFACE 462 string "Name of the block device for the environment" 463 depends on ENV_IS_IN_FAT 464 default "mmc" 465 help 466 Define this to a string that is the name of the block device. 467 468config ENV_FAT_DEVICE_AND_PART 469 string "Device and partition for where to store the environemt in FAT" 470 depends on ENV_IS_IN_FAT 471 default "0:1" if TI_COMMON_CMD_OPTIONS 472 default "0:auto" if ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL 473 default ":auto" if ARCH_SUNXI 474 default "0" if ARCH_AT91 475 help 476 Define this to a string to specify the partition of the device. It can 477 be as following: 478 479 "D:P", "D:0", "D", "D:" or "D:auto" (D, P are integers. And P >= 1) 480 - "D:P": device D partition P. Error occurs if device D has no 481 partition table. 482 - "D:0": device D. 483 - "D" or "D:": device D partition 1 if device D has partition 484 table, or the whole device D if has no partition 485 table. 486 - "D:auto": first partition in device D with bootable flag set. 487 If none, first valid partition in device D. If no 488 partition table then means device D. 489 490 If ENV_FAT_INTERFACE is set to "mmc" then device 'D' can be omitted, 491 leaving the string starting with a colon, and the boot device will 492 be used. 493 494config ENV_FAT_FILE 495 string "Name of the FAT file to use for the environment" 496 depends on ENV_IS_IN_FAT 497 default "uboot.env" 498 help 499 It's a string of the FAT file name. This file use to store the 500 environment. 501 502config ENV_FAT_FILE_REDUND 503 string "Name of the FAT file to use for the environment" 504 depends on ENV_IS_IN_FAT && SYS_REDUNDAND_ENVIRONMENT 505 default "uboot-redund.env" 506 help 507 It's a string of the FAT file name. This file use to store the 508 redundant environment. 509 510config ENV_EXT4_INTERFACE 511 string "Name of the block device for the environment" 512 depends on ENV_IS_IN_EXT4 513 help 514 Define this to a string that is the name of the block device. 515 516config ENV_EXT4_DEVICE_AND_PART 517 string "Device and partition for where to store the environemt in EXT4" 518 depends on ENV_IS_IN_EXT4 519 help 520 Define this to a string to specify the partition of the device. It can 521 be as following: 522 523 "D:P", "D:0", "D", "D:" or "D:auto" (D, P are integers. And P >= 1) 524 - "D:P": device D partition P. Error occurs if device D has no 525 partition table. 526 - "D:0": device D. 527 - "D" or "D:": device D partition 1 if device D has partition 528 table, or the whole device D if has no partition 529 table. 530 - "D:auto": first partition in device D with bootable flag set. 531 If none, first valid partition in device D. If no 532 partition table then means device D. 533 534 If ENV_EXT4_INTERFACE is set to "mmc" then device 'D' can be omitted, 535 leaving the string starting with a colon, and the boot device will 536 be used. 537 538config ENV_EXT4_FILE 539 string "Name of the EXT4 file to use for the environment" 540 depends on ENV_IS_IN_EXT4 541 default "/uboot.env" 542 help 543 It's a string of the EXT4 file name. This file use to store the 544 environment (explicit path to the file) 545 546config ENV_ADDR 547 hex "Environment address" 548 depends on ENV_IS_IN_FLASH || ENV_IS_IN_NVRAM || ENV_IS_IN_ONENAND || \ 549 ENV_IS_IN_REMOTE || ENV_IS_IN_SPI_FLASH 550 default 0x0 if ENV_IS_IN_SPI_FLASH 551 help 552 Offset from the start of the device (or partition) 553 554config ENV_ADDR_REDUND 555 hex "Redundant environment address" 556 depends on ENV_IS_IN_FLASH && SYS_REDUNDAND_ENVIRONMENT 557 help 558 Offset from the start of the device (or partition) of the redundant 559 environment location. 560 561config ENV_OFFSET 562 hex "Environment offset" 563 depends on ENV_IS_IN_EEPROM || ENV_IS_IN_MMC || ENV_IS_IN_NAND || \ 564 ENV_IS_IN_SPI_FLASH 565 default 0x3f8000 if ARCH_ROCKCHIP && ENV_IS_IN_MMC 566 default 0x140000 if ARCH_ROCKCHIP && ENV_IS_IN_SPI_FLASH 567 default 0xF0000 if ARCH_SUNXI 568 default 0xE0000 if ARCH_ZYNQ 569 default 0x1E00000 if ARCH_ZYNQMP 570 default 0x7F40000 if ARCH_VERSAL || ARCH_VERSAL_NET 571 default 0 if ARC 572 default 0x140000 if ARCH_AT91 573 default 0x260000 if ARCH_OMAP2PLUS 574 default 0x1080000 if MICROBLAZE && ENV_IS_IN_SPI_FLASH 575 help 576 Offset from the start of the device (or partition) 577 578config ENV_OFFSET_REDUND 579 hex "Redundant environment offset" 580 depends on (ENV_IS_IN_EEPROM || ENV_IS_IN_MMC || ENV_IS_IN_NAND || \ 581 ENV_IS_IN_SPI_FLASH) && SYS_REDUNDAND_ENVIRONMENT 582 default 0x10C0000 if MICROBLAZE 583 default 0 584 help 585 Offset from the start of the device (or partition) of the redundant 586 environment location. 587 588config ENV_SIZE 589 hex "Environment Size" 590 default 0x40000 if ENV_IS_IN_SPI_FLASH && ARCH_ZYNQMP 591 default 0x20000 if ARCH_ZYNQ || ARCH_OMAP2PLUS || ARCH_AT91 592 default 0x10000 if ARCH_SUNXI 593 default 0x8000 if ARCH_ROCKCHIP && ENV_IS_IN_MMC 594 default 0x2000 if ARCH_ROCKCHIP && ENV_IS_IN_SPI_FLASH 595 default 0x8000 if ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET 596 default 0x4000 if ARC 597 default 0x1f000 598 help 599 Size of the environment storage area 600 601config ENV_SECT_SIZE 602 hex "Environment Sector-Size" 603 depends on ENV_IS_IN_FLASH || ENV_IS_IN_SPI_FLASH 604 default 0x2000 if ARCH_ROCKCHIP 605 default 0x40000 if ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET 606 default 0x20000 if ARCH_ZYNQ || ARCH_OMAP2PLUS || ARCH_AT91 607 default 0x20000 if MICROBLAZE && ENV_IS_IN_SPI_FLASH 608 default 0x10000 if ARCH_SUNXI && ENV_IS_IN_SPI_FLASH 609 help 610 Size of the sector containing the environment. 611 612config ENV_UBI_PART 613 string "UBI partition name" 614 depends on ENV_IS_IN_UBI 615 help 616 MTD partition containing the UBI device 617 618config ENV_UBI_VOLUME 619 string "UBI volume name" 620 depends on ENV_IS_IN_UBI 621 help 622 Name of the volume that you want to store the environment in. 623 624config ENV_UBI_VOLUME_REDUND 625 string "UBI redundant volume name" 626 depends on ENV_IS_IN_UBI && SYS_REDUNDAND_ENVIRONMENT 627 help 628 Name of the redundant volume that you want to store the environment in. 629 630config ENV_UBI_VID_OFFSET 631 int "ubi environment VID offset" 632 depends on ENV_IS_IN_UBI 633 default 0 634 help 635 UBI VID offset for environment. If 0, no custom VID offset is used. 636 637config SYS_RELOC_GD_ENV_ADDR 638 bool "Relocate gd->env_addr" 639 help 640 Relocate the early env_addr pointer so we know it is not inside 641 the binary. Some systems need this and for the rest, it doesn't hurt. 642 643config SYS_MMC_ENV_DEV 644 int "mmc device number" 645 depends on ENV_IS_IN_MMC || ENV_IS_IN_FAT || SYS_LS_PPA_FW_IN_MMC || \ 646 CMD_MVEBU_BUBT || FMAN_ENET || QE || PHY_CORTINA 647 default 0 648 help 649 MMC device number on the platform where the environment is stored. 650 651config SYS_MMC_ENV_PART 652 int "mmc partition number" 653 depends on ENV_IS_IN_MMC || ENV_IS_IN_FAT 654 default 0 655 help 656 MMC hardware partition device number on the platform where the 657 environment is stored. Note that this is not related to any software 658 defined partition table but instead if we are in the user area, which is 659 partition 0 or the first boot partition, which is 1 or some other defined 660 partition. 661 662config ENV_MMC_USE_DT 663 bool "Read partition name and offset in DT" 664 depends on ENV_IS_IN_MMC && OF_CONTROL 665 help 666 Only use the device tree to get the environment location in MMC 667 device, with partition name or with offset. 668 The 2 defines CONFIG_ENV_OFFSET, CONFIG_ENV_OFFSET_REDUND 669 are not used as fallback. 670 671config USE_DEFAULT_ENV_FILE 672 bool "Create default environment from file" 673 help 674 Normally, the default environment is automatically generated 675 based on the settings of various CONFIG_* options, as well 676 as the CFG_EXTRA_ENV_SETTINGS. By selecting this option, 677 you can instead define the entire default environment in an 678 external file. 679 680config DEFAULT_ENV_FILE 681 string "Path to default environment file" 682 depends on USE_DEFAULT_ENV_FILE 683 help 684 The path containing the default environment. The format is 685 the same as accepted by the mkenvimage tool: lines 686 containing key=value pairs, blank lines and lines beginning 687 with # are ignored. 688 689config ENV_VARS_UBOOT_RUNTIME_CONFIG 690 bool "Add run-time information to the environment" 691 help 692 Enable this in order to add variables describing certain 693 run-time determined information about the hardware to the 694 environment. These will be named board_name, board_rev. 695 696config DELAY_ENVIRONMENT 697 bool "Delay environment loading" 698 depends on !OF_CONTROL 699 help 700 Enable this to inhibit loading the environment during board 701 initialization. This can address the security risk of untrusted data 702 being used during boot. Normally the environment is loaded when the 703 board is initialised so that it is available to U-Boot. This inhibits 704 that so that the environment is not available until explicitly loaded 705 later by U-Boot code. With CONFIG_OF_CONTROL this is instead 706 controlled by the value of /config/load-environment. 707 708config ENV_IMPORT_FDT 709 bool "Amend environment by FDT properties" 710 depends on OF_CONTROL 711 help 712 If selected, after the environment has been loaded from its 713 persistent location, the "env_fdt_path" variable is looked 714 up and used as a path to a node in the control DTB. The 715 property/value pairs in that node is then used to update the 716 run-time environment. This can be useful to use the same 717 U-Boot binary with different board variants. 718 719config ENV_FDT_PATH 720 string "Default value for env_fdt_path variable" 721 depends on ENV_IMPORT_FDT 722 default "/config/environment" 723 help 724 The initial value of the env_fdt_path variable. 725 726config ENV_APPEND 727 bool "Always append the environment with new data" 728 help 729 If defined, the environment hash table is only ever appended with new 730 data, but the existing hash table can never be dropped and reloaded 731 with newly imported data. This may be used in combination with static 732 flags to e.g. to protect variables which must not be modified. 733 734config ENV_WRITEABLE_LIST 735 bool "Permit write access only to listed variables" 736 select ENV_APPEND 737 help 738 If defined, only environment variables which explicitly set the 'w' 739 writeable flag can be written and modified at runtime. No variables 740 can be otherwise created, written or imported into the environment. 741 742config ENV_ACCESS_IGNORE_FORCE 743 bool "Block forced environment operations" 744 help 745 If defined, don't allow the -f switch to env set override variable 746 access flags. 747 748if SPL_ENV_SUPPORT 749config SPL_ENV_IS_NOWHERE 750 bool "SPL Environment is not stored" 751 default y if ENV_IS_NOWHERE 752 help 753 Similar to ENV_IS_NOWHERE, used for SPL environment. 754 755config SPL_ENV_IS_IN_MMC 756 bool "SPL Environment in an MMC device" 757 depends on !SPL_ENV_IS_NOWHERE 758 depends on ENV_IS_IN_MMC 759 default y 760 help 761 Similar to ENV_IS_IN_MMC, used for SPL environment. 762 763config SPL_ENV_IS_IN_FAT 764 bool "SPL Environment is in a FAT filesystem" 765 depends on !SPL_ENV_IS_NOWHERE 766 depends on ENV_IS_IN_FAT 767 default y 768 help 769 Similar to ENV_IS_IN_FAT, used for SPL environment. 770 771config SPL_ENV_IS_IN_EXT4 772 bool "SPL Environment is in a EXT4 filesystem" 773 depends on !SPL_ENV_IS_NOWHERE 774 depends on ENV_IS_IN_EXT4 775 default y 776 help 777 Similar to ENV_IS_IN_EXT4, used for SPL environment. 778 779config SPL_ENV_IS_IN_NAND 780 bool "SPL Environment in a NAND device" 781 depends on !SPL_ENV_IS_NOWHERE 782 depends on ENV_IS_IN_NAND 783 default y 784 help 785 Similar to ENV_IS_IN_NAND, used for SPL environment. 786 787config SPL_ENV_IS_IN_SPI_FLASH 788 bool "SPL Environment is in SPI flash" 789 depends on !SPL_ENV_IS_NOWHERE 790 depends on ENV_IS_IN_SPI_FLASH 791 default y 792 help 793 Similar to ENV_IS_IN_SPI_FLASH, used for SPL environment. 794 795config SPL_ENV_IS_IN_FLASH 796 bool "SPL Environment in flash memory" 797 depends on !SPL_ENV_IS_NOWHERE 798 depends on ENV_IS_IN_FLASH 799 default y 800 help 801 Similar to ENV_IS_IN_FLASH, used for SPL environment. 802 803endif 804 805if TPL_ENV_SUPPORT 806 807config TPL_ENV_IS_NOWHERE 808 bool "TPL Environment is not stored" 809 default y if ENV_IS_NOWHERE 810 help 811 Similar to ENV_IS_NOWHERE, used for TPL environment. 812 813config TPL_ENV_IS_IN_MMC 814 bool "TPL Environment in an MMC device" 815 depends on !TPL_ENV_IS_NOWHERE 816 depends on ENV_IS_IN_MMC 817 default y 818 help 819 Similar to ENV_IS_IN_MMC, used for TPL environment. 820 821config TPL_ENV_IS_IN_FAT 822 bool "TPL Environment is in a FAT filesystem" 823 depends on !TPL_ENV_IS_NOWHERE 824 depends on ENV_IS_IN_FAT 825 default y 826 help 827 Similar to ENV_IS_IN_FAT, used for TPL environment. 828 829config TPL_ENV_IS_IN_EXT4 830 bool "TPL Environment is in a EXT4 filesystem" 831 depends on !TPL_ENV_IS_NOWHERE 832 depends on ENV_IS_IN_EXT4 833 default y 834 help 835 Similar to ENV_IS_IN_EXT4, used for TPL environment. 836 837config TPL_ENV_IS_IN_NAND 838 bool "TPL Environment in a NAND device" 839 depends on !TPL_ENV_IS_NOWHERE 840 depends on ENV_IS_IN_NAND 841 default y 842 help 843 Similar to ENV_IS_IN_NAND, used for TPL environment. 844 845config TPL_ENV_IS_IN_SPI_FLASH 846 bool "TPL Environment is in SPI flash" 847 depends on !TPL_ENV_IS_NOWHERE 848 depends on ENV_IS_IN_SPI_FLASH 849 default y 850 help 851 Similar to ENV_IS_IN_SPI_FLASH, used for TPL environment. 852 853config TPL_ENV_IS_IN_FLASH 854 bool "TPL Environment in flash memory" 855 depends on !TPL_ENV_IS_NOWHERE 856 depends on ENV_IS_IN_FLASH 857 default y 858 help 859 Similar to ENV_IS_IN_FLASH, used for TPL environment. 860 861endif 862 863if VPL_ENV_SUPPORT 864 865config VPL_ENV_IS_NOWHERE 866 bool "VPL Environment is not stored" 867 default y if ENV_IS_NOWHERE 868 help 869 Similar to ENV_IS_NOWHERE, used for VPL environment. 870 871endif # VPL_ENV_SUPPORT 872 873config USE_BOOTFILE 874 bool "Add a 'bootfile' environment variable" 875 help 876 The "bootfile" variable is used in some cases to allow for 877 controlling what file U-Boot will attempt to load and boot. To set 878 this, enable this option and set the value in the next question. 879 880config BOOTFILE 881 string "'bootfile' environment variable value" 882 depends on USE_BOOTFILE 883 help 884 The value to set the "bootfile" variable to. 885 886config USE_ETHPRIME 887 bool "Add an 'ethprime' environment variable" 888 help 889 The "ethprime" variable is used in some cases to control which 890 network interface is used first. 891 892config ETHPRIME 893 string "'ethprime' environment variable value" 894 depends on USE_ETHPRIME 895 help 896 The value to set the "ethprime" variable to. 897 898config USE_HOSTNAME 899 bool "Set a default 'hostname' value in the environment" 900 default y if X86 901 902config HOSTNAME 903 string "Value of the default 'hostname' value in the environment" 904 depends on USE_HOSTNAME 905 default "x86" if X86 906 default "unknown" 907 908config VERSION_VARIABLE 909 bool "Add a 'ver' environment variable with the U-Boot version" 910 help 911 If this variable is defined, an environment variable 912 named "ver" is created by U-Boot showing the U-Boot 913 version as printed by the "version" command. 914 Any change to this variable will be reverted at the 915 next reset. 916 917endmenu 918