summaryrefslogtreecommitdiff
path: root/arch/riscv/dts
AgeCommit message (Collapse)Author
2026-08-05board: sophgo: add support for Milk-V Duo 256MHiago De Franco
Add U-Boot support for Milk-V Duo 256M. This board has a different SoC compared to the Milk-V Duo 64M, it uses the Sophgo SG2002 instead of the Sophgo CV1800B. Both SoCs share many common IP blocks, so this board reuses the existing cv1800b CPU support. The board shares the same 'board.c' with Milk-V Duo 64MB (CV1800B), so use the same file for now. Link: https://milkv.io/docs/duo/getting-started/duo256m Signed-off-by: Hiago De Franco <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2026-07-26riscv: dts: cv18xx: fix spi node nameHiago De Franco
Fix warning: arch/riscv/dts/cv18xx.dtsi:208.26-216.5: Warning (spi_bus_bridge): /soc/spi-nor@10000000: node name for SPI buses should be 'spi' Signed-off-by: Hiago De Franco <[email protected]>
2026-07-21riscv: binman: Always set default configuration in FIT imageRaymond Mao
When CONFIG_MULTI_DTB_FIT is enabled, the FIT image contains multiple device tree configurations for different boards. The default configuration must be explicitly set to ensure the FIT framework traverses all available configurations instead of falling back to CONFIG_DEFAULT_DEVICE_TREE. Without this default property, fit_find_config_node() will use CONFIG_DEFAULT_DEVICE_TREE as the configuration name to match. This prevents the SPL from correctly selecting the appropriate DTB based on runtime board detection (e.g., from EEPROM). Remove the conditional guard so that "default = conf-1" is always present in the FIT image, regardless of CONFIG_MULTI_DTB_FIT. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]>
2026-07-21spl: k1: enable SPI NOR flash detection and bootGuodong Xu
Add nor_early_init() to probe the QSPI controller and SPI NOR flash in SPL. Switch spl_boot_device() to BOOT_DEVICE_SPI so the board boots from SPI flash. Change the default device tree to k1-musepi-pro, whose u-boot overlay already defines the QSPI controller and flash node with bootph-pre-ram markers. Enable the required SPI driver model and flash config options. Signed-off-by: Guodong Xu <[email protected]>
2026-07-21board: k1: enable pmic in splRaymond Mao
Add Spacemit P1 SoC support in SPL. And set the default voltage for BUCKs and LDOs. Also update MAINTAINERS: add Guodong Xu as co-maintainer, list the u-boot-spacemit mailing list, register the new K1 driver files (i2c, PMIC, regulator), and fix a pre-existing '@@' typo in Huan Zhou's email. Fixes: 1cd239f44438 ("riscv: spacemit: bananapi_f3: initial support added") Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21spacemit: k1: Add DDR firmware support to SPLRaymond Mao
Include DDR initialization firmware in the SPL image. The firmware path can be specified via the DDR_FW_FILE environment variable. If the firmware is not found, an empty placeholder file is created to allow the build to proceed without DDR initialization support. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21spacemit: k1: add TLV EEPROM support in SPLRaymond Mao
And support for required components including clock, I2C controller, and I2C EEPROM. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21dts: k1: enable clocks in SPLRaymond Mao
Make the K1 clock controllers visible to SPL by tagging the four root fixed clocks (osc_32k, vctcxo_{1,3,24}m) and the four syscon nodes (mpmu, pll, apmu, apbc) with bootph-pre-ram in the BPI-F3 U-Boot overlay. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21spacemit: k1: enable SPL with debug UARTRaymond Mao
Add SPL support featuring debug UART output for early boot diagnostics on K1 SoC. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21dts: k1: drop legacy local DT filesGuodong Xu
The K1 build now consumes the kernel device tree via OF_UPSTREAM. The local copies under arch/riscv/dts/ (k1.dtsi, k1-pinctrl.dtsi, k1-bananapi-f3.dts) are unreachable; remove them. Signed-off-by: Guodong Xu <[email protected]>
2026-07-21dts: k1: switch BPI-F3 build to upstream DTGuodong Xu
Adopt the kernel device tree directly from dts/upstream/src/riscv/spacemit/k1-bananapi-f3.dts instead of carrying a forked copy under arch/riscv/dts/. The U-Boot-only overlay k1-bananapi-f3-u-boot.dtsi carries the binman description and a memory@0 node, since the upstream kernel DT has no memory node (RAM is filled in by the bootloader). Signed-off-by: Guodong Xu <[email protected]>
2026-03-13sifive: switch to OF_UPSTREAMAndreas Schwab
Tested on HiFive Unleashed and HiFive Unmatched, both SPIFlash and MMC boot. Signed-off-by: Andreas Schwab <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-12-08configs: Change default baud rate to 115200Che-Wei Chuang
Updated DTS and configuration files to set the default baud rate from 38400 to 115200. Signed-off-by: Che-Wei Chuang <[email protected]>
2025-10-28riscv: dts: starfive: prune redundant jh7110 overridesE Shattow
Prune overrides of upstream jh7110.dtsi now that the required nodes are available through the devicetree-rebasing subtree. Signed-off-by: E Shattow <[email protected]>
2025-10-27sunxi: switch the Allwinner T113 SoC to OF_UPSTREAMAndre Przywara
In contrast to some other Allwinner SoCs, there is no difference between the DTs for the Allwinner T113-s3 SoC (sun20i) between the U-Boot and the Linux kernel repository. Remove the old copies of the T113-s3 related .dts and .dtsi files, and switch the whole SoC (represented by just one board) over to use OF_UPSTREAM. Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Jernej Skrabec <[email protected]>
2025-09-19configs: starfive: Use visionfive2 DEVICE_TREE_INCLUDES dtsi named similar ↵E Shattow
to defconfig Add SYS_CPU automatic inclusion jh7110-u-boot.dtsi to item of config list DEVICE_TREE_INCLUDES as starfive-visionfive2-u-boot.dtsi and rename file. Signed-off-by: E Shattow <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-09-19riscv: dts: starfive: visionfive2 depend on SYS_CPU automatic dtsi inclusionE Shattow
Drop visionfive2 per-board -u-boot.dtsi stubs and instead rely on automatic inclusion of jh7110-u-boot.dtsi Signed-off-by: E Shattow <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-09-19riscv: dts: starfive: sync visionfive2 overrides with upstream Linux for-nextE Shattow
Sync automatic dtsi inclusion overrides for JH7110 CPU with upstream "riscv: dts: starfive: jh7110: bootph-pre-ram hinting needed by boot loader" from upstream Linux conor/riscv-dt-for-next commit 8181cc2f3f21 Signed-off-by: E Shattow <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-09-19riscv: dts: starfive: prune redundant jh7110-common overridesE Shattow
Prune jh7110-common-u-boot.dtsi (clocks, qspi flash, eeprom, and bootph-pre-ram hints now upstream since devicetree-rebasing v6.16). In preparation for removal of per-dts jh7110-*-u-boot.dtsi replace include by next dependency jh7110-u-boot.dtsi in automatic dtsi inclusion order. Signed-off-by: E Shattow <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-09-19dts: th1520: Switch to upstream devicetreeYao Zi
Imply OF_UPSTREAM in platform Kconfig option and adapt existing boards to use the correct upstream devicetree paths. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-08-14riscv: dts: andes: Add Voyager device treeLeo Yu-Chi Liang
Introduce the initial device tree support for Andes Voyager board. We will convert to OF_UPSTREAM once the patch series for kernel is merged. Signed-off-by: Randolph Sheng-Kai Lin <[email protected]> Signed-off-by: Leo Yu-Chi Liang <[email protected]>
2025-08-14xilinx: mbv: Use separate DTB for binman nodesMichal Simek
The commit d92fdb60677b ("binman: Add option for pointing to separate description") added support for separating binman description to own file not the be the part of DT for OS. The main reason is that binman is not passing dt schema validation that's why want to keep it separated. Signed-off-by: Michal Simek <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2025-08-14xilinx: mbv: Fix dt properties in interrupt controller nodeMichal Simek
Properties didn't match dt binding that's why should be fixed. Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-08-14xilinx: mbv: Add missing mmu-type cpu propertyMichal Simek
OpenSBI expects mmu-type to be present in DT that's why add it. Without it OpenSBI disable CPU node which ends up in not working boot. Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-07-17riscv: dts: th1520: Describe GMACs and enable them on Lichee Pi 4AYao Zi
TH1520 SoC ships two MAC controllers based on Designware Ethernet IP that are capable of Gigabit operation. Describe them in SoC devicetree and enable them for Lichee Pi 4A. Signed-off-by: Yao Zi <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2025-07-03riscv: dts: th1520: Add pin controllersYao Zi
Describe the three pin controllers integrated in TH1520 SoC. Since we don't have support for clocks in the AON region, a dummy fixed-clock node is added to supply the pin controller locating in it. Signed-off-by: Yao Zi <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2025-07-03riscv: dts: th1520: Preserve CLINT node for SPLYao Zi
Preserve CLINT node for SPL, whose IPI functionality is essential for operation of a multi-core system. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-06-19dtc: Add Kconfig option to pad device tree blobEric Schikschneit
This will allow arch(s) that use device tree blobs to pad the end of the device tree so they can be modified by board files at run time. This will help prevent errors such as FDT_ERR_NOSPACE from occurring. Signed-off-by: Eric Schikschneit <[email protected]> [trini: Change default order so that X86 && EFI_APP works correctly]
2025-06-09Merge tag 'v2025.07-rc4' into nextTom Rini
Prepare v2025.07-rc4
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-02Revert "riscv: Select appropriate image type"Mayuresh Chitale
This reverts commit 027a316828528da95a77d20632370b1bc2823f0b as discussed in [1]. [1] https://lists.denx.de/pipermail/u-boot/2025-May/590841.html Signed-off-by: Mayuresh Chitale <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: dts: th1520: Complete clock treeYao Zi
Describe the newly-supported clock controller of TH1520 in SoC devicetree, replace dummy clocks with the controller-supplied ones and add correct clocks for GPIO controllers. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21board: thead: licheepi4a: Enable SPL supportYao Zi
Adjust Kconfig and defconfig and add SPL initialization code for Lichee Pi 4A. Then enable SPL support which we've added for TH1520 SoC earlier. The board devicetree is changed to use TH1520 binman configuration to generate bootable images. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: dts: th1520: Add binman configurationYao Zi
Add binman configuration for TH1520 SoC, whose BROM loads the image combined into SRAM and directly jumps to it. The configuration creates u-boot-with-spl.bin where the SPL code locates at the start and the DDR firmware is shipped. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: dts: th1520: Add DRAM controllerYao Zi
Describe DRAM controller integrated in TH1520 SoC and preserve it in SPL devicetree blob. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: dts: lichee-module-4a: Preserve memory node for SPLYao Zi
Memory node is necessary for TH1520 SPL to configure size and base address of DRAM. Let's preserve it in SPL devicetree blob. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: dts: th1520: Preserve necessary devices for SPLYao Zi
SPL for TH1520 requires CPU and boot UART nodes to function. Preserve them in SPL devicetree blob with bootph-pre-ram property. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: dts: jh7110: override syscrg assigned clock rates with defaultsE Shattow
JH7110 drivers are missing support for CPU frequency scaling, so override upstream device-tree to use default clock rates for syscrg. This override duplicates a portion of jh7110-common-u-boot.dtsi file planned for removal. Signed-off-by: E Shattow <[email protected]> Reviewed-by: Leo Liang <[email protected]>
2025-05-21riscv: dts: jh7110: remove redundant parent nodesE Shattow
- use upstream alias name for cpu and timer nodes - remove bootph-pre-ram hint from parent nodes - drop S7 cpu core "okay" status Signed-off-by: E Shattow <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: starfive: jh7110: move uart0 clock frequency to config headerE Shattow
Move unnecessary clock frequency assignment out of device-tree and into the board config header so that the ns16550 serial driver can successfully init during SPL after failing to resolve the parent clock from upstream dts. The serial driver will then resolve clock frequency from device-tree node parent clock at init during Main app as it is expected by upstream. Signed-off-by: E Shattow <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: dts: binman.dtsi: Drop filename property for proper U-BootYao Zi
Drop filename property for proper U-Boot entry since binman takes "u-boot-nodtb.bin" as the default filename for u-boot-nodtb entries. This follows efe9c12322b ("riscv: dts: binman.dtsi: Switch to u-boot-nodtb entry for proper U-Boot") to clean binman.dtsi up. Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-05-21riscv: Select appropriate image typeMayuresh Chitale
Select between the 32-bit or 64-bit arch type for the image headers depending on how the build is configured. Signed-off-by: Mayuresh Chitale <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[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]> Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: E Shattow <[email protected]>
2025-04-25riscv: dts: starfive: Prevent binman from relocating symbols in SPLYao Zi
SPL and proper U-Boot are split into two images with default binman configuration of StarFive VisionFive 2, thus proper U-Boot symbols cannot be found in the SPL image. This fixes errors like Section '/binman/spl-img': Symbol '_binman_u_boot_any_prop_size' in entry '/binman/spl-img/mkimage/u-boot-spl/u-boot-spl-nodtb': Entry 'u-boot-any' not found in list (u-boot-spl-nodtb, u-boot-spl-dtb,u-boot-spl,mkimage,spl-img) Fixes: 90602e779d3 ("riscv: dts: starfive: generate u-boot-spl.bin.normal.out") Suggested-by: Jonas Karlman <[email protected]> Signed-off-by: Yao Zi <[email protected]>
2025-04-25riscv: dts: binman.dtsi: Switch to u-boot-nodtb entry for proper U-BootYao Zi
Switch to u-boot-nodtb entry which precisely represents a proper U-Boot and could be matched with u_boot_any. This allows RISC-V ports that make use of binman to be built without disabling SPL_BINMAN_UBOOT_SYMBOLS explicitly, which is set to y by default. Fixes: 0784510f741 ("riscv: sifive: unleashed: Switch to use binman to generate u-boot.itb") Suggested-by: Jonas Karlman <[email protected]> Signed-off-by: Yao Zi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2025-04-25riscv: dts: k1: add pinctrl property in dts.Huan Zhou
Add pinctrl node in device tree and update in bananapi f3 dts. Signed-off-by: Huan Zhou <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-04-19riscv: dts: jh7110: add bootph-pre-ram for &pllclkHeinrich Schuchardt
Since commit f98cd471f06b ("clk: clk-composite: Resolve parent clock by name") the StarFive VisionFive 2 board fails to boot. Before that patch the SPL debug UART showed warnings like: clk_register: failed to get pll0_out device (parent of perh_root) clk_register: failed to get pll0_out device (parent of qspi_ref_src) clk_register: failed to get pll0_out device (parent of usb_125m) clk_register: failed to get pll0_out device (parent of gmac_src) clk_register: failed to get pll0_out device (parent of gmac1_gtxclk) clk_register: failed to get pll0_out device (parent of gmac0_gtxclk) The &pllclk clock needs to be enabled early. Fixes: f98cd471f06b ("clk: clk-composite: Resolve parent clock by name") Suggested-by: Marek Vasut <[email protected]> Tested-by: Yao Zi <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-03-25riscv: dts: k1: add reset controller node in device treeHuan Zhou
Add reset-controller in k1 device tree. Signed-off-by: Huan Zhou <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-03-25riscv: dts: starfive: remove duplicate itb entriesHeinrich Schuchardt
As binman already creates nodes based on CONFIG_OF_LIST we don't need to add extra nodes. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Tested-by: Simon Glass <[email protected]> # StarFIve VisionFive 2 Reviewed-by: E Shattow <[email protected]>
2025-03-25riscv: dts: no default configuration for MULTI_DTB_FITHeinrich Schuchardt
JH7110 boards are currently the only use case for multi DTB FIT images on RISC-V. Booting JH7110 systems with a VisionFive 2 device-tree used to kind of work without causing harm to the hardware. But there is no guarantee that this will hold true in future. So we should not rely on it. Before the current patch series booting failed on unsupported boards due to the lack of a device-tree in the binman generated default configuration when reaching main U-Boot. By not setting a default configuration booting will now fail on unsupported boards already in SPL. This allows SPL to continue with the next boot source for a possible recovery. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: E Shattow <[email protected]>