Kconfig 27 KB

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