summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-06-09Merge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-riscv ↵Tom Rini
into next CI: https://source.denx.de/u-boot/custodians/u-boot-riscv/-/pipelines/26569 - SoC: add SPL support for licheepi4a - RISC-V: raise SPL_SYS_MALLOC_SIZE to 8 MiB
2025-06-09MAINTAINERS: riscv: cpu: th1520: Assign myself as maintainerYao Zi
Assign myself to develop U-Boot port of T-Head TH1520 SoC, and help maintain related code and review patches. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-09doc: thead: lpi4a: Update for S-Mode proper U-Boot supportYao Zi
Proper U-Boot for Lichee Pi 4A now runs in S mode instead of M mode, which means the extra firmware, OpenSBI, must be built and integrated in the image, and the vendor U-Boot cannot chainload the result image anymore as it runs in M mode. Remove redundant information about chainloading and update build steps to mention OpenSBI firmware. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-09board: thead: licheepi4a: Run proper U-Boot in S-ModeYao Zi
RISC-V software usually expects S mode when leaving the firmware, e.g. UEFI applications could only run in S mode. Let's convert proper U-Boot of Lichee Pi 4A port to run in S mode. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-09riscv: dts: th1520: Prepare binman configuration for loading OpenSBIYao Zi
Add an OpenSBI entry to the FIT image. As it expects an FDT to be passed, corresponding FDT entry is generated with of-list as well. As SPL now passes a full FDT for following stages, proper U-Boot image is packed into u-boot-with-spl.bin without a devicetree copy included. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-09riscv: cpu: th1520: Support cache enabling/disabling in M mode onlyYao Zi
These operations rely on a customized M-mode CSR, MHCR, which isn't available when running in S mode. Let's fallback to the generic weak stub when running in S mode to avoid illegal accesses. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-09riscv: cpu: th1520: Build spl.c for SPL onlyYao Zi
Symbols in spl.c only function correctly in SPL stage. Build the file for SPL only to avoid weak symbols in proper U-Boot being unexpectedly reloaded. Fixes: 5fe9ced3552 ("riscv: cpu: Add TH1520 CPU support") Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-09configs: raise SPL_SYS_MALLOC_SIZE to 8 MiB on RISC-VHeinrich Schuchardt
On several RISC-V boards we have seen that 1 MiB is a insufficient value for CONFIG_SPL_SYS_MALLOC_SIZE. For instance qemu-riscv32_spl_defconfig fails booting because u-boot.itb exceeds 1 MiB. 8 MiB is a reasonable value that allows adding FPGA blobs or splash images to main U-boot. Reported-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-08Merge tag 'u-boot-rockchip-20250606' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-rockchip CI: https://source.denx.de/u-boot/custodians/u-boot-rockchip/-/pipelines/26117 - Allow to silent TPL/SPL debug console; - enable exFAT support for Theobroma boards; - Fix SD power initialization in SPL for rk3399-nanopi4
2025-06-07Merge tag 'doc-2025-07-rc4' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request doc-2025-07-rc4 Documentation: * fix typo in gcc.rst * correct EFI_TCG2_PROTOCOL_MEASURE_DTB description * Add missing reference to firmware for BB-AI64 * Tidy up the bootefi-command docs
2025-06-07doc: build: fix typo in gcc.rstBehradElmi
Fix a typo error in gcc.rst, changing "out-out-tree" to "out-of-tree" in the Out-of-tree section. Signed-off-by: BehradElmi <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2025-06-07doc: efi_loader: Tidy up the bootefi-command docsSimon Glass
There are backslashes in some of the tags which seems to be unnecessary. Remove then. Change the word 'either' to 'any' since there are three options. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2025-06-07doc: board: ti: Add missing firmware for BB-AI64Peter Robinson
The details of the sysfw.itb from the R5 build that also needs to be copied as part of the target images is missing, but is included in the image formats a little further down, so add it to the instructions. Signed-off-by: Peter Robinson <[email protected]> Reviewed-by: Dhruva Gole <[email protected]> Acked-by: Nishanth Menon <[email protected]>
2025-06-07efi_loader: correct EFI_TCG2_PROTOCOL_MEASURE_DTB descriptionHeinrich Schuchardt
%s/data that change/data that changes/ %s/cannot be used has/cannot be used for/ %s/Otherwise/Otherwise,/ %s/allows better measurement/allows for better measurement/ Acked-by: Ilias Apalodimas <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-06-06Merge patch series "Remove as much arch/arm/dts/*.h as possible"Tom Rini
Tom Rini <[email protected]> says: Taking inspiration from Heiko's patch[1] this series goes and cleans up all of the arch/arm/dts/*.h files that can be easily removed. The big challenge I ran in to here was that for some platforms that aren't using OF_UPSTREAM were didn't have a sufficiently deep search path to find files there rather than arch/arm/dts. This also showed that only ARM had local header files to deal with. [1]: https://lore.kernel.org/u-boot/[email protected]/ Link: https://lore.kernel.org/r/[email protected]
2025-06-06nxp: Remove local arch/arm/dts/imx8mm-pinfunc.hTom Rini
We have this file in both arch/arm/dts and dts/upstream/src/arm64/freescale. This file is identical save for changes which have been made upstream. Remove our local copy to get in sync with upstream now. Acked-by: Peng Fan <[email protected]> Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-06-06atmel: Remove local arch/arm/dts/{sama5d2, sama7g5}-pinfunc.hTom Rini
We have these files in both arch/arm/dts and dts/upstream/src/arm/microchip. These files are identical save for changes which have been made upstream. Remove our local copy to get in sync with upstream now. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-06-06arch/arm/dts: Remove strict subset headerTom Rini
As part of moving to using OF_UPSTREAM and so the upstream DT related header files we have a header that is under the arch/arm/dts directory and differ in being a strict subset of what is found upstream. We can remove this now to prevent future conflicts. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-06-06arch/arm/dts: Remove functionally identical headersTom Rini
As part of moving to using OF_UPSTREAM and so the upstream DT related header files we have a number of these headers that are under the arch/arm/dts directory and differ only in combinations of spacing changes and/or switching to SPDX license tags. We can remove these now to prevent future conflicts. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-06-06arch/arm/dts: Remove identical headersTom Rini
As part of moving to using OF_UPSTREAM and so the upstream DT related header files we have a number of these headers that are under the arch/arm/dts directory and are currently identical to the versions in dts/upstream. We can remove these now to prevent future conflicts. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-06-06arch/arm/dts: Remove unused headerTom Rini
As part of moving to using OF_UPSTREAM and so the upstream DT related header files we have a header that is under the arch/arm/dts directory and now unused. We can remove this now to prevent any future conflicts. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-06-06scripts/Makefile.lib: Rework upstream_dtsi_include to get subdirectoriesTom Rini
A problem with the logic in upstream_dtsi_include currently is that it does not list directories such as dts/upstream/src/arm/nxp/imx and so will not findi "imx6ul-pinfunc.h" for example as it is normally and correctly included without vendor sub-paths. Expand the current wildcard glob to catch these directories too. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-06-06include/dt-bindings: Remove headers we can safely upgradeTom Rini
As part of moving to using OF_UPSTREAM and so the upstream dt-bindings headers we have a number of these headers that are in our include directory and while they are not a strict subset of the upstream version of the headers, all platforms build with the new headers as well. We can remove the copies under include/dt-bindings now to prevent future conflicts. Signed-off-by: Tom Rini <[email protected]>
2025-06-06include/dt-bindings/reset: Remove local version of bcm6318-reset.hTom Rini
Aside from SPDX tags, the only difference between our version of this header and upstream is that BCM6318_RST_HOSTMIPS was defined to 11 (the same as BCM6318_RST_PHYMIPS) and is now defined to 12. Signed-off-by: Tom Rini <[email protected]>
2025-06-06include/dt-bindings: Remove strict subset headersTom Rini
As part of moving to using OF_UPSTREAM and so the upstream dt-bindings headers we have a number of these headers that are in our include directory and differ in being a strict subset of what is found upstream. We can safely remove the copies under include/dt-bindings now to prevent future conflicts. Signed-off-by: Tom Rini <[email protected]>
2025-06-06include/dt-bindings: Remove functionally identical headersTom Rini
As part of moving to using OF_UPSTREAM and so the upstream dt-bindings headers we have a number of these headers that are in our include directory and differ only in combinations of spacing changes and/or switching to SPDX license tags. We can safely remove the copies under include/dt-bindings now to prevent future conflicts. Signed-off-by: Tom Rini <[email protected]>
2025-06-06include/dt-bindings: Remove identical headersTom Rini
As part of moving to using OF_UPSTREAM and so the upstream dt-bindings headers we have a number of these headers that are in our include directory and are currently identical to the versions in dts/upstream. We can remove these now to prevent future conflicts. Signed-off-by: Tom Rini <[email protected]>
2025-06-06include/dt-bindings: Remove unused headersTom Rini
As part of moving to using OF_UPSTREAM and so the upstream dt-bindings headers we have a number of these headers that are in our include directory and not referenced by any code outside of dts/upstream. We can remove these now to prevent future conflicts. Signed-off-by: Tom Rini <[email protected]>
2025-06-06power: rk8xx: fix swapped mask and value in init registers for RK806Quentin Schulz
The val (the bits to set) is the second member of the reg_data structure and mask the third one. We obviously want to clear bits 6 and 7 in order to only set bit 7 in there instead of only clearing bit 7 in order to write bits 6 and 7 (which makes no sense). Fortunately, according to the datasheet, bit 6 value doesn't matter when bit 7 is set so this is essentially just a cosmetic change, no intended change in behavior. Fixes: f172575d92cd ("power: rk8xx: add support for RK806") Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06rockchip: rk3399-nanopi-4: Enable IO-domain driver in SPLJustin Klaassen
The NanoPi RK3399 boards support UHS-I (up to SDR104) SD cards, however using any of these 1.8v modes results in a boot failure in SPL upon soft reboot. The issue is that the "vcc_sdio" regulator is left at 1.8v on reboot and the corresponding GPIO defaults to 3.3v. This prevents the SD card from being reinitialized and read successfully. This change enables the RK8XX regulators and Rockchip IO-domain drivers in SPL, which initializes "vcc_sdio" regulator to 3.0v and configures the GPIO for the correct level on boot. Signed-off-by: Justin Klaassen <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06rockchip: rk3399-nanopi-4: Allow MMC driver to control SD regulatorsJustin Klaassen
This change removes the "regulator-always-on" property from the "vcc3v0_sd" (vmmc-supply) and "vcc_sdio" (vqmmc-supply) regulators, which otherwise prevents the MMC driver from being able to power cycle the SD card as part of the initialization procedure. It also removes the "regulator-boot-on" from the "vcc_sdio" regulator, which could theoretically damage a SD card that is already initialized in a low voltage mode. Signed-off-by: Justin Klaassen <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06regulator: rk8xx: Add CONFIG_SPL_REGULATOR_RK8XXJustin Klaassen
Allows use of the regulator functions of the RK8XX PMIC in SPL, which is necessary to support the functionality of the Rockchip IO-domain driver on relevant platforms. Signed-off-by: Justin Klaassen <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06rockchip: io-domain: Add CONFIG_SPL_ROCKCHIP_IODOMAINJustin Klaassen
Allows use of the Rockchip IO-domain driver in SPL to configure the GPIO to match the voltage supplied by specific regulators (e.g. "vcc_sdio"). Signed-off-by: Justin Klaassen <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06rockchip: io-domain: Add debug logging for regulators during probeJustin Klaassen
Log the value of the regulators during initialization of the IO-domain driver to aid in debugging GPIO voltage configuration problems. Signed-off-by: Justin Klaassen <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06configs: puma-rk3399: enable exFAT supportQuentin Schulz
Our upcoming Mass Flasher solution will be storing boot artifacts on an exFAT partition so enable its support. Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06configs: tiger-rk3588: enable exFAT supportQuentin Schulz
Our upcoming Mass Flasher solution will be storing boot artifacts on an exFAT partition so enable its support. Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06configs: jaguar-rk3588: enable exFAT supportQuentin Schulz
Our upcoming Mass Flasher solution will be storing boot artifacts on an exFAT partition so enable its support. Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06configs: ringneck-px30: enable exFAT supportQuentin Schulz
Our upcoming Mass Flasher solution will be storing boot artifacts on an exFAT partition so enable its support. Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06rockchip: px30: Fix hard dependency to DEBUG_UART_BOARD_INITLukasz Czechowski
Because DEBUG_UART_BOARD_INIT depends on DEBUG_UART, hard dependency to DEBUG_UART_BOARD_INIT in ROCKCHIP_PX30 can cause warnings if DEBUG_UART is disabled. The DEBUG_UART_BOARD_INIT is already implied by ARCH_ROCKCHIP entry. Remove hard dependency from ROCKCHIP_PX30, so that it will be consistent with other rockchip boards. Signed-off-by: Lukasz Czechowski <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06rockchip: px30: Weaken dependency TPL/SPL serialLukasz Czechowski
Allow to disable serial console in TPL and SPL. Weak dependency to SPL_SERIAL and TPL_SERIAL is also used in other Rockchip boards. Signed-off-by: Lukasz Czechowski <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06debug_uart: Replace debug functions with dummies if CONFIG_DEBUG_UART is not setLukasz Czechowski
In case DEBUG UART is not used, define dummy macros replacing the actual function implementations that will not be available. This allows to compile code and avoid linker errors. Redefine the DEBUG_UART_FUNCS macro if DEBUG UART is not available, to avoid compilation errors. Signed-off-by: Lukasz Czechowski <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06ram: rockchip: Fix dependency of RAM_ROCKCHIP_DEBUGLukasz Czechowski
The RAM_ROCKCHIP_DEBUG can be used only if DEBUG_UART is available. The next commit introduces changes in definition of debug uart functions, so that DEBUG_UART is required to be defined in order to initialize uart and use print functions. Signed-off-by: Lukasz Czechowski <[email protected]> Reviewed-by: Kever Yang <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2025-06-06efi: stub: Change _debug_uart_putc function to inlineLukasz Czechowski
Update definition of _debug_uart_putc to static inline. This will allow to avoid compilation warnings about unused code after introduction of patch changing debug uart functions to dummies if CONFIG_DEBUG_UART is not set. This also matches the instructions in include/debug_uart.h and provides consistency with implementations for other platforms. Signed-off-by: Lukasz Czechowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-06arm: uniphier: Change _debug_uart_putc function to inlineLukasz Czechowski
Update the definition of _debug_uart_putc to static inline. This matches the instructions in include/debug_uart.h and provides consistency with implementations for other platforms. Signed-off-by: Lukasz Czechowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-06-05arm: dts: remove k3-serdes.hHeiko Thiery
This file is a duplicate and also comes with the sync of the linux mainline dts files. By removing this the one from the dts folder should be taken that is more up-to-date. Signed-off-by: Heiko Thiery <[email protected]>
2025-06-05armv8: fix Clang warning on writing 32-bit variable to a 64-bit registerRaymond Mao
Clang is stricter than GCC when it comes to inline assembly and expects the register to be written with explicitly same type of variable. Fixes: c0e1775a867c ("armv8: Add arch-specific sysinfo platform driver") Signed-off-by: Raymond Mao <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2025-06-05scripts/setlocalversion: sync with linux v6.15Tom Rini
The changes upstream since the last sync at commit 5c02350fa03d ("scripts/setlocalversion: sync with linux v6.9") are e2ff1219a554 setlocalversion: add -e option 523f3dbc187a setlocalversion: work around "git describe" performance Signed-off-by: Tom Rini <[email protected]>
2025-06-05cmd: bootmenu: permit to select bootmenu entry with a shortcutChristian Marangi
Permit to select a bootmenu entry with a key shortcut. This is especially useful in production or testing scenario to automate flashing procedure or testing procedure. The boot entry are changed to append the shortcut key to it. Example: 1. Run default boot command. 2. Boot system via TFTP. 3. Boot production system from NAND. 4. Boot recovery system from NAND. 5. Load production system via TFTP then write to NAND. 6. Load recovery system via TFTP then write to NAND. 7. Load BL31+U-Boot FIP via TFTP then write to NAND. 8. Load BL2 preloader via TFTP then write to NAND. 9. Reboot. a. Reset all settings to factory defaults. 0. Exit 0 is always reserved for Exit to console. On pressing the keyboard key 2, the bootmenu entry 2 is selected and executed. Up to 34 key shortcut (0 excluded as reserved) are supported from 1-9 and a-z. If a shortcut key not present in the bootmenu list is pressed, it is simply ignored and eventually the autoboot is interrupted. Capital A-Z are converted to lower a-z and the related option is selected. Suggested-by: Weijie Gao <[email protected]> Signed-off-by: Christian Marangi <[email protected]> Tested-by: Petr Štetiar <[email protected]>
2025-06-05Merge patch series "Add baudrate accuracy compensation for MediaTek UART driver"Tom Rini
Weijie Gao <[email protected]> says: This patch series adds baudrate accuracy compensation for MediaTek UART driver in high-speed mode 3. Link: https://lore.kernel.org/r/[email protected]
2025-06-05serial: mediatek: enable baudrate accuracy compensationWeijie Gao
The high-speed UART from MediaTek supports baudrate accuracy compensation when using high-speed mode 3. This is done by calculating the first digit of the fraction part of sample count value. The fraction value will be then used as the reference to insert 0 to 10 sample cycle(s) to one frame (assume that frame format is 8n1, i.e. 10 bits per frame). The fracdiv_[l/m] registers are used to determine whether a bit in one frame should be inserted with one sample cycle. With typical 40MHz source clock, the actual baudrates with/without accuracy compensation are: Ideal w/o compensation w/ compensation ======== ================ =============== 9600 9603 9600 115200 114942 115207 921600 930232 921659 3000000 3076923 3007519 Signed-off-by: Weijie Gao <[email protected]>