diff mbox series

[v2] powerpc/mpc512x: dts: fix PSC node warnings

Message ID 20211014224201.24027-1-agust@denx.de (mailing list archive)
State Changes Requested
Headers show
Series [v2] powerpc/mpc512x: dts: fix PSC node warnings | expand
Related show

Checks

Context Check Description
snowpatch_ozlabs/github-powerpc_selftests success Successfully ran 8 jobs.
snowpatch_ozlabs/github-powerpc_ppctests success Successfully ran 8 jobs.
snowpatch_ozlabs/github-powerpc_sparse success Successfully ran 4 jobs.
snowpatch_ozlabs/github-powerpc_kernel_qemu success Successfully ran 24 jobs.
snowpatch_ozlabs/github-powerpc_clang success Successfully ran 7 jobs.

Commit Message

Anatolij Gustschin Oct. 14, 2021, 10:42 p.m. UTC
Rework PSC node description to fix build warnings like:
mpc5121.dtsi:397.13-406.5: Warning (spi_bus_bridge): /soc@80000000/psc@11400: node name for SPI buses should be 'spi'
mpc5121.dtsi:409.13-418.5: Warning (spi_bus_bridge): /soc@80000000/psc@11500: node name for SPI buses should be 'spi'
mpc5121.dtsi:457.13-466.5: Warning (spi_bus_bridge): /soc@80000000/psc@11900: node name for SPI buses should be 'spi'

Signed-off-by: Anatolij Gustschin <agust@denx.de>
---
Changes in v2:
 - extract PSC nodes to files which can be included
   separately and extended as needed

 arch/powerpc/boot/dts/ac14xx.dts            | 118 ++++++++--------
 arch/powerpc/boot/dts/mpc5121-psc0.dtsi     |  16 +++
 arch/powerpc/boot/dts/mpc5121-psc1.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc10.dtsi    |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc11.dtsi    |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc2.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc3.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc4-spi.dtsi |  17 +++
 arch/powerpc/boot/dts/mpc5121-psc4.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc5-spi.dtsi |  17 +++
 arch/powerpc/boot/dts/mpc5121-psc5.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc6.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc7.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc8.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121-psc9-spi.dtsi |  17 +++
 arch/powerpc/boot/dts/mpc5121-psc9.dtsi     |  15 ++
 arch/powerpc/boot/dts/mpc5121.dtsi          | 148 +-------------------
 arch/powerpc/boot/dts/mpc5121ads.dts        |  42 +++---
 arch/powerpc/boot/dts/pdm360ng.dts          | 104 +++++++-------
 19 files changed, 371 insertions(+), 273 deletions(-)
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc0.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc1.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc10.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc11.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc2.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc3.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc4-spi.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc4.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc5-spi.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc5.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc6.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc7.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc8.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc9-spi.dtsi
 create mode 100644 arch/powerpc/boot/dts/mpc5121-psc9.dtsi

Comments

Rob Herring Oct. 15, 2021, 4:15 p.m. UTC | #1
On Thu, Oct 14, 2021 at 5:42 PM Anatolij Gustschin <agust@denx.de> wrote:
>
> Rework PSC node description to fix build warnings like:
> mpc5121.dtsi:397.13-406.5: Warning (spi_bus_bridge): /soc@80000000/psc@11400: node name for SPI buses should be 'spi'
> mpc5121.dtsi:409.13-418.5: Warning (spi_bus_bridge): /soc@80000000/psc@11500: node name for SPI buses should be 'spi'
> mpc5121.dtsi:457.13-466.5: Warning (spi_bus_bridge): /soc@80000000/psc@11900: node name for SPI buses should be 'spi'

Okay, I now see the block supports either spi or serial modes. I would
handle this a bit differently that doesn't create a bunch of new .dtsi
files.

>
> Signed-off-by: Anatolij Gustschin <agust@denx.de>
> ---
> Changes in v2:
>  - extract PSC nodes to files which can be included
>    separately and extended as needed
>
>  arch/powerpc/boot/dts/ac14xx.dts            | 118 ++++++++--------
>  arch/powerpc/boot/dts/mpc5121-psc0.dtsi     |  16 +++
>  arch/powerpc/boot/dts/mpc5121-psc1.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc10.dtsi    |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc11.dtsi    |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc2.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc3.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc4-spi.dtsi |  17 +++
>  arch/powerpc/boot/dts/mpc5121-psc4.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc5-spi.dtsi |  17 +++
>  arch/powerpc/boot/dts/mpc5121-psc5.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc6.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc7.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc8.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121-psc9-spi.dtsi |  17 +++
>  arch/powerpc/boot/dts/mpc5121-psc9.dtsi     |  15 ++
>  arch/powerpc/boot/dts/mpc5121.dtsi          | 148 +-------------------
>  arch/powerpc/boot/dts/mpc5121ads.dts        |  42 +++---
>  arch/powerpc/boot/dts/pdm360ng.dts          | 104 +++++++-------
>  19 files changed, 371 insertions(+), 273 deletions(-)
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc0.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc1.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc10.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc11.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc2.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc3.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc4-spi.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc4.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc5-spi.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc5.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc6.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc7.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc8.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc9-spi.dtsi
>  create mode 100644 arch/powerpc/boot/dts/mpc5121-psc9.dtsi

