From: Dinesh Maniyam <[email protected]>

The RSU driver-model anchor ("altr,socfpga-rsu") is consumed only by the
U-Boot-proper console command, never by SPL. It was previously present
only for Agilex, via the socfpga-rsu node under soc@0 in
socfpga_soc64_u-boot.dtsi.

The other SoC64 families assemble their devicetree under a "soc" node and
pull in only the FIT image overlay (socfpga_soc64_fit-u-boot.dtsi), which
carries no SoC nodes, so the anchor never reached them. With
CONFIG_SOCFPGA_RSU_DM=y that left rsu_init() returning -ENODEV on Agilex5,
Stratix10 and N5X even though the RSU command is enabled there.

Add the anchor node to the Agilex5, N5X and Stratix10 U-Boot devicetree
overlays, and drop bootph-all from the Agilex node so the anchor is not
carried into the pre-relocation/SPL devicetree; it is only needed by the
proper-only console command.

Signed-off-by: Dinesh Maniyam <[email protected]>
---
 arch/arm/dts/socfpga_agilex5-u-boot.dtsi         | 4 ++++
 arch/arm/dts/socfpga_n5x-u-boot.dtsi             | 4 ++++
 arch/arm/dts/socfpga_soc64_u-boot.dtsi           | 1 -
 arch/arm/dts/socfpga_stratix10_socdk-u-boot.dtsi | 4 ++++
 4 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/arch/arm/dts/socfpga_agilex5-u-boot.dtsi 
b/arch/arm/dts/socfpga_agilex5-u-boot.dtsi
index 0f0f457de54..90f36d42923 100644
--- a/arch/arm/dts/socfpga_agilex5-u-boot.dtsi
+++ b/arch/arm/dts/socfpga_agilex5-u-boot.dtsi
@@ -18,6 +18,10 @@
        soc {
                bootph-all;
 
+               socfpga-rsu {
+                       compatible = "altr,socfpga-rsu";
+               };
+
                socfpga_ccu_config: socfpga-ccu-config {
                        compatible = "intel,socfpga-dtreg";
                        #address-cells = <1>;
diff --git a/arch/arm/dts/socfpga_n5x-u-boot.dtsi 
b/arch/arm/dts/socfpga_n5x-u-boot.dtsi
index e27a64651e1..0b38d1e8f70 100644
--- a/arch/arm/dts/socfpga_n5x-u-boot.dtsi
+++ b/arch/arm/dts/socfpga_n5x-u-boot.dtsi
@@ -18,6 +18,10 @@
        soc {
                bootph-all;
 
+               socfpga-rsu {
+                       compatible = "altr,socfpga-rsu";
+               };
+
                ccu: cache-controller@f7000000 {
                        compatible = "arteris,ncore-ccu";
                        reg = <0xf7000000 0x100900>;
diff --git a/arch/arm/dts/socfpga_soc64_u-boot.dtsi 
b/arch/arm/dts/socfpga_soc64_u-boot.dtsi
index 5ec3c0662e3..91b4fe28624 100644
--- a/arch/arm/dts/socfpga_soc64_u-boot.dtsi
+++ b/arch/arm/dts/socfpga_soc64_u-boot.dtsi
@@ -9,7 +9,6 @@
        soc@0 {
                socfpga-rsu {
                        compatible = "altr,socfpga-rsu";
-                       bootph-all;
                };
 
                socfpga-system-mgr-firewall {
diff --git a/arch/arm/dts/socfpga_stratix10_socdk-u-boot.dtsi 
b/arch/arm/dts/socfpga_stratix10_socdk-u-boot.dtsi
index ef0df769762..701433cbc35 100644
--- a/arch/arm/dts/socfpga_stratix10_socdk-u-boot.dtsi
+++ b/arch/arm/dts/socfpga_stratix10_socdk-u-boot.dtsi
@@ -14,6 +14,10 @@
        };
 
        soc {
+               socfpga-rsu {
+                       compatible = "altr,socfpga-rsu";
+               };
+
                freeze_controller: freeze_controller@f9000450 {
                        compatible = "altr,freeze-bridge-controller";
                        reg = <0xf9000450 0x00000010>;
-- 
2.43.7

Reply via email to