summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-04-28Merge tag 'u-boot-stm32-20250428' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm CI: https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/25970 - Add OF_UPSTREAM flag support for STi, STM32 MCU and MPU platforms. - Add ETZPC as system bus for STM32MP1 platforms - Add RIFSC as sytem bus for STM32MP2 platforms - Update STM32MP2 board/machine support: - update cmd_stm32key. - update cmd_stm32prog. - update STM32MP25 configs. - add leds and buttons support. - add boot_mode support (USB/PXE/MMC/NOR/NAND). - add bootcmd support. - enable MMC support.
2025-04-28siemens: imx8qxp: remove unused config fileHeiko Schocher
include/configs/giedi.h is not longer used after siemens imx8qxp cleanup series, so remove it. Signed-off-by: Heiko Schocher <[email protected]>
2025-04-28arm: imx8qxp: capricorn: move env offset settingsHeiko Schocher
move the ENV_OFFSET settings from common config settings file configs/imx8qxp_capricorn.config to defconfig file for the cxg3 board, as other imx8qxp based boards from siemens has the environment on other offsets. Signed-off-by: Heiko Schocher <[email protected]>
2025-04-28siemens: capricorn: defconfig updatesWalter Schweizer
add ahab command as secure boot is used on this boards, and enable watchdog, so U-Boot triggers it. Signed-off-by: Walter Schweizer <[email protected]> for respelling commit subject and message: Signed-off-by: Heiko Schocher <[email protected]>
2025-04-28siemens: capricorn: enable text based default environmentWalter Schweizer
enable text based default U-Boot Environment by enabling CONFIG_ENV_SOURCE_FILE and adding default environment file: board/siemens/capricorn/capricorn_cxg3.env Signed-off-by: Heiko Schocher <[email protected]> Signed-off-by: Walter Schweizer <[email protected]>
2025-04-28imx8qxp: capricorn defconfig: collect common Kconfig optionsHeiko Schocher
Siemens have some defconfigs for different hardware versions, all based on mainline cxg3 board. For easier updating the downstream defconfigs, move common settings into new file. configs/imx8qxp_capricorn.config Signed-off-by: Heiko Schocher <[email protected]> Signed-off-by: Walter Schweizer <[email protected]>
2025-04-28clk: imx: Pass CCM udevice into clk_register_composite()Marek Vasut
Pass the clock controller udevice into clk_register_composite(), so it can be passed further to any registered composite clocks and used for look up of parent clock referenced in DT "clocks" and "clock-names" properties by phandle and name pair. Use the clock controller udevice in imx8m_clk_mux_set_parent() to perform accurate look up of parent clock referenced in the CCM driver by name. If the clock name that is being looked up matches one of the names listed in the clock controller DT node "clock-names" array property, then the offset of the name is looked up in the "clocks" DT property and the phandle at that offset is resolved to the parent clock udevice. The test to determine whether a particular driver instance registered with clock uclass matches the parent clock is done by comparing the OF nodes of the clock registered with clock uclass and parent clock resolved from the phandle. Example: drivers/clk/imx/clk-imx8mm.c: static const char * const imx8mm_a53_sels[] = {"osc_24m", "arm_pll_out", ... _____________| arch/arm/dts/imx8mm.dtsi: | clk: clock-controller@30380000 { v clock-names = "osc_32k", "osc_24m", ... | v clocks = <&osc_32k>, <&osc_24m>, ... }; _______________________| ... | / { v osc_24m: clock-osc-24m { compatible = "fixed-clock"; ... }; Signed-off-by: Marek Vasut <[email protected]> Reported-by: Francesco Dolcini <[email protected]> Tested-by: Fabio Estevam <[email protected]> Tested-by: Adam Ford <[email protected]> # imx8mp-beacon
2025-04-28arm64: dts: imx8mm: Make osc_32k available in SPLFabio Estevam
Since commit b4734c9c333b ("clk: imx: Convert clock-osc-* back to osc_*") SPL takes a long time to load U-Boot proper on an imx8mm-evk board. The reason for the long delay is because the osc_32k clock is not available in the SPL phase. Fix this problem by passing the 'bootph-all' and 'bootph-pre-ram' properties to make the osc_32k clock available in SPL. This also aligns with imx8mn and imx8mp-u-boot.dtsi files. Fixes: b4734c9c333b ("clk: imx: Convert clock-osc-* back to osc_*") Suggested-by: Marek Vasut <[email protected]> Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Adam Ford <[email protected]>
2025-04-28imx: power-domain: Enable refcounting on imx8mpMiquel Raynal
Prevent enabling/disabling multiple times the same power domain to avoid breakages due to the same power domains being referenced several times by different device nodes. Signed-off-by: Miquel Raynal <[email protected]>
2025-04-28power-domain: Add support for refcounting (again)Miquel Raynal
It is very surprising that such an uclass, specifically designed to handle resources that may be shared by different devices, is not keeping the count of the number of times a power domain has been enabled/disabled to avoid shutting it down unexpectedly or disabling it several times. Doing this causes troubles on eg. i.MX8MP because disabling power domains can be done in recursive loops were the same power domain disabled up to 4 times in a row. PGCs seem to have tight FSM internal timings to respect and it is easy to produce a race condition that puts the power domains in an unstable state, leading to ADB400 errors and later crashes in Linux. Some drivers implement their own mechanism for that, but it is probably best to add this feature in the uclass and share the common code across drivers. In order to avoid breaking existing drivers, refcounting is only enabled if the number of subdomains a device node supports is explicitly set in the probe function. ->xlate() callbacks will return the power domain ID which is then being used as the array index to reach the correct refcounter. As we do not want to break existing users while stile getting interesting error codes, the implementation is split between: - a low-level helper reporting error codes if the requested transition could not be operated, - a higher-level helper ignoring the "non error" codes, like EALREADY and EBUSY. CI tests using power domains are slightly updated to make sure the count of on/off calls is even and the results match what we *now* expect. They are also extended to test the low-level functions. Signed-off-by: Miquel Raynal <[email protected]>
2025-04-27board: starfive: visionfive2: Order board detection logic to match configE Shattow
Fixup previous merge resolution of this series. Intent is to ease code readability and logic to match ordering in CONFIG_OF_LIST - Remove "starfive/" string math - Remove redundant local cache of calls to get_*_from_eeprom() - Match name before EEPROM product_id in board_fit_config_name_match() - Remove single-consumer FDTFILE_* defines - Do not set fdtfile for visionfive-2-* when unknown model revision Fixes: 5a0a93a76848 ("Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-riscv") Signed-off-by: E Shattow <[email protected]>
2025-04-26sunxi: H6: Remove useless DRAM timings parameterJernej Skrabec
This is just cosmetic fix for later easier rework. Signed-off-by: Jernej Skrabec <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
2025-04-25Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-riscvTom Rini
CI: https://source.denx.de/u-boot/custodians/u-boot-riscv/-/pipelines/25940 - riscv: lib: Simplify FDT retrieving process - board: k1: pinctrl: Add pinctrl support for bananapi-f3 - binman: riscv: Fix binman_sym functionality - board: starfive: visionfive2: Reorder board detection logic - board: starfive: Add DeepComputing FML13V01 support
2025-04-25Merge tag 'efi-2025-07-rc1-3' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2025-07-rc1-3 Documentation: * add documentation for the DeepComputing FML13V01 * fix typos UEFI: * build with HII configuration protocol * print image load address in StartImage Boards: * qemu-riscv raise CONFIG_NR_DRAM_BANKS * add support for the DeepComputing FML13V01 board via starfive_visionfive2_defconfig * add UNIT_TESTS to big-endian Malta boards
2025-04-25configs: add UNIT_TESTS to big-endian Malta boardsHeinrich Schuchardt
We currently only run the unit tests on low-endian boards. We should run them on big-endian, too. Reviewed-by: Heiko Schocher <[email protected]> Reviewed-by: Daniel Schwierzeck <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25doc: jh7110: describe debug UARTHeinrich Schuchardt
Provide the settings for using the debug UART in SPL. Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25doc: starfive: use jh7110_common.rstHeinrich Schuchardt
To avoid duplicate maintenance just include jh7110_common.rst to describe the usage of the different boot sources. Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25doc: starfive: use consistent formattingHeinrich Schuchardt
Always use ---- for the H2 level. Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25doc: add DeepComputing FML13V01 documentationHeinrich Schuchardt
Describe building U-Boot for the board and booting. Carve out common information for JH7110 boards into an include. Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25board: starfive: spl: support DeepComputing FML13V01Heinrich Schuchardt
On the DeepComputing Framework motherboard (FML13V01) choose the matching FIT configuration. Reviewed-by: Hal Feng <[email protected]> Reviewed-by: Matthias Brugger <[email protected]> Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25board: starfive: DeepComputing FML13V01 fdt selectionHeinrich Schuchardt
We support all JH7110 boards with starfive_visionfive2_defconfig. The relevant device-tree is selected at runtime based on EEPROM data. Support setting $fdtfile to the file name of the DeepComputing Framework motherboard (FML13V01) device-tree. Reviewed-by: Hal Feng <[email protected]> Reviewed-by: Matthias Brugger <[email protected]> Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25riscv: dts: jh7110: add DeepComputing FML13V01 device-treeHeinrich Schuchardt
Add the u-boot device-tree include needed to support the DeepComputing Framework motherboard (FML13V01). Reviewed-by: Sumit Garg <[email protected]> Reviewed-by: Hal Feng <[email protected]> Reviewed-by: Matthias Brugger <[email protected]> Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25configs: add jh7110-deepcomputing-fml13v01 to VF2 defconfigHeinrich Schuchardt
The DeepComputing Framework motherboard is a JH7110 device support by the upstream kernel. Add its device-tree to the list of device-trees to be included into the starfive_visionfive_defconfig. Reviewed-by: Sumit Garg <[email protected]> Reviewed-by: Hal Feng <[email protected]> Reviewed-by: Matthias Brugger <[email protected]> Reviewed-by: E Shattow <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25configs: qemu-riscv raise CONFIG_NR_DRAM_BANKSHeinrich Schuchardt
The number of memory banks in QEMU is not bounded by 1. In this example we have two banks: qemu-system-riscv64 \ -machine virt \ -nographic \ -m 8192 \ -smp 8,sockets=2,cores=4,threads=1 \ -numa node,cpus=0-3,mem=4096 \ -numa node,cpus=4-7,mem=4096 \ -kernel u-boot As we will see RISC-V NUMA systems using U-Boot we should be able to emulate these. Use the default value defined in /Kconfig as 4. Reviewed-by: Leo Yu-Chi Liang <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-04-25doc: fix typo 'to'Aristo Chen
Fix typo from "to" to "do" Signed-off-by: Aristo Chen <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2025-04-25doc: fix typo commnadAristo Chen
fix typo from "commnad" to "command" Signed-off-by: Aristo Chen <[email protected]>
2025-04-25doc: arch: arm64: fix typosAristo Chen
Fix typo from "recommened" to "recommended" Signed-off-by: Aristo Chen <[email protected]>
2025-04-25doc: remove duplicated "commands"Aristo Chen
The "commands" are duplicated, so remove one of them Signed-off-by: Aristo Chen <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2025-04-25efi_loader: print image load address in StartImageHeinrich Schuchardt
When starting image add the image load address to the debug output. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2025-04-25efi_loader: build with HII configuration protocolHeinrich Schuchardt
Without the HII configuration protocol the debug version of the UEFI shell cannot be used. Signed-off-by: Heinrich Schuchardt <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2025-04-25configs: stm32mp25: enable DISTRO_DEFAULT and BOOTCOMMANDPatrice Chotard
Enable DISTRO_DEFAULT and BOOTCOMMAND flags for stm32mp25 Signed-off-by: Patrice Chotard <[email protected]> Cover-letter: arm: stm32mp: STM32MP25 machine update This series is updating STM32MP25 machine/board support: _ update cmd_stm32key. _ update cmd_stm32prog. _ update STM32MP25 configs. _ add leds and buttons support. _ add boot_mode support (USB/PXE/MMC/NOR/NAND). _ add bootcmd support. _ enable MMC support. Currently, it misses clock,reset and regulator support for STM32MP25 which will be added in a next step due to dependencies with OP-TEE. For example, due to OP-TEE dependencies, all MMC support is ready but not functional. END Series-version: 2 Series-changes: 2 - Enable DISTRO_DEFAULT and BOOTCOMMAND flags
2025-04-25arm: stm32mp: stm32prog: add support rootfs-a for OTAPatrick Delaunay
Add support of "rootfs-a" name to allow support of A/B mechanism for OTA on rootfs. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25arm: stm32mp: stm32prog: PTA BSEC is not supported on closed devicePatrick Delaunay
On closed device the PTA BSEC is never supported and the current check if PTA BSEC is supported cause a OP-TEE error: E/TC tee_ta_open_session This patch removed this warning on closed device, because the check is skipped. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25arm: stm32mp: add helper function stm32mp_is_closed()Patrick Delaunay
Add the helper function stm32mp_is_closed() to check the "closed" state in product life cycle, when product secrets have been provisioned into the device, by "secure secret provisioning" tools (SSP) for example. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25arm: stm32mp: cmd_stm32key: update command for stm32mp25xPatrice Chotard
Update key table for stm32mp25 platform. Signed-off-by: Lionel Debieve <[email protected]> Signed-off-by: Thomas Bourgoin <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25arm: stm32mp: fix package IDs for stm32mp25Patrice Chotard
Fix package IDs for stm32mp25. Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25arm: stm32mp: implement new STM32MP25 revision ID systemPatrick Delaunay
The STM32MP25 revision ID are now defined with the OTP102, this patch implements this new system. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice CHOTARD <[email protected]>
2025-04-25arm: stm32mp: disable console for UART serial bootPatrice Chotard
For UART serial boot, the console need to be deactivated to avoid issue with tools STM32CubeProgrammer. This patch adds also the missing dependency for CMD_STM32PROG_SERIAL, to allow the silent and disable console. This avoid to add is on board level for STM32MP15 (with TARGET_ST_STM32MP15X or TARGET_ST_STM32MP13X) Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25arm: stm32mp: increase EARLY_TLB_SIZE to 0x10000Patrice Chotard
Depending on Soc (STM32MP25 vs STM32MP21), the memory map can be different and it generates a different TLB page table configuration/size. Increase EARLY_TLB_SIZE to 0x10000 to fix following error message and panic: "Insufficient RAM for page table: 0xb000 > 0xa000. Please increase the size in get_page_table_size()" Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25ARM: dts: stm32: add sdmmc1 fixed clock for stm32mp257f-ev1-u-bootPatrice Chotard
Add sdmmc1 temporary fixed clock for stm32mp257f-ev1-u-boot Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25configs: stm32mp25: add PXE boot supportPatrice Chotard
Configure the required configuration to allow PXE boot, without autoload support by default. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25configs: stm32mp25: add USB host boot supportPatrice Chotard
Add support for booting from USB pen drive, since USB host port is available on the STM32MP2. Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25board: st: stm32mp2: change bootcmd for ST boardsPatrick Delaunay
For nor0 boot for the STMicroelectronics boards, the bootfs is found in SD-Card = mmc0 for nor0 boot. Introduce a new file configuration file stm32mp25_st_common.h to manage this specific behavior for the STMicroelectronics boards; change the boot order for nor0 boot and don't use the default DISTRO order define in BOOT_TARGET_DEVICES: mmc1, ubifs, mmc0, mmc2. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice CHOTARD <[email protected]>
2025-04-25configs: stm32mp25: add support of NAND and NOR bootPatrice Chotard
Add support of UBI boot and activate the needed configuration for U-Boot environment in UBI volume for NAND or in a MTD partition for NOR device, SPI Flash: ENV_OFFSET, ENV_OFFSET_REDUND, ENV_SECT_SIZE is aligned with the default MTD partition on NOR device of the STMicroelectronics boards. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25board: st: stm32mp2: add user button supportPatrick Delaunay
Handle user button 2 to force boot with STM32CubeProgrammer. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25board: st: stm32mp2: add led supportPatrick Delaunay
Add led support, force default state on U-Boot initialization and put on the Linux heartbeat led = "blue-led" during U-Boot execution. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25ARM: dts: stm32: add "u-boot,mmc-env-partition" for stm32mp257f-ev1-u-bootPatrice Chotard
Add "u-boot,mmc-env-partition" property for stm32mp257f-ev1-u-boot. Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25board: st: stm32mp2: add mmc_get_env_dev()Patrice Chotard
Use the boot instance to select the correct mmc device identifier, this patch only to save the environment on eMMC = MMC(1) on STMicroelectronics boards. Set the CONFIG_SYS_MMC_ENV_DEV to -1 to select the mmc boot instance by default. Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25board: st: stm32mp2: add env_get_location()Patrice Chotard
In case of several environment location support, env_get_location is needed to select the correct location depending of the boot device . Signed-off-by: Patrice Chotard <[email protected]>
2025-04-25arm: stm32mp: add boot_mode support for STM32MP25Patrick Delaunay
Add support of all the boot mode supported by STM32MP25x family with information provided by TF-A in backup register Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>