summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-01-09Merge tag 'u-boot-amlogic-20220107' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-amlogic into next - disable CONFIG_NET_RANDOM_ETHADDR when unnecessary on amlogic based configs - meson64_android: add board specific env settings, in order to support VIM3/L for android - add changes to support VIM3/L android boot by using meson64_android.h config
2022-01-07Merge branch '2022-01-04-platform-updates' into nextTom Rini
- Assorted updates for vexpress64, apple m1, iot2050 and stemmy platforms.
2022-01-07configs: khadas-vim3{l}_android_ab: enable A/B supportMattijs Korpershoek
meson64_android.h also relies on CMD_AB_SELECT so enable that as well. Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Link: https://lore.kernel.org/r/20211122152207.219023-5-mkorpershoek@baylibre.com
2022-01-07configs: prepare khadas-vim3{l}_ab_android for AOSP supportMattijs Korpershoek
In AOSP, both VIM3 and VIM3L have 2 bootloader flavors, depending on A/B enablement. For example, for vim3l, the naming is: - u-boot_kvim3l_noab.bin : legacy support - u-boot_kvim3l_ab.bin : A/B support Prepare a defconfig to support u-boot_kvim3_ab.bin and u-boot_kvim3l_ab.bin. This is identical to khadas-vim3{l}_ab_android but will be updated in the next commit. Also update partitioning tables for A/B support. Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Link: https://lore.kernel.org/r/20211122152207.219023-4-mkorpershoek@baylibre.com
2022-01-07configs: add khadas-vim3{l}_android for AOSP supportMattijs Korpershoek
The Khadas VIM3 and VIM3L board are well supported in AOSP[1]. However, there is no mainline U-Boot support for it. The U-Boot used in AOSP is based on a vendor tree [2] Add all the necessary bits to flash and boot Android for both Khadas VIM3 and VIM3L boards. For Android instructions, refer to [1] [1] https://source.android.com/setup/build/devices#vim3_and_vim3l_boards [2] https://gitlab.com/baylibre/amlogic/atv/u-boot Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Link: https://lore.kernel.org/r/20211122152207.219023-3-mkorpershoek@baylibre.com
2022-01-07configs: meson64_android: add board specific env settingsMattijs Korpershoek
This allows us to define extra board variables, such as "board" and "board_name". Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Link: https://lore.kernel.org/r/20211122152207.219023-2-mkorpershoek@baylibre.com
2022-01-07configs: amlogic: Disable CONFIG_NET_RANDOM_ETHADDR when unnecessaryNeil Armstrong
On Meson GXL, GXM, AXG, G12A, G12B & SM1 SoCs, we can generate an unique MAC address if none valid found in the eFuses storage. Only the GXBB based boards doesn't have a fallback way to generate an unique MAC address, so we rely on CONFIG_NET_RANDOM_ETHADDR to have a valid one. An exception is the Radxa Zero board who doesn't have Ethernet on board so depends on an (or multiple) eventual USB adapters, so leaving the CONFIG_NET_RANDOM_ETHADDR configs seems safer. Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Vyacheslav Bocharov <adeep@lexina.in> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Link: https://lore.kernel.org/r/20211122110710.1038893-1-narmstrong@baylibre.com
2022-01-05Merge https://source.denx.de/u-boot/custodians/u-boot-marvellTom Rini
- kwbimage: Fix checksum calculation for v1 images (Pierre)
2022-01-05tools: kwbimage: Fix checksum calculation for v1 imagesPierre Bourdon
Recent changes caused fields in the image main header to be modified after the header checksum had already been computed. Move the checksum computation to once again be the last operation performed on the header. Fixes: 2b0980c24027 ("tools: kwbimage: Fill the real header size into the main header") Signed-off-by: Pierre Bourdon <delroth@gmail.com> Reviewed-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-01-04configs: iot2050: Drop unused CONFIG_OF_LIST from defconfigJan Kiszka
DTBs are explicitly listed in the image source file for this board, and this list already became outdated. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2022-01-04arm: apple: Remove CONFIG_SYS_SDRAM_BASEMark Kettenis
The memory layout is taken from the device tree passed to us by m1n1, so there is no need to define this. Signed-off-by: Mark Kettenis <kettenis@openbsd.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
2022-01-04vexpress64: Enable VIRTIO_NET network driverPeter Hoyes
The SMSC driver is using the old driver model. Init the virtio system in vexpress64.c so that the network device is discovered. Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2022-01-04vexpress64: Enable OF_CONTROL and OF_BOARD for VExpress64Peter Hoyes
Capture x0 in lowlevel_init.S as potential fdt address. Modify board_fdt_blob_setup to use fdt address from either vexpress_aemv8.h or lowlevel_init.S. Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2022-01-04vexpress64: Clean up BASE_FVP boot configurationPeter Hoyes
Move env var address values to #defines so they can be reused elsewhere. Rename env var names to those recommended in the README and modify addresses to allow more space for the kernel. Fix issue where fdt is called with invalid arguments when booting without a ramdisk. Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2022-01-04vexpress64: Refactor header file to make it easier to add new FVPsPeter Hoyes
Rename from vexpress_aemv8a.h -> vepxress_aemv8.h as new FVPs may not be v8-A. No change in behavior. This is towards future work to enable support for the FVP_BaseR. Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2022-01-04doc: Add documentation for the Arm VExpress64 board configsPeter Hoyes
Create a new documentation section for Arm Ltd boards with a sub-page for the VExpress64 boards (FVP-A and Juno). Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2022-01-04board: stemmy: Increase boot image to 64 MBLinus Walleij
When using a recent kernel with a bunch of compiled-in stuff the kernel image easily becomes bigger than 8 MB yielding this error: Loading Kernel Image Image too large: increase CONFIG_SYS_BOOTM_LEN Must RESET board to recover Fix this by bumping to SZ_64MB. Cc: Stephan Gerhold <stephan@gerhold.net> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Stephan Gerhold <stephan@gerhold.net>
2021-12-31Merge tag 'efi-next' of https://source.denx.de/u-boot/custodians/u-boot-efi ↵Tom Rini
into next Pull request of efi-next Documentation: * Add Sunxi board description UEFI: * Improvements to U-Boot running on top of UEFI
2021-12-31x86: efi: Don't set up global_data again with EFISimon Glass
Since EFI does not relocate and uses the same global_data pointer throughout the board-init process, drop this unnecessary setup, to avoid a hang. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31x86: efi: Show the system-table revisionSimon Glass
Show the revision of this table as it can be important. Also update the 'efi table' entry to show the actual address of the EFI table rather than our table that points to it. This saves a step and the intermediate table has nothing else in it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Allow easy selection of serial-only operationSimon Glass
Add info about how to select vidconsole or serial. Also set up a demo boot command. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-12-31efi: Show when allocated pages are usedSimon Glass
Add a message here so that both paths of memory allocation are reported. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Mention that efi_info_get() is only used in the stubSimon Glass
This provides access to EFI tables after U-Boot has exited boot services. It is not needed in the app since boot services remain alive and we can just call them whenever needed. Add a comment to explain this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Check for failure when initing the appSimon Glass
The stub checks for failure with efi_init(). Add this for the app as well. It is unlikely that anything can be done, but we may as well stop. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Share struct efi_priv between the app and stub codeSimon Glass
At present each of these has its own static variable and helper functions. Move them into a shared file. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Add a few comments to the stubSimon Glass
Comment some functions that need more information. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Fix ll_boot_init() operation with the appSimon Glass
This should return false when the EFI app is running, since UEFI has done the required low-level init. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Add comments to struct efi_privSimon Glass
This structure is uncommented. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-12-31efi: Drop device_path from struct efi_privSimon Glass
This is not used anywhere drop it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31x86: efi: Add room for the binman definition in the dtbSimon Glass
At present only 4KB of spare space is left in the DTB when building the EFI app. Increase this to 32KB so there is plenty of space to insert the binman definition. This cannot be expanded later (as with OF_SEPARATE) because the ELF image has already been built. Signed-off-by: Simon Glass <sjg@chromium.org> Reviwed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31x86: Don't process the kernel command line unless enabledSimon Glass
If the 'bootm' command is not enabled then this code is not available and this causes a link error. Fix it. Note that for the EFI app, there is no indication of missing code. It just hangs! Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31x86: Allow booting a kernel from the EFI appSimon Glass
At present this is disabled, but it should work so long as the kernel does not need EFI services. Enable it and add a note about remaining work. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-12-31efi: serial: Support arrow keysSimon Glass
At present only the backspace key is supported in U-Boot, when running as an EFI app. Add support for arrows, home and end as well, to make the CLI more friendly. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Locate all block devices in the appSimon Glass
When starting the app, locate all block devices and make them available to U-Boot. This allows listing partitions and accessing files in filesystems. EFI also has the concept of 'disks', meaning boot media. For now, this is not obviously useful in U-Boot, but add code to at least locate these. This can be expanded later as needed. We cannot use printf() in the early stub or app since it is not compiled in Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi: Make unicode printf available to the appSimon Glass
This is needed to show unicode strings. Enable this code in the app. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31sunxi: add board documentationAndre Przywara
Add some long overdue instructions for building and installing U-Boot on Allwinner SoC based boards. This describes the building process, including TF-A and crust, plus installation to SD card, eMMC and SPI flash, both from Linux and U-Boot itself. Also describe FEL booting. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-31efi_loader: Don't limit the StMM buffer size explicitlyIlias Apalodimas
Currently we allow and explicitly check a single shared page with StandAloneMM. This is dictated by OP-TEE which runs the application. However there's no way for us dynamically discover the number of pages we are allowed to use. Since writing big EFI signature list variable requires more than a page, OP-TEE has bumped the number of shared pages to four. Let's remove our explicit check and allow the request to reach OP-TEE even if it's bigger than what it supports. There's no need to sanitize the number of pages internally. OP-TEE will fail if we try to write more than it's allowed. The error will just trigger later on, during the StMM access. While at it add an error message to help users figure out what failed. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Tested-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Signed-off-by: Ilias Apalodimas <apalos@gmail.com>
2021-12-31efi: fix typo in description of struct efi_entry_hdrHeinrich Schuchardt
Add missing colon. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-12-28Merge tag 'video-next-20211228' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-video into next - various fixes to the sandbox display support - support for showing a logo without splash screen config - support for BMP drawing to depths other than 16bpp - tests for the different types of supported BMP images - support showing a logo when running coreboot via qemu
2021-12-28Merge tag 'video-20211228' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-video - mxsfb axi/disp_axi clock enable fix
2021-12-28Merge tag 'efi-2022-01-rc4-4' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request for efi-2022-01-rc4-4 UEFI: * allow for more than 16 KiB UEFI variable size when using StMM Others: * make watchdog sysreset compatible with separate poweroff driver * avoid OpenSSL deprecation warnings
2021-12-27Merge branch '2021-12-27-CONFIG-migrations' into nextTom Rini
- Merge a large number of CONFIG migration patches. Most of these are taking existing migrations and re-running them. A few of these needed additional minor conversions done first, so that more complex dependencies could be expressed. In the end we now have CI jobs to ensure that no migrated symbols are used in board config header files.
2021-12-27configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-12-27Convert CONFIG_JFFS2_DEV et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_JFFS2_DEV CONFIG_JFFS2_LZO CONFIG_JFFS2_NAND CONFIG_JFFS2_PART_OFFSET CONFIG_JFFS2_PART_SIZE Signed-off-by: Tom Rini <trini@konsulko.com>
2021-12-27Convert CONFIG_KIRKWOOD_GPIO to KconfigTom Rini
This converts the following to Kconfig: CONFIG_KIRKWOOD_GPIO Signed-off-by: Tom Rini <trini@konsulko.com>
2021-12-27Convert CONFIG_SYS_KWD_CONFIG to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_KWD_CONFIG Signed-off-by: Tom Rini <trini@konsulko.com>
2021-12-27Convert CONFIG_88F5182 et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_88F5182 CONFIG_BOARD_IS_OPENRD_BASE CONFIG_BOARD_IS_OPENRD_CLIENT CONFIG_BOARD_IS_OPENRD_ULTIMATE CONFIG_D2NET_V2 CONFIG_FEROCEON CONFIG_FEROCEON_88FR131 CONFIG_INETSPACE_V2 CONFIG_KW88F6192 CONFIG_KW88F6281 CONFIG_KW88F6702 CONFIG_NET2BIG_V2 CONFIG_NETSPACE_LITE_V2 CONFIG_NETSPACE_MAX_V2 CONFIG_NETSPACE_MINI_V2 CONFIG_NETSPACE_V2 CONFIG_SHEEVA_88SV131 At this point mv-plug-common.h is now only an include of mv-common.h so remove that indirection. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-12-27Kconfig: Remove some symbols from the whitelistTom Rini
There are a number of symbols that are never defined, only referenced in code imported from the Linux kernel or similar. Drop them from the list. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-12-27Convert CONFIG_CPU_FREQ_HZ to KconfigTom Rini
This converts the following to Kconfig: CONFIG_CPU_FREQ_HZ Cc: Michal Simek <monstr@monstr.eu> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-12-27Convert CONFIG_CPU_SH7751 to KconfigTom Rini
This converts the following to Kconfig: CONFIG_CPU_SH7751 Signed-off-by: Tom Rini <trini@konsulko.com>