[...]

> diff --git a/arch/powerpc/boot/dts/mpc5121.dtsi b/arch/powerpc/boot/dts/mpc5121.dtsi
> index 3f66b91a8e3c..21674da8beb1 100644
> --- a/arch/powerpc/boot/dts/mpc5121.dtsi
> +++ b/arch/powerpc/boot/dts/mpc5121.dtsi
> @@ -87,7 +87,7 @@
>                 };
>         };
>
> -       soc@80000000 {
> +       soc: soc@80000000 {
>                 compatible = "fsl,mpc5121-immr";
>                 #address-cells = <1>;
>                 #size-cells = <1>;
> @@ -343,152 +343,6 @@
>                         clock-names = "ipg";
>                 };
>
> -               /* 512x PSCs are not 52xx PSC compatible */
> -
> -               /* PSC0 */
> -               psc@11000 {

I would just put here 'serial@11000' and 'spi@11000' nodes with both
nodes set to disabled. Then the board dts just has to change status of
the the nodes it wants to enable (and add child nodes for spi).
Overlapping addresses are okay if nodes are disabled.

> -                       compatible = "fsl,mpc5121-psc";
> -                       reg = <0x11000 0x100>;
> -                       interrupts = <40 0x8>;
> -                       fsl,rx-fifo-size = <16>;
> -                       fsl,tx-fifo-size = <16>;
> -                       clocks = <&clks MPC512x_CLK_PSC0>,
> -                                <&clks MPC512x_CLK_PSC0_MCLK>;
> -                       clock-names = "ipg", "mclk";
> -               };
diff mbox series

Patch

diff --git a/arch/powerpc/boot/dts/ac14xx.dts b/arch/powerpc/boot/dts/ac14xx.dts
index 5d8877e1f4ad..0af3b0ab7550 100644
--- a/arch/powerpc/boot/dts/ac14xx.dts
+++ b/arch/powerpc/boot/dts/ac14xx.dts
@@ -15,8 +15,8 @@ 
 	#size-cells = <1>;
 
 	aliases {
-		serial0 = &serial0;
-		serial1 = &serial7;
+		serial0 = &psc3;
+		serial1 = &psc7;
 		spi4 = &spi4;
 		spi5 = &spi5;
 	};
@@ -294,62 +294,6 @@ 
 			status = "disabled";
 		};
 
-		/* PSC3 serial port A, aka ttyPSC0 */
-		serial0: psc@11300 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-			fsl,rx-fifo-size = <512>;
-			fsl,tx-fifo-size = <512>;
-		};
-
-		/* PSC4 in SPI mode */
-		spi4: psc@11400 {
-			compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
-			fsl,rx-fifo-size = <768>;
-			fsl,tx-fifo-size = <768>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			num-cs = <1>;
-			cs-gpios = <&gpio_pic 25 0>;
-
-			flash: m25p128@0 {
-				compatible = "st,m25p128";
-				spi-max-frequency = <20000000>;
-				reg = <0>;
-				#address-cells = <1>;
-				#size-cells = <1>;
-
-				partition@0 {
-					label = "spi-flash0";
-					reg = <0x00000000 0x01000000>;
-				};
-			};
-		};
-
-		/* PSC5 in SPI mode */
-		spi5: psc@11500 {
-			compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
-			fsl,mode = "spi-master";
-			fsl,rx-fifo-size = <128>;
-			fsl,tx-fifo-size = <128>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			lcd@0 {
-				compatible = "ilitek,ili922x";
-				reg = <0>;
-				spi-max-frequency = <100000>;
-				spi-cpol;
-				spi-cpha;
-			};
-		};
-
-		/* PSC7 serial port C, aka ttyPSC2 */
-		serial7: psc@11700 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-			fsl,rx-fifo-size = <512>;
-			fsl,tx-fifo-size = <512>;
-		};
-
 		matrix_keypad@0 {
 			compatible = "gpio-matrix-keypad";
 			debounce-delay-ms = <5>;
@@ -393,3 +337,61 @@ 
 		};
 	};
 };
