aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-01-29Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sunxiWIP/29Jan2024Tom Rini45-214/+1002
- Some cleanups in header files: those do not affect the generated binaries at all. - The usual update of DT files from the kernel repo, mostly adding new board files this time. On the wake of this there is one defconfig to enable a new board, some H618 TV box branded as "Transpeed". - Samuel's series to support SPL FIT image loading for 32-bit SoCs as well, so far this was restricted to ARM64 boards. I refrained from automatically enabling this everywhere, instead this requires user intervention during board configuration. This allows to ship the "crust" management processor firmware on H3 boards, which enables better power saving. - One defconfig for an older H3 board. There was a close-by defconfig for a related board, but there are some differences which deserve a separate file. - Support for the EMAC driver to work with fixed-link PHYs, which allows to directly wire the MAC to a switch IC.
2024-01-29Merge branch '2024-01-29-pytest-enhancements'Tom Rini10-2/+2810
- Update pygit2 version and add a number of additional hardware pytests
2024-01-29test/py: scsi: Add test for scsi commandsWIP/2024-01-29-pytest-enhancementsLove Kumar1-0/+92
Add a following test cases for scsi commands: scsi_reset - To reset SCSI controller scsi_info - To show available SCSI devices scsi_scan - To (re-)scan SCSI bus scsi_device - To show or set surrent device scsi_part - To print partition table of selected SCSI device Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29test/py: spi: Add tests for SPI flash deviceLove Kumar1-0/+626
Add test cases for sf commands to verify various SPI flash operations such as erase, write and read. It also adds qspi lock unlock cases. This test relies on boardenv_* configurations to run it for different SPI flash family such as single SPI, QSPI, and OSPI. Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29test/py: nand: Add tests for NAND flash deviceLove Kumar1-0/+201
Add tests for nand commands to test various NAND flash operations such as erase, write and read. Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29test/py: usb: Add tests for USB deviceLove Kumar1-0/+626
Add the test cases for usb commands to test its various functionality such as start, stop, reset, info, tree, storage, dev, part, ls, load, and save. It also adds different file systems cases such as fat32, ext2 and ext4. Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29test/py: mmc: Add tests for MMC deviceLove Kumar1-0/+671
Add the test cases for mmc commands to test its various functionality such as mmc list, dev, info, rescan, part, ls, load, and save. It also adds different file systems cases such as fat32, ext2 and ext4. Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29test/py: secure: Add secure tests for Zynq & ZynqMPLove Kumar2-0/+294
Add test cases to verify the different type of secure boot images loaded at DDR location for AMD's ZynqMP SoC. It also adds tests authentication and decryption functionality using AES and RSA features for Zynq. Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29test/py: gpio: Add gpio pins generic testLove Kumar1-0/+90
Add gpio pins generic test for the set of gpio pin list to test various gpio related functionality, such as the input, set, clear, and toggle, it also tests the input and output functionality for shorted gpio pins. This test depends on boardenv* configuration to define gpio pins names. Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29test/py: zynqmp_rpu: Add test for loading RPU appsLove Kumar1-0/+208
Add testcases for loading RPU applications in split and lockstep mode including the negative one for AMD's ZynqMP SoC. Signed-off-by: Love Kumar <love.kumar@amd.com>
2024-01-29pytest: update requirements.txtCaleb Connolly1-2/+2
Update pygit2 and py to their latest versions. Even in the venv pygit2 still links against the system libgit2 library which is failing on latest Arch Linux. The py library also needs updating to fix a KeyNotFound exception during test initialisation. Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
2024-01-29sunxi: Consider SPL size limitations for FIT loadingSamuel Holland1-2/+1
Now that 32-bit SoCs can load U-Boot proper (and possibly other firmware) from a FIT, people can use that by enabling CONFIG_SPL_LOAD_FIT. However SPL_FIT_IMAGE_TINY is required to stay within the 24 or 32 KiB SPL size limit on early SoCs; for consistency, enable it everywhere. Signed-off-by: Samuel Holland <samuel@sholland.org> [Andre: drop unconditional FIT image enablement for all SoCs] Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: binman: Support FIT generation for 32-bit SoCsSamuel Holland1-5/+20
Some 32-bit SoCs can use SCP firmware to implement additional PSCI functionality, such as system suspend. In order to load this firmware from SPL, we need to generate and use a FIT instead of a legacy image. Adjust the binman FIT definition so it does not rely on TF-A BL31, as this is not used on 32-bit SoCs. Instead, after loading the firmware, U-Boot proper is executed directly. This requires to provide an entry point property for the U-Boot image node, which confuses some loaders like sunxi-fel, so protect that to only be used if we have no BL31. Signed-off-by: Samuel Holland <samuel@sholland.org> [Andre: filter U-Boot entry point property] Reviewed-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2024-01-29sunxi: binman: Move BL31 and SCP firmware addresses to KconfigSamuel Holland2-17/+24
This is easier to read than the #ifdef staircase, provides better visibility into the memory map (alongside the other Kconfig definitions), and allows these addresses to be reused from code. Signed-off-by: Samuel Holland <samuel@sholland.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: spl: Disable padding from SPL_PAD_TOSamuel Holland1-2/+1
Starting with H6, Allwinner removed the artificial 32 KiB SPL size limit from the boot ROM. Now SPL size is only limited by the available SRAM. This limit ranges from 152 KiB on H6 to a whopping 2052 KiB on R329. To take advantage of this additional space, we must increase SPL_MAX_SIZE. Since we do not want to unnecessarily pad SPL out to these giant sizes, we must set SPL_PAD_TO to zero. This causes no problems because binman already takes care of appending the SPL payload at the right offset. Signed-off-by: Samuel Holland <samuel@sholland.org> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: add defconfig for nanopi_duo2Chuanhong Guo1-0/+12
FriendlyElec NanoPi Duo2 is a tiny SBC with Allwinner H3 and Ampak AP6212 WiFi module. The device-tree for it is already available in u-boot source tree. Add a default config for it. Signed-off-by: Chuanhong Guo <gch981213@gmail.com> [Andre: enable USB gadgets] Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29net: sun8i-emac: Add support for fixed-link phyMaksim Kiselev1-5/+2
Make the "phy-handle" property optional, which allows support for a fixed-link phy configuration. Thus if the "phy-handle" is present in a DT, then driver will work as before. Otherwise, phyaddr initialization will not be necessary, as it is not needed in case of a fixed-link config. Signed-off-by: Maksim Kiselev <bigunclemax@gmail.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: add Transpeed 8K618-T board supportNick Alilovic2-0/+28
This is a Chinese TV box based on Allwinner H618 SoC. The DRAM parameters were derived from the values found in a firmware update. Signed-off-by: Nick Alilovic <nickalilovic@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: dts: update devicetree files from Linux-v6.8-rc1Andre Przywara9-0/+893
Sync the devicetree files from the official Linux kernel tree, v6.8-rc1. This time only small changes in the existing files, but five new boards got added, which opens the door for their respective defconfig files. As before, this omits the non-backwards compatible changes to the R_INTC controller, to remain compatible with older kernels. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: simplify U-Boot proper only buildsAndre Przywara2-10/+10
At the moment every Allwinner board builds and requires an SPL, even though we select this individually in each _defconfig file. For experiments and for early bringup of new SoCs it would be beneficial to only build U-Boot proper, for instance to postpone a tedious SPL port (including DRAM support) in the initial phase. Protect some SPL related symbols that we unconditionally select at the moment with "if SPL", to avoid Kconfig conflicts when CONFIG_SPL is disabled. This alone does not cleanly build U-Boot proper only yet, but gets it far enough so that the binary can be harvested. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: remove common.h inclusionAndre Przywara24-24/+3
The usage of the common.h include file is deprecated, and has already been removed from several files. Get rid of all inclusions in the arch/arm/mach-sunxi directory. Most files actually don't need the header at all, for the few others just include the headers that we actually require. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: sun9i: remove unneeded base addresses from headerAndre Przywara1-41/+0
The cpu_sun9i.h header file defined the base addresses for quite some peripherals of the Allwinner A80 CPU, even though we now only use a fraction of that. Most of the addresses are now either read from the DT, or were never used in U-Boot in the first place. Removed the ones that are not used in the whole of the U-Boot source. to make it clear that this file only contains addresses that are needed for the SPL operation. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: sun4i: remove unneeded base addresses from headerAndre Przywara1-47/+0
The cpu_sun4i.h header file defined the base addresses for quite some peripherals of earlier Allwinner CPUs, even though we now only use a fraction of that. Most of the addresses are now either read from the DT, or were never used in U-Boot in the first place. Removed the ones that are not used in the whole of the U-Boot source. to make it clear that this file only contains addresses that are needed for the SPL operation. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: sun50i-h6: remove unneeded base addresses from headerAndre Przywara1-21/+0
The cpu_sun50i_h6.h header file defined the base addresses for quite some peripherals of the Allwinner H6 and related CPUs, even though we now only use a fraction of that. Most of the addresses are now either read from the DT, or were never used in U-Boot in the first place. Removed the ones that are not used in the whole of the U-Boot source. to make it clear that this file only contains addresses that are needed for the SPL operation. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-29sunxi: cleanup sunxi-common.hAndre Przywara1-44/+12
The sunxi-common.h configs header used to contain a lot of random Allwinner platform related constants, but over the years we moved a lot of those definitions out there. Clean up the file to remove outdated comments which are leftovers from the olden days. Also remove the definition of LOW_LEVEL_SRAM_STACK, which is actually used nowhere in the whole source tree. This also uses the opportunity to add some section comments that helps structuring the header file and improving readability. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2024-01-27Merge branch 'master-cleanup' of ↵WIP/27Jan2024Tom Rini77-78/+5
https://source.denx.de/u-boot/custodians/u-boot-sh - Assorted code clean-ups
2024-01-27ARM: renesas: whitehawk: Drop extra leading spaceMarek Vasut1-1/+1
Drop leading space in front of a comment. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
2024-01-27ARM: renesas: Drop include common.hMarek Vasut38-38/+4
The header file is not necessary in either of those files, remove it as common.h is going away. Include missing asm/arch/rmobile.h in board/renesas/rcar-common/v3-common.c to prevent build failure of r8a77970_eagle r8a779a0_falcon r8a77980_v3hsk and r8a77970_v3msk . Include missing asm/u-boot.h in falcon.c and grpeach.c to fix build failure due to missing definition of struct bd_info . Include errno.h in grpeach.c to fix build error due to missing definition of EINVAL. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
2024-01-27pinctrl: renesas: Drop include common.hMarek Vasut16-16/+0
The header file is not necessary in either of those files, remove it as common.h is going away. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
2024-01-27clk: renesas: Drop include common.hMarek Vasut23-23/+0
The header file is not necessary in either of those files, remove it as common.h is going away. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
2024-01-27Merge tag 'smbios-2024-04-rc1-2' of ↵Tom Rini15-65/+407
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request smbios-2024-04-rc1-2 * Add missing field to SMBIOS type 2 structure definition * Provide smbios command to display smbios table * Enable the command on sandbox and qemu_arm64_defconfig * Provide a python test for the smbios command * Fix copying SMBIOS 2.1 table from QEMU * Correct EFI TCG measurement to assume SMBIOS 3 table
2024-01-26lib: support SMBIOS3 table in uuid_guid_get_str()Heinrich Schuchardt1-0/+4
As we support installing SMBIOS3 tables in U-Boot we need to add this GUID to the translation table used buy uuid_guid_get_str(). Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
2024-01-26smbios: use struct_table_length to get SMBIOS 2.1 total table lengthMasahisa Kojima1-1/+1
The current code convert the SMBIOS 2.1 entry point structure to SMBIOS 3.0 entry point structure. The max_struct_size member in SMBIOS 2.1 entry point structure indicates "Size of the largest SMBIOS structure, in bytes". We need to use struct_table_length instead. Fixes: 1c5aab803c0b ("smbios: copy QEMU tables") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2024-01-26efi_loader: migrate SMBIOS 3.0 entry point structure for measurementMasahisa Kojima5-64/+66
Current U-Boot only supports the SMBIOS 3.0 entry point structure. TCG2 measurement code should migrate to SMBIOS 3.0 entry point structure. efi_selftest tcg2 test also needs to be updated, and expected PCR[1] result is changed since guid for SMBIOS EFI system table uses different guid SMBIOS3_TABLE_GUID instead of SMBIOS_TABLE_GUID. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-01-26configs: enable smbios command on qemu_arm64_defconfigHeinrich Schuchardt1-0/+1
We have a Python test the copying of SMBIOS tables from QEMU. To make use of the test we need the smbios command. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-01-26configs: enable smbios command on sandboxHeinrich Schuchardt1-0/+1
To make use of the Python smbios test we need the smbios command. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-01-26test: unit test for smbios commandHeinrich Schuchardt1-0/+41
Provide a unit test for the smbios command. Provide different test functions for QEMU, sandbox, and other systems. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-01-26doc: man-page for smbios commandHeinrich Schuchardt2-0/+94
Provide a man-page for the smbios command. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-01-26cmd: provide command to display SMBIOS informationHeinrich Schuchardt3-0/+198
U-Boot can either generated an SMBIOS table or copy it from a prior boot stage, e.g. QEMU. Provide a command to display the SMBIOS information. Currently only type 1 and 2 are translated to human readable text. Other types may be added later. Currently only a hexdump and the list of strings is provided for these. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-01-26smbios: type2: contained object handlesHeinrich Schuchardt1-0/+1
The type 2 structure must include information about the contained objects. It is fine to set the number of contained object handles to 0. Add the missing field. Fixes: 721e992a8af5 ("x86: Add SMBIOS table support") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-01-25Merge branch '2024-01-24-assorted-fixes-and-updates'Tom Rini23-55/+160
- Increase SYS_MAXARGS default, verdin-am62 improvements (and required cleanup), assorted cleanups throughout the code base.
2024-01-24reset: reset-hisilicon: also handle #reset-cells = <2>Yang Xiwen1-2/+13
It's also valid to have #reset-cells = <2> while the third arg defaults to ASSERT_SET. Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
2024-01-24test: enhance unicode_test_utf8_to_utf32_stream()Heinrich Schuchardt1-3/+8
Additionally test a UTF-8 string where each code point translates to three UTF-8 bytes. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-01-24lib: add comment in utf8_to_utf32_stream()Heinrich Schuchardt1-0/+4
The logic of utf8_to_utf32_stream() is not easy to understand. Add a comment. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-01-24docker: Add tools/buildman/requirements.txt to the cacheTom Rini1-2/+4
As we have had this file for a while now, we should include installing and populating our pip cache from here as well. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-01-24common: console: Fix print complete stdio device listPatrice Chotard1-15/+12
In case CONSOLE_MUX and SYS_CONSOLE_IS_IN_ENV are on and stdin or stdout or stderr are missing in environment, as fallback, get these either from stdio_devices[std] or stdio_devices[std]->name. Fixes: 6b343ab38d ("console: Print out complete stdio device list") Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-01-24cmd: bootmenu: rename U-Boot console to ExitSvyatoslav Ryhel1-5/+5
It seems that the U-Boot console entry of the bootmenu has lost its original meaning. Now, even if it is chosen, the probability that you will enter the actual U-Boot console is quite low. Boot env, bootflow, bootcommand script may appear, but not the actual console. Hence, let's remove ambiguity and name this entry by what it actually does: 'Exit' the bootmenu. Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2024-01-24board: verdin-am62: set cpu core voltage depending on speed gradeMax Krummenacher1-0/+47
Speed grade T requires the VDD_CORE voltage to be 0.85V if using the maximum core frequency. Speed grades G, K, S allow the VDD_CORE voltage to be 0.75V up to the maximum core frequency but allow to run at 0.85V. For efficiency in manufacturing and code maintenance we use 0.85V for the PMIC defaults and device tree settings and dynamically adjust the voltage in the PMIC and device tree to 0.75V for lower speed SKU to gain more than 100mW power consumption reduction. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2024-01-24arm: mach-k3: am62: provide more soc feature info accessorsMax Krummenacher1-0/+16
Add two functions, one which returns the SoC speed grade and one which returns the SoC operating temperature range. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2024-01-24arm: mach-k3: am62: move device identification accessor functions to headerMax Krummenacher2-23/+23
mach-k3/am625_fdt.c does fdt fixup depending on fields in the device identification register. Move the accessors to the device identification register as inline functions into the am62_hardware.h header, so that they can be used for other functionality. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>