summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-21arm: mvebu: turris_mox: Cosmetic update for board config headerMarek Behún
Reorder the definitions in Turris MOX' board config header, drop the comment relics from when this file was copied, fix indentation. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-10-21arm: kirkwood, mvebu: Remove CONFIG_SYS_RESET_ADDRESS optionMarek Behún
This option is not used anywhere. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-10-21arm: mvebu: a3720: Create Kconfig option for I2C_MVMarek Behún
Move the config option CONFIG_I2C_MV to a Kconfig option CONFIG_SYS_I2C_MV and move the default definition from config header files into defconfigs. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-10-21arm: mvebu: turris_mox: Move options to defconfigMarek Behún
Move config options CONFIG_LAST_STAGE_INIT and CONFIG_DISPLAY_BOARDINFO_LATE to turris_mox_defconfig. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-10-21tools: termios_linux.h: Fix tcsendbreak() implementationPali Rohár
There are two Linux ioctls which implements tcsendbreak() functionality: TCSBRK and TCSBRKP TCSBRK with non-zero parameter implements tcdrain() and with zero parameter implements tcsendbreak() for duration of 0.25s. TCSBRKP with zero parameter is same as TCSBRK and with non-zero parameter implements tcsendbreak() for duration in deciseconds specified by parameter. TCSBRKP does not have to be provided by older toolchain versions. So tcsendbreak() has to either use TCSBRK with zero parameter or TCSBRKP with any parameter. Fix code to use TCSBRKP and fallback to TCSBRK with 0. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-10-21cmd: tlv_eepromSven Auhagen
The function show_eeprom is missing int i if debug is enabled. Signed-off-by: Sven Auhagen <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-10-21efi_loader: Fix link of EFI apps with ld.lldAlistair Delva
When compiling U-Boot with ld.lld as the linker, the helloworld EFI app example fails to link: LD lib/efi_loader/helloworld_efi.so ld.lld: error: section: .dynamic is not contiguous with other relro sections LLD will always create RELRO program header regardless of target emulation, whereas BFD may automatically disable it for unsupported targets. Add -znorelro to disable it explicitly in all cases. Signed-off-by: Alistair Delva <[email protected]> Cc: Heinrich Schuchardt <[email protected]> Cc: Nick Desaulniers <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_loader: efi_dp_from_lo() should skip VenMedia nodeHeinrich Schuchardt
The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2021-10-21efi_loader: avoid multiple local copies of lf2_initrd_guidHeinrich Schuchardt
Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2021-10-21efi_loader: efi_dp_from_lo() unused parameter sizeHeinrich Schuchardt
Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2021-10-21efi_loader: simplify show_efi_boot_opt_data()Heinrich Schuchardt
Use printf code %pD for printing device paths. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_loader: efi_dp_from_lo() don't copy GUIDHeinrich Schuchardt
Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_loader: Fix loaded image alignmentIlias Apalodimas
We are ignoring the alignment communicated via the PE/COFF header. Starting 5.10 the Linux kernel will loudly complain about it. For more details look at [1] (in linux kernel). So add a function that can allocate aligned EFI memory and use it for our relocated loaded image. [1] c32ac11da3f83 ("efi/libstub: arm64: Double check image alignment at entry") Signed-off-by: Ilias Apalodimas <[email protected]> Tested-by: Vincent Stehlé <[email protected]> Acked-by: Ard Biesheuvel <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_loader: don't load Shim's MOK database from fileHeinrich Schuchardt
When using a file to store UEFI variables we must make sure that secure boot related variables are not loaded from this file. With commit 9ef82e29478c ("efi_loader: don't load signature database from file") this has already been implemented for variables defined in the UEFI specification. As most Linux distributions use Shim we should do the same for Shim's MOK database. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-10-21x86: Show some EFI info with the bdinfo commandSimon Glass
It is useful to see some basic EFI info with the command as it forms part of the information about a board. Add a hook for this and show the table address as a start. While here, fix an invalid cast in setup_efi_info(). Note that this function is using a data structure defined by Linux so we cannot change it. Also note that ulong is used since this is the standard in U-Boot (>6k uses), despite there being quite a bit of the more verbose uintptr_t (930 uses). Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21x86: Create a new header for EFISimon Glass
The setup routines are called from zimage but don't really belong in the zimage header. Add a new EFI header to house these. Add comments so it is clear what the functions do. Note that these functions are x86-specific. The zimage business is not used on other architectures. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21x86: Keep symbol information in u-boot ELF fileSimon Glass
At present this information is stripped when linking. It is useful to keep it around. Strip it from the .efi files instead. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi: Add a separate maintainer entry for the appSimon Glass
Separate this out slightly from the payload, with a new entry. We might consider renaming EFI PAYLOAD to EFI LOADER, but that would require quite a lot of file changes. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_loader: Drop code that doesn't work with driver modelSimon Glass
This code should never have been added as it builds a new feature on top of legacy code. This has already been improved with the dependency on BLK. Add a dependency on DM_ETH also, to avoid needing to deal with this old code. Boards which want EFI_LOADER should migrate to driver model first. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_selftest: Receive the packets until the receive buffer is emptyMasami Hiramatsu
Repeatedly receive the packets until the receive buffer is empty. If the buffer is empty, EFI_SIMPLE_NETWORK_PROTOCOL::Receive() returns EFI_NOT_READY. We don't need to use the wait_for_event() every time. Signed-off-by: Masami Hiramatsu <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_selftest: Do not check EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPTMasami Hiramatsu
Do not check EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT in packet receiving loop. This depends on the implementation and not related to whether the packet can be received or not. Whether the received packets are available or not is ensured by wait_for_packet, and that is already done in the loop. Signed-off-by: Masami Hiramatsu <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21efi_selftest: Use EFI_SIMPLE_NETWORK_PROTOCOL::GetStatus() for media checkMasami Hiramatsu
According to the UEF specification v2.9, the main purpose of the EFI_SIMPLE_NETWORK_PROTOCOL::GetStatus() is for checking the link status via EFI_SIMPLE_NETWORK_MODE::MediaPresent. So this uses net->get_status() for checking the link status before running network test. Signed-off-by: Masami Hiramatsu <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2021-10-21configs: add mkeficapsule to tools-only_defconfigHeinrich Schuchardt
mkeficapsule is used to create capsules for UEFI firmware update. To ease inclusion into U-Boot tools packages of Linux distributions we should add it to the tools-only_defconfig. Provide dummy values for CONFIG_AVB_BUF_ADDR, CONFIG_AVB_BUF_SIZE to satisfy Kconfig. Suggested-by: Vagrant Cascadian <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-10-21doc: Remove obsolete README.440-DDR-performance fileThomas Huth
The PPC 440 support has been removed in commit 98f705c9cefd ("powerpc: remove 4xx support") already, so this file is certainly not required anymore. Signed-off-by: Thomas Huth <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-10-21doc: add python3-pkg-resources to build dependenciesHeinrich Schuchardt
tools/binman/control.py imports Python package pkg_resources. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-10-21doc: add system reset to API documentationHeinrich Schuchardt
Complete the Sphinx documentation in include/sysreset.h Add the include to the generated HTML documentation of the U-Boot API. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-10-21doc: require Sphinx 3.4.3Heinrich Schuchardt
For enums documented according to the requirements in chapter "Structure, union, and enumeration documentation" of https://www.kernel.org/doc/html/latest/doc-guide/kernel-doc.html errors occur with Sphinx 2.4.4 which disappear with Sphinx 3.4.3, e.g. /builds/u-boot/custodians/u-boot-efi/doc/api/sysreset:6: ./include/sysreset.h:60:Unknown interpreted text role "enum". Sphinx 3.4.3 is the version used by Debian in the current release. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-10-20Merge tag 'u-boot-imx-20211020' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-imx u-boot-imx-20211020 ------------------- First PR from u-boot-imx for 2022.01 CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/9535 - new board: kontron-sl-mx8mm - imx8m: - fix secure boot - imx ESDHC: fixes - i.MX53: Support thum2, bmode and fixes for Menlo board usbarmory switch to Ethernet driver model - imx6 : - DDR calibration for Toradex boards - imx7: - Fixes - Updated gateworks boards (ventana / venice) # gpg verification failed.
2021-10-20Merge https://source.denx.de/u-boot/custodians/u-boot-riscvTom Rini
- Assorted warning fixes, io read/write bugfix
2021-10-20doc: imx: psb: Add documentation for MX8MM behavior with Fast Boot fuse blownMarek Vasut
On iMX8MM with Fast Boot fuse blown, the SIT and A-copy image are placed at different offset than on iMX8MM with Fast Boot fuse NOT blown. List both options and both offsets to avoid confusion. Signed-off-by: Marek Vasut <[email protected]> Cc: Marcel Ziswiler <[email protected]> Cc: Peng Fan <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Ye Li <[email protected]> Cc: uboot-imx <[email protected]> Reviewed-by: Marcel Ziswiler <[email protected]>
2021-10-20doc: imx: psb: Fix PERSIST_SECONDARY_BOOT bit location in GPR10Marek Vasut
The PERSIST_SECONDARY_BOOT is in GPR10 address 0x30390098, adjust the text which currently says it is in GPR0 while using the correct address of GPR10. Signed-off-by: Marek Vasut <[email protected]> Cc: Marcel Ziswiler <[email protected]> Cc: Peng Fan <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Ye Li <[email protected]> Cc: uboot-imx <[email protected]> Reviewed-by: Marcel Ziswiler <[email protected]>
2021-10-20colibri-imx6ull: add emmc variantMax Krummenacher
Add code to build the eMMC variant of the Colibri iMX6ULL, i.e. the 'Colibri iMX6ULL 1GB' which has a eMMC instead of the raw NAND used on other SKUs. Related-to: ELB-4056, ELB-4057 Signed-off-by: Max Krummenacher <[email protected]> Signed-off-by: Marcel Ziswiler <[email protected]>
2021-10-20colibri-imx6ull: imximage.cfg: integrate new 1GiB RAM variantPhilippe Schenker
Integrate new Toradex SKU 0062 Colibri iMX6ULL 1GB IT. This commit basically adjusts three parameters of the RAM settings: Increase density from 4Gb to 8Gb Increase ROW address from 15 to 16 Increase tRFC (refresh command time) from 260 to 350 This timing is valid for all Toradex Colibri iMX6ULL SKUs Related-to: ELB-4055, ELB-4057 Signed-off-by: Philippe Schenker <[email protected]> Signed-off-by: Marcel Ziswiler <[email protected]>
2021-10-20toradex: tdx-cfg-block: add new i.mx 6ull and 8m plus skusMarcel Ziswiler
Add new i.MX 6ULL and 8M Plus SKUs to ConfigBlock handling: 0062: Colibri iMX6ULL 1GB IT (eMMC) 0063: Verdin iMX8M Plus Quad 4GB IT 0064: Verdin iMX8M Plus Quad 2GB Wi-Fi / BT IT 0065: Verdin iMX8M Plus QuadLite 1GB IT 0066: Verdin iMX8M Plus Quad 8GB Wi-Fi / BT Signed-off-by: Marcel Ziswiler <[email protected]>
2021-10-20toradex: configblock: fix interactive mode it handlingDenys Drozdov
Restore "Is the module an IT version? [y/N]" for "cfgblock create" interactive mode command, which was leading to invalid detection of 0051 Colibri iMX8DX 1GB WB module; Fixes: a5b5ad4d859b ("toradex: tdx-cfg-clock: add new i.mx 8m mini/plus skus") Related-to: ELB-3482 Signed-off-by: Denys Drozdov <[email protected]> Signed-off-by: Marcel Ziswiler <[email protected]>
2021-10-20toradex: take over maintainershipMarcel Ziswiler
Also take over maintainership of remaining Toradex SoMs as Oleksandr has left our company. Signed-off-by: Marcel Ziswiler <[email protected]> CC: Oleksandr Suvorov <[email protected]>
2021-10-20imx8mm-evk: Generate a single bootable flash.bin againFabio Estevam
After the conversion to binman in commit 8996e6b7c6a1 ("imx8mm_evk: switch to use binman to pack images"), it is necessary to flash both flash.bin and u-boot.itb to get a bootable system. Prior to this commit, only flash.bin was needed. Such new requirement breaks existing distro mechanisms to generate the final binary because the extra u-boot.itb is now required. Generate a final flash.bin that can be used again as a single bootable binary to keep the original behavior. After this change the SPL binary is called spl.bin, which is a more descriptive name for its purpose, and can still be used standalone (for example, for secure boot purposes). Also update imx8mm_evk.rst to remove the u-boot.itb copy step. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Frieder Schrempf <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Reviewed-by: Marcel Ziswiler <[email protected]> Reviewed-by: Heiko Thiery <[email protected]>
2021-10-20colibri-imx6ull: fix setup of nand gpmi clockPhilippe Schenker
NXP used to setup the gpmi clock root from gpmi_clk in early versions in their downstream BSP. [1] However on mainline the gpmi clock root was always setup from enfc since the beginning of the i.MX 6 series SoCs, which is still the same today. [2] NXP followed the mainline approach at some point and changed setup_gpmi_io_clk to setup gpmi clock root from enfc which left faulty code behind in our board file. [3] This commit follows the change of NXP as it improves the performance of the NAND from ~1.2 MiB/s to ~12 MiB/s. [3] This change was verified to work in recovery-mode and u-boot loaded from NAND on all four Colibri iMX6ULL SKUs from Toradex. The frequency used to read the NAND, measured on RE# (Read Enable): before this patch: 1.4 MHz after this patch: 22 MHz in Linux Kernel: 50 MHz [1] https://source.codeaurora.org/external/imx/uboot-imx/tree/arch/arm/cpu/armv7/mx6/clock.c?h=nxp/imx_v2016.03_4.1.15_2.0.0_ga#n62 [2] commit 23608e23fd65 ("i.mx: add the initial support for freescale i.MX6Q processor") [3] https://source.codeaurora.org/external/imx/uboot-imx/commit/?id=7a82a19ceabfb04bbc1591a67c99751748781c7d Signed-off-by: Philippe Schenker <[email protected]>
2021-10-20board: phytec: imx8mm-phycore: Switch to binmanTeresa Remmet
Use binman for image creation. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20configs: phycore-imx8mm_defconfig: Enable clk commandTeresa Remmet
Enable clk command to dump clock tree. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20board: phytec: phycore-imx8mm: Add SPI-NOR flash supportTeresa Remmet
Adds SPI-NOR flash support to erase, read and write in bootloader. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20arm: dts: phycore-imx8mm: Fix propertyTeresa Remmet
Fix misspelled property "stdout-path". Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20arm: dts: phycore-imx8mm-u-boot: Add wdog pinctrl entryTeresa Remmet
Add missing pinctrl entry in spl. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20include: configs: phycore-imx8mm: Do not use macro for addressTeresa Remmet
Do not use size macros for addesses. So convert PHYS_SDRAM to address. No functional change. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20include: configs: phycore-imx8mm: Remove not needed definesTeresa Remmet
Remove obsolet defines in phycore_imx8mm.h. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20include: configs: phycore_imx8mm: Remove hard coded network settingsTeresa Remmet
Remove ip address and server ip from board config as they should not be added hardcoded. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20board: phytec: phycore_imx8mm: Clean up splTeresa Remmet
Remove not needed code in the spl board code. Signed-off-by: Teresa Remmet <[email protected]>
2021-10-20verdin-imx8mm: fix watchdog pinctrl issueMarcel Ziswiler
Finally, found the root cause of the issue already once mentioned back here [2] which caused the following error message during boot: imx_wdt watchdog@30280000: pinctrl_select_state_full: uclass_get_device_by_phandle_id: err=-19 Turns out while the watchdog node itself was already u-boot,dm-spl its pinctrl node was not which caused it to be unavailable at that early stage. Note that any and all other boards I checked also seem to be missing this. However, I can't judge whether or not they might indeed need a similar fix or not. [2] https://marc.info/?l=u-boot&m=161786572422973 Fixes: commit d304e7ace3a6 ("ARM: imx8m: Fix reset in SPL on Toradex iMX8MM Verdin") Signed-off-by: Marcel Ziswiler <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2021-10-20verdin-imx8mm: use preboot for fdtfile evaluationIgor Opaniuk
Enable and set preboot var with fdtfile evaluation. It will be checked and run immediately before starting the CONFIG_BOOTDELAY countdown and/or running the auto-boot command resp. entering interactive mode. This provides possibility to use different boot cmds in interactive mode without manual setting fdtfile value, as it it's already evaluated before entering interactive mode. Signed-off-by: Igor Opaniuk <[email protected]> Signed-off-by: Marcel Ziswiler <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2021-10-20include/configs: apalis-imx8/verdin-imx8mm: rename kernel image variableOleksandr Suvorov
Variable "kernel_image" is used in boot.scr script only, that sets its own default value to the constant string @@KERNEL_IMAGETYPE@@ in case "kernel_image" is not set. The default name of the kernel image shipped with BSP 5.x is "Image.gz". Setting kernel_image="Image" as a pre-defined u-boot variable breaks booting systems with modern versions of boot.scr, whereas renaming it fixes booting with modern scripts and does not break working of earlier versions of boot.scr. While at it also update the copyright period, rather than hard-coding fdtfile default fdt_board to dev for the Verdin iMX8M Mini and fix its closing #endif comment. Signed-off-by: Oleksandr Suvorov <[email protected]> Signed-off-by: Marcel Ziswiler <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>