+
+/* PSC3 serial port A, aka ttyPSC0 */
+#include "mpc5121-psc3.dtsi"
+&psc3 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	fsl,rx-fifo-size = <512>;
+	fsl,tx-fifo-size = <512>;
+	status = "okay";
+};
+
+/* PSC7 serial port C, aka ttyPSC2 */
+#include "mpc5121-psc7.dtsi"
+&psc7 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	fsl,rx-fifo-size = <512>;
+	fsl,tx-fifo-size = <512>;
+	status = "okay";
+};
+
+/* PSC4 in SPI mode */
+#include "mpc5121-psc4-spi.dtsi"
+&spi4 {
+	status = "okay";
+	fsl,rx-fifo-size = <768>;
+	fsl,tx-fifo-size = <768>;
+	num-cs = <1>;
+	cs-gpios = <&gpio_pic 25 0>;
+
+	flash: m25p128@0 {
+		compatible = "st,m25p128";
+		spi-max-frequency = <20000000>;
+		reg = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		partition@0 {
+			label = "spi-flash0";
+			reg = <0x00000000 0x01000000>;
+		};
+	};
+};
+
+/* PSC5 in SPI mode */
+#include "mpc5121-psc5-spi.dtsi"
+&spi5 {
+	status = "okay";
+	fsl,mode = "spi-master";
+	fsl,rx-fifo-size = <128>;
+	fsl,tx-fifo-size = <128>;
+
+	lcd@0 {
+		compatible = "ilitek,ili922x";
+		reg = <0>;
+		spi-max-frequency = <100000>;
+		spi-cpol;
+		spi-cpha;
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc0.dtsi b/arch/powerpc/boot/dts/mpc5121-psc0.dtsi
new file mode 100644
index 000000000000..a2df388d864c
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc0.dtsi
@@ -0,0 +1,16 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	/* 512x PSCs are not 52xx PSC compatible */
+	psc0: psc@11000 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11000 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC0>,
+			 <&clks MPC512x_CLK_PSC0_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc1.dtsi b/arch/powerpc/boot/dts/mpc5121-psc1.dtsi
new file mode 100644
index 000000000000..41848f44c576
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc1.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc1: psc@11100 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11100 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC1>,
+			 <&clks MPC512x_CLK_PSC1_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc10.dtsi b/arch/powerpc/boot/dts/mpc5121-psc10.dtsi
new file mode 100644
index 000000000000..6d004a15baf1
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc10.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc10: psc@11a00 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11a00 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC10>,
+			 <&clks MPC512x_CLK_PSC10_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc11.dtsi b/arch/powerpc/boot/dts/mpc5121-psc11.dtsi
new file mode 100644
index 000000000000..9888ad50afc3
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc11.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc11: psc@11b00 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11b00 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC11>,
+			 <&clks MPC512x_CLK_PSC11_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc2.dtsi b/arch/powerpc/boot/dts/mpc5121-psc2.dtsi
new file mode 100644
index 000000000000..2b229a8cb4cf
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc2.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc2: psc@11200 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11200 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC2>,
+			 <&clks MPC512x_CLK_PSC2_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc3.dtsi b/arch/powerpc/boot/dts/mpc5121-psc3.dtsi
new file mode 100644
index 000000000000..972cd0af2ac7
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc3.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc3: psc@11300 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11300 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC3>,
+			 <&clks MPC512x_CLK_PSC3_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc4-spi.dtsi b/arch/powerpc/boot/dts/mpc5121-psc4-spi.dtsi
new file mode 100644
index 000000000000..d110a89d5e93
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc4-spi.dtsi
@@ -0,0 +1,17 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	spi4: spi@11400 {
+		compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
+		reg = <0x11400 0x100>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC9>,
+			 <&clks MPC512x_CLK_PSC9_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc4.dtsi b/arch/powerpc/boot/dts/mpc5121-psc4.dtsi
new file mode 100644
index 000000000000..0a3082318125
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc4.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc4: psc@11400 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11400 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC4>,
+			 <&clks MPC512x_CLK_PSC4_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc5-spi.dtsi b/arch/powerpc/boot/dts/mpc5121-psc5-spi.dtsi
new file mode 100644
index 000000000000..5651ccff02ad
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc5-spi.dtsi
@@ -0,0 +1,17 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	spi5: spi@11500 {
+		compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
+		reg = <0x11500 0x100>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC9>,
+			 <&clks MPC512x_CLK_PSC9_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc5.dtsi b/arch/powerpc/boot/dts/mpc5121-psc5.dtsi
new file mode 100644
index 000000000000..880ab45d6985
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc5.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc5: psc@11500 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11500 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC5>,
+			 <&clks MPC512x_CLK_PSC5_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc6.dtsi b/arch/powerpc/boot/dts/mpc5121-psc6.dtsi
new file mode 100644
index 000000000000..7ec67953cffb
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc6.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc6: psc@11600 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11600 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC6>,
+			 <&clks MPC512x_CLK_PSC6_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc7.dtsi b/arch/powerpc/boot/dts/mpc5121-psc7.dtsi
new file mode 100644
index 000000000000..e5ca588e4cfd
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc7.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc7: psc@11700 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11700 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC7>,
+			 <&clks MPC512x_CLK_PSC7_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc8.dtsi b/arch/powerpc/boot/dts/mpc5121-psc8.dtsi
new file mode 100644
index 000000000000..056d6bc019de
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc8.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc8: psc@11800 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11800 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC8>,
+			 <&clks MPC512x_CLK_PSC8_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc9-spi.dtsi b/arch/powerpc/boot/dts/mpc5121-psc9-spi.dtsi
new file mode 100644
index 000000000000..3c82804970eb
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc9-spi.dtsi
@@ -0,0 +1,17 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	spi9: spi@11900 {
+		compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
+		reg = <0x11900 0x100>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC9>,
+			 <&clks MPC512x_CLK_PSC9_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121-psc9.dtsi b/arch/powerpc/boot/dts/mpc5121-psc9.dtsi
new file mode 100644
index 000000000000..355190f974bd
--- /dev/null
+++ b/arch/powerpc/boot/dts/mpc5121-psc9.dtsi
@@ -0,0 +1,15 @@ 
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+&soc {
+	psc9: psc@11900 {
+		compatible = "fsl,mpc5121-psc";
+		reg = <0x11900 0x100>;
+		interrupts = <40 0x8>;
+		fsl,rx-fifo-size = <16>;
+		fsl,tx-fifo-size = <16>;
+		clocks = <&clks MPC512x_CLK_PSC9>,
+			 <&clks MPC512x_CLK_PSC9_MCLK>;
+		clock-names = "ipg", "mclk";
+		status = "disabled";
+	};
+};
diff --git a/arch/powerpc/boot/dts/mpc5121.dtsi b/arch/powerpc/boot/dts/mpc5121.dtsi
index 3f66b91a8e3c..21674da8beb1 100644
--- a/arch/powerpc/boot/dts/mpc5121.dtsi
+++ b/arch/powerpc/boot/dts/mpc5121.dtsi
@@ -87,7 +87,7 @@ 
 		};
 	};
 
-	soc@80000000 {
+	soc: soc@80000000 {
 		compatible = "fsl,mpc5121-immr";
 		#address-cells = <1>;
 		#size-cells = <1>;
@@ -343,152 +343,6 @@ 
 			clock-names = "ipg";
 		};
 
-		/* 512x PSCs are not 52xx PSC compatible */
-
-		/* PSC0 */
-		psc@11000 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11000 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC0>,
-				 <&clks MPC512x_CLK_PSC0_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC1 */
-		psc@11100 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11100 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC1>,
-				 <&clks MPC512x_CLK_PSC1_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC2 */
-		psc@11200 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11200 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC2>,
-				 <&clks MPC512x_CLK_PSC2_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC3 */
-		psc@11300 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-			reg = <0x11300 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC3>,
-				 <&clks MPC512x_CLK_PSC3_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC4 */
-		psc@11400 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-			reg = <0x11400 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC4>,
-				 <&clks MPC512x_CLK_PSC4_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC5 */
-		psc@11500 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11500 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC5>,
-				 <&clks MPC512x_CLK_PSC5_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC6 */
-		psc@11600 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11600 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC6>,
-				 <&clks MPC512x_CLK_PSC6_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC7 */
-		psc@11700 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11700 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC7>,
-				 <&clks MPC512x_CLK_PSC7_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC8 */
-		psc@11800 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11800 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC8>,
-				 <&clks MPC512x_CLK_PSC8_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC9 */
-		psc@11900 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11900 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC9>,
-				 <&clks MPC512x_CLK_PSC9_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC10 */
-		psc@11a00 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11a00 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC10>,
-				 <&clks MPC512x_CLK_PSC10_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
-		/* PSC11 */
-		psc@11b00 {
-			compatible = "fsl,mpc5121-psc";
-			reg = <0x11b00 0x100>;
-			interrupts = <40 0x8>;
-			fsl,rx-fifo-size = <16>;
-			fsl,tx-fifo-size = <16>;
-			clocks = <&clks MPC512x_CLK_PSC11>,
-				 <&clks MPC512x_CLK_PSC11_MCLK>;
-			clock-names = "ipg", "mclk";
-		};
-
 		pscfifo@11f00 {
 			compatible = "fsl,mpc5121-psc-fifo";
 			reg = <0x11f00 0x100>;
diff --git a/arch/powerpc/boot/dts/mpc5121ads.dts b/arch/powerpc/boot/dts/mpc5121ads.dts
index b407a50ee622..c87735ec0730 100644
--- a/arch/powerpc/boot/dts/mpc5121ads.dts
+++ b/arch/powerpc/boot/dts/mpc5121ads.dts
@@ -133,24 +133,6 @@ 
 			fsl,invert-drvvbus;
 			fsl,invert-pwr-fault;
 		};
-
-		/* PSC3 serial port A aka ttyPSC0 */
-		psc@11300 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
-
-		/* PSC4 serial port B aka ttyPSC1 */
-		psc@11400 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
-
-		/* PSC5 in ac97 mode */
-		ac97: psc@11500 {
-			compatible = "fsl,mpc5121-psc-ac97", "fsl,mpc5121-psc";
-			fsl,mode = "ac97-slave";
-			fsl,rx-fifo-size = <384>;
-			fsl,tx-fifo-size = <384>;
-		};
 	};
 
 	pci: pci@80008500 {
@@ -172,3 +154,27 @@ 
 				>;
 	};
 };
+
+/* PSC3 serial port A aka ttyPSC0 */
+#include "mpc5121-psc3.dtsi"
+&psc3 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
+
+/* PSC4 serial port B aka ttyPSC1 */
+#include "mpc5121-psc4.dtsi"
+&psc4 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
+
+/* PSC5 in ac97 mode */
+#include "mpc5121-psc5.dtsi"
+&psc5 {
+	compatible = "fsl,mpc5121-psc-ac97", "fsl,mpc5121-psc";
+	status = "okay";
+	fsl,mode = "ac97-slave";
+	fsl,rx-fifo-size = <384>;
+	fsl,tx-fifo-size = <384>;
+};
diff --git a/arch/powerpc/boot/dts/pdm360ng.dts b/arch/powerpc/boot/dts/pdm360ng.dts
index 67c3b9db75d7..23e797d8887e 100644
--- a/arch/powerpc/boot/dts/pdm360ng.dts
+++ b/arch/powerpc/boot/dts/pdm360ng.dts
@@ -132,64 +132,68 @@ 
 		usb@4000 {
 			fsl,invert-pwr-fault;
 		};
+	};
+};
 
