Add device tree for the RP2350 SoC (rp2350.dtsi) and the Raspberry Pi Pico 2 board (rp2350-pico2.dts).
rpi_pico2_defconfig selects CONFIG_OF_EMBED, building the dtb from u-boot's source rather than CONFIG_OF_UPSTREAM. Currently for the uart nodes 'clock' property is used instead of 'clocks' as there is no dm based clock driver. This will be updated once a clk driver is introduced. Signed-off-by: Bhargav Das <[email protected]> --- arch/arm/dts/Makefile | 1 + arch/arm/dts/rp2350-pico2.dts | 25 +++++++++++++++++++++++ arch/arm/dts/rp2350.dtsi | 37 +++++++++++++++++++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 arch/arm/dts/rp2350-pico2.dts create mode 100644 arch/arm/dts/rp2350.dtsi diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index a02dad22f27..1668715b7f1 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -1157,6 +1157,7 @@ dtb-$(CONFIG_TARGET_SC594_SOM_EZKIT) += sc594-som-ezkit.dtb dtb-$(CONFIG_TARGET_SC594_SOM_EZLITE) += sc594-som-ezlite.dtb dtb-$(CONFIG_TARGET_SC598_SOM_EZKIT) += sc598-som-ezkit.dtb sc598-som-ezkit-sd.dtb dtb-$(CONFIG_TARGET_SC598_SOM_EZLITE) += sc598-som-ezlite.dtb +dtb-$(CONFIG_TARGET_RPI_PICO2) += rp2350-pico2.dtb ifneq ($(CONFIG_TARGET_IMX8MP_RSB3720A1_4G)$(CONFIG_TARGET_IMX8MP_RSB3720A1_6G),) dtb-y += imx8mp-rsb3720-a1.dtb diff --git a/arch/arm/dts/rp2350-pico2.dts b/arch/arm/dts/rp2350-pico2.dts new file mode 100644 index 00000000000..391bdd3b62e --- /dev/null +++ b/arch/arm/dts/rp2350-pico2.dts @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Device Tree for Raspberry Pi Pico 2 (RP2350) + */ + +/dts-v1/; + +#include "rp2350.dtsi" + +/ { + model = "Raspberry Pi Pico 2"; + compatible = "raspberrypi,pico2", "raspberrypi,rp2350"; + + aliases { + serial0 = &uart1; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; +}; + +&uart1 { + status = "okay"; +}; diff --git a/arch/arm/dts/rp2350.dtsi b/arch/arm/dts/rp2350.dtsi new file mode 100644 index 00000000000..56cf1d37b09 --- /dev/null +++ b/arch/arm/dts/rp2350.dtsi @@ -0,0 +1,37 @@ +// SPDX-License-Identifier: (GPL-2.0-only OR MIT) +/* + * Device Tree Include file for Raspberry Pi RP2350 SoC + */ + +/ { + #address-cells = <1>; + #size-cells = <1>; + + compatible = "raspberrypi,rp2350"; + + memory@20000000 { + device_type = "memory"; + reg = <0x20000000 0x00082000>; /* 520 KB SRAM */ + }; + + soc { + #address-cells = <1>; + #size-cells = <1>; + compatible = "simple-bus"; + ranges; + + uart0: serial@40070000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x40070000 0x1000>; + clock = <150000000>; /* CLK_PERI = clk_sys 150MHz */ + status = "disabled"; + }; + + uart1: serial@40078000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x40078000 0x1000>; + clock = <150000000>; /* CLK_PERI = clk_sys 150MHz */ + status = "disabled"; + }; + }; +}; -- 2.43.0
