#
84dda5ce |
|
15-Apr-2024 |
Michal Simek <michal.simek@amd.com> |
Kconfig: Remove all default n options default n doesn't need to be specified. It is default option anyway. Similar changes have been done by commit 18370f14975c ("Kconfig: Remove all default n/no options"). Signed-off-by: Michal Simek <michal.simek@amd.com> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
cdd20e3f |
|
18-Apr-2024 |
Tom Rini <trini@konsulko.com> |
Revert "Merge patch series "pxe: Allow extlinux booting without CMDLINE enabled"" As reported by Jonas Karlman this series breaks booting on some AArch64 platforms with common use cases. For now the best path forward is to revert the series. This reverts commit 777c28460947371ada40868dc994dfe8537d7115, reversing changes made to ab3453e7b12daef47b9e91da2a2a3d48615dc6fc. Link: https://lore.kernel.org/u-boot/50dfa3d6-a1ca-4492-a3fc-8d8c56b40b43@kwiboo.se/ Signed-off-by: Tom Rini <trini@konsulko.com> |
#
777c2846 |
|
10-Apr-2024 |
Tom Rini <trini@konsulko.com> |
Merge patch series "pxe: Allow extlinux booting without CMDLINE enabled" Simon Glass <sjg@chromium.org> says: This series is the culmanation of the current line of refactoring series. It adjusts pxe to call the booting functionality directly rather than going through the command-line interface. With this is is possible to boot using the extlinux bootmeth without the command line enabled. It also updates fastboot to do a similar thing.
|
#
6d47fd39 |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
boot: Update SYS_BOOTM_LEN to depend on BOOTM Use the new CONFIG_BOOTM symbol to determine whether SYS_BOOT_LEN is visible or not, since we want to support decompression when CMDLINE is disabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
b34c8289 |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
bootm: Make OS booting dependent on BOOTM Booting an OS does not require the 'bootm' command, so change the condition for these options. Move them into boot/ so they don't depend on CMDLINE Note that CMD_BOOTM_PRE_LOAD has been put directly into the bootm code so will need some additional refactoring (and a test!) to allow it to change over. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
6e558e34 |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
bootm: Add a Kconfig option for bootm functionality Create a separate Kconfig option which enables the bootm logic, separate from the 'bootm' command. This will eventually allow booting without CMDLINE enabled. Update boards which disable CMD_BOOTM to disable BOOTM instead, since CMD_BOOTM now depends on BOOTM Signed-off-by: Simon Glass <sjg@chromium.org> |
#
52b3c47d |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
boot: Reorder FIT and BOOTSTD to be first The boot menu shows Android first and then a timestamp option. Move these later since they are less commonly used. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
8f319295 |
|
03-Apr-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: enable booting via EFI boot manager by default If UEFI is enabled in U-Boot, we want it to conform to the UEFI specification. This requires enabling the boot manager boot method. Reported-by: E Shattow <lucent@gmail.com> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
e761035b |
|
09-Jan-2024 |
Caleb Connolly <caleb.connolly@linaro.org> |
boot: add support for button commands With the relatively new button API in U-Boot, it's now much easier to model the common usecase of mapping arbitrary actions to different buttons during boot - for example entering fastboot mode, setting some additional kernel cmdline arguments, or booting with a custom recovery ramdisk, to name a few. Historically, this functionality has been implemented in board code, making it fixed for a given U-Boot binary and requiring the code be duplicated and modified for every board. Implement a generic abstraction to run an arbitrary command during boot when a specific button is pressed. The button -> command mapping is configured via environment variables with the following format: button_cmd_N_name=<button label> button_cmd_N=<command to run> Where N is the mapping number starting from 0. For example: button_cmd_0_name=vol_down button_cmd_0=fastboot usb 0 This will cause the device to enter fastboot mode if volume down is held during boot. After we enter the cli loop the button commands are no longer valid, this allows the buttons to additionally be used for navigating a boot menu. Tested-by: Svyatoslav Ryhel <clamor95@gmail.com> # Tegra30 Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org> |
#
fea3efb7 |
|
22-Dec-2023 |
Shantur Rathore <i@shantur.com> |
Kconfig: boot: Imply BOOTSTD_DEFAULT when BOOTSTD_FULL=y We need BOOTSTD_DEFAULT when BOOTSTD_FULL is selected. Signed-off-by: Shantur Rathore <i@shantur.com> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <akashi.tkhro@gmail.com> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
64c67b68 |
|
16-Dec-2023 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: CONFIG_CEDIT must depend on CONFIG_EXPO Building sandbox_defconfig with CONFIG_CMD_CEDIT=y CONFIG_EXPO=n fails with cmd/cedit.c:258:(.text.do_cedit_run+0x4c): undefined reference to `expo_apply_theme Fix the dependencies. Fixes: a0874dc4ac71 ("expo: Add a configuration editor") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <akashi.tkhro@gmail.com> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
777c2846 |
|
10-Apr-2024 |
Tom Rini <trini@konsulko.com> |
Merge patch series "pxe: Allow extlinux booting without CMDLINE enabled" Simon Glass <sjg@chromium.org> says: This series is the culmanation of the current line of refactoring series. It adjusts pxe to call the booting functionality directly rather than going through the command-line interface. With this is is possible to boot using the extlinux bootmeth without the command line enabled. It also updates fastboot to do a similar thing.
|
#
6d47fd39 |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
boot: Update SYS_BOOTM_LEN to depend on BOOTM Use the new CONFIG_BOOTM symbol to determine whether SYS_BOOT_LEN is visible or not, since we want to support decompression when CMDLINE is disabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
b34c8289 |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
bootm: Make OS booting dependent on BOOTM Booting an OS does not require the 'bootm' command, so change the condition for these options. Move them into boot/ so they don't depend on CMDLINE Note that CMD_BOOTM_PRE_LOAD has been put directly into the bootm code so will need some additional refactoring (and a test!) to allow it to change over. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
6e558e34 |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
bootm: Add a Kconfig option for bootm functionality Create a separate Kconfig option which enables the bootm logic, separate from the 'bootm' command. This will eventually allow booting without CMDLINE enabled. Update boards which disable CMD_BOOTM to disable BOOTM instead, since CMD_BOOTM now depends on BOOTM Signed-off-by: Simon Glass <sjg@chromium.org> |
#
52b3c47d |
|
14-Dec-2023 |
Simon Glass <sjg@chromium.org> |
boot: Reorder FIT and BOOTSTD to be first The boot menu shows Android first and then a timestamp option. Move these later since they are less commonly used. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
8f319295 |
|
03-Apr-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: enable booting via EFI boot manager by default If UEFI is enabled in U-Boot, we want it to conform to the UEFI specification. This requires enabling the boot manager boot method. Reported-by: E Shattow <lucent@gmail.com> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
e761035b |
|
09-Jan-2024 |
Caleb Connolly <caleb.connolly@linaro.org> |
boot: add support for button commands With the relatively new button API in U-Boot, it's now much easier to model the common usecase of mapping arbitrary actions to different buttons during boot - for example entering fastboot mode, setting some additional kernel cmdline arguments, or booting with a custom recovery ramdisk, to name a few. Historically, this functionality has been implemented in board code, making it fixed for a given U-Boot binary and requiring the code be duplicated and modified for every board. Implement a generic abstraction to run an arbitrary command during boot when a specific button is pressed. The button -> command mapping is configured via environment variables with the following format: button_cmd_N_name=<button label> button_cmd_N=<command to run> Where N is the mapping number starting from 0. For example: button_cmd_0_name=vol_down button_cmd_0=fastboot usb 0 This will cause the device to enter fastboot mode if volume down is held during boot. After we enter the cli loop the button commands are no longer valid, this allows the buttons to additionally be used for navigating a boot menu. Tested-by: Svyatoslav Ryhel <clamor95@gmail.com> # Tegra30 Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org> |
#
fea3efb7 |
|
22-Dec-2023 |
Shantur Rathore <i@shantur.com> |
Kconfig: boot: Imply BOOTSTD_DEFAULT when BOOTSTD_FULL=y We need BOOTSTD_DEFAULT when BOOTSTD_FULL is selected. Signed-off-by: Shantur Rathore <i@shantur.com> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
64c67b68 |
|
16-Dec-2023 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: CONFIG_CEDIT must depend on CONFIG_EXPO Building sandbox_defconfig with CONFIG_CMD_CEDIT=y CONFIG_EXPO=n fails with cmd/cedit.c:258:(.text.do_cedit_run+0x4c): undefined reference to `expo_apply_theme Fix the dependencies. Fixes: a0874dc4ac71 ("expo: Add a configuration editor") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
8f319295 |
|
03-Apr-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: enable booting via EFI boot manager by default If UEFI is enabled in U-Boot, we want it to conform to the UEFI specification. This requires enabling the boot manager boot method. Reported-by: E Shattow <lucent@gmail.com> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
e761035b |
|
09-Jan-2024 |
Caleb Connolly <caleb.connolly@linaro.org> |
boot: add support for button commands With the relatively new button API in U-Boot, it's now much easier to model the common usecase of mapping arbitrary actions to different buttons during boot - for example entering fastboot mode, setting some additional kernel cmdline arguments, or booting with a custom recovery ramdisk, to name a few. Historically, this functionality has been implemented in board code, making it fixed for a given U-Boot binary and requiring the code be duplicated and modified for every board. Implement a generic abstraction to run an arbitrary command during boot when a specific button is pressed. The button -> command mapping is configured via environment variables with the following format: button_cmd_N_name=<button label> button_cmd_N=<command to run> Where N is the mapping number starting from 0. For example: button_cmd_0_name=vol_down button_cmd_0=fastboot usb 0 This will cause the device to enter fastboot mode if volume down is held during boot. After we enter the cli loop the button commands are no longer valid, this allows the buttons to additionally be used for navigating a boot menu. Tested-by: Svyatoslav Ryhel <clamor95@gmail.com> # Tegra30 Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org> |
#
fea3efb7 |
|
22-Dec-2023 |
Shantur Rathore <i@shantur.com> |
Kconfig: boot: Imply BOOTSTD_DEFAULT when BOOTSTD_FULL=y We need BOOTSTD_DEFAULT when BOOTSTD_FULL is selected. Signed-off-by: Shantur Rathore <i@shantur.com> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
64c67b68 |
|
16-Dec-2023 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: CONFIG_CEDIT must depend on CONFIG_EXPO Building sandbox_defconfig with CONFIG_CMD_CEDIT=y CONFIG_EXPO=n fails with cmd/cedit.c:258:(.text.do_cedit_run+0x4c): undefined reference to `expo_apply_theme Fix the dependencies. Fixes: a0874dc4ac71 ("expo: Add a configuration editor") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
e761035b |
|
09-Jan-2024 |
Caleb Connolly <caleb.connolly@linaro.org> |
boot: add support for button commands With the relatively new button API in U-Boot, it's now much easier to model the common usecase of mapping arbitrary actions to different buttons during boot - for example entering fastboot mode, setting some additional kernel cmdline arguments, or booting with a custom recovery ramdisk, to name a few. Historically, this functionality has been implemented in board code, making it fixed for a given U-Boot binary and requiring the code be duplicated and modified for every board. Implement a generic abstraction to run an arbitrary command during boot when a specific button is pressed. The button -> command mapping is configured via environment variables with the following format: button_cmd_N_name=<button label> button_cmd_N=<command to run> Where N is the mapping number starting from 0. For example: button_cmd_0_name=vol_down button_cmd_0=fastboot usb 0 This will cause the device to enter fastboot mode if volume down is held during boot. After we enter the cli loop the button commands are no longer valid, this allows the buttons to additionally be used for navigating a boot menu. Tested-by: Svyatoslav Ryhel <clamor95@gmail.com> # Tegra30 Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org> |
#
fea3efb7 |
|
22-Dec-2023 |
Shantur Rathore <i@shantur.com> |
Kconfig: boot: Imply BOOTSTD_DEFAULT when BOOTSTD_FULL=y We need BOOTSTD_DEFAULT when BOOTSTD_FULL is selected. Signed-off-by: Shantur Rathore <i@shantur.com> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
64c67b68 |
|
16-Dec-2023 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: CONFIG_CEDIT must depend on CONFIG_EXPO Building sandbox_defconfig with CONFIG_CMD_CEDIT=y CONFIG_EXPO=n fails with cmd/cedit.c:258:(.text.do_cedit_run+0x4c): undefined reference to `expo_apply_theme Fix the dependencies. Fixes: a0874dc4ac71 ("expo: Add a configuration editor") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
fea3efb7 |
|
22-Dec-2023 |
Shantur Rathore <i@shantur.com> |
Kconfig: boot: Imply BOOTSTD_DEFAULT when BOOTSTD_FULL=y We need BOOTSTD_DEFAULT when BOOTSTD_FULL is selected. Signed-off-by: Shantur Rathore <i@shantur.com> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
64c67b68 |
|
16-Dec-2023 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: CONFIG_CEDIT must depend on CONFIG_EXPO Building sandbox_defconfig with CONFIG_CMD_CEDIT=y CONFIG_EXPO=n fails with cmd/cedit.c:258:(.text.do_cedit_run+0x4c): undefined reference to `expo_apply_theme Fix the dependencies. Fixes: a0874dc4ac71 ("expo: Add a configuration editor") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
64c67b68 |
|
16-Dec-2023 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: CONFIG_CEDIT must depend on CONFIG_EXPO Building sandbox_defconfig with CONFIG_CMD_CEDIT=y CONFIG_EXPO=n fails with cmd/cedit.c:258:(.text.do_cedit_run+0x4c): undefined reference to `expo_apply_theme Fix the dependencies. Fixes: a0874dc4ac71 ("expo: Add a configuration editor") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
64c67b68 |
|
16-Dec-2023 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
boot: CONFIG_CEDIT must depend on CONFIG_EXPO Building sandbox_defconfig with CONFIG_CMD_CEDIT=y CONFIG_EXPO=n fails with cmd/cedit.c:258:(.text.do_cedit_run+0x4c): undefined reference to `expo_apply_theme Fix the dependencies. Fixes: a0874dc4ac71 ("expo: Add a configuration editor") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
e91d6607 |
|
10-Dec-2023 |
Matthias Schiffer <matthias.schiffer@ew.tq-group.com> |
boot: add support for fdt_fixup command in environment The "fdt" command is convenient for making small changes to the OS FDT, especially during development. This is easy when the kernel and FDT are loaded separately, but can be cumbersome for FIT images, requiring to unpack the image, manually apply overlays, etc. Add an option to execute a command "fdt_fixup" from the environment at the beginning of image_setup_libfdt() (after overlays are applied, and before the other fixups). Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
7017fc54 |
|
20-Nov-2023 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
bootmeth: use efi_loader interfaces instead of bootefi command Now that efi_loader subsystem provides interfaces that are equivalent with bootefi command, we can replace command invocations with APIs. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
1047b534 |
|
18-Nov-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Introduce programmatic boot At present bootstd requires CONFIG_CMDLINE to operate. Add a new 'programmatic' boot which can be used when no command line is available. For now it does almost nothing, since most bootmeths require the command line. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dbdb4b33 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make preboot and bootcmd require CMDLINE In order for a predefined "preboot" or "bootcmd" to be executed by the running system we must have a command line. Add CMDLINE as a dependency. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
558787fd |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth_script: Depend on CMDLINE As this particular bootmeth requires the command line and assorted commands to function, make sure we have CMDLINE enabled. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
9d298c96 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT This particular option is required for booting all image types, regardless of if we are starting an OS via command line or something else. Move the question for SYS_BOOTM_LEN to be by the question for LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2180a454 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and BOOT_DEFAULTS_CMDS that in turn list general features or commands that we want enabled when BOOT_DEFAULTS is selected. We only select BOOT_DEFAULTS_CMDS if CMDLINE is set. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
fc97d930 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
boot: Make DISTRO_DEFAULTS select CMDLINE The implementation of DISTRO_DEFAULTS is done in environment scripts and requires the command line in order to work. Because of this, select CMDLINE here. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5bcfc7ab |
|
26-Oct-2023 |
Simon Glass <sjg@chromium.org> |
autoboot: Correct dependencies on CMDLINE Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
0bb4abd5 |
|
26-Oct-2023 |
Tom Rini <trini@konsulko.com> |
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI Today, the bootmeth for using the EFI loader via bootefi depends on calling the bootefi command directly, so make this in turn depend on CMD_BOOTEFI. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
This contributor prefers not to receive mails <noreply@example.com> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
dec166d6 |
|
24-Oct-2023 |
Eddie James <eajames@linux.ibm.com> |
bootm: Support boot measurement Add a configuration option to measure the boot through the bootm function. Add the measurement state to the booti and bootz paths as well. Signed-off-by: Eddie James <eajames@linux.ibm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Ilias: Added some info on Kconfig explaining this is when booting !EFI Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
c0e5b0eb |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join ARCH_FIXUP_FDT_MEMORY with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
400a6a3a |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONS This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
040a6048 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Join FDT_FIXUP_PARTITIONS with related options Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
44831841 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDT We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
3b58de4d |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Mark DISTRO_DEFAULTS as deprecated Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
064a57d0 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move TEXT_BASE et al under general setup These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4a8fcb6e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Make standard boot a menu Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
4d8ea26f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Move SPL_FIT under FIT This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
815f8d3f |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESS All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
12a7ea00 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Kconfig: Create a menu for FIT This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
47b18c0e |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Rename Android-boot text Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
96095e13 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
boot: Move some other fdt-fixup options to the same menu Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddc5f9b1 |
|
14-Sep-2023 |
Simon Glass <sjg@chromium.org> |
Move fdt_simplefb to boot/ This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
ddec4cae |
|
04-Sep-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'v2023.10-rc4' into next Prepare v2023.10-rc4
|
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
71f634b8 |
|
24-Aug-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Allow detection of any kernel partition The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Alper Nebi Yasak <alpernebiyasak@gmail.com> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
daffb0be |
|
30-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: cros: Add ARM support Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
a077ac13 |
|
02-Aug-2023 |
Tom Rini <trini@konsulko.com> |
Kconfigs: Correct default of "0" on hex type entries 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
d167062c |
|
18-Aug-2023 |
Peter Robinson <pbrobinson@gmail.com> |
boot: Fix reference to bootmenu doc The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
86fab110 |
|
13-Jul-2023 |
Manorit Chawdhry <m-chawdhry@ti.com> |
Kconfig: Enable FIT_SIGNATURE if ARM64 Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
c88d67d0 |
|
12-Jul-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a simple bootmeth for ChromiumOS It is possible to boot x86-based ChromeOS machines by parsing a table and locating the kernel and command line. Add a bootmeth for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
a0874dc4 |
|
01-Jun-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add a configuration editor Add a new 'cedit' command which allows editing configuration using an expo. The configuration items appear as menus on the display. This is extremely basic, only supporting menus and not providing any way to load or save the configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
bcb1d269 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Make BOOTSTD_FULL depend on BOOTSTD Move BOOTSTD_FULL down in the file so that it can be enabled only when BOOTSTD is enabled. This prevents a build error if BOOTSTD is disabled but BOOTSTD_FULL is enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fba0e738 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Create a new BOOTMETH_DISTRO We cannot be sure what bootmeth a distro will need to use. Add a new BOOTMETH_DISTRO option which collects these together. Select this from BOOTSTD_DEFAULTS so that it is clear what is needed. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Make BOOTMETH_EFILOADER depend on EFI_LOADER, select if EFI_LOADER] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
79f66351 |
|
10-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Rename distro and syslinux to extlinux We use the terms 'distro' to mean extlinux but they are not really the same. 'Distro' could refer to any method of booting a distribution, whereas extlinux is a particular method. Also we sometimes use syslinux, but it is better to use the same term in all cases. Rename distro to syslinux and also update bootstd uses of syslinux to use extlinux instead. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d8d40bc3 |
|
06-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct default boot command The patch to relax flag requirements was not accepted[1], so we still have to have separate bootcommands depending on CMD_BOOTFLOW_FULL. The previous attempt at this did not work, since it used the wrong name for the options. Fix this and change the message to mention BOOTSTD_FULL since this affects not just the flags, but all functionality, so is more likely what the user wants. Drop the useless condition on CMD_BOOTFLOW_FULL while we are here. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230329071655.1959513-2-sjg@chromium.org/ Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: a91492b6e9c ("bootstd: Provide a default command") |
#
ab16a3d9 |
|
05-May-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Require HUSH_PARSER for script booting Armbian uses a script which needs the HUSH parser. It is likely that other distros will do the same. Enable it by default, just in case. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Jonas Karlman <jonas@kwiboo.se> |
#
b4230372 |
|
24-Apr-2023 |
Hugo Villeneuve <hvilleneuve@dimonoff.com> |
boot/Kconfig: fix comments syntax error Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
605bc145 |
|
27-Mar-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' into next
|
#
a0c739c1 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
boot: Create a common BOOT_DEFAULTS for distro and bootstd These two features use a lot of common options. Move them into a common CONFIG to reduce duplication. Use 'select' for most options since these are things that boards aren't supposed to override. For now it is not possible to disable BOOT_DEFAULTS but we may take another look later. Note that five options use 'imply' to match existing behaviour. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Rework a bit so we don't grow so many platforms unintentionally] Signed-off-by: Tom Rini <trini@konsulko.com> |
#
febb9852 |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
lmb: Enable LMB if SYS_BOOT_RAMDISK_HIGH Ramdisk relocation requires LMB, so enable it automatically to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
c9d4abee |
|
24-Mar-2023 |
Simon Glass <sjg@chromium.org> |
Move DISTRO_DEFAULTS into boot/ This relates to booting so move it in to that Kconfig file, before changing it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1c419582 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Correct 'VPL' typo Correct a 'VPL' typo in the Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
da900e52 |
|
22-Feb-2023 |
Simon Glass <sjg@chromium.org> |
boot: Add Kconfigs for BOOTMETH_VBE_REQUEST Allow this to be enabled separately in U-Boot proper and in SPL, since it is not needed in SPL. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
22353fa6 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Add some default filesystems and commands We need to support a basic set of filesystems for booting to work in most cases. Add these in via a new option, letting the board disable them individually (for space reasons) if desired. This enables the filesystem commands as well as the actual functionality, even though bootstd is quite happy to use ext4 without the ext4 command. Further work would be needed to disintangle this and reduce code size. Add several other options as well, providing sensible defaults. We cannot enable this by default, since it expands the size of many boards quite a lot. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
0041b1c0 |
|
28-Jan-2023 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow enabling BOOTSTD_FULL without needing EXPO It is sometimes useful to have one without the other, e.g. on a device without a display, since at present the expo feature requires CONFIG_VIDEO to be enabled. Update the Makefile and bootflow command to support this, as well as the EXPO dependency. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
53c47c59 |
|
19-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-pull-18jan23' of https://source.denx.de/u-boot/custodians/u-boot-dm convert rockchip to use binman patman fix for checkpatch binman optional entries, improved support for ELF symbols trace improvements minor fdt refactoring
|
#
12c3e948 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Drop the FIT generator script This is not used anymore. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31f35e83 |
|
07-Jan-2023 |
Simon Glass <sjg@chromium.org> |
rockchip: Convert all boards to use binman Instead of the bash script, use binman to generate the FIT for arm64. For 32-bit boards, use binman for all images, dropping the intermediate files. With this change, only Zynq is now using SPL_FIT_GENERATOR so update the Kconfig rule accordingly. Clean up the Makefile to the extent possible. Unfortunately, two boards do not use SPL_FRAMEWORK so don't enable the u-boot.img rule: evb-rk3036 kylin-rk3036 So a small remnant remains. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
448e2b63 |
|
16-Jan-2023 |
Tom Rini <trini@konsulko.com> |
event: Correct dependencies on the EVENT framework The event framework is just that, a framework. Enabling it by itself does nothing, so we shouldn't ask the user about it. Reword (and correct typos) around this the option and help text. This also applies to DM_EVENT and EVENT_DYNAMIC. Only EVENT_DEBUG and CMD_EVENT should be visible to the user to select, when EVENT is selected. With this, it's time to address the larger problems. When functionality uses events, typically via EVENT_SPY, the appropriate framework then must be select'd and NOT imply'd. As the functionality will cease to work (and so, platforms will fail to boot) this is non-optional and where select is appropriate. Audit the current users of EVENT_SPY to have a more fine-grained approach to select'ing the framework where used. Also ensure the current users of event_register and also select EVENT_DYNAMIC. Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Reported-by: Oliver Graute <Oliver.Graute@kococonnector.com> Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Fixes: 7fe32b3442f0 ("event: Convert arch_cpu_init_dm() to use events") Fixes: 42fdcebf859f ("event: Convert misc_init_f() to use events") Fixes: c5ef2025579e ("dm: fix DM_EVENT dependencies") Signed-off-by: Tom Rini <trini@konsulko.com> Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> |
#
87c6f8a4 |
|
06-Jan-2023 |
Simon Glass <sjg@chromium.org> |
expo: Add basic implementation An expo is a way of presenting and collecting information from the user. It consists of a collection of 'scenes' of which only one is presented at a time. An expo is typically used to show a boot menu and allow settings to be changed. One created, the same expo can be automatically presented in graphical form using a vidconsole, or in text form on a serial console. Add an initial implementation of the expo itself. Supports for scenes and objects is provided later. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
cebdfc22 |
|
09-Jan-2023 |
Tom Rini <trini@konsulko.com> |
Merge branch 'next' Signed-off-by: Tom Rini <trini@konsulko.com>
|
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
90c7888c |
|
04-Dec-2022 |
Tom Rini <trini@konsulko.com> |
common/spl/spl_ram: Remove unused default We ask for CONFIG_SPL_LOAD_FIT_ADDRESS in Kconfig, so we cannot define it in C as a fall-back. However, this option previously was buried under "if ... endif" Kconfig logic. Rework a number of config options to now have more robust dependency lines so that we can ask this address when needed. With that done, we can remove the fallback in spl_ram.c. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
65cc0e2a |
|
16-Nov-2022 |
Tom Rini <trini@konsulko.com> |
global: Move remaining CONFIG_SYS_* to CFG_SYS_* 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 <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
ec9efcf6 |
|
28-Dec-2022 |
Tom Rini <trini@konsulko.com> |
PowerPC: Rework PBL location choice When converting CONFIG_SDCARD and CONFIG_SPIFLASH to Kconfig, one set of uses wasn't converted correctly. Allow for the case where platforms don't rely on "PBL" to boot but instead use other mechanisms. See the link below for more details. Link: https://lore.kernel.org/all/20220802091338.f4g45ldhc7qbg6hm@pali/ Fixes: d433c74eecdc ("Convert CONFIG_SDCARD et al to Kconfig") Tested-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
2827c2f0 |
|
10-Jul-2022 |
Pali Rohár <pali@kernel.org> |
Fix usage of CONFIG_PREBOOT Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not explicitly enabled it is set to empty C string and therefore '#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined. Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for code which checks if preboot code would be called and by '#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code. Signed-off-by: Pali Rohár <pali@kernel.org> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
5981d611 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vpl: Allow signature verification Add the required Kconfig option so that signatures can be verified when loading a configuration. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4218456b |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add Kconfig options for VPL Enable the various features needed in VPL, by adding Kconfig options. Update the defconfig for sandbox_vpl so that the build for each phase includes what is needed. Drop LZMA for now and make sure partition support is omitted in SPL, since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
98463903 |
|
20-Oct-2022 |
Simon Glass <sjg@chromium.org> |
Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE The current name is inconsistent with SPL which uses CONFIG_SPL_TEXT_BASE and this makes it imposible to use CONFIG_VAL(). Rename it to resolve this problem. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
1bf98bd4 |
|
02-Jul-2022 |
Andre Przywara <andre.przywara@arm.com> |
sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB Traditionally we assumed that every Allwinner board would come with at least 256 MB of DRAM, and set our DRAM layout accordingly. This affected both the default load addresses, but also U-Boot's own address expectations (like being loaded at 160 MB). Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So far we special-cased those *chips*, as there was only one chip per DRAM size. However new chips force us to take a more general approach. Introduce a Kconfig symbol, which provides the minimum DRAM size of the board. If nothing else is specified, we use 256 MB, and default to smaller values for those co-packaged SoCs. Then select the different DRAM maps according to this new symbol, so that different SoCs with the same DRAM size can share those definitions. Inspired by an idea from Icenowy. This is just refactoring: compiled for all boards before and after this patch: the binaries were identical. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
cb47e21a |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Support VBE simple Add support for VBE simple, which permits firmware update of a single image stored in MMC or another block device. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
4c7418f3 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
vbe: Add initial support for VBE Create a new bootmeth for VBE along with a library to handle finding the VBE methods. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
bc06aa03 |
|
30-Jul-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Allow bootmeths to be marked as global The current way of handling things like EFI bootmgr is a bit odd, since that bootmeth handles selection of the bootdev itself. VBE needs to work the same way, so we should support it properly. Add a flag that indicates that the bootmeth is global, rather than being invoked on each bootdev. Provide a helper to read a bootflow from the bootmeth. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
be43a35b |
|
28-Jul-2022 |
John Keeping <john@metanate.com> |
boot: allow bootmeth-distro without CONFIG_NET Remove the dependency on CMD_PXE from BOOTMETH_DISTRO by introducing a new hidden kconfig symbol to control whether pxe_utils is compiled, allowing bootstd's distro method to be compiled without needing networking support enabled. Signed-off-by: John Keeping <john@metanate.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Correct build errors when CMD_BOOTM is not enabled: Signed-off-by: Simon Glass <sjg@chromium.org> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
5579ce74 |
|
11-Jul-2022 |
Simon Glass <sjg@chromium.org> |
Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
cc1015f4 |
|
23-Jul-2022 |
Tom Rini <trini@konsulko.com> |
flash: Remove pic32_flash.c As the only pic32 platform does not enable flash, this is dead code. Remove it. Cc: Purna Chandra Mandal <purna.mandal@microchip.com> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
a3a1afb7 |
|
22-Jul-2022 |
Oleksandr Suvorov <oleksandr.suvorov@foundries.io> |
fpga: zynqmp: support loading authenticated images Add supporting new compatible string "u-boot,zynqmp-fpga-ddrauth" to handle loading authenticated images (DDR). Based on solution by Jorge Ramirez-Ortiz <jorge@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Link: https://lore.kernel.org/r/20220722141614.297383-13-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
bb20a105 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to Kconfig This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
5a446186 |
|
25-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_RAMBOOT to Kconfig This converts the following to Kconfig: CONFIG_SYS_RAMBOOT Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b340199f |
|
10-Jun-2022 |
Tom Rini <trini@konsulko.com> |
spl: Ensure all SPL symbols in Kconfig have some SPL dependency Tighten up symbol dependencies in a number of places. Ensure that a SPL specific option has at least a direct dependency on SPL. In places where it's clear that we depend on something more specific, use that dependency instead. This means in a very small number of places we can drop redundant dependencies. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d8e84617 |
|
20-Jun-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_FSL_FIXED_MMC_LOCATION et al to Kconfig This converts the following to Kconfig: CONFIG_FSL_FIXED_MMC_LOCATION CONFIG_ESDHC_HC_BLK_ADDR Signed-off-by: Tom Rini <trini@konsulko.com> |
#
8bea4bf7 |
|
08-Jun-2022 |
Tom Rini <trini@konsulko.com> |
tpl: Ensure all TPL symbols in Kconfig have some TPL dependency Tighten up symbol dependencies in a number of places. Ensure that a TPL specific option has at least a direct dependency on TPL. In places where it's clear that we depend on something more specific, use that dependency instead. Reported-by: Pali Rohár <pali@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
83f73632 |
|
26-May-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
bootmenu: U-Boot console is enabled as default The commit 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") disables to enter U-Boot console from bootmenu as default, this change affects the existing bootmenu users. This commit reverts the default behavior, the bootmenu can enter U-Boot console same as before. CMD_BOOTMENU_ENTER_UBOOT_CONSOLE is renamed BOOTMENU_DISABLE_UBOOT_CONSOLE and depends on AUTOBOOT_MENU_SHOW. Fixes: 2158b0da220c ("bootmenu: add Kconfig option not to enter U-Boot console") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Tested-by: Pali Rohar <pali@kernel.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
042e87e8 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Enable FIT processing by default on TI secure devices TI secure devices chain-of-trust depends on FIT image processing, enable it by default on these devices. This also reduces the delta between the secure and non-secure defconfig files. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
52dc3343 |
|
04-May-2022 |
Andrew Davis <afd@ti.com> |
boot: Kconfig: Disable non-FIT loading for TI secure devices Non-FIT image loading support should be disabled for TI secure devices as the image handlers for those image types do not follow our secure boot checks. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
a91492b6 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Provide a default command We would like to use bootstd by default when EFI boot manager is not enabled. But so far bootstd does not support all the of distro-boot fetures. So for now, add an option to select this. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
d9409244 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of script boot Add a bootmeth driver which handles distro boot from a disk via a U-Boot script, so we can boot a bootflow using this commonly used mechanism. This is required by Armbian, for example. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
126947b7 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add a sandbox bootmeth driver Add a bootmeth driver for sandbox, used for testing. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
acfa9bdf |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of EFI boot Add a bootmeth driver which handles EFI boot, using EFI_LOADER. In effect, this provides the same functionality as the 'bootefi' command and shares the same code. But the interface into it is via a bootmeth, so it does not require any special scripts, etc. For now this requires the 'bootefi' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. There was much discussion about whether this is needed, but it seems that it is, at least for now. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
dab2c285 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro PXE boot Add a bootmeth driver which handles distro boot from a network device, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'pxe' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
31aefaf8 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add an implementation of distro boot Add a bootmeth driver which handles distro boot from a disk, so we can boot a bootflow using this commonly used mechanism. In effect, this provides the same functionality as the 'sysboot' command and shares the same code. But the interface into it is via a bootmeth. For now this requires the 'pxe' command be enabled. Future work may tidy this up so that it can be used without CONFIG_CMDLINE being enabled. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
ef5e3891 |
|
24-Apr-2022 |
Simon Glass <sjg@chromium.org> |
bootstd: Add the bootstd uclass and core implementation The 'bootstd' device provides the central information about U-Boot standard boot. Add a uclass for bootstd and the various helpers needed to make it work. Also add a binding file. Signed-off-by: Simon Glass <sjg@chromium.org> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
12a3e1ad |
|
22-Feb-2022 |
Dzmitry Sankouski <dsankouski@gmail.com> |
arm: init: save previous bootloader data When u-boot is used as a chain-loaded bootloader (replacing OS kernel), previous bootloader leaves data in RAM, that can be reused. For example, on recent arm linux system, when chainloading u-boot, there are initramfs and fdt in RAM prepared for OS booting. Initramfs may be modified to store u-boot's payload, thus providing the ability to use chainloaded u-boot to boot OS without any storage support. Two config options added: - SAVE_PREV_BL_INITRAMFS_START_ADDR saves initramfs start address to 'prevbl_initrd_start_addr' environment variable - SAVE_PREV_BL_FDT_ADDR saves fdt address to 'prevbl_fdt_addr' environment variable Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Tom Rini <trini@konsulko.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
25b8acee |
|
02-Apr-2022 |
Tom Rini <trini@konsulko.com> |
Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support" Unfortunately, we require additional logic to buildman to support this removal and still use SYS_SOC, etc, for build targets. This reverts commit eeec00072d7a0b5b91896d014618e558ce438738. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
eeec0007 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
global: Remove CONFIG_SYS_EXTRA_OPTIONS support All options have now been migrated to Kconfig correctly so remove this support. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
e4d741f8 |
|
24-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SYS_MONITOR_BASE to Kconfig This converts the following to Kconfig: CONFIG_SYS_MONITOR_BASE Note that for how this is re-used on some PowePC platforms, we introduce CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the CONFIG_VAL macro to get the correct value at build time, in the code. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
d433c74e |
|
23-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SDCARD et al to Kconfig This converts the following to Kconfig: CONFIG_SDCARD CONFIG_SPIFLASH Signed-off-by: Tom Rini <trini@konsulko.com> |
#
98220743 |
|
28-Mar-2022 |
Philippe Reynes <philippe.reynes@softathome.com> |
boot: image: add a stage pre-load Add a stage pre-load that could check or modify an image. For the moment, only a header with a signature is supported. This header has the following format: - magic : 4 bytes - version : 4 bytes - header size : 4 bytes - image size : 4 bytes - offset image signature : 4 bytes - flags : 4 bytes - reserved0 : 4 bytes - reserved1 : 4 bytes - sha256 of the image signature : 32 bytes - signature of the first 64 bytes : n bytes - image signature : n bytes - padding : up to header size The stage uses a node /image/pre-load/sig to get some informations: - algo-name (mandatory) : name of the algo used to sign - padding-name : name of padding used to sign - signature-size : size of the signature (in the header) - mandatory : set to yes if this sig is mandatory - public-key (madatory) : value of the public key Before running the image, the stage pre-load checks the signature provided in the header. This is an initial support, later we could add the support of: - ciphering - uncompressing - ... Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> |
#
69c8a817 |
|
11-Mar-2022 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig This converts the following to Kconfig: CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN CONFIG_RESET_TO_RETRY We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up the associated Makefile entry and C code for picking default values of CONFIG_BOOT_RETRY_MIN. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
b6ffd58e |
|
29-Jan-2022 |
Icenowy Zheng <icenowy@aosc.io> |
configs: sunxi: Add support for Lichee Pi Nano The Lichee Pi Nano is a board based on the F1C100s. Add defconfigs for it. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
d6b318de |
|
18-Dec-2021 |
Simon Glass <sjg@chromium.org> |
Convert CONFIG_TIMESTAMP to Kconfig This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
2f8a6db5 |
|
14-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig In order to finish moving this symbol to Kconfig for all platforms, we need to do a few more things. First, for all platforms that define this to a function, introduce CONFIG_DYNAMIC_SYS_CLK_FREQ, similar to CONFIG_DYNAMIC_DDR_CLK_FREQ and populate clock_legacy.h. This entails also switching all users from CONFIG_SYS_CLK_FREQ to get_board_sys_clk() and updating a few preprocessor tests. With that done, all platforms that define a value here can be converted to Kconfig, and a fall-back of zero is sufficiently safe to use (and what is used today in cases where code may or may not have this available). Make sure that code which calls this function includes <clock_legacy.h> to get the prototype. Signed-off-by: Tom Rini <trini@konsulko.com> |
#
66e0e2b1 |
|
11-Dec-2021 |
Tom Rini <trini@konsulko.com> |
Convert CONFIG_SD_BOOT et al to Kconfig This converts the following to Kconfig: CONFIG_SD_BOOT CONFIG_SD_BOOT_QSPI Signed-off-by: Tom Rini <trini@konsulko.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
c1df3d54 |
|
03-Nov-2021 |
Jan Kiszka <jan.kiszka@siemens.com> |
bootstage: Differentiate boot progress kconfig entries Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |
#
19a91f24 |
|
14-Oct-2021 |
Simon Glass <sjg@chromium.org> |
Create a new boot/ directory Quite a lot of the code in common/relates to booting and images. Before adding more it seems like a good time to move the code into its own directory. Most files with 'boot' or 'image' in them are moved, except: - autoboot.c which relates to U-Boot automatically running a script - bootstage.c which relates to U-Boot timing Drop the removal of boot* files from the output directory, since this interfers with the symlinks created by tools and there does not appear to be any such file from my brief testing. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Artem Lapkin <email2tema@gmail.com> Tested-by: Artem Lapkin <email2tema@gmail.com> |