aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-05-01doc: correct description of 'env print -e'Heinrich Schuchardt
If 'env print -e' is invoked without variable name, all UEFI variables are listed. Describe that 'env print -e' requires CONFIG_HEXDUMP=y to print content of UEFI variables. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-05-01efi_loader: do not install dtb if bootmgr failsHeinrich Schuchardt
If the UEFI boot manager fails there is no point in installing the device-tree as a configuration table. Unload image if device-tree cannot be installed. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-05-01efi_loader: improve error handling in try_load_entry()Heinrich Schuchardt
The image is not unloaded if a security violation occurs. If efi_set_load_options() fails, we do not free the memory allocated for the optional data. We do not unload the image. * Unload the image if a security violation occurs. * Free load_options if efi_set_load_options() fails. * Unload the image if efi_set_load_options() fails. Fixes: 53f6a5aa8626 ("efi_loader: Replace config option for initrd loading") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-05-01cmd: terminate efidebug test bootmgr early on errorHeinrich Schuchardt
If efi_bootmgr_load() fails, there is no point in trying to start an image that has not been loaded. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-05-01efi_loader: superfluous efi_restore_gd after EFI_CALLHeinrich Schuchardt
EFI_CALL() invokes __efi_entry_check() which executes set_gd(efi_gd). There is no need to execute set_gd(efi_gd) again via efi_restore_gd(). Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-04-29Merge patch series "Update PHYTEC SOM Detection"Tom Rini
Daniel Schultz <d.schultz@phytec.de> says: This patch series extends PHYTEC's SOM detection by minor fixes, a generic helper function and a new valid flag. Moreover, it adds a module to provide access to the SOM detection for our TI AM6 products.
2024-04-29board: phytec: Add SOM detection for AM6xDaniel Schultz
Add all functions to read each SOM option from the EEPROM image and detect whether it's the correct product for this image. Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-04-29board: phytec: common: Fix eepom is empty checkDaniel Schultz
The ptr variable is currently defined as int and sizeof returns the size of the eeprom data struct as Byte (32 in total). In case the eeprom is empty, the check, if the eeprom is empty, will most likely stop after 8 iterations because it will continue with the stack which should contain some data. Therefore, the init function will detect an empty EEPROM as API0 and return with the valid flag set to True. Fixes: dc22188cdc8 ("board: phytec: Add common PHYTEC SoM detection") Signed-off-by: Daniel Schultz <d.schultz@phytec.de> Reviewed-by: Teresa Remmet <t.remmet@phytec.de>
2024-04-29board: phytec: check eeprom_data validityYannic Moog
For all of the functions that access the eeprom_data, make sure these data are valid. Use the valid member of the phytec_eeprom_data struct. This fixes a bug where only the API revision check guarded against accessing rubbish. But if API revision was e.g. 6, eeprom setup failed before, but phytec_get_imx8m_eth would still happily access the data. Fixes: dc22188cdc8 ("board: phytec: Add common PHYTEC SoM detection") Signed-off-by: Yannic Moog <y.moog@phytec.de> Signed-off-by: Daniel Schultz <d.schultz@phytec.de> Reviewed-by: Teresa Remmet <t.remmet@phytec.de>
2024-04-29board: phytec: introduce eeprom struct member 'valid'Yannic Moog
Add a new nember to the eeprom_data that indicates whether the associated data is valid or not. Make use of this new member in the phytec_eeprom_data_init function by setting the valid value appropriately. Move the eeprom data to a new struct payload that holds the payload of the eeprom. Signed-off-by: Yannic Moog <y.moog@phytec.de> Signed-off-by: Daniel Schultz <d.schultz@phytec.de> Reviewed-by: Teresa Remmet <t.remmet@phytec.de>
2024-04-29board: phytec: common: Generic "add extension" functionDaniel Schultz
Add a generic function to apply overlays in our board code to not implement the same logic in different PHYTEC products. Signed-off-by: Daniel Schultz <d.schultz@phytec.de> Reviewed-by: Teresa Remmet <t.remmet@phytec.de>
2024-04-29Merge patch series "*** Migrate some PHYTEC boards to OF_UPSTREAM ***"Tom Rini
Wadim Egorov <w.egorov@phytec.de> says: Migrate the boards I maintain to OF_UPSTREAM.
2024-04-29phycore-rk3288: Migrate to OF_UPSTREAMWadim Egorov
The phycore-rk3288 can be migrated to OF_UPSTREAM. Drop redundant device tree files, update MAINTAINERS and defconfig's DEFAULT_DEVICE_TREE for rockchip vendor prefix accordingly. Move device tree nodes required for u-boot to rk3288-phycore-rdk-u-boot.dtsi such as chosen, i2c_eeprom_id and it's alias. Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2024-04-29phycore-am64x: Migrate to OF_UPSTREAMWadim Egorov
The phycore-am64x can be migrated to OF_UPSTREAM. Drop redundant device tree files, update MAINTAINERS and defconfig's DEFAULT_DEVICE_TREE for ti vendor prefix accordingly. While at it, drop the redundant definitions of AM642_PHYBOARD_ELECTRA_DTB & SPL_AM642_PHYBOARD_ELECTRA_DTB from the binman dtsi file. Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2024-04-29phycore-am62x: Migrate to OF_UPSTREAMWadim Egorov
The phycore-am62x can be migrated to OF_UPSTREAM. Drop redundant device tree files, update MAINTAINERS and defconfig's DEFAULT_DEVICE_TREE for ti vendor prefix accordingly. Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2024-04-29Merge patch series "Fix MMC tuning algorithm"Tom Rini
Judith Mendez <jm@ti.com> says: The following patch series includes a MMC tuning algorithm fix according to the following published paper [0]. This seris also includes fixes for OTAP/ITAP delay values in j721e_4bit_sdhci_set_ios_post and for HS400 mode. For DDR52 mode, also set ENDLL=1 and call am654_sdhci_setup_dll() instead of am654_sdhci_setup_delay_chain() according to device datasheet[1]. [0] https://www.ti.com/lit/an/spract9/spract9.pdf [1] https://www.ti.com/lit/ds/symlink/am62p.pdf
2024-04-29mmc: am654_sdhci: Fix ITAPDLY for HS400 timingJudith Mendez
At HS400 mode the ITAPDLY value is that from High Speed mode which is incorrect and may cause boot failures. The ITAPDLY for HS400 speed mode should be the same as ITAPDLY as HS200 timing after tuning is executed. Add the functionality to save ITAPDLY from HS200 tuning and save as HS400 ITAPDLY. Fixes: c964447ea3d6 ("mmc: am654_sdhci: Add support for input tap delay") Signed-off-by: Judith Mendez <jm@ti.com>
2024-04-29mmc: am654_sdhci: Set ENDLL=1 for DDR52 modeJudith Mendez
According to the device datasheet [0], ENDLL=1 for DDR52 mode, so call am654_sdhci_setup_dll() and write itapdly after since we do not carry out tuning. [0] https://www.ti.com/lit/ds/symlink/am62p.pdf Fixes: c964447ea3d6 ("mmc: am654_sdhci: Add support for input tap delay") Signed-off-by: Judith Mendez <jm@ti.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2024-04-29mmc: am654_sdhci: Add itap_del_ena[] to store itapdlyena bitJudith Mendez
Set itap_del_ena if ITAPDLY is found in DT or if the tuning algorithm was executed and found the optimal ITAPDLY. Add the functionality to save ITAPDLYENA that can be referenced later by storing the bit in array itap_del_ena[]. Signed-off-by: Judith Mendez <jm@ti.com>
2024-04-29mmc: am654_sdhci: Fix OTAP/ITAP delay valuesNitin Yadav
U-Boot is failing to boot class U1 UHS SD cards due to incorrect OTAP and ITAP delay select values. Update OTAP and ITAP delay select values from DT. Fixes: c7d106b4eb3 ("mmc: am654_sdhci: Update output tap delay writes") Signed-off-by: Nitin Yadav <n-yadav@ti.com> Signed-off-by: Judith Mendez <jm@ti.com>
2024-04-29mmc: am654_sdhci: Add tuning algorithm for delay chainJudith Mendez
Currently the sdhci_am654 driver only supports one tuning algorithm which should be used only when DLL is enabled. The ITAPDLY is selected from the largest passing window and the buffer is viewed as a circular buffer. The new tuning algorithm should be used when the delay chain is enabled; the ITAPDLY is selected from the largest passing window and the buffer is not viewed as a circular buffer. This implementation is based off of the following paper: [1]. Also add support for multiple failing windows. [1] https://www.ti.com/lit/an/spract9/spract9.pdf Fixes: a759abf569d4 ("mmc: am654_sdhci: Add support for software tuning") Signed-off-by: Judith Mendez <jm@ti.com>
2024-04-29Merge patch series "upstream DT compatibility"Tom Rini
Caleb Connolly <caleb.connolly@linaro.org> says: This is a subset of [1]. With more platform maintainers switching to OF_UPSTREAM I didn't want to get in the way (it has also proven more difficult than I hoped to remove only the fully compatible header files). This series removes only the dt-bindings headers which contain generic data like GPIO flags, input event codes, etc. It then implements support for building all DTBs for a vendor with OF_UPSTREAM_BUILD_VENDOR. This removes the need to maintain a set list of DTBs that can be built by U-Boot and opens up the possibility of new boards becoming supported "by default" just by landing their DT upstream. [1]: https://lore.kernel.org/u-boot/20240321-b4-upstream-dt-headers-v2-0-1eac0df875fe@linaro.org
2024-04-29dts: support building all dtb files for a specific vendorCaleb Connolly
This adjusts OF_UPSTREAM to behave more like the kernel by allowing for all the devicetree files for a given vendor to be compiled. This is useful for Qualcomm in particular as most boards are supported by a single U-Boot build just provided with a different DT. Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on Amlogic boards builds
2024-04-29dt-bindings: drop generic headersCaleb Connolly
Drop all the subsystem headers that are compatible with the headers in dts/upstream. Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2024-04-29arm: dts: imx6dl-brppt2: fix gpio.h includeCaleb Connolly
The "include" directory was included in the include path... Remove it. Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
2024-04-29Merge patch series "Enable ICSSG Ethernet Driver for AM65x"Tom Rini
MD Danish Anwar <danishanwar@ti.com> says: The series introduces device tree and config changes and AM65x to enable ICSSG driver. The series also enables SPL_LOAD_FIT_APPLY_OVERLAY for AM65x in order to load overlay over spl. The ICSSG2 node is added in device tree overlay so that it remains in sync with linux kernel. This series has been tested on AM65x SR2.0, and the ICSSG interface is able to ping / dhcp and boot kernel using tftp in uboot. The users need to set env variables fw_storage_interface, fw_dev_part, fw_ubi_mtdpart, fw_ubi_volume to indicate which storage medium and partition they want to use to load firmware files from. By default the env fw_storage_interface=mmc and fw_dev_part=1:2 but users can modify these envs as per their requirements.
2024-04-29board: ti: am65x: Set fw_storage_interface and fw_dev_part ENVsMD Danish Anwar
When ICSSG driver is enabled (CONFIG_TI_ICSSG_PRUETH=y) set storage_interface and fw_dev_part env variables. These variables need be set appropriately in order to load differnet ICSSG firmwares needed for ICSSG driver. By default the storage interface is mmc and the partition is 1:2. User can modify this based on their needs. Signed-off-by: MD Danish Anwar <danishanwar@ti.com> Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29board: ti: am65x: Add check for k3-am654-icssg2 in board_fit_config_match()MD Danish Anwar
When CONFIG_TI_ICSSG_PRUETH is enabled, add config name check for the icssg2 overlay in board_fit_config_match() API. Signed-off-by: MD Danish Anwar <danishanwar@ti.com> Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29configs: am65x_evm_a53: add SPL_LOAD_FIT_APPLY_OVERLAYMD Danish Anwar
We want SPL to apply DTB overlays (e.g. ICSSG2 overlay) so enable SPL_LOAD_FIT_APPLY_OVERLAY. Signed-off-by: MD Danish Anwar <danishanwar@ti.com> Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29configs: am65x_evm_a53: Enable ICSSG DriverMD Danish Anwar
Enable ICSSG driver in am65x_evm_a53_defconfig Signed-off-by: MD Danish Anwar <danishanwar@ti.com> Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29arm: dts: k3-am65x-binman: Add ICSSG2 overlay and configurationMD Danish Anwar
Add ICSSG2 overlay and configuration to tispl and u-boot images. Signed-off-by: MD Danish Anwar <danishanwar@ti.com> Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29arm: dts: k3-am654-base-board: Add ICSSG2 Ethernet supportMD Danish Anwar
ICSSG2 provides dual Gigabit Ethernet support. Add ICSSG2 ethernet node to an overlay k3-am654-icssg2.dtso Signed-off-by: MD Danish Anwar <danishanwar@ti.com> Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29arm: mach-k3: am62ax: Fix typo in ROM data macro nameAndrew Davis
s/ENTENDED/EXTENDED Signed-off-by: Andrew Davis <afd@ti.com>
2024-04-29.gitignore: add LTO generated fileRobert Marko
Currently, keep-syms-lto.c is being generated if LTO is enabled but unlike keep-syms-lto.o it is not being ignored, so lets add keep-syms-lto.* to .gitignore. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2024-04-29cmd: CONFIG_CMD_BLOBLIST must depend on CONFIG_BLOBLISTHeinrich Schuchardt
With CONFIG_CMD_BLOBLIST=y, CONFIG_BLOBLIST=n linker errors occur: usr/bin/ld: cmd/bloblist.o: in function `do_bloblist_list': cmd/bloblist.c:27:(.text.do_bloblist_list+0x6): undefined reference to `bloblist_show_list' /usr/bin/ld: cmd/bloblist.o: in function `do_bloblist_info': cmd/bloblist.c:19:(.text.do_bloblist_info+0x6): undefined reference to `bloblist_show_stats' Fixes: 4aed22762303 ("bloblist: Add a command") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-04-29arm: mach-k3: am642: Fix reset for workaround errata ID i2331Andrew Davis
To workaround an issue in AM642 we reset the SoC in early boot. For that we first probed the sysreset driver by calling uclass_get_device(). The ti-sci sysreset driver is now probed during the ti-sci firmware probe. Update this call to probe the firmware driver which will then probe the sysreset driver allowing do_reset() to again function as expected. Reported-by: Jonathan Humphreys <j-humphreys@ti.com> Fixes: fc5d40283483 ("firmware: ti_sci: Bind sysreset driver when enabled") Signed-off-by: Andrew Davis <afd@ti.com> Tested-by: Wadim Egorov <w.egorov@phytec.de> Tested-by: Kamlesh Gurudasani <kamlesh@ti.com>
2024-04-29mailmap: add entry for AKASHI TakahiroHeinrich Schuchardt
Akashi-san's Linaro email address in not valid anymore. Cc: AKASHI Takahiro <akashi.tkhro@gmail.com> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-04-29board: toradex: verdin-am62: Remove not needed env variablesFrancesco Dolcini
Remove not needed variables from environment. - boot_scripts is not needed, the default value is just fine and already includes boot.scr - setup variable used to be executed from some bootscript, however it's not required and there is no point on having this small helper here Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2024-04-29.gitignore: Add files produced by TI platformAndrea Calabrese
Add files produced by compilation of TI platforms: *.ti-secure(-rom) *.map *-board-config custMpk.pem *.bin_* *.fit *.itb tispl.bin_unsigned Signed-off-by: Andrea Calabrese <andrea.calabrese@amarulasolutions.com>
2024-04-29arm: dts: verdin-am62: use gpio-hog for sleep mociStefan Eichenberger
In Linux, we allow sleep moci to be turned off when the carrier board supports it and the system is in suspend. In U-Boot, however, we want the sleep moci to be always on. So we use a gpio hog and disable the regulator. This change is necessary because we switched to upstream device tree files with commit c07bba7a2c7e ("verdin-am62: move verdin am62 to OF_UPSTREAM"). A recent upstream patch removes the gpio hog from the Linux device tree, so we need to add it to the u-boot dtsi. The following patch will remove the gpio hog from the Linux device tree: https://lore.kernel.org/linux-devicetree/20240301084901.16656-1-eichest@gmail.com/ The U-Boot patch can be applied without it and will not break the build. Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
2024-04-29board: ti: j721e: Add support for both esm probeUdit Kumar
At present only MCU domain ESM is probed, this means errors occurred in mcu domain will be propagate to MCU_SAFETY_ERRORn. MCU ESM accepts SOC_SAFETY_ERRORn signal as Error event and propagate to MCU_SAFETY_ERRORn.[0] Therefore adding support to probe both main domain and mcu domain ESM. [0]: https://www.ti.com/lit/zip/spruil1 spruil1c.pdf from zip Figure 12-1244. ESM Modules Overview Signed-off-by: Udit Kumar <u-kumar1@ti.com> Reviewed-by: Keerthy <j-keerthy@ti.com>
2024-04-29configs: am62px_evm_a53_defconfig: Enable MMC UHS config optionJudith Mendez
Enable MMC UHS support for to allow to enter the UHS modes for MMC1. Signed-off-by: Judith Mendez <jm@ti.com> Acked-by: Bryan Brattlof <bb@ti.com>
2024-04-29Makefile: don't add -Wno-maybe-uninitialized twiceHeinrich Schuchardt
Avoid adding the same flag to KBUILD_CFLAGS twice. Fixes: 8602d97ca2cf ("Makefile: avoid false positive -Wmaybe-uninitialized") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
2024-04-29arm: dts: k3-am625-verdin: add tifsstub to tispl.binParth Pancholi
Adds tifsstub binaries, this is required for deepsleep functionality. This implements the same change as commit 128f81290b7d ("arm: dts: k3: binman: am625: add support for signing TIFSSTUB Images") did for TI AM62 SK board. Signed-off-by: Parth Pancholi <parth.pancholi@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2024-04-29Merge tag 'u-boot-imx-master-20240429' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/20563 - Fix missing fdt_fixup on colibri-imx(6ull|imx7). - Enable PCIe and NVMe on DH i.MX8M Plus DHCOM PDK3. - Convert i.MX8M flash.bin image generation to binman - Convert imx93-11x11-evk to OF_UPSTREAM.
2024-04-29Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-pmicTom Rini
2024-04-29power: pmic: tps65941: Update compatible to aling with kernel DTUdit Kumar
Linux kernel driver drivers/mfd/tps6594-i2c.c is using different name for compatible for tps6594 family PMIC. After sync of Linux kernel DT to u-boot for TI platforms J7200, J721S2 and J784S4 PMIC is no longer getting probed. So updating compatible field to align with Linux driver and DT. Signed-off-by: Udit Kumar <u-kumar1@ti.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2024-04-29power: regulator: tps65941: Add TPS65224 PMIC regulator supportBhargav Raviprakash
Reuse TPS65941 regulator driver to adds support for TPS65224 PMIC's regulators. 4 BUCKs and 3 LDOs, where BUCK1 and BUCK2 can be configured in dual phase mode. Signed-off-by: Bhargav Raviprakash <bhargav.r@ltts.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2024-04-29power: regulator: tps65941: use function callbacks for conversion opsBhargav Raviprakash
Use function callbacks for volt2val, val2volt and slewrate lookups. This makes it easier to add support for TPS65224 PMIC regulators. Signed-off-by: Bhargav Raviprakash <bhargav.r@ltts.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2024-04-29power: regulator: tps65941: Added macros for BUCK IDBhargav Raviprakash
Adds macros for buck and ldo ids and switched to using switch case instead of if else in probe functions. Helps in adding support for TPS65224 PMIC. Signed-off-by: Bhargav Raviprakash <bhargav.r@ltts.com> Reviewed-by: Dhruva Gole <d-gole@ti.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>