From 9b347201bd4cad5a5e6f362c9451838bbf23c723 Mon Sep 17 00:00:00 2001 From: Bo Gan Date: Mon, 10 Nov 2025 19:14:07 -0800 Subject: [PATCH 1/3] riscv: dts: eic770x: Fix issues running upstream OpenSBI --- arch/riscv/dts/eic770x.dtsi | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/arch/riscv/dts/eic770x.dtsi b/arch/riscv/dts/eic770x.dtsi index e001e668bc8..5af1ab7b823 100644 --- a/arch/riscv/dts/eic770x.dtsi +++ b/arch/riscv/dts/eic770x.dtsi @@ -33,6 +33,7 @@ cpus { #address-cells = <1>; #size-cells = <0>; + timebase-frequency = <1000000>; cpu0: cpu@0 { clock-frequency = <0>; compatible = "eic7700", "riscv"; @@ -495,6 +496,16 @@ }; #endif }; + clint: timer@2000000 { + compatible = "eswin,eic7700-clint", "sifive,clint0"; + reg = <0x0 0x02000000 0x0 0x10000>; + interrupts-extended = + <&cpu0_intc 3>, <&cpu0_intc 7>, + <&cpu1_intc 3>, <&cpu1_intc 7>, + <&cpu2_intc 3>, <&cpu2_intc 7>, + <&cpu3_intc 3>, <&cpu3_intc 7>; + }; + plic0: interrupt-controller@c000000 { status = "disabled"; #interrupt-cells = <1>; @@ -594,15 +605,19 @@ }; uart0: serial@50900000 { status = "disabled"; - compatible = "synopsys,uart0"; + compatible = "snps,dw-apb-uart"; clock-frequency = <200000000>; + reg-io-width = <4>; + reg-shift = <2>; reg = <0x0 0x50900000 0x0 0xffff>; reg-names = "control"; }; uart1: serial@50910000 { status = "disabled"; - compatible = "synopsys,uart0"; + compatible = "snps,dw-apb-uart"; clock-frequency = <200000000>; + reg-io-width = <4>; + reg-shift = <2>; reg = <0x0 0x50910000 0x0 0xffff>; reg-names = "control"; }; From 29b1c90e41a4d1f0a36267309ce64e488f36a5ae Mon Sep 17 00:00:00 2001 From: Bo Gan Date: Wed, 10 Dec 2025 15:51:07 -0800 Subject: [PATCH 2/3] riscv: p550: Use ns16550 serial driver instead of eswin driver --- configs/hifive_premier_p550_defconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configs/hifive_premier_p550_defconfig b/configs/hifive_premier_p550_defconfig index ff5c20c57e7..d43c7ecaad9 100644 --- a/configs/hifive_premier_p550_defconfig +++ b/configs/hifive_premier_p550_defconfig @@ -93,7 +93,7 @@ CONFIG_PCIE_DW_ESWIN=y CONFIG_PINCTRL=y CONFIG_PINCONF=y CONFIG_RESET_ESWIN=y -CONFIG_ESWIN_UART_SYNOPSYS=y +CONFIG_SYS_NS16550=y CONFIG_SPI=y CONFIG_DESIGNWARE_SPI=y CONFIG_ESWIN_SPI=y From fdef7978134467b2e6f35382647ae9743cb74c2b Mon Sep 17 00:00:00 2001 From: Bo Gan Date: Mon, 29 Dec 2025 19:02:03 -0800 Subject: [PATCH 3/3] riscv: dts: eic770/hfp: remove d1 devices --- arch/riscv/dts/eic7700-hifive-premier-p550.dts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/riscv/dts/eic7700-hifive-premier-p550.dts b/arch/riscv/dts/eic7700-hifive-premier-p550.dts index 51d4bc511c5..c35b6b02917 100644 --- a/arch/riscv/dts/eic7700-hifive-premier-p550.dts +++ b/arch/riscv/dts/eic7700-hifive-premier-p550.dts @@ -126,6 +126,12 @@ &uart0 { status = "okay"; }; +/delete-node/ &d1_pmp; +/delete-node/ &d1_mbox_srvc; +/delete-node/ &d1_mbox; +/delete-node/ &d1_mbox_srvc1; +/delete-node/ &d1_mbox1; +/delete-node/ &plic1; &bootspi { status = "okay";