-		psc@11000 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
-
-		psc@11100 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
-
-		psc@11200 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
-
-		psc@11300 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
+#include "mpc5121-psc0.dtsi"
+#include "mpc5121-psc1.dtsi"
+#include "mpc5121-psc2.dtsi"
+#include "mpc5121-psc3.dtsi"
+#include "mpc5121-psc4.dtsi"
+#include "mpc5121-psc6.dtsi"
+#include "mpc5121-psc8.dtsi"
+#include "mpc5121-psc11.dtsi"
+/* Select PSC UART mode */
+&psc0 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11400 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
+&psc1 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11500 {
-			status = "disabled";
-		};
+&psc2 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11600 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
+&psc3 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11700 {
-			status = "disabled";
-		};
+&psc4 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11800 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
+&psc6 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11900 {
-			compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			/* ADS7845 touch screen controller */
-			ts@0 {
-				compatible = "ti,ads7846";
-				reg = <0x0>;
-				spi-max-frequency = <3000000>;
-				/* pen irq is GPIO25 */
-				interrupts = <78 0x8>;
-			};
-		};
+&psc8 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11a00 {
-			status = "disabled";
-		};
+&psc11 {
+	compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
+	status = "okay";
+};
 
-		psc@11b00 {
-			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
-		};
+#include "mpc5121-psc9-spi.dtsi"
+&spi9 {
+	status = "okay";
+
+	/* ADS7845 touch screen controller */
+	ts@0 {
+		compatible = "ti,ads7846";
+		reg = <0x0>;
+		spi-max-frequency = <3000000>;
+		/* pen irq is GPIO25 */
+		interrupts = <78 0x8>;
 	};
 };