summaryrefslogtreecommitdiff
path: root/env/Kconfig
AgeCommit message (Collapse)Author
3 daysMerge patch series "env: scsi: support SCSI env without partition UUID"Tom Rini
David Lechner <[email protected]> says: This is a series adding support for reading U-Boot env directly from SCSI devices that do not have a partition table, similar to how we can already do this for MMC devices. The motivation behind this is that MediaTek's BSP is already using the same disk images for both MMC and UFS devices, so we need to be able to read the env from SCSI devices without requiring a partition UUID. The series starts with cleaning up a few oddities we noticed in the existing code. Then some refactoring so that the env code manages calling scsi_scan() so that we don't have to duplicate that for the new code path. Then finally, the last few patches add and document the new functionality. Link: https://lore.kernel.org/r/[email protected]
3 daysenv: scsi: document requirements for ENV_IS_IN_SCSIDavid Lechner
Expand the Kconfig help for ENV_IS_IN_SCSI to explain the other required config options when this option is enabled. Signed-off-by: David Lechner <[email protected]>
3 daysenv: scsi: add CONFIG_ENV_SCSI_HW_PARTITIONDavid Lechner
Add CONFIG_ENV_SCSI_HW_PARTITION and supporting code to allow loading the environment directly from a SCSI device without a partition table. Some platforms store the environment directly on the SCSI device without a way to look it up by partition UUID. Signed-off-by: David Lechner <[email protected]>
3 daysenv: scsi: rename ENV_SCSI_PART_UUIDDavid Lechner
Rename SCSI_ENV_PART_UUID to ENV_SCSI_PART_UUID. All other environment- related config names are of the form ENV_<name>, so this is more consistent. Signed-off-by: David Lechner <[email protected]> Reviewed-by: Sumit Garg <[email protected]>
4 daysspl: env: Correct dependencies for SPL_SAVEENV and MMCTom Rini
The SPL_SAVEENV functionality, when working with an MMC device, can only work with SPL_MMC_WRITE enabled. This however only works with SPL_MMC also being enabled. Update the dependencies to show that if we have enabled SPL_ENV_IS_IN_MMC then we select SPL_MMC_WRITE and make SPL_ENV_IS_IN_MMC depends on SPL_MMC. Signed-off-by: Tom Rini <[email protected]>
8 daysenv: Correct dependency for ENV_IS_IN_NANDTom Rini
In order to have ENV_IS_IN_NAND be valid we must have MTD_RAW_NAND enabled as a minimum, express this dependency in Kconfig. Signed-off-by: Tom Rini <[email protected]>
2026-02-14Replace TARGET namespace and cleanup properlyTien Fong Chee
TARGET namespace is for machines / boards / what-have-you that building U-Boot for. Simply replace from TARGET to ARCH make things more clear and proper for ALL SoCFPGA. Signed-off-by: Brian Sune <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]> # Conflicts: # drivers/ddr/altera/Makefile
2026-01-07env: Add single to redundant environment upgrade pathMarek Vasut
Add support for converting single-copy environment to redundant environment. In case CRC checks on both redundant environment copies fail, try one more CRC check on the primary environment copy and treat it as single environment. If that check does pass, rewrite the single-copy environment into redundant environment format, indicate the environment is valid, and import that as usual primary copy of redundant environment. Follow up 'env save' will then store two environment copies and the system will continue to operate as regular redundant environment system. Add test which validates this upgrade path. The test starts with spi.bin which is pre-populated as single-copy environment and then upgrades that environment to dual-copy environment. Signed-off-by: Marek Vasut <[email protected]>
2025-10-16env: Kconfig: disable external env in secure os bootAnshul Dalal
Falcon mode uses falcon_image_file from the env during mmc fs boot, but external env can be compromised. Therefore disable access to external env by setting SPL_ENV_IS_NOWHERE when SPL_OS_BOOT_SECURE is set. Signed-off-by: Anshul Dalal <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-10-04env: fix typo in multiple Kconfig descriptionsThomas Bonnefille
%s/environemt/environment Signed-off-by: Thomas Bonnefille <[email protected]>
2025-09-11env: fix config dependency for ENV_OFFSET_REDUND_RELATIVE_ENDHeiko Thiery
Since commit 5fb88fa725 "env: Rename SYS_REDUNDAND_ENVIRONMENT to ENV_REDUNDANT" the option SYS_REDUNDAND_ENVIRONMENT is no longer available and should be renamed to ENV_REDUNDANT. Fixes: 95f03ee65c0e ("env: mmc: fix offsets relative to the end of the partition") Signed-off-by: Heiko Thiery <[email protected]> Reviewed-by: Marek Vasut <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-08-14env: Correct Kconfig type for ENV_MMC_SW_PARTITIONTom Rini
As part of renaming environment related Kconfig options, ENV_MMC_SW_PARTITION was inadvertently changed from a string to a bool. Correct this. Fixes: ffc4914703a2 ("env: Rename ENV_MMC_PARTITION to ENV_MMC_SW_PARTITION") Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-08-11arm: socfpga: Correct how we set BOOTFILETom Rini
In order to set the BOOTFILE symbol we first need to have USE_BOOTFILE be set, or some of the logic might not work as expected later on when building. Second, defaults like this belong with the symbol itself. Fixes: da595d236b97 ("include: configs: soc64: Use CONFIG_SPL_ATF to differentiate bootfile") Signed-off-by: Tom Rini <[email protected]>
2025-07-11Kconfig: Test for !COMPILE_TEST in some locationsTom Rini
We have a few options that we cannot enable in a "allyesconfig" type build because we cannot use zero as a default value. - The logic around HAS_BOARD_SIZE_LIMIT assumes that if we have set this then we compare with it. Similarly, we need to set SPL_NO_BSS_LIMIT as the default there. - Both SYS_CUSTOM_LDSCRIPT and ENV_USE_DEFAULT_ENV_TEXT_FILE then prompt for a file name to use. - The SYS_I2C_SOFT driver is a legacy driver which requires a lot of configuration within the board config. file instead, so disable it. Signed-off-by: Tom Rini <[email protected]>
2025-07-02env: mmc: fix offsets relative to the end of the partitionMichael Walle
According to the help text, you can set negative offsets to indicated that the offset is relative to the end of the parition. But kconfig doesn't let you specify negative hex values. I think this fell through the cracks when converting the symbol from a '#define' to a kconfig option. Introduce a new boolean kconfig option to switch on the "relative to the end" behavior. Signed-off-by: Michael Walle <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-06-20env: Drop DELAY_ENVIRONMENTMarek Vasut
There are no users of DELAY_ENVIRONMENT and the same effect can be achieved either using DT /config/load-environment property, or by using ENV_IS_NOWHERE . Remove this configuration option and matching functionality. Signed-off-by: Marek Vasut <[email protected]>
2025-06-20env: Rename DEFAULT_ENV_FILE to ENV_DEFAULT_ENV_TEXT_FILEMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Also rename USE_DEFAULT_ENV_FILE to USE_ENV_DEFAULT_ENV_TEXT_FILE . Signed-off-by: Marek Vasut <[email protected]>
2025-06-20env: Rename ENV_MMC_PARTITION to ENV_MMC_SW_PARTITIONMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Use ENV_MMC_SW_PARTITION to clarify this is the SD/MMC software partition table entry selector. Update the help text accordingly. Signed-off-by: Marek Vasut <[email protected]>
2025-06-20env: Rename SYS_MMC_ENV_PART to ENV_MMC_EMMC_HW_PARTITIONMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Use ENV_MMC_EMMC_HW_PARTITION to clarify this is the eMMC hardware partition selector, not a software partition table entry selector. Retain the ENV_MMC_ prefix to make it easier to search for all the SD/MMC related ENV options. Update the help text accordingly. Signed-off-by: Marek Vasut <[email protected]>
2025-06-20env: Rename SYS_MMC_ENV_DEV to ENV_MMC_DEVICE_INDEXMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Use ENV_MMC_DEVICE_INDEX to clarify this is the SD/MMC device index, a number, as enumerated by U-Boot. Update the help text accordingly. Signed-off-by: Marek Vasut <[email protected]>
2025-06-20env: Rename SYS_RELOC_GD_ENV_ADDR to ENV_RELOC_GD_ENV_ADDRMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Reviewed-by: Tom Rini <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2025-06-20env: Rename SYS_REDUNDAND_ENVIRONMENT to ENV_REDUNDANTMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Signed-off-by: Marek Vasut <[email protected]>
2025-06-20env: Rename OVERWRITE_ETHADDR_ONCE to ENV_OVERWRITE_ETHADDR_ONCEMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Tom Rini <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2025-05-29Merge patch series "Enable env in SCSI"Tom Rini
Varadarajan Narayanan <[email protected]> says: The qcs9100 based Ride platforms have UFS as their primary storage. Hence add support to U-Boot env framework to be able to save and retrieve the environment from UFS. The environment will be saved/retrieved from the partition specified in the config option CONFIG_SCSI_ENV_PART. Also add an API to convert partition UUID string to block device descriptor for UFS. This API will be used to get the block device descriptor for the partition specified in CONFIG_SCSI_ENV_PART. Link: https://lore.kernel.org/r/[email protected]
2025-05-29env: Add support for storing env variables in SCSI devicesVaradarajan Narayanan
Allow SCSI to be able to store environment variables. Signed-off-by: Varadarajan Narayanan <[email protected]> Acked-by: Casey Connolly <[email protected]>
2025-05-23env: mtd: fix usability with NAND flashesWeijie Gao
1. As this is for MTD-based devices, the Kconfig dependency should be MTD instead of only spi-nor flashes 2. Initialize saved_buf to avoid crash on free() 3. Remaining size should be set correctly to write_size Fixes: 03fb08d4aef (env: Introduce support for MTD) Signed-off-by: Weijie Gao <[email protected]> Reviewed-by: Christian Marangi <[email protected]>
2025-05-05env: Introduce support for MTDChristian Marangi
Introduce support for env in generic MTD. Currently we only support SPI flash based on the lagacy sf cmd that assume SPI flash are always NOR. This is not the case as to SPI controller also NAND can be attached. To support also these flash scenario, add support for storing and reading ENV from generic MTD device by adding an env driver that base entirely on the MTD api. Introduce a new kconfig CONFIG_ENV_IS_IN_MTD and CONFIG_ENV_MTD_DEV to define the name of the MTD device as exposed by mtd list. Signed-off-by: Christian Marangi <[email protected]>
2025-04-16amd: versal2: Add support for saving env based on bootmodeVenkatesh Yadav Abbarapu
Enable saving variables to MMC(FAT) and SPI based on primary bootmode. If bootmode is JTAG, dont save env anywhere(NOWHERE). Enable ENV_FAT_DEVICE_AND_PART="0:auto" for Versal Gen 2 platform. Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2025-01-24treewide: Replace Maximumm with Maximum in Kconfig symbol descriptionMarek Vasut
Replace Maximumm with Maximum in Kconfig symbol description, fix a typo. No functional change. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Michal Simek <[email protected]>
2024-12-06env: Switch the callback static list to KconfigChristoph Niedermaier
Switch the callback static list from the board configuration variable CFG_ENV_CALLBACK_LIST_STATIC to Kconfig CONFIG_ENV_CALLBACK_LIST_STATIC. Signed-off-by: Christoph Niedermaier <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2024-07-14env: ENV_IS_IN_EXT4 should enable SYS_MMC_ENV_DEVHeinrich Schuchardt
When enabling CONFIG_ENV_IS_IN_EXT4 the environment might be stored on an mmc device similar to the CONFIG_ENV_IS_IN_FAT case. Fixes: 7d080773347c ("Convert CONFIG_SYS_MMC_ENV_DEV et al to Kconfig") Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-06-17arm64: versal2: Add support for AMD Versal Gen 2Michal Simek
Add support for AMD Versal Gen 2. SoC is based on Cortex-a78ae 4 cluster/2 cpu core each. A lot of IPs are shared with previous families. There are couple of new IP blocks where the most interesting from user point of view is UFS. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/bc2b70831ce1031bd0fac32357bff84936e1310f.1716994063.git.michal.simek@amd.com
2024-05-20Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet"Tom Rini
As part of bringing the master branch back in to next, we need to allow for all of these changes to exist here. Reported-by: Jonas Karlman <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-05-19Revert "Merge patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet""Tom Rini
When bringing in the series 'arm: dts: am62-beagleplay: Fix Beagleplay Ethernet"' I failed to notice that b4 noticed it was based on next and so took that as the base commit and merged that part of next to master. This reverts commit c8ffd1356d42223cbb8c86280a083cc3c93e6426, reversing changes made to 2ee6f3a5f7550de3599faef9704e166e5dcace35. Reported-by: Jonas Karlman <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2024-05-06cmd/Kconfig: Add some missing dependenciesTom Rini
With the migration to Kconfig complete, we can now add some previously missing dependencies to some commands. Signed-off-by: Tom Rini <[email protected]>
2024-03-22xilinx: versal-net: Add support for saving env based on bootmodeVenkatesh Yadav Abbarapu
Enable saving variables to MMC(FAT) and SPI based on primary bootmode. If bootmode is JTAG, dont save env anywhere(NOWHERE). Enable ENV_FAT_DEVICE_AND_PART="0:auto" for versal-net platform as well. Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2024-01-22env: Make ENV_IS_IN_SPI_FLASH depend on SPI flash being presentTom Rini
In order for our environment to be present on SPI flash we need to depend not on the symbol for a SPI controller but rather that SPI flash of some sort is present. Update the dependencies. Signed-off-by: Tom Rini <[email protected]>
2023-10-11env: Improve ENV_OFFSET help messagePaul Barker
When reading Kconfig help messages to understand ENV_OFFSET and ENV_OFFSET_REDUND, developers may not realise that they need to also look at the chosen ENV_IS_IN_* options to see how the offsets will be interpreted. Signed-off-by: Paul Barker <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-10-10fsl-layerscape: drop obsolete PPA secure firmware supportLaurentiu Tudor
PPA was a secure firmware developed in-house which is no longer supported and replaced by TF-A quite some years ago. Drop support for it. Signed-off-by: Laurentiu Tudor <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2023-08-09Kconfigs: Correct default of "0" on hex type entriesTom Rini
It is not a parse error to have a default value of "0" for a "hex" type entry, instead of "0x0". However, "0" and "0x0" are not treated the same even by the tools themselves. Correct this by changing the default value from "0" to "0x0" for all hex type questions that had the incorrect default. Fix one instance (in two configs) of a default of "0" being used on a hex question to be "0x0". Remove the cases where a defconfig had set a value of "0x0" to be used as the default had been "0". Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-14env: mmc: statically set the environment partition nameEmmanuel Di Fede
The new opt-out setting, CONFIG_ENV_MMC_PARTITION, statically sets the MMC environment partition name. Prior to this patch, the only way to declare this partition name was by creating a 'u-boot,mmc-env-partition' parameter in the device-tree's /config node. This setting provides additional flexibility, particularly in cases where accessing the device-tree is not straightforward (e.g. QEMU). If undeclared, the device-tree's setting will be used. Signed-off-by: Emmanuel Di Fede <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Patrick Delaunay <[email protected]>
2023-05-09cmd: nvedit: remove error check, handle with KconfigTroy Kisky
Avoid error messages when SPL,TPL,VPL build don't have the environment options of the main build. This is needed when defined(CONFIG_ENV_IS_IN_xxx) is changed to CONFIG_IS_ENABLED(ENV_IS_IN_xxx). Signed-off-by: Troy Kisky <[email protected]>
2023-03-02env: Allow VPL environment to be nowhereSimon Glass
Add an option to put the VPL environment nowhere (not in storage). Signed-off-by: Simon Glass <[email protected]>
2023-02-10env: Complete generic support for writable listJan Kiszka
This completes what 890feecaab72 started by selecting ENV_APPEND and loading the default env before any other sources. This ensures that load operations pick up all non-writable vars from the default env and only permitted parts from other locations according to the regular priorities. With this change, boards only need to define the list of writable variables but no longer have to provide a custom env_get_location implementation. CC: Joe Hershberger <[email protected]> CC: Marek Vasut <[email protected]> CC: Stefan Herbrechtsmeier <[email protected]> Signed-off-by: Jan Kiszka <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2023-01-10env: mmc: add CONFIG_ENV_MMC_USE_DTPatrick Delaunay
Add a new config CONFIG_ENV_MMC_USE_DT to force configuration of the U-Boot environment offset with device tree config node. This patch avoids issues when several CONFIG_ENV_IS_IN_XXX are activated, the defconfig file uses the same value for CONFIG_ENV_OFFSET or CONFIG_ENV_OFFSET_REDUND for the several ENV backends (SPI_FLASH, EEPROM NAND, SATA, MMC). After this patch a bad offset value is not possible when the selected partition in device tree is not found. Signed-off-by: Patrick Delaunay <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2022-12-23global: Migrate CONFIG_EXTRA_ENV_SETTINGS to CFGTom Rini
Perform a simple rename of CONFIG_EXTRA_ENV_SETTINGS to CFG_EXTRA_ENV_SETTINGS Signed-off-by: Tom Rini <[email protected]>
2022-12-22Convert CONFIG_OVERWRITE_ETHADDR_ONCE to KconfigTom Rini
This converts the following to Kconfig: CONFIG_OVERWRITE_ETHADDR_ONCE Signed-off-by: Tom Rini <[email protected]>
2022-12-22env: eeprom: Remove CONFIG_I2C_ENV_EEPROM_BUS supportTom Rini
This functionality is currently unused, and has not been migrated to using DM_I2C, even. Drop this. Signed-off-by: Tom Rini <[email protected]>
2022-12-22Convert CONFIG_HOSTNAME et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_GATEWAYIP CONFIG_HOSTNAME CONFIG_IPADDR CONFIG_NETMASK CONFIG_ROOTPATH CONFIG_SERVERIP CONFIG_UBOOTPATH To do this, we introduce a CONFIG_USE_ form of each of the above and change include/env_default.h to test for that to be set before setting a value. Further, we don't want to stringify the IP address related values as they are now properly strings via Kconfig. Signed-off-by: Tom Rini <[email protected]>
2022-12-05global: Move remaining CONFIG_SYS_* to CFG_SYS_*Tom Rini
The rest of the unmigrated CONFIG symbols in the CONFIG_SYS namespace do not easily transition to Kconfig. In many cases they likely should come from the device tree instead. Move these out of CONFIG namespace and in to CFG namespace. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>