summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-01-09common: console: record console from the beginningIon Agorria
Set flag to enable console record on console_record_init and not only on console_record_reset_enable. This fixes missing start of U-Boot log for fastboot oem console command. Signed-off-by: Ion Agorria <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2024-01-09common: console: introduce console_record_isempty helperIon Agorria
Add console_record_isempty to check if console record buffer contains any data. Signed-off-by: Ion Agorria <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2024-01-09fastboot: implement "getvar all"Ion Agorria
This commit implements "fastboot getvar all" listing by iterating the existing dispatchers that don't require parameters (as we pass NULL), uses fastboot multiresponse. Signed-off-by: Ion Agorria <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2024-01-09fastboot: multiresponse supportIon Agorria
Currently u-boot fastboot can only send one message back to host, so if there is a need to print more than one line messages must be kept sending until all the required data is obtained. This behavior can be adjusted using multiresponce ability (getting multiple lines of response) proposed in this patch. Signed-off-by: Ion Agorria <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2024-01-09xilinx: Enable the NFS command by defaultTejas Bhumkar
Enabled the default utilization of the NFS command across all Xilinx platforms to facilitate the booting of images through the network using the NFS protocol. Fixes: 10de12570799 ("disable NFS support by default") Signed-off-by: Tejas Bhumkar <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2024-01-09arm64: zynqmp: Rename i2c?-gpio to i2c?-gpio-grpMichal Simek
Anything ending with gpio/gpios is taken as gpio phande/description which is reported as the issue coming from gpio-consumer.yaml schema. That's why rename the gpio suffix to gpio-grp to avoid name collision. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/407b0b67ba019be5a2073d09d578b381c639cbc6.1703002605.git.michal.simek@amd.com
2024-01-09arm64: zynqmp: Remove mt25qu512a compatible string from SOMMichal Simek
mt25qu512a is not documented in DT binding that's why remove it. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/517672560a472de33c8e5c4ffc729d8e288da43c.1703002605.git.michal.simek@amd.com
2024-01-09arm64: zynqmp: Fix clock node name in kv260 cardsMichal Simek
node name shouldn't use '_' that's why convert it to '-'. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/8f392c7ff13bdf2322798818ddeda06446b6d7b8.1703002605.git.michal.simek@amd.com
2024-01-09arm64: zynqmp: Move fixed clock to / for kv260Michal Simek
fixed clock nodes can't be on the bus because they are missing reg property. That's why move them to root. And because it is root it is good to have it as the first node in a file. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/9a6c17fa754add356b3b03356e41d15e4a18648b.1703002605.git.michal.simek@amd.com
2024-01-09arm64: zynqmp: Generate dfu_alt_info based on multiboot registerMichal Simek
Commit 2c8a09219cdb ("arm64: zynqmp: Add multiboot support for SPL/SPI offset calculation") enabled u-boot.itb offset calculation based on multiboot register. It is also good to reflect location of u-boot.itb image for dfu_alt generation. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/5abc5f3047ce586b4d2740b5eea775d063295e28.1702906896.git.michal.simek@amd.com
2024-01-09arm64: zynqmp: Fix i2c bus for kd240Michal Simek
i2c1 is having all chips on it that's why use it instead of 0. You can see this error when you boot system. eth0: ethernet@ff0c0000 Setting bus to 0 Failure changing bus number (-19) Enable permission for node ID 33 Enable permission for node ID 47 Hit any key to stop autoboot: 0 It also get USB to work. Fixes: dd4a82201694 ("arm64: zynqmp: Introduce kria SOM defconfig") Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/cf07682a611de9895271d629ee00fb2809d99d0e.1702904913.git.michal.simek@amd.com
2024-01-09arm64: zynqmp: Describe ethernet phy on kd240Michal Simek
Describe ADIN phy present on KD240 via ethernet-phy-id compatible string. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/61f89dc055f191fd4138b80bb7e3217d814502f5.1702904236.git.michal.simek@amd.com
2024-01-09xilinx: Enable DNS/WGET and BLKMAP for http bootMichal Simek
Enable DNS/WGET and BLKMAP to be able to download images over HTTP and map them. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/4fa9b425459947e6424c8ce27376fdc7a14bf839.1696592702.git.michal.simek@amd.com
2024-01-09efi_loader: provide tool to dump SMBIOS tableHeinrich Schuchardt
An EFI binary smbiosdump.efi is provided that can be used to check the SMBIOS table for consistency and to dump it as a file. The tool provides the following commands: check Check the SMBIOS table for consistency. exit Leave the tool. help Show available commands. save Save the SMBIOS table to a file on the EFI system partition. The file can be further analyzed with the dmidecode command line tool:: dmidecode --from-dump <filename> Specifying 'nocolor' as load option data suppresses colored output and clearing of the screen. Signed-off-by: Heinrich Schuchardt <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2024-01-09smbios: smbios.h should not import ofnode.hHeinrich Schuchardt
The smbios.h include does not use any definitions from ofnode.h. So don't include it. As DECLARE_GLOBAL_DATA_PTR is no longer defined via dm/of.h we need to add it to efi_smbios.c. Add now missing includes to smbios-parser.c. Remove a superfluous check comparing the sizes of the SMBIOS 2.1 and SMBIOS 3.0 anchors. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-09cpu: riscv: set correct SMBIOS processor family valueHeinrich Schuchardt
The SMBIOS specification requires to set the processor family in the type 4 (Processor Information) table to specific values depending only on the bitness of the system (0x200 for RV32 and 0x201 for RV64). With this patch dmidecode shows Handle 0x0004, DMI type 4, 48 bytes Processor Information Socket Designation: Not Specified Type: Central Processor Family: RV64 for qemu-riscv64_smode_defconfig. Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-01-09smbios: enable setting processor family > 0xffHeinrich Schuchardt
Many value of processor type exceed 0xff and have to be stored as u16 value. In the type 4 table set processor_family = 0xfe signaling that field processor_family2 is used and write the actual value into the processor_family2 field. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-09lib: smbios: verify_checksum() is duplicateHeinrich Schuchardt
The function verify_checksum() duplicates what table_compute_checksum() does. Replace it. table_compute_checksum() is always compiled. Fixes: 415eab0655a8 ("smbios: add parsing API") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-01-09lib: make table_compute_checksum() arguments constHeinrich Schuchardt
table_compute_checksum() does neither changes the content of the checksummed buffer nor the buffer length. Adding const to the definition makes the function wider usable. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-01-09rng: detect RISC-V Zkr RNG device in bind methodHeinrich Schuchardt
The existence of devices should be checked in the bind method and not in the probe method. Adjust the RISC-V Zkr RNG driver accordingly. Use ENOENT (and not ENODEV) to signal that the device is not available. Fixes: ceec977ba1a9 ("rng: Provide a RNG based on the RISC-V Zkr ISA extension") Reported-by: Andre Przywara <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-01-09rng: fix ARMv8.5 RNDR driverHeinrich Schuchardt
In different parts of our code we assume that the first RNG device is the one to be used. Therefore it is preferable to detect the availability of the RNDR register already in the bind method. For signaling the non-existence of a device the driver model requires using ENOENT (and not ENODEV). Fixes: 31565bb0aa2d ("driver: rng: Add DM_RNG interface for ARMv8.5 RNDR registers") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Tested-by: Andre Przywara <[email protected]>
2024-01-08Merge tag 'u-boot-imx-master-20240108' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx - Removed fdt_addr from verdin-imx8mm to fix booting via bootefi. - Support Ethernet PHY autodection on Data Modul i.MX8M Mini/Plus eDM SBC - Add i.MX93 binman support - Add support for imx93-var-som
2024-01-08Add imx93-var-som supportMathieu Othacehe
Add support for the Variscite VAR-SOM-IMX93 evaluation kit. The SoM consists of an NXP iMX93 dual A55 CPU. The SoM is mounted on a Variscite Symphony SBC. Signed-off-by: Mathieu Othacehe <[email protected]>
2024-01-08imx9: imx93_evk: Add binman support.Mathieu Othacehe
Signed-off-by: Mathieu Othacehe <[email protected]>
2024-01-08mach-imx: Add i.MX93 binman support.Mathieu Othacehe
Add dedicated Makefile targets for the i.MX93 and a new imx93-u-boot.dtsi device-tree to create binman images. Signed-off-by: Mathieu Othacehe <[email protected]>
2024-01-08spl: binman: Disable u_boot_any symbols for i.MX93 boardsMathieu Othacehe
This is extending commit 6516c9b349b3 ("spl: binman: Disable u_boot_any symbols for i.MX8M boards") to i.MX93 boards. Signed-off-by: Mathieu Othacehe <[email protected]>
2024-01-08verdin-imx8mm: Remove stale fdt_addr env variableFrancesco Dolcini
fdt_addr variable is the location in flash of the device tree blob [1], it does not exist for verdin-imx8mm. Because of this the bootefi command fails unless the optional `[fdt address]` parameter is passed on the command line, bootefi.c:efi_install_fdt() assumes that `fdt_addr` is valid when present. Fix this removing fdt_addr from the U-Boot environment. [1] doc/usage/environment.rst Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2024-01-08ARM: imx: Auto-detect PHY on Data Modul i.MX8M Mini/Plus eDM SBCMarek Vasut
Implement fdtdec_board_setup() auto-detection of ethernet PHY. This uses properties of the hardware and pull resistor placement. If GPIO1_16 RGMII_MDC is HIGH, then R530 (MX8MM eDM SBC) or R390 (MX8MP eDM SBC) is populated. R530 or R390 is populated only on boards with AR8031 PHY. If GPIO1_16 RGMII_MDC is LOW, then the in-SoM pull down is the dominant pull resistor. This is the case on boards with BCM54213PE PHY. In case AR8031 PHY is populated, the PHY MDIO address is 0, in case BCM54213PE PHY is populated, the PHY MDIO address is 1, the fdtdec_board_setup() is used to patch the correct address into the U-Boot control DT. Enable broadcom PHY support to support both PHYs. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2024-01-08Merge branch 'next'Tom Rini
2024-01-08Prepare v2024.01v2024.01Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2024-01-08Merge tag 'dm-next-7jan23' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dm into next switch to SMBIOS3 tables allow devicetree from bloblist ACPI support for ARM and RISC-V
2024-01-07arm: enable support for QEMU firmware tablesHeinrich Schuchardt
Enable the QEMU firmware interface if ACPI tables are to be supported on the QEMU platform. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-01-07configs: qemu: add config fragment for ACPIHeinrich Schuchardt
Provide a configuration fragment to enable ACPI on QEMU. Signed-off-by: Heinrich Schuchardt <[email protected]> Acked-by: Ilias Apalodimas <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-07riscv: allow usage of ACPIHeinrich Schuchardt
Select CONFIG_SUPPORT_ACPI to allow usage of ACPI tables with RISC-V. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-07riscv: add support for QEMU firmware tablesHeinrich Schuchardt
Enable the QEMU firmware interface if ACPI tables are to be supported on the QEMU platform. Enable the QFW MMIO interface if the QEMU firmware interface is enabled. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-01-07acpi: enable writing ACPI tables on QEMUHeinrich Schuchardt
Invoke write_acpi_tables() via EVT_LAST_STAGE_INIT on QEMU except on X86. X86 calls write_acpi_tables() in write_tables(). Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-07riscv: add ACPI fields to global dataHeinrich Schuchardt
Add fields for the location of ACPI tables to the global data. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2024-01-07arm: add ACPI fields to global dataHeinrich Schuchardt
Add fields for the location of ACPI tables to the global data. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-07acpi: carve out qfw_acpi.cHeinrich Schuchardt
Move the code related to copying tables from QEMU to a separate code module. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-01-07acpi: Kconfig symbol CONFIG_QFW_ACPIHeinrich Schuchardt
We have two implementations of write_acpi_tables(). One for writing ACPI tables based on ACPI_WRITER() entries another based on copying tables from QEMU. Create a symbol CONFIG_QFW_ACPI that signifies copying ACPI tables from QEMU and use it consistently. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-07acpi: support 64bit in acpi_find_table for DSDT and FACSHeinrich Schuchardt
Use X_DSDT and X_FIRMWARE_CTRL if available. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Rebased on -next to use nomap: Signed-off-by: Simon Glass <[email protected]>
2024-01-07cmd: acpi: check HW reduced flag in acpi listHeinrich Schuchardt
On non x86 platforms the hardware reduce flag must be set in the FADT table. Write an error message if the flag is missing. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Rebased on -next to use nomap, add hyphens: Signed-off-by: Simon Glass <[email protected]>
2024-01-07cmd: acpi: fix listing DSDT and FACSHeinrich Schuchardt
If field X_FIRMWARE_CTRL is filled, field FIRMWARE must be ignored. If field X_DSDT is filled, field DSDT must be ignored. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Rebased on -next to use nomap: Signed-off-by: Simon Glass <[email protected]>
2024-01-07acpi: use 64-bit addresses in FADT tableHeinrich Schuchardt
Fields X_FIRMWAE_CTRL and X_DSDT must be 64bit wide. Convert pointers to to uintptr_t to fill these. If field X_FIRMWARE_CTRL is filled, field FIRMWARE must be ignored. If field X_DSDT is filled, field DSDT must be ignored. We should not fill unused fields. See the field definitions in chapter "5.2.9 Fixed ACPI Description Table (FADT)" of the ACPI Specification 6.5. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-01-07fdt: Allow the devicetree to come from a bloblistSimon Glass
Standard passage provides for a bloblist to be passed from one firmware phase to the next. That can be used to pass the devicetree along as well. Add an option to support this. Tests for this will be added as part of the Universal Payload work. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-01-07efi: Correct smbios-table installationSimon Glass
At present this code allocates memory when writing the tables and then unnecessarily adds another memory map when installing it. Adjust the code to allocate the tables using the normal U-Boot mechanism. This avoids doing an EFI memory allocation early in U-Boot, which may use memory that would be overwritten by a 'load' command, for example. Signed-off-by: Simon Glass <[email protected]>
2024-01-07acpi: Write pointers to tables instead of addressesSimon Glass
Sandbox uses an API to map between addresses and pointers. This allows it to have (emulated) memory at zero and avoid arch-specific addressing details. It also allows memory-mapped peripherals to work. As an example, on many machines sandbox maps address 100 to pointer value 10000000. However this is not correct for ACPI, if sandbox starts another program (e.g EFI app) and passes it the tables. That app has no knowledge of sandbox's address mapping. So to make this work we want to store 10000000 as the value in the table. Add two new 'nomap' functions which clearly make this exeption to how sandbox works. This should allow EFI apps to access ACPI tables with sandbox, e.g. for testing purposes. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Heinrich Schuchardt <[email protected]>
2024-01-07acpi: Rename test dm_test_setup_ctx_and_base_tables()Simon Glass
Use the word 'acpi' in this test so that it runs along with all the other ACPI tests. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2024-01-07efi: smbios: Drop support for SMBIOS2 tablesSimon Glass
Only the v3 table is supported now, so always use this when installing the EFI table. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2024-01-07smbios: Drop support for SMBIOS2 tablesSimon Glass
These tables are a pain since there is no way to handle memory above 4GB. Use SMBIOS3 always. This should hopefully not create problems on x86 devices, since SMBIOS3 was released seven years ago (2015). Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Peter Robinson <[email protected]>