linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
@ 2023-02-20 11:59 Paul Gortmaker
  2023-02-20 11:59 ` [PATCH 1/4] powerpc: drop MPC834x_MDS platform support Paul Gortmaker
                   ` (7 more replies)
  0 siblings, 8 replies; 26+ messages in thread
From: Paul Gortmaker @ 2023-02-20 11:59 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: Li Yang, Scott Wood, Paul Gortmaker, Claudiu Manoil, Paul Mackerras

[This RFC is proposed for v6.4 and hence is based off linux-next.]

This series removes support for four e300 (MPC83xx) Freescale processor
family evaluation boards that were added to the kernel in the 2006 era.

These boards were all of a very similar form factor, a largish PCI or PCI-X
card that could also be used standalone with an external power brick, and
all shared the Modular Development System (MDS) designation.

These platforms were made in limited quantity and were generally designed
to get early silicon into the hands of OEMs who would later develop their
own boards/platforms.  As such, availability was limited to those who would
be working on boards and/or BSP support.

Many early revision MDS platforms used a mechanical clamping system to hold
the BGA CPU in place to facilitate CPU updates -- something not normally
possible for a soldered down BGA in a COTS system.

The point of these details is to give context that reflects that these four
boards were made in limited quantities, were not in a form factor that is
really "hobbyist" friendly and hence make sense for removal 17 years later.

Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.

There will still exist several e300 Freescale Reference Design System (RDS)
boards[5] and mini-ITX boards[6] with support in the kernel.  While these
were more of a COTS "ready to deploy" design more suited to hobbyists, it
probably makes sense to consider removing these as well, based on age.

But before we get to that, lets see how this goes -- and then we should
look at similar early e500 evaluation platforms [MPC8540-ADS, etc] next,
as the oldest there date back to 2002[7] -- before considering RDB/mITX.

I intentionally didn't put any links in the commits, since as we all know,
they tend not to be stable long term, so keep them here in the merge data.
Credit to NXP for keeping around these old legacy docs this long!

Paul.

--

[1] https://www.nxp.com/design/qoriq-developer-resources/mpc8349e-modular-development-system:MPC8349EMDS
[2] https://www.nxp.com/docs/en/user-guide/MPC8360EMDSUM.pdf
[3] https://www.nxp.com/products/processors-and-microcontrollers/legacy-mpu-mcus/powerquicc-processors/powerquicc-iii-mpc85xx/mpc837xe-modular-development-system:MPC837XEMDS
[4] https://www.nxp.com/products/processors-and-microcontrollers/legacy-mpu-mcus/powerquicc-processors/powerquicc-ii-pro-mpc83xx/low-power-powerquicc-ii-pro-processor-with-ddr2-tdm-pci-security-usb-quicc-engine-with-utopia:MPC8323E
[5] https://www.nxp.com/docs/en/fact-sheet/MPC8379ERDBFS.pdf
[6] https://www.digikey.ca/en/products/detail/nxp-usa-inc/MPC8349E-MITX-GP/1204733
[7] https://www.nxp.com/docs/en/reference-manual/MPC8560ADSUG.pdf

Cc: Scott Wood <oss@buserror.net>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Li Yang <leoyang.li@nxp.com>
Cc: Claudiu Manoil <claudiu.manoil@nxp.com>

---

Paul Gortmaker (4):
  powerpc: drop MPC834x_MDS platform support
  powerpc: drop MPC836x_MDS platform support
  powerpc: drop MPC837x_MDS platform support
  powerpc: drop MPC832x_MDS platform support

 arch/powerpc/boot/Makefile                    |   1 -
 arch/powerpc/boot/dts/mpc832x_mds.dts         | 436 ---------------
 arch/powerpc/boot/dts/mpc834x_mds.dts         | 403 --------------
 arch/powerpc/boot/dts/mpc836x_mds.dts         | 481 -----------------
 arch/powerpc/boot/dts/mpc8377_mds.dts         | 505 ------------------
 arch/powerpc/boot/dts/mpc8378_mds.dts         | 489 -----------------
 arch/powerpc/boot/dts/mpc8379_mds.dts         | 455 ----------------
 .../configs/83xx/mpc832x_mds_defconfig        |  59 --
 .../configs/83xx/mpc834x_mds_defconfig        |  58 --
 .../configs/83xx/mpc836x_mds_defconfig        |  64 ---
 .../configs/83xx/mpc837x_mds_defconfig        |  58 --
 arch/powerpc/configs/mpc83xx_defconfig        |   4 -
 arch/powerpc/configs/ppc6xx_defconfig         |   4 -
 arch/powerpc/platforms/83xx/Kconfig           |  32 --
 arch/powerpc/platforms/83xx/Makefile          |   4 -
 arch/powerpc/platforms/83xx/mpc832x_mds.c     | 110 ----
 arch/powerpc/platforms/83xx/mpc834x_mds.c     | 101 ----
 arch/powerpc/platforms/83xx/mpc836x_mds.c     | 210 --------
 arch/powerpc/platforms/83xx/mpc837x_mds.c     | 103 ----
 19 files changed, 3577 deletions(-)
 delete mode 100644 arch/powerpc/boot/dts/mpc832x_mds.dts
 delete mode 100644 arch/powerpc/boot/dts/mpc834x_mds.dts
 delete mode 100644 arch/powerpc/boot/dts/mpc836x_mds.dts
 delete mode 100644 arch/powerpc/boot/dts/mpc8377_mds.dts
 delete mode 100644 arch/powerpc/boot/dts/mpc8378_mds.dts
 delete mode 100644 arch/powerpc/boot/dts/mpc8379_mds.dts
 delete mode 100644 arch/powerpc/configs/83xx/mpc832x_mds_defconfig
 delete mode 100644 arch/powerpc/configs/83xx/mpc834x_mds_defconfig
 delete mode 100644 arch/powerpc/configs/83xx/mpc836x_mds_defconfig
 delete mode 100644 arch/powerpc/configs/83xx/mpc837x_mds_defconfig
 delete mode 100644 arch/powerpc/platforms/83xx/mpc832x_mds.c
 delete mode 100644 arch/powerpc/platforms/83xx/mpc834x_mds.c
 delete mode 100644 arch/powerpc/platforms/83xx/mpc836x_mds.c
 delete mode 100644 arch/powerpc/platforms/83xx/mpc837x_mds.c

-- 
2.17.1


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [PATCH 1/4] powerpc: drop MPC834x_MDS platform support
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
@ 2023-02-20 11:59 ` Paul Gortmaker
  2023-02-20 11:59 ` [PATCH 2/4] powerpc: drop MPC836x_MDS " Paul Gortmaker
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 26+ messages in thread
From: Paul Gortmaker @ 2023-02-20 11:59 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: Li Yang, Scott Wood, Paul Gortmaker, Claudiu Manoil, Paul Mackerras

This 2006 era Modular Development System (MDS) has, at its core
component, a full length card with a PCI-64 edge.  No case.  Serial
and network connectors were on card, so it could optionally be fitted
with plastic stand-offs and run stand-alone off a power brick.

Like all the MDS systems, it was meant as a vehicle to get the CPU
out early to hardware OEMs so software and board development could
take place in parallel.

To that end, the BGA CPU was held in place with a mechanical spring
loaded pressure assembly (vs. solder) so that early rev silicon could
be replaced in the field.  Not for COTS deployment!

These were made in limited numbers and availability preference was
given to partners who were planning to make their own boards, like
our WR SBC8349 [since retired in v4.18 (2017, commit 3bc6cf5a86e5)]

Given that the whole reason for existence was to assist in enabling
new board designs [not happening for 10+ years], and that they weren't
generally available, and that the hardware wasn't really hobbyist
friendly even for retro computing, it makes sense to retire the
support for this platform.

Cc: Scott Wood <oss@buserror.net>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 arch/powerpc/boot/Makefile                    |   1 -
 arch/powerpc/boot/dts/mpc834x_mds.dts         | 403 ------------------
 .../configs/83xx/mpc834x_mds_defconfig        |  58 ---
 arch/powerpc/configs/mpc83xx_defconfig        |   1 -
 arch/powerpc/configs/ppc6xx_defconfig         |   1 -
 arch/powerpc/platforms/83xx/Kconfig           |  12 -
 arch/powerpc/platforms/83xx/Makefile          |   1 -
 arch/powerpc/platforms/83xx/mpc834x_mds.c     | 101 -----
 8 files changed, 578 deletions(-)
 delete mode 100644 arch/powerpc/boot/dts/mpc834x_mds.dts
 delete mode 100644 arch/powerpc/configs/83xx/mpc834x_mds_defconfig
 delete mode 100644 arch/powerpc/platforms/83xx/mpc834x_mds.c

diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
index 295f76df13b5..1efe311a9ff9 100644
--- a/arch/powerpc/boot/Makefile
+++ b/arch/powerpc/boot/Makefile
@@ -336,7 +336,6 @@ image-$(CONFIG_MPC832x_MDS)		+= cuImage.mpc832x_mds
 image-$(CONFIG_MPC832x_RDB)		+= cuImage.mpc832x_rdb
 image-$(CONFIG_MPC834x_ITX)		+= cuImage.mpc8349emitx \
 					   cuImage.mpc8349emitxgp
-image-$(CONFIG_MPC834x_MDS)		+= cuImage.mpc834x_mds
 image-$(CONFIG_MPC836x_MDS)		+= cuImage.mpc836x_mds
 image-$(CONFIG_ASP834x)			+= dtbImage.asp834x-redboot
 
diff --git a/arch/powerpc/boot/dts/mpc834x_mds.dts b/arch/powerpc/boot/dts/mpc834x_mds.dts
deleted file mode 100644
index 6c8cb859c55f..000000000000
--- a/arch/powerpc/boot/dts/mpc834x_mds.dts
+++ /dev/null
@@ -1,403 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * MPC8349E MDS Device Tree Source
- *
- * Copyright 2005, 2006 Freescale Semiconductor Inc.
- */
-
-/dts-v1/;
-
-/ {
-	model = "MPC8349EMDS";
-	compatible = "MPC8349EMDS", "MPC834xMDS", "MPC83xxMDS";
-	#address-cells = <1>;
-	#size-cells = <1>;
-
-	aliases {
-		ethernet0 = &enet0;
-		ethernet1 = &enet1;
-		serial0 = &serial0;
-		serial1 = &serial1;
-		pci0 = &pci0;
-		pci1 = &pci1;
-	};
-
-	cpus {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		PowerPC,8349@0 {
-			device_type = "cpu";
-			reg = <0x0>;
-			d-cache-line-size = <32>;
-			i-cache-line-size = <32>;
-			d-cache-size = <32768>;
-			i-cache-size = <32768>;
-			timebase-frequency = <0>;	// from bootloader
-			bus-frequency = <0>;		// from bootloader
-			clock-frequency = <0>;		// from bootloader
-		};
-	};
-
-	memory {
-		device_type = "memory";
-		reg = <0x00000000 0x10000000>;	// 256MB at 0
-	};
-
-	bcsr@e2400000 {
-		compatible = "fsl,mpc8349mds-bcsr";
-		reg = <0xe2400000 0x8000>;
-	};
-
-	soc8349@e0000000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "soc";
-		compatible = "simple-bus";
-		ranges = <0x0 0xe0000000 0x00100000>;
-		reg = <0xe0000000 0x00000200>;
-		bus-frequency = <0>;
-
-		wdt@200 {
-			device_type = "watchdog";
-			compatible = "mpc83xx_wdt";
-			reg = <0x200 0x100>;
-		};
-
-		i2c@3000 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <0>;
-			compatible = "fsl-i2c";
-			reg = <0x3000 0x100>;
-			interrupts = <14 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-
-			rtc@68 {
-				compatible = "dallas,ds1374";
-				reg = <0x68>;
-			};
-		};
-
-		i2c@3100 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <1>;
-			compatible = "fsl-i2c";
-			reg = <0x3100 0x100>;
-			interrupts = <15 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-		};
-
-		spi@7000 {
-			cell-index = <0>;
-			compatible = "fsl,spi";
-			reg = <0x7000 0x1000>;
-			interrupts = <16 0x8>;
-			interrupt-parent = <&ipic>;
-			mode = "cpu";
-		};
-
-		dma@82a8 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8349-dma", "fsl,elo-dma";
-			reg = <0x82a8 4>;
-			ranges = <0 0x8100 0x1a8>;
-			interrupt-parent = <&ipic>;
-			interrupts = <71 8>;
-			cell-index = <0>;
-			dma-channel@0 {
-				compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel";
-				reg = <0 0x80>;
-				cell-index = <0>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@80 {
-				compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x80 0x80>;
-				cell-index = <1>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@100 {
-				compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x100 0x80>;
-				cell-index = <2>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@180 {
-				compatible = "fsl,mpc8349-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x180 0x28>;
-				cell-index = <3>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-		};
-
-		/* phy type (ULPI or SERIAL) are only types supported for MPH */
-		/* port = 0 or 1 */
-		usb@22000 {
-			compatible = "fsl-usb2-mph";
-			reg = <0x22000 0x1000>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			interrupt-parent = <&ipic>;
-			interrupts = <39 0x8>;
-			phy_type = "ulpi";
-			port0;
-		};
-		/* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
-		usb@23000 {
-			compatible = "fsl-usb2-dr";
-			reg = <0x23000 0x1000>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			interrupt-parent = <&ipic>;
-			interrupts = <38 0x8>;
-			dr_mode = "otg";
-			phy_type = "ulpi";
-		};
-
-		enet0: ethernet@24000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <0>;
-			device_type = "network";
-			model = "TSEC";
-			compatible = "gianfar";
-			reg = <0x24000 0x1000>;
-			ranges = <0x0 0x24000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <32 0x8 33 0x8 34 0x8>;
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi0>;
-			phy-handle = <&phy0>;
-			linux,network-index = <0>;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-mdio";
-				reg = <0x520 0x20>;
-
-				phy0: ethernet-phy@0 {
-					interrupt-parent = <&ipic>;
-					interrupts = <17 0x8>;
-					reg = <0x0>;
-				};
-
-				phy1: ethernet-phy@1 {
-					interrupt-parent = <&ipic>;
-					interrupts = <18 0x8>;
-					reg = <0x1>;
-				};
-
-				tbi0: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		enet1: ethernet@25000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <1>;
-			device_type = "network";
-			model = "TSEC";
-			compatible = "gianfar";
-			reg = <0x25000 0x1000>;
-			ranges = <0x0 0x25000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <35 0x8 36 0x8 37 0x8>;
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi1>;
-			phy-handle = <&phy1>;
-			linux,network-index = <1>;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-tbi";
-				reg = <0x520 0x20>;
-
-				tbi1: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		serial0: serial@4500 {
-			cell-index = <0>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4500 0x100>;
-			clock-frequency = <0>;
-			interrupts = <9 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		serial1: serial@4600 {
-			cell-index = <1>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4600 0x100>;
-			clock-frequency = <0>;
-			interrupts = <10 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		crypto@30000 {
-			compatible = "fsl,sec2.0";
-			reg = <0x30000 0x10000>;
-			interrupts = <11 0x8>;
-			interrupt-parent = <&ipic>;
-			fsl,num-channels = <4>;
-			fsl,channel-fifo-len = <24>;
-			fsl,exec-units-mask = <0x7e>;
-			fsl,descriptor-types-mask = <0x01010ebf>;
-		};
-
-		/* IPIC
-		 * interrupts cell = <intr #, sense>
-		 * sense values match linux IORESOURCE_IRQ_* defines:
-		 * sense == 8: Level, low assertion
-		 * sense == 2: Edge, high-to-low change
-		 */
-		ipic: pic@700 {
-			interrupt-controller;
-			#address-cells = <0>;
-			#interrupt-cells = <2>;
-			reg = <0x700 0x100>;
-			device_type = "ipic";
-		};
-	};
-
-	pci0: pci@e0008500 {
-		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
-		interrupt-map = <
-
-				/* IDSEL 0x11 */
-				 0x8800 0x0 0x0 0x1 &ipic 20 0x8
-				 0x8800 0x0 0x0 0x2 &ipic 21 0x8
-				 0x8800 0x0 0x0 0x3 &ipic 22 0x8
-				 0x8800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x12 */
-				 0x9000 0x0 0x0 0x1 &ipic 22 0x8
-				 0x9000 0x0 0x0 0x2 &ipic 23 0x8
-				 0x9000 0x0 0x0 0x3 &ipic 20 0x8
-				 0x9000 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x13 */
-				 0x9800 0x0 0x0 0x1 &ipic 23 0x8
-				 0x9800 0x0 0x0 0x2 &ipic 20 0x8
-				 0x9800 0x0 0x0 0x3 &ipic 21 0x8
-				 0x9800 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x15 */
-				 0xa800 0x0 0x0 0x1 &ipic 20 0x8
-				 0xa800 0x0 0x0 0x2 &ipic 21 0x8
-				 0xa800 0x0 0x0 0x3 &ipic 22 0x8
-				 0xa800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x16 */
-				 0xb000 0x0 0x0 0x1 &ipic 23 0x8
-				 0xb000 0x0 0x0 0x2 &ipic 20 0x8
-				 0xb000 0x0 0x0 0x3 &ipic 21 0x8
-				 0xb000 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x17 */
-				 0xb800 0x0 0x0 0x1 &ipic 22 0x8
-				 0xb800 0x0 0x0 0x2 &ipic 23 0x8
-				 0xb800 0x0 0x0 0x3 &ipic 20 0x8
-				 0xb800 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x18 */
-				 0xc000 0x0 0x0 0x1 &ipic 21 0x8
-				 0xc000 0x0 0x0 0x2 &ipic 22 0x8
-				 0xc000 0x0 0x0 0x3 &ipic 23 0x8
-				 0xc000 0x0 0x0 0x4 &ipic 20 0x8>;
-		interrupt-parent = <&ipic>;
-		interrupts = <66 0x8>;
-		bus-range = <0 0>;
-		ranges = <0x02000000 0x0 0x90000000 0x90000000 0x0 0x10000000
-			  0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
-			  0x01000000 0x0 0x00000000 0xe2000000 0x0 0x00100000>;
-		clock-frequency = <66666666>;
-		#interrupt-cells = <1>;
-		#size-cells = <2>;
-		#address-cells = <3>;
-		reg = <0xe0008500 0x100		/* internal registers */
-		       0xe0008300 0x8>;		/* config space access registers */
-		compatible = "fsl,mpc8349-pci";
-		device_type = "pci";
-	};
-
-	pci1: pci@e0008600 {
-		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
-		interrupt-map = <
-
-				/* IDSEL 0x11 */
-				 0x8800 0x0 0x0 0x1 &ipic 20 0x8
-				 0x8800 0x0 0x0 0x2 &ipic 21 0x8
-				 0x8800 0x0 0x0 0x3 &ipic 22 0x8
-				 0x8800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x12 */
-				 0x9000 0x0 0x0 0x1 &ipic 22 0x8
-				 0x9000 0x0 0x0 0x2 &ipic 23 0x8
-				 0x9000 0x0 0x0 0x3 &ipic 20 0x8
-				 0x9000 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x13 */
-				 0x9800 0x0 0x0 0x1 &ipic 23 0x8
-				 0x9800 0x0 0x0 0x2 &ipic 20 0x8
-				 0x9800 0x0 0x0 0x3 &ipic 21 0x8
-				 0x9800 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x15 */
-				 0xa800 0x0 0x0 0x1 &ipic 20 0x8
-				 0xa800 0x0 0x0 0x2 &ipic 21 0x8
-				 0xa800 0x0 0x0 0x3 &ipic 22 0x8
-				 0xa800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x16 */
-				 0xb000 0x0 0x0 0x1 &ipic 23 0x8
-				 0xb000 0x0 0x0 0x2 &ipic 20 0x8
-				 0xb000 0x0 0x0 0x3 &ipic 21 0x8
-				 0xb000 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x17 */
-				 0xb800 0x0 0x0 0x1 &ipic 22 0x8
-				 0xb800 0x0 0x0 0x2 &ipic 23 0x8
-				 0xb800 0x0 0x0 0x3 &ipic 20 0x8
-				 0xb800 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x18 */
-				 0xc000 0x0 0x0 0x1 &ipic 21 0x8
-				 0xc000 0x0 0x0 0x2 &ipic 22 0x8
-				 0xc000 0x0 0x0 0x3 &ipic 23 0x8
-				 0xc000 0x0 0x0 0x4 &ipic 20 0x8>;
-		interrupt-parent = <&ipic>;
-		interrupts = <67 0x8>;
-		bus-range = <0 0>;
-		ranges = <0x02000000 0x0 0xb0000000 0xb0000000 0x0 0x10000000
-			  0x42000000 0x0 0xa0000000 0xa0000000 0x0 0x10000000
-			  0x01000000 0x0 0x00000000 0xe2100000 0x0 0x00100000>;
-		clock-frequency = <66666666>;
-		#interrupt-cells = <1>;
-		#size-cells = <2>;
-		#address-cells = <3>;
-		reg = <0xe0008600 0x100		/* internal registers */
-		       0xe0008380 0x8>;		/* config space access registers */
-		compatible = "fsl,mpc8349-pci";
-		device_type = "pci";
-	};
-};
diff --git a/arch/powerpc/configs/83xx/mpc834x_mds_defconfig b/arch/powerpc/configs/83xx/mpc834x_mds_defconfig
deleted file mode 100644
index e2ff684d8792..000000000000
--- a/arch/powerpc/configs/83xx/mpc834x_mds_defconfig
+++ /dev/null
@@ -1,58 +0,0 @@
-CONFIG_SYSVIPC=y
-CONFIG_NO_HZ=y
-CONFIG_HIGH_RES_TIMERS=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_EXPERT=y
-# CONFIG_KALLSYMS is not set
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_MSDOS_PARTITION is not set
-# CONFIG_PPC_CHRP is not set
-# CONFIG_PPC_PMAC is not set
-CONFIG_PPC_83xx=y
-CONFIG_MPC834x_MDS=y
-CONFIG_PCI=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_XFRM_USER=m
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_SYN_COOKIES=y
-# CONFIG_IPV6 is not set
-# CONFIG_FW_LOADER is not set
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_SIZE=32768
-CONFIG_NETDEVICES=y
-CONFIG_GIANFAR=y
-CONFIG_E100=y
-CONFIG_MARVELL_PHY=y
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-# CONFIG_VT is not set
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-# CONFIG_HW_RANDOM is not set
-CONFIG_I2C=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_I2C_MPC=y
-CONFIG_WATCHDOG=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_DS1374=y
-CONFIG_EXT2_FS=y
-CONFIG_EXT4_FS=y
-CONFIG_PROC_KCORE=y
-CONFIG_TMPFS=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_PCBC=m
diff --git a/arch/powerpc/configs/mpc83xx_defconfig b/arch/powerpc/configs/mpc83xx_defconfig
index 95d43f8a3869..03f6a478d0cf 100644
--- a/arch/powerpc/configs/mpc83xx_defconfig
+++ b/arch/powerpc/configs/mpc83xx_defconfig
@@ -13,7 +13,6 @@ CONFIG_PPC_83xx=y
 CONFIG_MPC831x_RDB=y
 CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
-CONFIG_MPC834x_MDS=y
 CONFIG_MPC834x_ITX=y
 CONFIG_MPC836x_MDS=y
 CONFIG_MPC836x_RDK=y
diff --git a/arch/powerpc/configs/ppc6xx_defconfig b/arch/powerpc/configs/ppc6xx_defconfig
index 110258277959..513696fd5f9e 100644
--- a/arch/powerpc/configs/ppc6xx_defconfig
+++ b/arch/powerpc/configs/ppc6xx_defconfig
@@ -46,7 +46,6 @@ CONFIG_PPC_83xx=y
 CONFIG_MPC831x_RDB=y
 CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
-CONFIG_MPC834x_MDS=y
 CONFIG_MPC834x_ITX=y
 CONFIG_MPC836x_MDS=y
 CONFIG_MPC836x_RDK=y
diff --git a/arch/powerpc/platforms/83xx/Kconfig b/arch/powerpc/platforms/83xx/Kconfig
index bee119725f61..1ca0ba3b0f1c 100644
--- a/arch/powerpc/platforms/83xx/Kconfig
+++ b/arch/powerpc/platforms/83xx/Kconfig
@@ -39,18 +39,6 @@ config MPC832x_RDB
 	help
 	  This option enables support for the MPC8323 RDB board.
 
-config MPC834x_MDS
-	bool "Freescale MPC834x MDS"
-	select DEFAULT_UIMAGE
-	select PPC_MPC834x
-	help
-	  This option enables support for the MPC 834x MDS evaluation board.
-
-	  Be aware that PCI buses can only function when MDS board is plugged
-	  into the PIB (Platform IO Board) board from Freescale which provide
-	  3 PCI slots.  The PIBs PCI initialization is the bootloader's
-	  responsibility.
-
 config MPC834x_ITX
 	bool "Freescale MPC834x ITX"
 	select DEFAULT_UIMAGE
diff --git a/arch/powerpc/platforms/83xx/Makefile b/arch/powerpc/platforms/83xx/Makefile
index 41cb5f842eff..5697b70492b8 100644
--- a/arch/powerpc/platforms/83xx/Makefile
+++ b/arch/powerpc/platforms/83xx/Makefile
@@ -8,7 +8,6 @@ obj-$(CONFIG_MCU_MPC8349EMITX)	+= mcu_mpc8349emitx.o
 obj-$(CONFIG_MPC830x_RDB)	+= mpc830x_rdb.o
 obj-$(CONFIG_MPC831x_RDB)	+= mpc831x_rdb.o
 obj-$(CONFIG_MPC832x_RDB)	+= mpc832x_rdb.o
-obj-$(CONFIG_MPC834x_MDS)	+= mpc834x_mds.o
 obj-$(CONFIG_MPC834x_ITX)	+= mpc834x_itx.o
 obj-$(CONFIG_MPC836x_MDS)	+= mpc836x_mds.o
 obj-$(CONFIG_MPC836x_RDK)	+= mpc836x_rdk.o
diff --git a/arch/powerpc/platforms/83xx/mpc834x_mds.c b/arch/powerpc/platforms/83xx/mpc834x_mds.c
deleted file mode 100644
index 7dde5a75332b..000000000000
--- a/arch/powerpc/platforms/83xx/mpc834x_mds.c
+++ /dev/null
@@ -1,101 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * arch/powerpc/platforms/83xx/mpc834x_mds.c
- *
- * MPC834x MDS board specific routines
- *
- * Maintainer: Kumar Gala <galak@kernel.crashing.org>
- */
-
-#include <linux/stddef.h>
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/errno.h>
-#include <linux/reboot.h>
-#include <linux/pci.h>
-#include <linux/kdev_t.h>
-#include <linux/major.h>
-#include <linux/console.h>
-#include <linux/delay.h>
-#include <linux/seq_file.h>
-#include <linux/root_dev.h>
-#include <linux/of_address.h>
-#include <linux/of_platform.h>
-
-#include <linux/atomic.h>
-#include <asm/time.h>
-#include <asm/io.h>
-#include <asm/machdep.h>
-#include <asm/ipic.h>
-#include <asm/irq.h>
-#include <asm/udbg.h>
-#include <sysdev/fsl_soc.h>
-#include <sysdev/fsl_pci.h>
-
-#include "mpc83xx.h"
-
-#define BCSR5_INT_USB		0x02
-static int __init mpc834xemds_usb_cfg(void)
-{
-	struct device_node *np;
-	void __iomem *bcsr_regs = NULL;
-	u8 bcsr5;
-
-	mpc834x_usb_cfg();
-	/* Map BCSR area */
-	np = of_find_node_by_name(NULL, "bcsr");
-	if (np) {
-		struct resource res;
-
-		of_address_to_resource(np, 0, &res);
-		bcsr_regs = ioremap(res.start, resource_size(&res));
-		of_node_put(np);
-	}
-	if (!bcsr_regs)
-		return -1;
-
-	/*
-	 * if Processor Board is plugged into PIB board,
-	 * force to use the PHY on Processor Board
-	 */
-	bcsr5 = in_8(bcsr_regs + 5);
-	if (!(bcsr5 & BCSR5_INT_USB))
-		out_8(bcsr_regs + 5, (bcsr5 | BCSR5_INT_USB));
-	iounmap(bcsr_regs);
-	return 0;
-}
-
-/* ************************************************************************
- *
- * Setup the architecture
- *
- */
-static void __init mpc834x_mds_setup_arch(void)
-{
-	mpc83xx_setup_arch();
-
-	mpc834xemds_usb_cfg();
-}
-
-machine_device_initcall(mpc834x_mds, mpc83xx_declare_of_platform_devices);
-
-/*
- * Called very early, MMU is off, device-tree isn't unflattened
- */
-static int __init mpc834x_mds_probe(void)
-{
-	return of_machine_is_compatible("MPC834xMDS");
-}
-
-define_machine(mpc834x_mds) {
-	.name			= "MPC834x MDS",
-	.probe			= mpc834x_mds_probe,
-	.setup_arch		= mpc834x_mds_setup_arch,
-	.discover_phbs  	= mpc83xx_setup_pci,
-	.init_IRQ		= mpc83xx_ipic_init_IRQ,
-	.get_irq		= ipic_get_irq,
-	.restart		= mpc83xx_restart,
-	.time_init		= mpc83xx_time_init,
-	.calibrate_decr		= generic_calibrate_decr,
-	.progress		= udbg_progress,
-};
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH 2/4] powerpc: drop MPC836x_MDS platform support
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
  2023-02-20 11:59 ` [PATCH 1/4] powerpc: drop MPC834x_MDS platform support Paul Gortmaker
@ 2023-02-20 11:59 ` Paul Gortmaker
  2023-02-20 11:59 ` [PATCH 3/4] powerpc: drop MPC837x_MDS " Paul Gortmaker
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 26+ messages in thread
From: Paul Gortmaker @ 2023-02-20 11:59 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: Li Yang, Scott Wood, Paul Gortmaker, Claudiu Manoil, Paul Mackerras

This 2006 era Modular Development System (MDS) has, at its core component,
a full length card with a PCI edge.  No case.  Serial and network
connectors were on card, so it could optionally be fitted with plastic
stand-offs and run stand-alone off a power brick.

This is very similar to the MPC834x_MDS removed in the prior commit, but
with this board variant as an evolutionary step.  DDR2 was now an option,
and the card edge was revised down to PCI-32 as PCI-64 never got traction.
But overall the form factor and design goals were unchanged.

Like all the MDS systems, it was meant as a vehicle to get the CPU out
early to hardware OEMs so software and board development could take place
in parallel.

To that end, the BGA CPU was held in place with a mechanical spring loaded
pressure assembly (vs. solder) so that early rev silicon could be replaced
in the field.  Not for COTS deployment!

These were made in limited numbers and availability preference was given
to partners who were planning to make their own boards.

Given that the whole reason for existence was to assist in enabling new
board designs [not happening for 10+ years], and that they weren't
generally available, and that the hardware wasn't really hobbyist friendly
even for retro computing, it makes sense to retire the support for this
particular platform.

Cc: Scott Wood <oss@buserror.net>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 arch/powerpc/boot/dts/mpc836x_mds.dts         | 481 ------------------
 .../configs/83xx/mpc836x_mds_defconfig        |  64 ---
 arch/powerpc/configs/mpc83xx_defconfig        |   1 -
 arch/powerpc/configs/ppc6xx_defconfig         |   1 -
 arch/powerpc/platforms/83xx/Kconfig           |   6 -
 arch/powerpc/platforms/83xx/Makefile          |   1 -
 arch/powerpc/platforms/83xx/mpc836x_mds.c     | 210 --------
 7 files changed, 764 deletions(-)
 delete mode 100644 arch/powerpc/boot/dts/mpc836x_mds.dts
 delete mode 100644 arch/powerpc/configs/83xx/mpc836x_mds_defconfig
 delete mode 100644 arch/powerpc/platforms/83xx/mpc836x_mds.c

diff --git a/arch/powerpc/boot/dts/mpc836x_mds.dts b/arch/powerpc/boot/dts/mpc836x_mds.dts
deleted file mode 100644
index f4ca12ec57f1..000000000000
--- a/arch/powerpc/boot/dts/mpc836x_mds.dts
+++ /dev/null
@@ -1,481 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * MPC8360E EMDS Device Tree Source
- *
- * Copyright 2006 Freescale Semiconductor Inc.
- */
-
-
-/*
-/memreserve/	00000000 1000000;
-*/
-
-/dts-v1/;
-
-/ {
-	model = "MPC8360MDS";
-	compatible = "MPC8360EMDS", "MPC836xMDS", "MPC83xxMDS";
-	#address-cells = <1>;
-	#size-cells = <1>;
-
-	aliases {
-		ethernet0 = &enet0;
-		ethernet1 = &enet1;
-		serial0 = &serial0;
-		serial1 = &serial1;
-		pci0 = &pci0;
-	};
-
-	cpus {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		PowerPC,8360@0 {
-			device_type = "cpu";
-			reg = <0x0>;
-			d-cache-line-size = <32>;	// 32 bytes
-			i-cache-line-size = <32>;	// 32 bytes
-			d-cache-size = <32768>;		// L1, 32K
-			i-cache-size = <32768>;		// L1, 32K
-			timebase-frequency = <66000000>;
-			bus-frequency = <264000000>;
-			clock-frequency = <528000000>;
-		};
-	};
-
-	memory {
-		device_type = "memory";
-		reg = <0x00000000 0x10000000>;
-	};
-
-	localbus@e0005000 {
-		#address-cells = <2>;
-		#size-cells = <1>;
-		compatible = "fsl,mpc8360-localbus", "fsl,pq2pro-localbus",
-			     "simple-bus";
-		reg = <0xe0005000 0xd8>;
-		ranges = <0 0 0xfe000000 0x02000000
-		          1 0 0xf8000000 0x00008000>;
-
-		flash@0,0 {
-			compatible = "cfi-flash";
-			reg = <0 0 0x2000000>;
-			bank-width = <2>;
-			device-width = <1>;
-		};
-
-		bcsr@1,0 {
-			#address-cells = <1>;
-			#size-cells = <1>;
- 			compatible = "fsl,mpc8360mds-bcsr";
-			reg = <1 0 0x8000>;
-			ranges = <0 1 0 0x8000>;
-
-			bcsr13: gpio-controller@d {
-				#gpio-cells = <2>;
-				compatible = "fsl,mpc8360mds-bcsr-gpio";
-				reg = <0xd 1>;
-				gpio-controller;
-			};
-		};
-	};
-
-	soc8360@e0000000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "soc";
-		compatible = "simple-bus";
-		ranges = <0x0 0xe0000000 0x00100000>;
-		reg = <0xe0000000 0x00000200>;
-		bus-frequency = <264000000>;
-
-		wdt@200 {
-			device_type = "watchdog";
-			compatible = "mpc83xx_wdt";
-			reg = <0x200 0x100>;
-		};
-
-		pmc: power@b00 {
-			compatible = "fsl,mpc8360-pmc", "fsl,mpc8349-pmc";
-			reg = <0xb00 0x100 0xa00 0x100>;
-			interrupts = <80 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		i2c@3000 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <0>;
-			compatible = "fsl-i2c";
-			reg = <0x3000 0x100>;
-			interrupts = <14 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-
-			rtc@68 {
-				compatible = "dallas,ds1374";
-				reg = <0x68>;
-			};
-		};
-
-		i2c@3100 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <1>;
-			compatible = "fsl-i2c";
-			reg = <0x3100 0x100>;
-			interrupts = <15 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-		};
-
-		serial0: serial@4500 {
-			cell-index = <0>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4500 0x100>;
-			clock-frequency = <264000000>;
-			interrupts = <9 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		serial1: serial@4600 {
-			cell-index = <1>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4600 0x100>;
-			clock-frequency = <264000000>;
-			interrupts = <10 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		dma@82a8 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8360-dma", "fsl,elo-dma";
-			reg = <0x82a8 4>;
-			ranges = <0 0x8100 0x1a8>;
-			interrupt-parent = <&ipic>;
-			interrupts = <71 8>;
-			cell-index = <0>;
-			dma-channel@0 {
-				compatible = "fsl,mpc8360-dma-channel", "fsl,elo-dma-channel";
-				reg = <0 0x80>;
-				cell-index = <0>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@80 {
-				compatible = "fsl,mpc8360-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x80 0x80>;
-				cell-index = <1>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@100 {
-				compatible = "fsl,mpc8360-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x100 0x80>;
-				cell-index = <2>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@180 {
-				compatible = "fsl,mpc8360-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x180 0x28>;
-				cell-index = <3>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-		};
-
-		crypto@30000 {
-			compatible = "fsl,sec2.0";
-			reg = <0x30000 0x10000>;
-			interrupts = <11 0x8>;
-			interrupt-parent = <&ipic>;
-			fsl,num-channels = <4>;
-			fsl,channel-fifo-len = <24>;
-			fsl,exec-units-mask = <0x7e>;
-			fsl,descriptor-types-mask = <0x01010ebf>;
-			sleep = <&pmc 0x03000000>;
-		};
-
-		ipic: pic@700 {
-			interrupt-controller;
-			#address-cells = <0>;
-			#interrupt-cells = <2>;
-			reg = <0x700 0x100>;
-			device_type = "ipic";
-		};
-
-		par_io@1400 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			reg = <0x1400 0x100>;
-			ranges = <0 0x1400 0x100>;
-			device_type = "par_io";
-			num-ports = <7>;
-
-			qe_pio_b: gpio-controller@18 {
-				#gpio-cells = <2>;
-				compatible = "fsl,mpc8360-qe-pario-bank",
-					     "fsl,mpc8323-qe-pario-bank";
-				reg = <0x18 0x18>;
-				gpio-controller;
-			};
-
-			pio1: ucc_pin@1 {
-				pio-map = <
-			/* port  pin  dir  open_drain  assignment  has_irq */
-					0  3  1  0  1  0 	/* TxD0 */
-					0  4  1  0  1  0 	/* TxD1 */
-					0  5  1  0  1  0 	/* TxD2 */
-					0  6  1  0  1  0 	/* TxD3 */
-					1  6  1  0  3  0 	/* TxD4 */
-					1  7  1  0  1  0 	/* TxD5 */
-					1  9  1  0  2  0 	/* TxD6 */
-					1  10 1  0  2  0 	/* TxD7 */
-					0  9  2  0  1  0 	/* RxD0 */
-					0  10 2  0  1  0 	/* RxD1 */
-					0  11 2  0  1  0 	/* RxD2 */
-					0  12 2  0  1  0 	/* RxD3 */
-					0  13 2  0  1  0 	/* RxD4 */
-					1  1  2  0  2  0 	/* RxD5 */
-					1  0  2  0  2  0 	/* RxD6 */
-					1  4  2  0  2  0 	/* RxD7 */
-					0  7  1  0  1  0 	/* TX_EN */
-					0  8  1  0  1  0 	/* TX_ER */
-					0  15 2  0  1  0 	/* RX_DV */
-					0  16 2  0  1  0 	/* RX_ER */
-					0  0  2  0  1  0 	/* RX_CLK */
-					2  9  1  0  3  0 	/* GTX_CLK - CLK10 */
-					2  8  2  0  1  0>;	/* GTX125 - CLK9 */
-			};
-			pio2: ucc_pin@2 {
-				pio-map = <
-			/* port  pin  dir  open_drain  assignment  has_irq */
-					0  17 1  0  1  0   /* TxD0 */
-					0  18 1  0  1  0   /* TxD1 */
-					0  19 1  0  1  0   /* TxD2 */
-					0  20 1  0  1  0   /* TxD3 */
-					1  2  1  0  1  0   /* TxD4 */
-					1  3  1  0  2  0   /* TxD5 */
-					1  5  1  0  3  0   /* TxD6 */
-					1  8  1  0  3  0   /* TxD7 */
-					0  23 2  0  1  0   /* RxD0 */
-					0  24 2  0  1  0   /* RxD1 */
-					0  25 2  0  1  0   /* RxD2 */
-					0  26 2  0  1  0   /* RxD3 */
-					0  27 2  0  1  0   /* RxD4 */
-					1  12 2  0  2  0   /* RxD5 */
-					1  13 2  0  3  0   /* RxD6 */
-					1  11 2  0  2  0   /* RxD7 */
-					0  21 1  0  1  0   /* TX_EN */
-					0  22 1  0  1  0   /* TX_ER */
-					0  29 2  0  1  0   /* RX_DV */
-					0  30 2  0  1  0   /* RX_ER */
-					0  31 2  0  1  0   /* RX_CLK */
-					2  2  1  0  2  0   /* GTX_CLK - CLK10 */
-					2  3  2  0  1  0   /* GTX125 - CLK4 */
-					0  1  3  0  2  0   /* MDIO */
-					0  2  1  0  1  0>; /* MDC */
-			};
-
-		};
-	};
-
-	qe@e0100000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "qe";
-		compatible = "fsl,qe";
-		ranges = <0x0 0xe0100000 0x00100000>;
-		reg = <0xe0100000 0x480>;
-		brg-frequency = <0>;
-		bus-frequency = <396000000>;
-		fsl,qe-num-riscs = <2>;
-		fsl,qe-num-snums = <28>;
-
-		muram@10000 {
- 			#address-cells = <1>;
- 			#size-cells = <1>;
-			compatible = "fsl,qe-muram", "fsl,cpm-muram";
-			ranges = <0x0 0x00010000 0x0000c000>;
-
-			data-only@0 {
-				compatible = "fsl,qe-muram-data",
-					     "fsl,cpm-muram-data";
-				reg = <0x0 0xc000>;
-			};
-		};
-
-		timer@440 {
-			compatible = "fsl,mpc8360-qe-gtm",
-				     "fsl,qe-gtm", "fsl,gtm";
-			reg = <0x440 0x40>;
-			clock-frequency = <132000000>;
-			interrupts = <12 13 14 15>;
-			interrupt-parent = <&qeic>;
-		};
-
-		spi@4c0 {
-			cell-index = <0>;
-			compatible = "fsl,spi";
-			reg = <0x4c0 0x40>;
-			interrupts = <2>;
-			interrupt-parent = <&qeic>;
-			mode = "cpu";
-		};
-
-		spi@500 {
-			cell-index = <1>;
-			compatible = "fsl,spi";
-			reg = <0x500 0x40>;
-			interrupts = <1>;
-			interrupt-parent = <&qeic>;
-			mode = "cpu";
-		};
-
-		usb@6c0 {
-			compatible = "fsl,mpc8360-qe-usb",
-				     "fsl,mpc8323-qe-usb";
-			reg = <0x6c0 0x40 0x8b00 0x100>;
-			interrupts = <11>;
-			interrupt-parent = <&qeic>;
-			fsl,fullspeed-clock = "clk21";
-			fsl,lowspeed-clock = "brg9";
-			gpios = <&qe_pio_b  2 0   /* USBOE */
-				 &qe_pio_b  3 0   /* USBTP */
-				 &qe_pio_b  8 0   /* USBTN */
-				 &qe_pio_b  9 0   /* USBRP */
-				 &qe_pio_b 11 0   /* USBRN */
-				 &bcsr13    5 0   /* SPEED */
-				 &bcsr13    4 1>; /* POWER */
-		};
-
-		enet0: ucc@2000 {
-			device_type = "network";
-			compatible = "ucc_geth";
-			cell-index = <1>;
-			reg = <0x2000 0x200>;
-			interrupts = <32>;
-			interrupt-parent = <&qeic>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			rx-clock-name = "none";
-			tx-clock-name = "clk9";
-			phy-handle = <&phy0>;
-			phy-connection-type = "rgmii-id";
-			pio-handle = <&pio1>;
-		};
-
-		enet1: ucc@3000 {
-			device_type = "network";
-			compatible = "ucc_geth";
-			cell-index = <2>;
-			reg = <0x3000 0x200>;
-			interrupts = <33>;
-			interrupt-parent = <&qeic>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			rx-clock-name = "none";
-			tx-clock-name = "clk4";
-			phy-handle = <&phy1>;
-			phy-connection-type = "rgmii-id";
-			pio-handle = <&pio2>;
-		};
-
-		mdio@2120 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			reg = <0x2120 0x18>;
-			compatible = "fsl,ucc-mdio";
-
-			phy0: ethernet-phy@0 {
-				interrupt-parent = <&ipic>;
-				interrupts = <17 0x8>;
-				reg = <0x0>;
-			};
-			phy1: ethernet-phy@1 {
-				interrupt-parent = <&ipic>;
-				interrupts = <18 0x8>;
-				reg = <0x1>;
-			};
-			tbi-phy@2 {
-				device_type = "tbi-phy";
-				reg = <0x2>;
-			};
-		};
-
-		qeic: interrupt-controller@80 {
-			interrupt-controller;
-			compatible = "fsl,qe-ic";
-			#address-cells = <0>;
-			#interrupt-cells = <1>;
-			reg = <0x80 0x80>;
-			big-endian;
-			interrupts = <32 0x8 33 0x8>; // high:32 low:33
-			interrupt-parent = <&ipic>;
-		};
-	};
-
-	pci0: pci@e0008500 {
-		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
-		interrupt-map = <
-
-				/* IDSEL 0x11 AD17 */
-				 0x8800 0x0 0x0 0x1 &ipic 20 0x8
-				 0x8800 0x0 0x0 0x2 &ipic 21 0x8
-				 0x8800 0x0 0x0 0x3 &ipic 22 0x8
-				 0x8800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x12 AD18 */
-				 0x9000 0x0 0x0 0x1 &ipic 22 0x8
-				 0x9000 0x0 0x0 0x2 &ipic 23 0x8
-				 0x9000 0x0 0x0 0x3 &ipic 20 0x8
-				 0x9000 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x13 AD19 */
-				 0x9800 0x0 0x0 0x1 &ipic 23 0x8
-				 0x9800 0x0 0x0 0x2 &ipic 20 0x8
-				 0x9800 0x0 0x0 0x3 &ipic 21 0x8
-				 0x9800 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x15 AD21*/
-				 0xa800 0x0 0x0 0x1 &ipic 20 0x8
-				 0xa800 0x0 0x0 0x2 &ipic 21 0x8
-				 0xa800 0x0 0x0 0x3 &ipic 22 0x8
-				 0xa800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x16 AD22*/
-				 0xb000 0x0 0x0 0x1 &ipic 23 0x8
-				 0xb000 0x0 0x0 0x2 &ipic 20 0x8
-				 0xb000 0x0 0x0 0x3 &ipic 21 0x8
-				 0xb000 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x17 AD23*/
-				 0xb800 0x0 0x0 0x1 &ipic 22 0x8
-				 0xb800 0x0 0x0 0x2 &ipic 23 0x8
-				 0xb800 0x0 0x0 0x3 &ipic 20 0x8
-				 0xb800 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x18 AD24*/
-				 0xc000 0x0 0x0 0x1 &ipic 21 0x8
-				 0xc000 0x0 0x0 0x2 &ipic 22 0x8
-				 0xc000 0x0 0x0 0x3 &ipic 23 0x8
-				 0xc000 0x0 0x0 0x4 &ipic 20 0x8>;
-		interrupt-parent = <&ipic>;
-		interrupts = <66 0x8>;
-		bus-range = <0 0>;
-		ranges = <0x02000000 0x0 0xa0000000 0xa0000000 0x0 0x10000000
-			  0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
-			  0x01000000 0x0 0x00000000 0xe2000000 0x0 0x00100000>;
-		clock-frequency = <66666666>;
-		#interrupt-cells = <1>;
-		#size-cells = <2>;
-		#address-cells = <3>;
-		reg = <0xe0008500 0x100		/* internal registers */
-		       0xe0008300 0x8>;		/* config space access registers */
-		compatible = "fsl,mpc8349-pci";
-		device_type = "pci";
-		sleep = <&pmc 0x00010000>;
-	};
-};
diff --git a/arch/powerpc/configs/83xx/mpc836x_mds_defconfig b/arch/powerpc/configs/83xx/mpc836x_mds_defconfig
deleted file mode 100644
index 3eceb6db2982..000000000000
--- a/arch/powerpc/configs/83xx/mpc836x_mds_defconfig
+++ /dev/null
@@ -1,64 +0,0 @@
-CONFIG_SYSVIPC=y
-CONFIG_NO_HZ=y
-CONFIG_HIGH_RES_TIMERS=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_EXPERT=y
-# CONFIG_KALLSYMS is not set
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_MSDOS_PARTITION is not set
-# CONFIG_PPC_CHRP is not set
-# CONFIG_PPC_PMAC is not set
-CONFIG_PPC_83xx=y
-CONFIG_MPC836x_MDS=y
-CONFIG_PCI=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_SYN_COOKIES=y
-# CONFIG_IPV6 is not set
-# CONFIG_FW_LOADER is not set
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_BLOCK=y
-CONFIG_MTD_CFI=y
-CONFIG_MTD_CFI_AMDSTD=y
-CONFIG_MTD_PHYSMAP_OF=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_SIZE=32768
-CONFIG_SCSI=y
-CONFIG_NETDEVICES=y
-CONFIG_UCC_GETH=y
-CONFIG_MARVELL_PHY=y
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-# CONFIG_VT is not set
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_HW_RANDOM=y
-CONFIG_I2C=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_I2C_MPC=y
-CONFIG_WATCHDOG=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_DS1374=y
-CONFIG_QUICC_ENGINE=y
-CONFIG_EXT2_FS=y
-CONFIG_EXT4_FS=y
-CONFIG_PROC_KCORE=y
-CONFIG_TMPFS=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_PCBC=m
diff --git a/arch/powerpc/configs/mpc83xx_defconfig b/arch/powerpc/configs/mpc83xx_defconfig
index 03f6a478d0cf..0fa29520808f 100644
--- a/arch/powerpc/configs/mpc83xx_defconfig
+++ b/arch/powerpc/configs/mpc83xx_defconfig
@@ -14,7 +14,6 @@ CONFIG_MPC831x_RDB=y
 CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
 CONFIG_MPC834x_ITX=y
-CONFIG_MPC836x_MDS=y
 CONFIG_MPC836x_RDK=y
 CONFIG_MPC837x_MDS=y
 CONFIG_MPC837x_RDB=y
diff --git a/arch/powerpc/configs/ppc6xx_defconfig b/arch/powerpc/configs/ppc6xx_defconfig
index 513696fd5f9e..71f5ea8f76a5 100644
--- a/arch/powerpc/configs/ppc6xx_defconfig
+++ b/arch/powerpc/configs/ppc6xx_defconfig
@@ -47,7 +47,6 @@ CONFIG_MPC831x_RDB=y
 CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
 CONFIG_MPC834x_ITX=y
-CONFIG_MPC836x_MDS=y
 CONFIG_MPC836x_RDK=y
 CONFIG_MPC837x_MDS=y
 CONFIG_MPC837x_RDB=y
diff --git a/arch/powerpc/platforms/83xx/Kconfig b/arch/powerpc/platforms/83xx/Kconfig
index 1ca0ba3b0f1c..90d0041fb8a7 100644
--- a/arch/powerpc/platforms/83xx/Kconfig
+++ b/arch/powerpc/platforms/83xx/Kconfig
@@ -49,12 +49,6 @@ config MPC834x_ITX
 	  Be aware that PCI initialization is the bootloader's
 	  responsibility.
 
-config MPC836x_MDS
-	bool "Freescale MPC836x MDS"
-	select DEFAULT_UIMAGE
-	help
-	  This option enables support for the MPC836x MDS Processor Board.
-
 config MPC836x_RDK
 	bool "Freescale/Logic MPC836x RDK"
 	select DEFAULT_UIMAGE
diff --git a/arch/powerpc/platforms/83xx/Makefile b/arch/powerpc/platforms/83xx/Makefile
index 5697b70492b8..4f979f2fc64e 100644
--- a/arch/powerpc/platforms/83xx/Makefile
+++ b/arch/powerpc/platforms/83xx/Makefile
@@ -9,7 +9,6 @@ obj-$(CONFIG_MPC830x_RDB)	+= mpc830x_rdb.o
 obj-$(CONFIG_MPC831x_RDB)	+= mpc831x_rdb.o
 obj-$(CONFIG_MPC832x_RDB)	+= mpc832x_rdb.o
 obj-$(CONFIG_MPC834x_ITX)	+= mpc834x_itx.o
-obj-$(CONFIG_MPC836x_MDS)	+= mpc836x_mds.o
 obj-$(CONFIG_MPC836x_RDK)	+= mpc836x_rdk.o
 obj-$(CONFIG_MPC832x_MDS)	+= mpc832x_mds.o
 obj-$(CONFIG_MPC837x_MDS)	+= mpc837x_mds.o
diff --git a/arch/powerpc/platforms/83xx/mpc836x_mds.c b/arch/powerpc/platforms/83xx/mpc836x_mds.c
deleted file mode 100644
index b1e6665be5d3..000000000000
--- a/arch/powerpc/platforms/83xx/mpc836x_mds.c
+++ /dev/null
@@ -1,210 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * Copyright 2006 Freescale Semiconductor, Inc. All rights reserved.
- *
- * Author: Li Yang <LeoLi@freescale.com>
- *	   Yin Olivia <Hong-hua.Yin@freescale.com>
- *
- * Description:
- * MPC8360E MDS board specific routines.
- *
- * Changelog:
- * Jun 21, 2006	Initial version
- */
-
-#include <linux/stddef.h>
-#include <linux/kernel.h>
-#include <linux/compiler.h>
-#include <linux/init.h>
-#include <linux/errno.h>
-#include <linux/reboot.h>
-#include <linux/pci.h>
-#include <linux/kdev_t.h>
-#include <linux/major.h>
-#include <linux/console.h>
-#include <linux/delay.h>
-#include <linux/seq_file.h>
-#include <linux/root_dev.h>
-#include <linux/initrd.h>
-#include <linux/of_platform.h>
-#include <linux/of_device.h>
-
-#include <linux/atomic.h>
-#include <asm/time.h>
-#include <asm/io.h>
-#include <asm/machdep.h>
-#include <asm/ipic.h>
-#include <asm/irq.h>
-#include <asm/udbg.h>
-#include <sysdev/fsl_soc.h>
-#include <sysdev/fsl_pci.h>
-#include <soc/fsl/qe/qe.h>
-
-#include "mpc83xx.h"
-
-#undef DEBUG
-#ifdef DEBUG
-#define DBG(fmt...) udbg_printf(fmt)
-#else
-#define DBG(fmt...)
-#endif
-
-/* ************************************************************************
- *
- * Setup the architecture
- *
- */
-static void __init mpc836x_mds_setup_arch(void)
-{
-	struct device_node *np;
-	u8 __iomem *bcsr_regs = NULL;
-
-	mpc83xx_setup_arch();
-
-	/* Map BCSR area */
-	np = of_find_node_by_name(NULL, "bcsr");
-	if (np) {
-		struct resource res;
-
-		of_address_to_resource(np, 0, &res);
-		bcsr_regs = ioremap(res.start, resource_size(&res));
-		of_node_put(np);
-	}
-
-#ifdef CONFIG_QUICC_ENGINE
-	if ((np = of_find_node_by_name(NULL, "par_io")) != NULL) {
-		par_io_init(np);
-		of_node_put(np);
-
-		for_each_node_by_name(np, "ucc")
-			par_io_of_config(np);
-#ifdef CONFIG_QE_USB
-		/* Must fixup Par IO before QE GPIO chips are registered. */
-		par_io_config_pin(1,  2, 1, 0, 3, 0); /* USBOE  */
-		par_io_config_pin(1,  3, 1, 0, 3, 0); /* USBTP  */
-		par_io_config_pin(1,  8, 1, 0, 1, 0); /* USBTN  */
-		par_io_config_pin(1, 10, 2, 0, 3, 0); /* USBRXD */
-		par_io_config_pin(1,  9, 2, 1, 3, 0); /* USBRP  */
-		par_io_config_pin(1, 11, 2, 1, 3, 0); /* USBRN  */
-		par_io_config_pin(2, 20, 2, 0, 1, 0); /* CLK21  */
-#endif /* CONFIG_QE_USB */
-	}
-
-	if ((np = of_find_compatible_node(NULL, "network", "ucc_geth"))
-			!= NULL){
-		uint svid;
-
-		/* Reset the Ethernet PHY */
-#define BCSR9_GETHRST 0x20
-		clrbits8(&bcsr_regs[9], BCSR9_GETHRST);
-		udelay(1000);
-		setbits8(&bcsr_regs[9], BCSR9_GETHRST);
-
-		/* handle mpc8360ea rev.2.1 erratum 2: RGMII Timing */
-		svid = mfspr(SPRN_SVR);
-		if (svid == 0x80480021) {
-			void __iomem *immap;
-
-			immap = ioremap(get_immrbase() + 0x14a8, 8);
-
-			/*
-			 * IMMR + 0x14A8[4:5] = 11 (clk delay for UCC 2)
-			 * IMMR + 0x14A8[18:19] = 11 (clk delay for UCC 1)
-			 */
-			setbits32(immap, 0x0c003000);
-
-			/*
-			 * IMMR + 0x14AC[20:27] = 10101010
-			 * (data delay for both UCC's)
-			 */
-			clrsetbits_be32(immap + 4, 0xff0, 0xaa0);
-
-			iounmap(immap);
-		}
-
-		iounmap(bcsr_regs);
-		of_node_put(np);
-	}
-#endif				/* CONFIG_QUICC_ENGINE */
-}
-
-machine_device_initcall(mpc836x_mds, mpc83xx_declare_of_platform_devices);
-
-#ifdef CONFIG_QE_USB
-static int __init mpc836x_usb_cfg(void)
-{
-	u8 __iomem *bcsr;
-	struct device_node *np;
-	const char *mode;
-	int ret = 0;
-
-	np = of_find_compatible_node(NULL, NULL, "fsl,mpc8360mds-bcsr");
-	if (!np)
-		return -ENODEV;
-
-	bcsr = of_iomap(np, 0);
-	of_node_put(np);
-	if (!bcsr)
-		return -ENOMEM;
-
-	np = of_find_compatible_node(NULL, NULL, "fsl,mpc8323-qe-usb");
-	if (!np) {
-		ret = -ENODEV;
-		goto err;
-	}
-
-#define BCSR8_TSEC1M_MASK	(0x3 << 6)
-#define BCSR8_TSEC1M_RGMII	(0x0 << 6)
-#define BCSR8_TSEC2M_MASK	(0x3 << 4)
-#define BCSR8_TSEC2M_RGMII	(0x0 << 4)
-	/*
-	 * Default is GMII (2), but we should set it to RGMII (0) if we use
-	 * USB (Eth PHY is in RGMII mode anyway).
-	 */
-	clrsetbits_8(&bcsr[8], BCSR8_TSEC1M_MASK | BCSR8_TSEC2M_MASK,
-			       BCSR8_TSEC1M_RGMII | BCSR8_TSEC2M_RGMII);
-
-#define BCSR13_USBMASK	0x0f
-#define BCSR13_nUSBEN	0x08 /* 1 - Disable, 0 - Enable			*/
-#define BCSR13_USBSPEED	0x04 /* 1 - Full, 0 - Low			*/
-#define BCSR13_USBMODE	0x02 /* 1 - Host, 0 - Function			*/
-#define BCSR13_nUSBVCC	0x01 /* 1 - gets VBUS, 0 - supplies VBUS 	*/
-
-	clrsetbits_8(&bcsr[13], BCSR13_USBMASK, BCSR13_USBSPEED);
-
-	mode = of_get_property(np, "mode", NULL);
-	if (mode && !strcmp(mode, "peripheral")) {
-		setbits8(&bcsr[13], BCSR13_nUSBVCC);
-		qe_usb_clock_set(QE_CLK21, 48000000);
-	} else {
-		setbits8(&bcsr[13], BCSR13_USBMODE);
-	}
-
-	of_node_put(np);
-err:
-	iounmap(bcsr);
-	return ret;
-}
-machine_arch_initcall(mpc836x_mds, mpc836x_usb_cfg);
-#endif /* CONFIG_QE_USB */
-
-/*
- * Called very early, MMU is off, device-tree isn't unflattened
- */
-static int __init mpc836x_mds_probe(void)
-{
-	return of_machine_is_compatible("MPC836xMDS");
-}
-
-define_machine(mpc836x_mds) {
-	.name		= "MPC836x MDS",
-	.probe		= mpc836x_mds_probe,
-	.setup_arch	= mpc836x_mds_setup_arch,
-	.discover_phbs  = mpc83xx_setup_pci,
-	.init_IRQ	= mpc83xx_ipic_init_IRQ,
-	.get_irq	= ipic_get_irq,
-	.restart	= mpc83xx_restart,
-	.time_init	= mpc83xx_time_init,
-	.calibrate_decr	= generic_calibrate_decr,
-	.progress	= udbg_progress,
-};
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH 3/4] powerpc: drop MPC837x_MDS platform support
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
  2023-02-20 11:59 ` [PATCH 1/4] powerpc: drop MPC834x_MDS platform support Paul Gortmaker
  2023-02-20 11:59 ` [PATCH 2/4] powerpc: drop MPC836x_MDS " Paul Gortmaker
@ 2023-02-20 11:59 ` Paul Gortmaker
  2023-02-20 11:59 ` [PATCH 4/4] powerpc: drop MPC832x_MDS " Paul Gortmaker
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 26+ messages in thread
From: Paul Gortmaker @ 2023-02-20 11:59 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: Li Yang, Scott Wood, Paul Gortmaker, Claudiu Manoil, Paul Mackerras

This next evolutionary step in the e300 family of Modular Development
System (MDS) still has, at its core component, a full length card with a
PCI edge.  No case.  Serial and network connectors were on card, so it
could optionally be fitted with plastic stand-offs and run stand-alone
off a power brick.

This is very similar to the MPC834x_MDS and MPC836x_MDS removed in the
prior commits, but with this board variant as yet another evolutionary
step.  SATA and PCI-e were now available.  But overall the form factor
and design goals were unchanged.

Like all the MDS systems, it was meant as a vehicle to get the CPU out
early to hardware OEMs so software and board development could take place
in parallel.

These were made in limited numbers and availability preference was given
to partners who were planning to make their own boards.

Given that the whole reason for existence was to assist in enabling new
board designs [not happening for 10+ years], and that they weren't
generally available, and that the hardware wasn't really hobbyist friendly
even for retro computing, it makes sense to retire the support for this
particular platform.

Cc: Scott Wood <oss@buserror.net>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 arch/powerpc/boot/dts/mpc8377_mds.dts         | 505 ------------------
 arch/powerpc/boot/dts/mpc8378_mds.dts         | 489 -----------------
 arch/powerpc/boot/dts/mpc8379_mds.dts         | 455 ----------------
 .../configs/83xx/mpc837x_mds_defconfig        |  58 --
 arch/powerpc/configs/mpc83xx_defconfig        |   1 -
 arch/powerpc/configs/ppc6xx_defconfig         |   1 -
 arch/powerpc/platforms/83xx/Kconfig           |   7 -
 arch/powerpc/platforms/83xx/Makefile          |   1 -
 arch/powerpc/platforms/83xx/mpc837x_mds.c     | 103 ----
 9 files changed, 1620 deletions(-)
 delete mode 100644 arch/powerpc/boot/dts/mpc8377_mds.dts
 delete mode 100644 arch/powerpc/boot/dts/mpc8378_mds.dts
 delete mode 100644 arch/powerpc/boot/dts/mpc8379_mds.dts
 delete mode 100644 arch/powerpc/configs/83xx/mpc837x_mds_defconfig
 delete mode 100644 arch/powerpc/platforms/83xx/mpc837x_mds.c

diff --git a/arch/powerpc/boot/dts/mpc8377_mds.dts b/arch/powerpc/boot/dts/mpc8377_mds.dts
deleted file mode 100644
index 9227bce0e2f5..000000000000
--- a/arch/powerpc/boot/dts/mpc8377_mds.dts
+++ /dev/null
@@ -1,505 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * MPC8377E MDS Device Tree Source
- *
- * Copyright 2007 Freescale Semiconductor Inc.
- */
-
-/dts-v1/;
-
-/ {
-	model = "fsl,mpc8377emds";
-	compatible = "fsl,mpc8377emds","fsl,mpc837xmds";
-	#address-cells = <1>;
-	#size-cells = <1>;
-
-	aliases {
-		ethernet0 = &enet0;
-		ethernet1 = &enet1;
-		serial0 = &serial0;
-		serial1 = &serial1;
-		pci0 = &pci0;
-		pci1 = &pci1;
-		pci2 = &pci2;
-	};
-
-	cpus {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		PowerPC,8377@0 {
-			device_type = "cpu";
-			reg = <0x0>;
-			d-cache-line-size = <32>;
-			i-cache-line-size = <32>;
-			d-cache-size = <32768>;
-			i-cache-size = <32768>;
-			timebase-frequency = <0>;
-			bus-frequency = <0>;
-			clock-frequency = <0>;
-		};
-	};
-
-	memory {
-		device_type = "memory";
-		reg = <0x00000000 0x20000000>;	// 512MB at 0
-	};
-
-	localbus@e0005000 {
-		#address-cells = <2>;
-		#size-cells = <1>;
-		compatible = "fsl,mpc8377-elbc", "fsl,elbc", "simple-bus";
-		reg = <0xe0005000 0x1000>;
-		interrupts = <77 0x8>;
-		interrupt-parent = <&ipic>;
-
-		// booting from NOR flash
-		ranges = <0 0x0 0xfe000000 0x02000000
-		          1 0x0 0xf8000000 0x00008000
-		          3 0x0 0xe0600000 0x00008000>;
-
-		flash@0,0 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "cfi-flash";
-			reg = <0 0x0 0x2000000>;
-			bank-width = <2>;
-			device-width = <1>;
-
-			u-boot@0 {
-				reg = <0x0 0x100000>;
-				read-only;
-			};
-
-			fs@100000 {
-				reg = <0x100000 0x800000>;
-			};
-
-			kernel@1d00000 {
-				reg = <0x1d00000 0x200000>;
-			};
-
-			dtb@1f00000 {
-				reg = <0x1f00000 0x100000>;
-			};
-		};
-
-		bcsr@1,0 {
-			reg = <1 0x0 0x8000>;
-			compatible = "fsl,mpc837xmds-bcsr";
-		};
-
-		nand@3,0 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8377-fcm-nand",
-			             "fsl,elbc-fcm-nand";
-			reg = <3 0x0 0x8000>;
-
-			u-boot@0 {
-				reg = <0x0 0x100000>;
-				read-only;
-			};
-
-			kernel@100000 {
-				reg = <0x100000 0x300000>;
-			};
-
-			fs@400000 {
-				reg = <0x400000 0x1c00000>;
-			};
-		};
-	};
-
-	soc@e0000000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "soc";
-		compatible = "simple-bus";
-		ranges = <0x0 0xe0000000 0x00100000>;
-		reg = <0xe0000000 0x00000200>;
-		bus-frequency = <0>;
-
-		wdt@200 {
-			compatible = "mpc83xx_wdt";
-			reg = <0x200 0x100>;
-		};
-
-		sleep-nexus {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "simple-bus";
-			sleep = <&pmc 0x0c000000>;
-			ranges;
-
-			i2c@3000 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				cell-index = <0>;
-				compatible = "fsl-i2c";
-				reg = <0x3000 0x100>;
-				interrupts = <14 0x8>;
-				interrupt-parent = <&ipic>;
-				dfsrr;
-
-				rtc@68 {
-					compatible = "dallas,ds1374";
-					reg = <0x68>;
-					interrupts = <19 0x8>;
-					interrupt-parent = <&ipic>;
-				};
-			};
-
-			sdhci@2e000 {
-				compatible = "fsl,mpc8377-esdhc", "fsl,esdhc";
-				reg = <0x2e000 0x1000>;
-				interrupts = <42 0x8>;
-				interrupt-parent = <&ipic>;
-				sdhci,wp-inverted;
-				/* Filled in by U-Boot */
-				clock-frequency = <0>;
-			};
-		};
-
-		i2c@3100 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <1>;
-			compatible = "fsl-i2c";
-			reg = <0x3100 0x100>;
-			interrupts = <15 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-		};
-
-		spi@7000 {
-			cell-index = <0>;
-			compatible = "fsl,spi";
-			reg = <0x7000 0x1000>;
-			interrupts = <16 0x8>;
-			interrupt-parent = <&ipic>;
-			mode = "cpu";
-		};
-
-		usb@23000 {
-			compatible = "fsl-usb2-dr";
-			reg = <0x23000 0x1000>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			interrupt-parent = <&ipic>;
-			interrupts = <38 0x8>;
-			dr_mode = "host";
-			phy_type = "ulpi";
-			sleep = <&pmc 0x00c00000>;
-		};
-
-		enet0: ethernet@24000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <0>;
-			device_type = "network";
-			model = "eTSEC";
-			compatible = "gianfar";
-			reg = <0x24000 0x1000>;
-			ranges = <0x0 0x24000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <32 0x8 33 0x8 34 0x8>;
-			phy-connection-type = "mii";
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi0>;
-			phy-handle = <&phy2>;
-			sleep = <&pmc 0xc0000000>;
-			fsl,magic-packet;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-mdio";
-				reg = <0x520 0x20>;
-
-				phy2: ethernet-phy@2 {
-					interrupt-parent = <&ipic>;
-					interrupts = <17 0x8>;
-					reg = <0x2>;
-				};
-
-				phy3: ethernet-phy@3 {
-					interrupt-parent = <&ipic>;
-					interrupts = <18 0x8>;
-					reg = <0x3>;
-				};
-
-				tbi0: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		enet1: ethernet@25000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <1>;
-			device_type = "network";
-			model = "eTSEC";
-			compatible = "gianfar";
-			reg = <0x25000 0x1000>;
-			ranges = <0x0 0x25000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <35 0x8 36 0x8 37 0x8>;
-			phy-connection-type = "mii";
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi1>;
-			phy-handle = <&phy3>;
-			sleep = <&pmc 0x30000000>;
-			fsl,magic-packet;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-tbi";
-				reg = <0x520 0x20>;
-
-				tbi1: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		serial0: serial@4500 {
-			cell-index = <0>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4500 0x100>;
-			clock-frequency = <0>;
-			interrupts = <9 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		serial1: serial@4600 {
-			cell-index = <1>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4600 0x100>;
-			clock-frequency = <0>;
-			interrupts = <10 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		dma@82a8 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8377-dma", "fsl,elo-dma";
-			reg = <0x82a8 4>;
-			ranges = <0 0x8100 0x1a8>;
-			interrupt-parent = <&ipic>;
-			interrupts = <0x47 8>;
-			cell-index = <0>;
-			dma-channel@0 {
-				compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
-				reg = <0 0x80>;
-				cell-index = <0>;
-				interrupt-parent = <&ipic>;
-				interrupts = <0x47 8>;
-			};
-			dma-channel@80 {
-				compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x80 0x80>;
-				cell-index = <1>;
-				interrupt-parent = <&ipic>;
-				interrupts = <0x47 8>;
-			};
-			dma-channel@100 {
-				compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x100 0x80>;
-				cell-index = <2>;
-				interrupt-parent = <&ipic>;
-				interrupts = <0x47 8>;
-			};
-			dma-channel@180 {
-				compatible = "fsl,mpc8377-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x180 0x28>;
-				cell-index = <3>;
-				interrupt-parent = <&ipic>;
-				interrupts = <0x47 8>;
-			};
-		};
-
-		crypto@30000 {
-			compatible = "fsl,sec3.0", "fsl,sec2.4", "fsl,sec2.2",
-				     "fsl,sec2.1", "fsl,sec2.0";
-			reg = <0x30000 0x10000>;
-			interrupts = <11 0x8>;
-			interrupt-parent = <&ipic>;
-			fsl,num-channels = <4>;
-			fsl,channel-fifo-len = <24>;
-			fsl,exec-units-mask = <0x9fe>;
-			fsl,descriptor-types-mask = <0x3ab0ebf>;
-			sleep = <&pmc 0x03000000>;
-		};
-
-		sata@18000 {
-			compatible = "fsl,mpc8379-sata", "fsl,pq-sata";
-			reg = <0x18000 0x1000>;
-			interrupts = <44 0x8>;
-			interrupt-parent = <&ipic>;
-			sleep = <&pmc 0x000000c0>;
-		};
-
-		sata@19000 {
-			compatible = "fsl,mpc8379-sata", "fsl,pq-sata";
-			reg = <0x19000 0x1000>;
-			interrupts = <45 0x8>;
-			interrupt-parent = <&ipic>;
-			sleep = <&pmc 0x00000030>;
-		};
-
-		/* IPIC
-		 * interrupts cell = <intr #, sense>
-		 * sense values match linux IORESOURCE_IRQ_* defines:
-		 * sense == 8: Level, low assertion
-		 * sense == 2: Edge, high-to-low change
-		 */
-		ipic: pic@700 {
-			compatible = "fsl,ipic";
-			interrupt-controller;
-			#address-cells = <0>;
-			#interrupt-cells = <2>;
-			reg = <0x700 0x100>;
-		};
-
-		pmc: power@b00 {
-			compatible = "fsl,mpc8377-pmc", "fsl,mpc8349-pmc";
-			reg = <0xb00 0x100 0xa00 0x100>;
-			interrupts = <80 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-	};
-
-	pci0: pci@e0008500 {
-		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
-		interrupt-map = <
-
-				/* IDSEL 0x11 */
-				 0x8800 0x0 0x0 0x1 &ipic 20 0x8
-				 0x8800 0x0 0x0 0x2 &ipic 21 0x8
-				 0x8800 0x0 0x0 0x3 &ipic 22 0x8
-				 0x8800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x12 */
-				 0x9000 0x0 0x0 0x1 &ipic 22 0x8
-				 0x9000 0x0 0x0 0x2 &ipic 23 0x8
-				 0x9000 0x0 0x0 0x3 &ipic 20 0x8
-				 0x9000 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x13 */
-				 0x9800 0x0 0x0 0x1 &ipic 23 0x8
-				 0x9800 0x0 0x0 0x2 &ipic 20 0x8
-				 0x9800 0x0 0x0 0x3 &ipic 21 0x8
-				 0x9800 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x15 */
-				 0xa800 0x0 0x0 0x1 &ipic 20 0x8
-				 0xa800 0x0 0x0 0x2 &ipic 21 0x8
-				 0xa800 0x0 0x0 0x3 &ipic 22 0x8
-				 0xa800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x16 */
-				 0xb000 0x0 0x0 0x1 &ipic 23 0x8
-				 0xb000 0x0 0x0 0x2 &ipic 20 0x8
-				 0xb000 0x0 0x0 0x3 &ipic 21 0x8
-				 0xb000 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x17 */
-				 0xb800 0x0 0x0 0x1 &ipic 22 0x8
-				 0xb800 0x0 0x0 0x2 &ipic 23 0x8
-				 0xb800 0x0 0x0 0x3 &ipic 20 0x8
-				 0xb800 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x18 */
-				 0xc000 0x0 0x0 0x1 &ipic 21 0x8
-				 0xc000 0x0 0x0 0x2 &ipic 22 0x8
-				 0xc000 0x0 0x0 0x3 &ipic 23 0x8
-				 0xc000 0x0 0x0 0x4 &ipic 20 0x8>;
-		interrupt-parent = <&ipic>;
-		interrupts = <66 0x8>;
-		bus-range = <0x0 0x0>;
-		ranges = <0x02000000 0x0 0x90000000 0x90000000 0x0 0x10000000
-		          0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
-		          0x01000000 0x0 0x00000000 0xe0300000 0x0 0x00100000>;
-		sleep = <&pmc 0x00010000>;
-		clock-frequency = <0>;
-		#interrupt-cells = <1>;
-		#size-cells = <2>;
-		#address-cells = <3>;
-		reg = <0xe0008500 0x100		/* internal registers */
-		       0xe0008300 0x8>;		/* config space access registers */
-		compatible = "fsl,mpc8349-pci";
-		device_type = "pci";
-	};
-
-	pci1: pcie@e0009000 {
-		#address-cells = <3>;
-		#size-cells = <2>;
-		#interrupt-cells = <1>;
-		device_type = "pci";
-		compatible = "fsl,mpc8377-pcie", "fsl,mpc8314-pcie";
-		reg = <0xe0009000 0x00001000>;
-		ranges = <0x02000000 0 0xa8000000 0xa8000000 0 0x10000000
-		          0x01000000 0 0x00000000 0xb8000000 0 0x00800000>;
-		bus-range = <0 255>;
-		interrupt-map-mask = <0xf800 0 0 7>;
-		interrupt-map = <0 0 0 1 &ipic 1 8
-				 0 0 0 2 &ipic 1 8
-				 0 0 0 3 &ipic 1 8
-				 0 0 0 4 &ipic 1 8>;
-		sleep = <&pmc 0x00300000>;
-		clock-frequency = <0>;
-
-		pcie@0 {
-			#address-cells = <3>;
-			#size-cells = <2>;
-			device_type = "pci";
-			reg = <0 0 0 0 0>;
-			ranges = <0x02000000 0 0xa8000000
-				  0x02000000 0 0xa8000000
-				  0 0x10000000
-				  0x01000000 0 0x00000000
-				  0x01000000 0 0x00000000
-				  0 0x00800000>;
-		};
-	};
-
-	pci2: pcie@e000a000 {
-		#address-cells = <3>;
-		#size-cells = <2>;
-		#interrupt-cells = <1>;
-		device_type = "pci";
-		compatible = "fsl,mpc8377-pcie", "fsl,mpc8314-pcie";
-		reg = <0xe000a000 0x00001000>;
-		ranges = <0x02000000 0 0xc8000000 0xc8000000 0 0x10000000
-			  0x01000000 0 0x00000000 0xd8000000 0 0x00800000>;
-		bus-range = <0 255>;
-		interrupt-map-mask = <0xf800 0 0 7>;
-		interrupt-map = <0 0 0 1 &ipic 2 8
-				 0 0 0 2 &ipic 2 8
-				 0 0 0 3 &ipic 2 8
-				 0 0 0 4 &ipic 2 8>;
-		sleep = <&pmc 0x000c0000>;
-		clock-frequency = <0>;
-
-		pcie@0 {
-			#address-cells = <3>;
-			#size-cells = <2>;
-			device_type = "pci";
-			reg = <0 0 0 0 0>;
-			ranges = <0x02000000 0 0xc8000000
-				  0x02000000 0 0xc8000000
-				  0 0x10000000
-				  0x01000000 0 0x00000000
-				  0x01000000 0 0x00000000
-				  0 0x00800000>;
-		};
-	};
-};
diff --git a/arch/powerpc/boot/dts/mpc8378_mds.dts b/arch/powerpc/boot/dts/mpc8378_mds.dts
deleted file mode 100644
index e45b25554e8c..000000000000
--- a/arch/powerpc/boot/dts/mpc8378_mds.dts
+++ /dev/null
@@ -1,489 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * MPC8378E MDS Device Tree Source
- *
- * Copyright 2007 Freescale Semiconductor Inc.
- */
-
-/dts-v1/;
-
-/ {
-	model = "fsl,mpc8378emds";
-	compatible = "fsl,mpc8378emds","fsl,mpc837xmds";
-	#address-cells = <1>;
-	#size-cells = <1>;
-
-	aliases {
-		ethernet0 = &enet0;
-		ethernet1 = &enet1;
-		serial0 = &serial0;
-		serial1 = &serial1;
-		pci0 = &pci0;
-		pci1 = &pci1;
-		pci2 = &pci2;
-	};
-
-	cpus {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		PowerPC,8378@0 {
-			device_type = "cpu";
-			reg = <0x0>;
-			d-cache-line-size = <32>;
-			i-cache-line-size = <32>;
-			d-cache-size = <32768>;
-			i-cache-size = <32768>;
-			timebase-frequency = <0>;
-			bus-frequency = <0>;
-			clock-frequency = <0>;
-		};
-	};
-
-	memory {
-		device_type = "memory";
-		reg = <0x00000000 0x20000000>;	// 512MB at 0
-	};
-
-	localbus@e0005000 {
-		#address-cells = <2>;
-		#size-cells = <1>;
-		compatible = "fsl,mpc8378-elbc", "fsl,elbc", "simple-bus";
-		reg = <0xe0005000 0x1000>;
-		interrupts = <77 0x8>;
-		interrupt-parent = <&ipic>;
-
-		// booting from NOR flash
-		ranges = <0 0x0 0xfe000000 0x02000000
-		          1 0x0 0xf8000000 0x00008000
-		          3 0x0 0xe0600000 0x00008000>;
-
-		flash@0,0 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "cfi-flash";
-			reg = <0 0x0 0x2000000>;
-			bank-width = <2>;
-			device-width = <1>;
-
-			u-boot@0 {
-				reg = <0x0 0x100000>;
-				read-only;
-			};
-
-			fs@100000 {
-				reg = <0x100000 0x800000>;
-			};
-
-			kernel@1d00000 {
-				reg = <0x1d00000 0x200000>;
-			};
-
-			dtb@1f00000 {
-				reg = <0x1f00000 0x100000>;
-			};
-		};
-
-		bcsr@1,0 {
-			reg = <1 0x0 0x8000>;
-			compatible = "fsl,mpc837xmds-bcsr";
-		};
-
-		nand@3,0 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8378-fcm-nand",
-			             "fsl,elbc-fcm-nand";
-			reg = <3 0x0 0x8000>;
-
-			u-boot@0 {
-				reg = <0x0 0x100000>;
-				read-only;
-			};
-
-			kernel@100000 {
-				reg = <0x100000 0x300000>;
-			};
-
-			fs@400000 {
-				reg = <0x400000 0x1c00000>;
-			};
-		};
-	};
-
-	soc@e0000000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "soc";
-		compatible = "simple-bus";
-		ranges = <0x0 0xe0000000 0x00100000>;
-		reg = <0xe0000000 0x00000200>;
-		bus-frequency = <0>;
-
-		wdt@200 {
-			compatible = "mpc83xx_wdt";
-			reg = <0x200 0x100>;
-		};
-
-		sleep-nexus {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "simple-bus";
-			sleep = <&pmc 0x0c000000>;
-			ranges;
-
-			i2c@3000 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				cell-index = <0>;
-				compatible = "fsl-i2c";
-				reg = <0x3000 0x100>;
-				interrupts = <14 0x8>;
-				interrupt-parent = <&ipic>;
-				dfsrr;
-
-				rtc@68 {
-					compatible = "dallas,ds1374";
-					reg = <0x68>;
-					interrupts = <19 0x8>;
-					interrupt-parent = <&ipic>;
-				};
-			};
-
-			sdhci@2e000 {
-				compatible = "fsl,mpc8378-esdhc", "fsl,esdhc";
-				reg = <0x2e000 0x1000>;
-				interrupts = <42 0x8>;
-				interrupt-parent = <&ipic>;
-				sdhci,wp-inverted;
-				/* Filled in by U-Boot */
-				clock-frequency = <0>;
-			};
-		};
-
-		i2c@3100 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <1>;
-			compatible = "fsl-i2c";
-			reg = <0x3100 0x100>;
-			interrupts = <15 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-		};
-
-		spi@7000 {
-			cell-index = <0>;
-			compatible = "fsl,spi";
-			reg = <0x7000 0x1000>;
-			interrupts = <16 0x8>;
-			interrupt-parent = <&ipic>;
-			mode = "cpu";
-		};
-
-		dma@82a8 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8378-dma", "fsl,elo-dma";
-			reg = <0x82a8 4>;
-			ranges = <0 0x8100 0x1a8>;
-			interrupt-parent = <&ipic>;
-			interrupts = <71 8>;
-			cell-index = <0>;
-			dma-channel@0 {
-				compatible = "fsl,mpc8378-dma-channel", "fsl,elo-dma-channel";
-				reg = <0 0x80>;
-				cell-index = <0>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@80 {
-				compatible = "fsl,mpc8378-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x80 0x80>;
-				cell-index = <1>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@100 {
-				compatible = "fsl,mpc8378-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x100 0x80>;
-				cell-index = <2>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@180 {
-				compatible = "fsl,mpc8378-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x180 0x28>;
-				cell-index = <3>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-		};
-
-		usb@23000 {
-			compatible = "fsl-usb2-dr";
-			reg = <0x23000 0x1000>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			interrupt-parent = <&ipic>;
-			interrupts = <38 0x8>;
-			dr_mode = "host";
-			phy_type = "ulpi";
-			sleep = <&pmc 0x00c00000>;
-		};
-
-		enet0: ethernet@24000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <0>;
-			device_type = "network";
-			model = "eTSEC";
-			compatible = "gianfar";
-			reg = <0x24000 0x1000>;
-			ranges = <0x0 0x24000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <32 0x8 33 0x8 34 0x8>;
-			phy-connection-type = "mii";
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi0>;
-			phy-handle = <&phy2>;
-			sleep = <&pmc 0xc0000000>;
-			fsl,magic-packet;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-mdio";
-				reg = <0x520 0x20>;
-
-				phy2: ethernet-phy@2 {
-					interrupt-parent = <&ipic>;
-					interrupts = <17 0x8>;
-					reg = <0x2>;
-				};
-
-				phy3: ethernet-phy@3 {
-					interrupt-parent = <&ipic>;
-					interrupts = <18 0x8>;
-					reg = <0x3>;
-				};
-
-				tbi0: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		enet1: ethernet@25000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <1>;
-			device_type = "network";
-			model = "eTSEC";
-			compatible = "gianfar";
-			reg = <0x25000 0x1000>;
-			ranges = <0x0 0x25000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <35 0x8 36 0x8 37 0x8>;
-			phy-connection-type = "mii";
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi1>;
-			phy-handle = <&phy3>;
-			sleep = <&pmc 0x30000000>;
-			fsl,magic-packet;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-tbi";
-				reg = <0x520 0x20>;
-
-				tbi1: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		serial0: serial@4500 {
-			cell-index = <0>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4500 0x100>;
-			clock-frequency = <0>;
-			interrupts = <9 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		serial1: serial@4600 {
-			cell-index = <1>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4600 0x100>;
-			clock-frequency = <0>;
-			interrupts = <10 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		crypto@30000 {
-			compatible = "fsl,sec3.0", "fsl,sec2.4", "fsl,sec2.2",
-				     "fsl,sec2.1", "fsl,sec2.0";
-			reg = <0x30000 0x10000>;
-			interrupts = <11 0x8>;
-			interrupt-parent = <&ipic>;
-			fsl,num-channels = <4>;
-			fsl,channel-fifo-len = <24>;
-			fsl,exec-units-mask = <0x9fe>;
-			fsl,descriptor-types-mask = <0x3ab0ebf>;
-			sleep = <&pmc 0x03000000>;
-		};
-
-		/* IPIC
-		 * interrupts cell = <intr #, sense>
-		 * sense values match linux IORESOURCE_IRQ_* defines:
-		 * sense == 8: Level, low assertion
-		 * sense == 2: Edge, high-to-low change
-		 */
-		ipic: pic@700 {
-			compatible = "fsl,ipic";
-			interrupt-controller;
-			#address-cells = <0>;
-			#interrupt-cells = <2>;
-			reg = <0x700 0x100>;
-		};
-
-		pmc: power@b00 {
-			compatible = "fsl,mpc8378-pmc", "fsl,mpc8349-pmc";
-			reg = <0xb00 0x100 0xa00 0x100>;
-			interrupts = <80 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-	};
-
-	pci0: pci@e0008500 {
-		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
-		interrupt-map = <
-
-				/* IDSEL 0x11 */
-				 0x8800 0x0 0x0 0x1 &ipic 20 0x8
-				 0x8800 0x0 0x0 0x2 &ipic 21 0x8
-				 0x8800 0x0 0x0 0x3 &ipic 22 0x8
-				 0x8800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x12 */
-				 0x9000 0x0 0x0 0x1 &ipic 22 0x8
-				 0x9000 0x0 0x0 0x2 &ipic 23 0x8
-				 0x9000 0x0 0x0 0x3 &ipic 20 0x8
-				 0x9000 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x13 */
-				 0x9800 0x0 0x0 0x1 &ipic 23 0x8
-				 0x9800 0x0 0x0 0x2 &ipic 20 0x8
-				 0x9800 0x0 0x0 0x3 &ipic 21 0x8
-				 0x9800 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x15 */
-				 0xa800 0x0 0x0 0x1 &ipic 20 0x8
-				 0xa800 0x0 0x0 0x2 &ipic 21 0x8
-				 0xa800 0x0 0x0 0x3 &ipic 22 0x8
-				 0xa800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x16 */
-				 0xb000 0x0 0x0 0x1 &ipic 23 0x8
-				 0xb000 0x0 0x0 0x2 &ipic 20 0x8
-				 0xb000 0x0 0x0 0x3 &ipic 21 0x8
-				 0xb000 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x17 */
-				 0xb800 0x0 0x0 0x1 &ipic 22 0x8
-				 0xb800 0x0 0x0 0x2 &ipic 23 0x8
-				 0xb800 0x0 0x0 0x3 &ipic 20 0x8
-				 0xb800 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x18 */
-				 0xc000 0x0 0x0 0x1 &ipic 21 0x8
-				 0xc000 0x0 0x0 0x2 &ipic 22 0x8
-				 0xc000 0x0 0x0 0x3 &ipic 23 0x8
-				 0xc000 0x0 0x0 0x4 &ipic 20 0x8>;
-		interrupt-parent = <&ipic>;
-		interrupts = <66 0x8>;
-		bus-range = <0x0 0x0>;
-		ranges = <0x02000000 0x0 0x90000000 0x90000000 0x0 0x10000000
-		          0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
-		          0x01000000 0x0 0x00000000 0xe0300000 0x0 0x00100000>;
-		clock-frequency = <0>;
-		sleep = <&pmc 0x00010000>;
-		#interrupt-cells = <1>;
-		#size-cells = <2>;
-		#address-cells = <3>;
-		reg = <0xe0008500 0x100		/* internal registers */
-		       0xe0008300 0x8>;		/* config space access registers */
-		compatible = "fsl,mpc8349-pci";
-		device_type = "pci";
-	};
-
-	pci1: pcie@e0009000 {
-		#address-cells = <3>;
-		#size-cells = <2>;
-		#interrupt-cells = <1>;
-		device_type = "pci";
-		compatible = "fsl,mpc8378-pcie", "fsl,mpc8314-pcie";
-		reg = <0xe0009000 0x00001000>;
-		ranges = <0x02000000 0 0xa8000000 0xa8000000 0 0x10000000
-		          0x01000000 0 0x00000000 0xb8000000 0 0x00800000>;
-		bus-range = <0 255>;
-		interrupt-map-mask = <0xf800 0 0 7>;
-		interrupt-map = <0 0 0 1 &ipic 1 8
-				 0 0 0 2 &ipic 1 8
-				 0 0 0 3 &ipic 1 8
-				 0 0 0 4 &ipic 1 8>;
-		sleep = <&pmc 0x00300000>;
-		clock-frequency = <0>;
-
-		pcie@0 {
-			#address-cells = <3>;
-			#size-cells = <2>;
-			device_type = "pci";
-			reg = <0 0 0 0 0>;
-			ranges = <0x02000000 0 0xa8000000
-				  0x02000000 0 0xa8000000
-				  0 0x10000000
-				  0x01000000 0 0x00000000
-				  0x01000000 0 0x00000000
-				  0 0x00800000>;
-		};
-	};
-
-	pci2: pcie@e000a000 {
-		#address-cells = <3>;
-		#size-cells = <2>;
-		#interrupt-cells = <1>;
-		device_type = "pci";
-		compatible = "fsl,mpc8378-pcie", "fsl,mpc8314-pcie";
-		reg = <0xe000a000 0x00001000>;
-		ranges = <0x02000000 0 0xc8000000 0xc8000000 0 0x10000000
-			  0x01000000 0 0x00000000 0xd8000000 0 0x00800000>;
-		bus-range = <0 255>;
-		interrupt-map-mask = <0xf800 0 0 7>;
-		interrupt-map = <0 0 0 1 &ipic 2 8
-				 0 0 0 2 &ipic 2 8
-				 0 0 0 3 &ipic 2 8
-				 0 0 0 4 &ipic 2 8>;
-		sleep = <&pmc 0x000c0000>;
-		clock-frequency = <0>;
-
-		pcie@0 {
-			#address-cells = <3>;
-			#size-cells = <2>;
-			device_type = "pci";
-			reg = <0 0 0 0 0>;
-			ranges = <0x02000000 0 0xc8000000
-				  0x02000000 0 0xc8000000
-				  0 0x10000000
-				  0x01000000 0 0x00000000
-				  0x01000000 0 0x00000000
-				  0 0x00800000>;
-		};
-	};
-};
diff --git a/arch/powerpc/boot/dts/mpc8379_mds.dts b/arch/powerpc/boot/dts/mpc8379_mds.dts
deleted file mode 100644
index f7379a1cbb6c..000000000000
--- a/arch/powerpc/boot/dts/mpc8379_mds.dts
+++ /dev/null
@@ -1,455 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * MPC8379E MDS Device Tree Source
- *
- * Copyright 2007 Freescale Semiconductor Inc.
- */
-
-/dts-v1/;
-
-/ {
-	model = "fsl,mpc8379emds";
-	compatible = "fsl,mpc8379emds","fsl,mpc837xmds";
-	#address-cells = <1>;
-	#size-cells = <1>;
-
-	aliases {
-		ethernet0 = &enet0;
-		ethernet1 = &enet1;
-		serial0 = &serial0;
-		serial1 = &serial1;
-		pci0 = &pci0;
-	};
-
-	cpus {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		PowerPC,8379@0 {
-			device_type = "cpu";
-			reg = <0x0>;
-			d-cache-line-size = <32>;
-			i-cache-line-size = <32>;
-			d-cache-size = <32768>;
-			i-cache-size = <32768>;
-			timebase-frequency = <0>;
-			bus-frequency = <0>;
-			clock-frequency = <0>;
-		};
-	};
-
-	memory {
-		device_type = "memory";
-		reg = <0x00000000 0x20000000>;	// 512MB at 0
-	};
-
-	localbus@e0005000 {
-		#address-cells = <2>;
-		#size-cells = <1>;
-		compatible = "fsl,mpc8379-elbc", "fsl,elbc", "simple-bus";
-		reg = <0xe0005000 0x1000>;
-		interrupts = <77 0x8>;
-		interrupt-parent = <&ipic>;
-
-		// booting from NOR flash
-		ranges = <0 0x0 0xfe000000 0x02000000
-		          1 0x0 0xf8000000 0x00008000
-		          3 0x0 0xe0600000 0x00008000>;
-
-		flash@0,0 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "cfi-flash";
-			reg = <0 0x0 0x2000000>;
-			bank-width = <2>;
-			device-width = <1>;
-
-			u-boot@0 {
-				reg = <0x0 0x100000>;
-				read-only;
-			};
-
-			fs@100000 {
-				reg = <0x100000 0x800000>;
-			};
-
-			kernel@1d00000 {
-				reg = <0x1d00000 0x200000>;
-			};
-
-			dtb@1f00000 {
-				reg = <0x1f00000 0x100000>;
-			};
-		};
-
-		bcsr@1,0 {
-			reg = <1 0x0 0x8000>;
-			compatible = "fsl,mpc837xmds-bcsr";
-		};
-
-		nand@3,0 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8379-fcm-nand",
-			             "fsl,elbc-fcm-nand";
-			reg = <3 0x0 0x8000>;
-
-			u-boot@0 {
-				reg = <0x0 0x100000>;
-				read-only;
-			};
-
-			kernel@100000 {
-				reg = <0x100000 0x300000>;
-			};
-
-			fs@400000 {
-				reg = <0x400000 0x1c00000>;
-			};
-		};
-	};
-
-	soc@e0000000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "soc";
-		compatible = "simple-bus";
-		ranges = <0x0 0xe0000000 0x00100000>;
-		reg = <0xe0000000 0x00000200>;
-		bus-frequency = <0>;
-
-		wdt@200 {
-			compatible = "mpc83xx_wdt";
-			reg = <0x200 0x100>;
-		};
-
-		sleep-nexus {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "simple-bus";
-			sleep = <&pmc 0x0c000000>;
-			ranges;
-
-			i2c@3000 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				cell-index = <0>;
-				compatible = "fsl-i2c";
-				reg = <0x3000 0x100>;
-				interrupts = <14 0x8>;
-				interrupt-parent = <&ipic>;
-				dfsrr;
-
-				rtc@68 {
-					compatible = "dallas,ds1374";
-					reg = <0x68>;
-					interrupts = <19 0x8>;
-					interrupt-parent = <&ipic>;
-				};
-			};
-
-			sdhci@2e000 {
-				compatible = "fsl,mpc8379-esdhc", "fsl,esdhc";
-				reg = <0x2e000 0x1000>;
-				interrupts = <42 0x8>;
-				interrupt-parent = <&ipic>;
-				sdhci,wp-inverted;
-				/* Filled in by U-Boot */
-				clock-frequency = <0>;
-			};
-		};
-
-		i2c@3100 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <1>;
-			compatible = "fsl-i2c";
-			reg = <0x3100 0x100>;
-			interrupts = <15 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-		};
-
-		spi@7000 {
-			cell-index = <0>;
-			compatible = "fsl,spi";
-			reg = <0x7000 0x1000>;
-			interrupts = <16 0x8>;
-			interrupt-parent = <&ipic>;
-			mode = "cpu";
-		};
-
-		dma@82a8 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8379-dma", "fsl,elo-dma";
-			reg = <0x82a8 4>;
-			ranges = <0 0x8100 0x1a8>;
-			interrupt-parent = <&ipic>;
-			interrupts = <71 8>;
-			cell-index = <0>;
-			dma-channel@0 {
-				compatible = "fsl,mpc8379-dma-channel", "fsl,elo-dma-channel";
-				reg = <0 0x80>;
-				cell-index = <0>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@80 {
-				compatible = "fsl,mpc8379-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x80 0x80>;
-				cell-index = <1>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@100 {
-				compatible = "fsl,mpc8379-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x100 0x80>;
-				cell-index = <2>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@180 {
-				compatible = "fsl,mpc8379-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x180 0x28>;
-				cell-index = <3>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-		};
-
-		usb@23000 {
-			compatible = "fsl-usb2-dr";
-			reg = <0x23000 0x1000>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-			interrupt-parent = <&ipic>;
-			interrupts = <38 0x8>;
-			dr_mode = "host";
-			phy_type = "ulpi";
-			sleep = <&pmc 0x00c00000>;
-		};
-
-		enet0: ethernet@24000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <0>;
-			device_type = "network";
-			model = "eTSEC";
-			compatible = "gianfar";
-			reg = <0x24000 0x1000>;
-			ranges = <0x0 0x24000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <32 0x8 33 0x8 34 0x8>;
-			phy-connection-type = "mii";
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi0>;
-			phy-handle = <&phy2>;
-			sleep = <&pmc 0xc0000000>;
-			fsl,magic-packet;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-mdio";
-				reg = <0x520 0x20>;
-
-				phy2: ethernet-phy@2 {
-					interrupt-parent = <&ipic>;
-					interrupts = <17 0x8>;
-					reg = <0x2>;
-				};
-
-				phy3: ethernet-phy@3 {
-					interrupt-parent = <&ipic>;
-					interrupts = <18 0x8>;
-					reg = <0x3>;
-				};
-
-				tbi0: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		enet1: ethernet@25000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			cell-index = <1>;
-			device_type = "network";
-			model = "eTSEC";
-			compatible = "gianfar";
-			reg = <0x25000 0x1000>;
-			ranges = <0x0 0x25000 0x1000>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			interrupts = <35 0x8 36 0x8 37 0x8>;
-			phy-connection-type = "mii";
-			interrupt-parent = <&ipic>;
-			tbi-handle = <&tbi1>;
-			phy-handle = <&phy3>;
-			sleep = <&pmc 0x30000000>;
-			fsl,magic-packet;
-
-			mdio@520 {
-				#address-cells = <1>;
-				#size-cells = <0>;
-				compatible = "fsl,gianfar-tbi";
-				reg = <0x520 0x20>;
-
-				tbi1: tbi-phy@11 {
-					reg = <0x11>;
-					device_type = "tbi-phy";
-				};
-			};
-		};
-
-		serial0: serial@4500 {
-			cell-index = <0>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4500 0x100>;
-			clock-frequency = <0>;
-			interrupts = <9 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		serial1: serial@4600 {
-			cell-index = <1>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4600 0x100>;
-			clock-frequency = <0>;
-			interrupts = <10 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		crypto@30000 {
-			compatible = "fsl,sec3.0", "fsl,sec2.4", "fsl,sec2.2",
-				     "fsl,sec2.1", "fsl,sec2.0";
-			reg = <0x30000 0x10000>;
-			interrupts = <11 0x8>;
-			interrupt-parent = <&ipic>;
-			fsl,num-channels = <4>;
-			fsl,channel-fifo-len = <24>;
-			fsl,exec-units-mask = <0x9fe>;
-			fsl,descriptor-types-mask = <0x3ab0ebf>;
-			sleep = <&pmc 0x03000000>;
-		};
-
-		sata@18000 {
-			compatible = "fsl,mpc8379-sata", "fsl,pq-sata";
-			reg = <0x18000 0x1000>;
-			interrupts = <44 0x8>;
-			interrupt-parent = <&ipic>;
-			sleep = <&pmc 0x000000c0>;
-		};
-
-		sata@19000 {
-			compatible = "fsl,mpc8379-sata", "fsl,pq-sata";
-			reg = <0x19000 0x1000>;
-			interrupts = <45 0x8>;
-			interrupt-parent = <&ipic>;
-			sleep = <&pmc 0x00000030>;
-		};
-
-		sata@1a000 {
-			compatible = "fsl,mpc8379-sata", "fsl,pq-sata";
-			reg = <0x1a000 0x1000>;
-			interrupts = <46 0x8>;
-			interrupt-parent = <&ipic>;
-			sleep = <&pmc 0x0000000c>;
-		};
-
-		sata@1b000 {
-			compatible = "fsl,mpc8379-sata", "fsl,pq-sata";
-			reg = <0x1b000 0x1000>;
-			interrupts = <47 0x8>;
-			interrupt-parent = <&ipic>;
-			sleep = <&pmc 0x00000003>;
-		};
-
-		/* IPIC
-		 * interrupts cell = <intr #, sense>
-		 * sense values match linux IORESOURCE_IRQ_* defines:
-		 * sense == 8: Level, low assertion
-		 * sense == 2: Edge, high-to-low change
-		 */
-		ipic: pic@700 {
-			compatible = "fsl,ipic";
-			interrupt-controller;
-			#address-cells = <0>;
-			#interrupt-cells = <2>;
-			reg = <0x700 0x100>;
-		};
-
-		pmc: power@b00 {
-			compatible = "fsl,mpc8379-pmc", "fsl,mpc8349-pmc";
-			reg = <0xb00 0x100 0xa00 0x100>;
-			interrupts = <80 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-	};
-
-	pci0: pci@e0008500 {
-		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
-		interrupt-map = <
-
-				/* IDSEL 0x11 */
-				 0x8800 0x0 0x0 0x1 &ipic 20 0x8
-				 0x8800 0x0 0x0 0x2 &ipic 21 0x8
-				 0x8800 0x0 0x0 0x3 &ipic 22 0x8
-				 0x8800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x12 */
-				 0x9000 0x0 0x0 0x1 &ipic 22 0x8
-				 0x9000 0x0 0x0 0x2 &ipic 23 0x8
-				 0x9000 0x0 0x0 0x3 &ipic 20 0x8
-				 0x9000 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x13 */
-				 0x9800 0x0 0x0 0x1 &ipic 23 0x8
-				 0x9800 0x0 0x0 0x2 &ipic 20 0x8
-				 0x9800 0x0 0x0 0x3 &ipic 21 0x8
-				 0x9800 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x15 */
-				 0xa800 0x0 0x0 0x1 &ipic 20 0x8
-				 0xa800 0x0 0x0 0x2 &ipic 21 0x8
-				 0xa800 0x0 0x0 0x3 &ipic 22 0x8
-				 0xa800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x16 */
-				 0xb000 0x0 0x0 0x1 &ipic 23 0x8
-				 0xb000 0x0 0x0 0x2 &ipic 20 0x8
-				 0xb000 0x0 0x0 0x3 &ipic 21 0x8
-				 0xb000 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x17 */
-				 0xb800 0x0 0x0 0x1 &ipic 22 0x8
-				 0xb800 0x0 0x0 0x2 &ipic 23 0x8
-				 0xb800 0x0 0x0 0x3 &ipic 20 0x8
-				 0xb800 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x18 */
-				 0xc000 0x0 0x0 0x1 &ipic 21 0x8
-				 0xc000 0x0 0x0 0x2 &ipic 22 0x8
-				 0xc000 0x0 0x0 0x3 &ipic 23 0x8
-				 0xc000 0x0 0x0 0x4 &ipic 20 0x8>;
-		interrupt-parent = <&ipic>;
-		interrupts = <66 0x8>;
-		bus-range = <0x0 0x0>;
-		ranges = <0x02000000 0x0 0x90000000 0x90000000 0x0 0x10000000
-		          0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
-		          0x01000000 0x0 0x00000000 0xe0300000 0x0 0x00100000>;
-		sleep = <&pmc 0x00010000>;
-		clock-frequency = <0>;
-		#interrupt-cells = <1>;
-		#size-cells = <2>;
-		#address-cells = <3>;
-		reg = <0xe0008500 0x100		/* internal registers */
-		       0xe0008300 0x8>;		/* config space access registers */
-		compatible = "fsl,mpc8349-pci";
-		device_type = "pci";
-	};
-};
diff --git a/arch/powerpc/configs/83xx/mpc837x_mds_defconfig b/arch/powerpc/configs/83xx/mpc837x_mds_defconfig
deleted file mode 100644
index 3f5e5d10789f..000000000000
--- a/arch/powerpc/configs/83xx/mpc837x_mds_defconfig
+++ /dev/null
@@ -1,58 +0,0 @@
-CONFIG_SYSVIPC=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_EXPERT=y
-CONFIG_SLAB=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_PPC_CHRP is not set
-# CONFIG_PPC_PMAC is not set
-CONFIG_PPC_83xx=y
-CONFIG_MPC837x_MDS=y
-CONFIG_GEN_RTC=y
-CONFIG_PCI=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_XFRM_USER=m
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_SYN_COOKIES=y
-# CONFIG_IPV6 is not set
-# CONFIG_FW_LOADER is not set
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_SIZE=32768
-CONFIG_BLK_DEV_SD=y
-CONFIG_CHR_DEV_SG=y
-CONFIG_ATA=y
-CONFIG_SATA_FSL=y
-CONFIG_NETDEVICES=y
-CONFIG_GIANFAR=y
-CONFIG_MARVELL_PHY=y
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-# CONFIG_VT is not set
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-# CONFIG_HW_RANDOM is not set
-CONFIG_I2C=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_I2C_MPC=y
-CONFIG_WATCHDOG=y
-CONFIG_EXT2_FS=y
-CONFIG_EXT4_FS=y
-CONFIG_PROC_KCORE=y
-CONFIG_TMPFS=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_CRC_T10DIF=y
-CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_PCBC=m
diff --git a/arch/powerpc/configs/mpc83xx_defconfig b/arch/powerpc/configs/mpc83xx_defconfig
index 0fa29520808f..943c2d51bb60 100644
--- a/arch/powerpc/configs/mpc83xx_defconfig
+++ b/arch/powerpc/configs/mpc83xx_defconfig
@@ -15,7 +15,6 @@ CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
 CONFIG_MPC834x_ITX=y
 CONFIG_MPC836x_RDK=y
-CONFIG_MPC837x_MDS=y
 CONFIG_MPC837x_RDB=y
 CONFIG_ASP834x=y
 CONFIG_QE_GPIO=y
diff --git a/arch/powerpc/configs/ppc6xx_defconfig b/arch/powerpc/configs/ppc6xx_defconfig
index 71f5ea8f76a5..f08a7f43c629 100644
--- a/arch/powerpc/configs/ppc6xx_defconfig
+++ b/arch/powerpc/configs/ppc6xx_defconfig
@@ -48,7 +48,6 @@ CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
 CONFIG_MPC834x_ITX=y
 CONFIG_MPC836x_RDK=y
-CONFIG_MPC837x_MDS=y
 CONFIG_MPC837x_RDB=y
 CONFIG_ASP834x=y
 CONFIG_PPC_86xx=y
diff --git a/arch/powerpc/platforms/83xx/Kconfig b/arch/powerpc/platforms/83xx/Kconfig
index 90d0041fb8a7..978d2b12e97c 100644
--- a/arch/powerpc/platforms/83xx/Kconfig
+++ b/arch/powerpc/platforms/83xx/Kconfig
@@ -58,13 +58,6 @@ config MPC836x_RDK
 	  This option enables support for the MPC836x RDK Processor Board,
 	  also known as ZOOM PowerQUICC Kit.
 
-config MPC837x_MDS
-	bool "Freescale MPC837x MDS"
-	select DEFAULT_UIMAGE
-	select PPC_MPC837x
-	help
-	  This option enables support for the MPC837x MDS Processor Board.
-
 config MPC837x_RDB
 	bool "Freescale MPC837x RDB/WLAN"
 	select DEFAULT_UIMAGE
diff --git a/arch/powerpc/platforms/83xx/Makefile b/arch/powerpc/platforms/83xx/Makefile
index 4f979f2fc64e..0c3a5067bd77 100644
--- a/arch/powerpc/platforms/83xx/Makefile
+++ b/arch/powerpc/platforms/83xx/Makefile
@@ -11,7 +11,6 @@ obj-$(CONFIG_MPC832x_RDB)	+= mpc832x_rdb.o
 obj-$(CONFIG_MPC834x_ITX)	+= mpc834x_itx.o
 obj-$(CONFIG_MPC836x_RDK)	+= mpc836x_rdk.o
 obj-$(CONFIG_MPC832x_MDS)	+= mpc832x_mds.o
-obj-$(CONFIG_MPC837x_MDS)	+= mpc837x_mds.o
 obj-$(CONFIG_MPC837x_RDB)	+= mpc837x_rdb.o
 obj-$(CONFIG_ASP834x)		+= asp834x.o
 obj-$(CONFIG_KMETER1)		+= km83xx.o
diff --git a/arch/powerpc/platforms/83xx/mpc837x_mds.c b/arch/powerpc/platforms/83xx/mpc837x_mds.c
deleted file mode 100644
index fa3538803af7..000000000000
--- a/arch/powerpc/platforms/83xx/mpc837x_mds.c
+++ /dev/null
@@ -1,103 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * arch/powerpc/platforms/83xx/mpc837x_mds.c
- *
- * Copyright (C) 2007 Freescale Semiconductor, Inc. All rights reserved.
- *
- * MPC837x MDS board specific routines
- */
-
-#include <linux/pci.h>
-#include <linux/of.h>
-#include <linux/of_address.h>
-#include <linux/of_platform.h>
-
-#include <asm/time.h>
-#include <asm/ipic.h>
-#include <asm/udbg.h>
-#include <sysdev/fsl_pci.h>
-
-#include "mpc83xx.h"
-
-#define BCSR12_USB_SER_MASK	0x8a
-#define BCSR12_USB_SER_PIN	0x80
-#define BCSR12_USB_SER_DEVICE	0x02
-
-static int __init mpc837xmds_usb_cfg(void)
-{
-	struct device_node *np;
-	const void *phy_type, *mode;
-	void __iomem *bcsr_regs = NULL;
-	u8 bcsr12;
-	int ret;
-
-	ret = mpc837x_usb_cfg();
-	if (ret)
-		return ret;
-	/* Map BCSR area */
-	np = of_find_compatible_node(NULL, NULL, "fsl,mpc837xmds-bcsr");
-	if (np) {
-		bcsr_regs = of_iomap(np, 0);
-		of_node_put(np);
-	}
-	if (!bcsr_regs)
-		return -1;
-
-	np = of_find_node_by_name(NULL, "usb");
-	if (!np) {
-		ret = -ENODEV;
-		goto out;
-	}
-	phy_type = of_get_property(np, "phy_type", NULL);
-	if (phy_type && !strcmp(phy_type, "ulpi")) {
-		clrbits8(bcsr_regs + 12, BCSR12_USB_SER_PIN);
-	} else if (phy_type && !strcmp(phy_type, "serial")) {
-		mode = of_get_property(np, "dr_mode", NULL);
-		bcsr12 = in_8(bcsr_regs + 12) & ~BCSR12_USB_SER_MASK;
-		bcsr12 |= BCSR12_USB_SER_PIN;
-		if (mode && !strcmp(mode, "peripheral"))
-			bcsr12 |= BCSR12_USB_SER_DEVICE;
-		out_8(bcsr_regs + 12, bcsr12);
-	} else {
-		printk(KERN_ERR "USB DR: unsupported PHY\n");
-	}
-
-	of_node_put(np);
-out:
-	iounmap(bcsr_regs);
-	return ret;
-}
-
-/* ************************************************************************
- *
- * Setup the architecture
- *
- */
-static void __init mpc837x_mds_setup_arch(void)
-{
-	mpc83xx_setup_arch();
-	mpc837xmds_usb_cfg();
-}
-
-machine_device_initcall(mpc837x_mds, mpc83xx_declare_of_platform_devices);
-
-/*
- * Called very early, MMU is off, device-tree isn't unflattened
- */
-static int __init mpc837x_mds_probe(void)
-{
-	return of_machine_is_compatible("fsl,mpc837xmds");
-}
-
-define_machine(mpc837x_mds) {
-	.name			= "MPC837x MDS",
-	.probe			= mpc837x_mds_probe,
-	.setup_arch		= mpc837x_mds_setup_arch,
-	.discover_phbs  	= mpc83xx_setup_pci,
-	.init_IRQ		= mpc83xx_ipic_init_IRQ,
-	.get_irq		= ipic_get_irq,
-	.restart		= mpc83xx_restart,
-	.time_init		= mpc83xx_time_init,
-	.calibrate_decr		= generic_calibrate_decr,
-	.progress		= udbg_progress,
-};
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 26+ messages in thread

* [PATCH 4/4] powerpc: drop MPC832x_MDS platform support
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
                   ` (2 preceding siblings ...)
  2023-02-20 11:59 ` [PATCH 3/4] powerpc: drop MPC837x_MDS " Paul Gortmaker
@ 2023-02-20 11:59 ` Paul Gortmaker
  2023-02-20 22:40 ` [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Leo Li
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 26+ messages in thread
From: Paul Gortmaker @ 2023-02-20 11:59 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: Li Yang, Scott Wood, Paul Gortmaker, Claudiu Manoil, Paul Mackerras

This final variant in the e300 family of Modular Development System
(MDS) in this series was actually aimed at feature reduction - things
like floating point and ethernet were removed in order to make for a
lower power and lower cost system.

Like all the MDS systems, it was meant as a vehicle to get the CPU out
early to hardware OEMs so software and board development could take place
in parallel.

These were made in limited numbers and availability preference was given
to partners who were planning to make their own boards.

Given that the whole reason for existence was to assist in enabling new
board designs [not happening for 10+ years], and that they weren't
generally available, and that the hardware wasn't really hobbyist friendly
even for retro computing, it makes sense to retire the support for this
particular platform.

Cc: Scott Wood <oss@buserror.net>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 arch/powerpc/boot/dts/mpc832x_mds.dts         | 436 ------------------
 .../configs/83xx/mpc832x_mds_defconfig        |  59 ---
 arch/powerpc/configs/mpc83xx_defconfig        |   1 -
 arch/powerpc/configs/ppc6xx_defconfig         |   1 -
 arch/powerpc/platforms/83xx/Kconfig           |   7 -
 arch/powerpc/platforms/83xx/Makefile          |   1 -
 arch/powerpc/platforms/83xx/mpc832x_mds.c     | 110 -----
 7 files changed, 615 deletions(-)
 delete mode 100644 arch/powerpc/boot/dts/mpc832x_mds.dts
 delete mode 100644 arch/powerpc/configs/83xx/mpc832x_mds_defconfig
 delete mode 100644 arch/powerpc/platforms/83xx/mpc832x_mds.c

diff --git a/arch/powerpc/boot/dts/mpc832x_mds.dts b/arch/powerpc/boot/dts/mpc832x_mds.dts
deleted file mode 100644
index 3af073f01e71..000000000000
--- a/arch/powerpc/boot/dts/mpc832x_mds.dts
+++ /dev/null
@@ -1,436 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * MPC8323E EMDS Device Tree Source
- *
- * Copyright 2006 Freescale Semiconductor Inc.
- *
-
- * To enable external serial I/O on a Freescale MPC 8323 SYS/MDS board, do
- * this:
- *
- * 1) On chip U61, lift (disconnect) pins 21 (TXD) and 22 (RXD) from the board.
- * 2) Solder a wire from U61-21 to P19A-23.  P19 is a grid of pins on the board
- *    next to the serial ports.
- * 3) Solder a wire from U61-22 to P19K-22.
- *
- * Note that there's a typo in the schematic.  The board labels the last column
- * of pins "P19K", but in the schematic, that column is called "P19J".  So if
- * you're going by the schematic, the pin is called "P19J-K22".
- */
-
-/dts-v1/;
-
-/ {
-	model = "MPC8323EMDS";
-	compatible = "MPC8323EMDS", "MPC832xMDS", "MPC83xxMDS";
-	#address-cells = <1>;
-	#size-cells = <1>;
-
-	aliases {
-		ethernet0 = &enet0;
-		ethernet1 = &enet1;
-		serial0 = &serial0;
-		serial1 = &serial1;
-		pci0 = &pci0;
-	};
-
-	cpus {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		PowerPC,8323@0 {
-			device_type = "cpu";
-			reg = <0x0>;
-			d-cache-line-size = <32>;	// 32 bytes
-			i-cache-line-size = <32>;	// 32 bytes
-			d-cache-size = <16384>;		// L1, 16K
-			i-cache-size = <16384>;		// L1, 16K
-			timebase-frequency = <0>;
-			bus-frequency = <0>;
-			clock-frequency = <0>;
-		};
-	};
-
-	memory {
-		device_type = "memory";
-		reg = <0x00000000 0x08000000>;
-	};
-
-	bcsr@f8000000 {
-		compatible = "fsl,mpc8323mds-bcsr";
-		reg = <0xf8000000 0x8000>;
-	};
-
-	soc8323@e0000000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "soc";
-		compatible = "simple-bus";
-		ranges = <0x0 0xe0000000 0x00100000>;
-		reg = <0xe0000000 0x00000200>;
-		bus-frequency = <132000000>;
-
-		wdt@200 {
-			device_type = "watchdog";
-			compatible = "mpc83xx_wdt";
-			reg = <0x200 0x100>;
-		};
-
-		pmc: power@b00 {
-			compatible = "fsl,mpc8323-pmc", "fsl,mpc8349-pmc";
-			reg = <0xb00 0x100 0xa00 0x100>;
-			interrupts = <80 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		i2c@3000 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			cell-index = <0>;
-			compatible = "fsl-i2c";
-			reg = <0x3000 0x100>;
-			interrupts = <14 0x8>;
-			interrupt-parent = <&ipic>;
-			dfsrr;
-
-			rtc@68 {
-				compatible = "dallas,ds1374";
-				reg = <0x68>;
-			};
-		};
-
-		serial0: serial@4500 {
-			cell-index = <0>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4500 0x100>;
-			clock-frequency = <0>;
-			interrupts = <9 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		serial1: serial@4600 {
-			cell-index = <1>;
-			device_type = "serial";
-			compatible = "fsl,ns16550", "ns16550";
-			reg = <0x4600 0x100>;
-			clock-frequency = <0>;
-			interrupts = <10 0x8>;
-			interrupt-parent = <&ipic>;
-		};
-
-		dma@82a8 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,mpc8323-dma", "fsl,elo-dma";
-			reg = <0x82a8 4>;
-			ranges = <0 0x8100 0x1a8>;
-			interrupt-parent = <&ipic>;
-			interrupts = <71 8>;
-			cell-index = <0>;
-			dma-channel@0 {
-				compatible = "fsl,mpc8323-dma-channel", "fsl,elo-dma-channel";
-				reg = <0 0x80>;
-				cell-index = <0>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@80 {
-				compatible = "fsl,mpc8323-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x80 0x80>;
-				cell-index = <1>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@100 {
-				compatible = "fsl,mpc8323-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x100 0x80>;
-				cell-index = <2>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-			dma-channel@180 {
-				compatible = "fsl,mpc8323-dma-channel", "fsl,elo-dma-channel";
-				reg = <0x180 0x28>;
-				cell-index = <3>;
-				interrupt-parent = <&ipic>;
-				interrupts = <71 8>;
-			};
-		};
-
-		crypto@30000 {
-			compatible = "fsl,sec2.2", "fsl,sec2.1", "fsl,sec2.0";
-			reg = <0x30000 0x10000>;
-			interrupts = <11 0x8>;
-			interrupt-parent = <&ipic>;
-			fsl,num-channels = <1>;
-			fsl,channel-fifo-len = <24>;
-			fsl,exec-units-mask = <0x4c>;
-			fsl,descriptor-types-mask = <0x0122003f>;
-			sleep = <&pmc 0x03000000>;
-		};
-
-		ipic: pic@700 {
-			interrupt-controller;
-			#address-cells = <0>;
-			#interrupt-cells = <2>;
-			reg = <0x700 0x100>;
-			device_type = "ipic";
-		};
-
-		par_io@1400 {
-			reg = <0x1400 0x100>;
-			device_type = "par_io";
-			num-ports = <7>;
-
-			pio3: ucc_pin@3 {
-				pio-map = <
-			/* port  pin  dir  open_drain  assignment  has_irq */
-					3  4  3  0  2  0  /* MDIO */
-					3  5  1  0  2  0  /* MDC */
-					0 13  2  0  1  0 	/* RX_CLK (CLK9) */
-					3 24  2  0  1  0 	/* TX_CLK (CLK10) */
-					1  0  1  0  1  0 	/* TxD0 */
-					1  1  1  0  1  0 	/* TxD1 */
-					1  2  1  0  1  0 	/* TxD2 */
-					1  3  1  0  1  0 	/* TxD3 */
-					1  4  2  0  1  0 	/* RxD0 */
-					1  5  2  0  1  0 	/* RxD1 */
-					1  6  2  0  1  0 	/* RxD2 */
-					1  7  2  0  1  0 	/* RxD3 */
-					1  8  2  0  1  0 	/* RX_ER */
-					1  9  1  0  1  0 	/* TX_ER */
-					1 10  2  0  1  0 	/* RX_DV */
-					1 11  2  0  1  0 	/* COL */
-					1 12  1  0  1  0 	/* TX_EN */
-					1 13  2  0  1  0>;	/* CRS */
-			};
-			pio4: ucc_pin@4 {
-				pio-map = <
-			/* port  pin  dir  open_drain  assignment  has_irq */
-					3 31  2  0  1  0 	/* RX_CLK (CLK7) */
-					3  6  2  0  1  0 	/* TX_CLK (CLK8) */
-					1 18  1  0  1  0 	/* TxD0 */
-					1 19  1  0  1  0 	/* TxD1 */
-					1 20  1  0  1  0 	/* TxD2 */
-					1 21  1  0  1  0 	/* TxD3 */
-					1 22  2  0  1  0 	/* RxD0 */
-					1 23  2  0  1  0 	/* RxD1 */
-					1 24  2  0  1  0 	/* RxD2 */
-					1 25  2  0  1  0 	/* RxD3 */
-					1 26  2  0  1  0 	/* RX_ER */
-					1 27  1  0  1  0 	/* TX_ER */
-					1 28  2  0  1  0 	/* RX_DV */
-					1 29  2  0  1  0 	/* COL */
-					1 30  1  0  1  0 	/* TX_EN */
-					1 31  2  0  1  0>;	/* CRS */
-			};
-			pio5: ucc_pin@5 {
-				pio-map = <
-				/*
-				 *    		      open       has
-				 *   port  pin  dir  drain  sel  irq
-				 */
-					2    0    1      0    2    0  /* TxD5 */
-					2    8    2      0    2    0  /* RxD5 */
-
-					2   29    2      0    0    0  /* CTS5 */
-					2   31    1      0    2    0  /* RTS5 */
-
-					2   24    2      0    0    0  /* CD */
-
-				>;
-			};
-
-		};
-	};
-
-	qe@e0100000 {
-		#address-cells = <1>;
-		#size-cells = <1>;
-		device_type = "qe";
-		compatible = "fsl,qe";
-		ranges = <0x0 0xe0100000 0x00100000>;
-		reg = <0xe0100000 0x480>;
-		brg-frequency = <0>;
-		bus-frequency = <198000000>;
-		fsl,qe-num-riscs = <1>;
-		fsl,qe-num-snums = <28>;
-
-		muram@10000 {
-			#address-cells = <1>;
-			#size-cells = <1>;
-			compatible = "fsl,qe-muram", "fsl,cpm-muram";
-			ranges = <0x0 0x00010000 0x00004000>;
-
-			data-only@0 {
-				compatible = "fsl,qe-muram-data",
-					     "fsl,cpm-muram-data";
-				reg = <0x0 0x4000>;
-			};
-		};
-
-		spi@4c0 {
-			cell-index = <0>;
-			compatible = "fsl,spi";
-			reg = <0x4c0 0x40>;
-			interrupts = <2>;
-			interrupt-parent = <&qeic>;
-			mode = "cpu";
-		};
-
-		spi@500 {
-			cell-index = <1>;
-			compatible = "fsl,spi";
-			reg = <0x500 0x40>;
-			interrupts = <1>;
-			interrupt-parent = <&qeic>;
-			mode = "cpu";
-		};
-
-		usb@6c0 {
-			compatible = "qe_udc";
-			reg = <0x6c0 0x40 0x8b00 0x100>;
-			interrupts = <11>;
-			interrupt-parent = <&qeic>;
-			mode = "slave";
-		};
-
-		enet0: ucc@2200 {
-			device_type = "network";
-			compatible = "ucc_geth";
-			cell-index = <3>;
-			reg = <0x2200 0x200>;
-			interrupts = <34>;
-			interrupt-parent = <&qeic>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			rx-clock-name = "clk9";
-			tx-clock-name = "clk10";
-			phy-handle = <&phy3>;
-			pio-handle = <&pio3>;
-		};
-
-		enet1: ucc@3200 {
-			device_type = "network";
-			compatible = "ucc_geth";
-			cell-index = <4>;
-			reg = <0x3200 0x200>;
-			interrupts = <35>;
-			interrupt-parent = <&qeic>;
-			local-mac-address = [ 00 00 00 00 00 00 ];
-			rx-clock-name = "clk7";
-			tx-clock-name = "clk8";
-			phy-handle = <&phy4>;
-			pio-handle = <&pio4>;
-		};
-
-		ucc@2400 {
-			device_type = "serial";
-			compatible = "ucc_uart";
-			cell-index = <5>;	/* The UCC number, 1-7*/
-			port-number = <0>;	/* Which ttyQEx device */
-			soft-uart;		/* We need Soft-UART */
-			reg = <0x2400 0x200>;
-			interrupts = <40>;	/* From Table 18-12 */
-			interrupt-parent = < &qeic >;
-			/*
-			 * For Soft-UART, we need to set TX to 1X, which
-			 * means specifying separate clock sources.
-			 */
-			rx-clock-name = "brg5";
-			tx-clock-name = "brg6";
-			pio-handle = < &pio5 >;
-		};
-
-
-		mdio@2320 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-			reg = <0x2320 0x18>;
-			compatible = "fsl,ucc-mdio";
-
-			phy3: ethernet-phy@3 {
-				interrupt-parent = <&ipic>;
-				interrupts = <17 0x8>;
-				reg = <0x3>;
-			};
-			phy4: ethernet-phy@4 {
-				interrupt-parent = <&ipic>;
-				interrupts = <18 0x8>;
-				reg = <0x4>;
-			};
-		};
-
-		qeic: interrupt-controller@80 {
-			interrupt-controller;
-			compatible = "fsl,qe-ic";
-			#address-cells = <0>;
-			#interrupt-cells = <1>;
-			reg = <0x80 0x80>;
-			big-endian;
-			interrupts = <32 0x8 33 0x8>; //high:32 low:33
-			interrupt-parent = <&ipic>;
-		};
-	};
-
-	pci0: pci@e0008500 {
-		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
-		interrupt-map = <
-				/* IDSEL 0x11 AD17 */
-				 0x8800 0x0 0x0 0x1 &ipic 20 0x8
-				 0x8800 0x0 0x0 0x2 &ipic 21 0x8
-				 0x8800 0x0 0x0 0x3 &ipic 22 0x8
-				 0x8800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x12 AD18 */
-				 0x9000 0x0 0x0 0x1 &ipic 22 0x8
-				 0x9000 0x0 0x0 0x2 &ipic 23 0x8
-				 0x9000 0x0 0x0 0x3 &ipic 20 0x8
-				 0x9000 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x13 AD19 */
-				 0x9800 0x0 0x0 0x1 &ipic 23 0x8
-				 0x9800 0x0 0x0 0x2 &ipic 20 0x8
-				 0x9800 0x0 0x0 0x3 &ipic 21 0x8
-				 0x9800 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x15 AD21*/
-				 0xa800 0x0 0x0 0x1 &ipic 20 0x8
-				 0xa800 0x0 0x0 0x2 &ipic 21 0x8
-				 0xa800 0x0 0x0 0x3 &ipic 22 0x8
-				 0xa800 0x0 0x0 0x4 &ipic 23 0x8
-
-				/* IDSEL 0x16 AD22*/
-				 0xb000 0x0 0x0 0x1 &ipic 23 0x8
-				 0xb000 0x0 0x0 0x2 &ipic 20 0x8
-				 0xb000 0x0 0x0 0x3 &ipic 21 0x8
-				 0xb000 0x0 0x0 0x4 &ipic 22 0x8
-
-				/* IDSEL 0x17 AD23*/
-				 0xb800 0x0 0x0 0x1 &ipic 22 0x8
-				 0xb800 0x0 0x0 0x2 &ipic 23 0x8
-				 0xb800 0x0 0x0 0x3 &ipic 20 0x8
-				 0xb800 0x0 0x0 0x4 &ipic 21 0x8
-
-				/* IDSEL 0x18 AD24*/
-				 0xc000 0x0 0x0 0x1 &ipic 21 0x8
-				 0xc000 0x0 0x0 0x2 &ipic 22 0x8
-				 0xc000 0x0 0x0 0x3 &ipic 23 0x8
-				 0xc000 0x0 0x0 0x4 &ipic 20 0x8>;
-		interrupt-parent = <&ipic>;
-		interrupts = <66 0x8>;
-		bus-range = <0x0 0x0>;
-		ranges = <0x02000000 0x0 0x90000000 0x90000000 0x0 0x10000000
-			  0x42000000 0x0 0x80000000 0x80000000 0x0 0x10000000
-			  0x01000000 0x0 0x00000000 0xd0000000 0x0 0x00100000>;
-		clock-frequency = <0>;
-		#interrupt-cells = <1>;
-		#size-cells = <2>;
-		#address-cells = <3>;
-		reg = <0xe0008500 0x100		/* internal registers */
-		       0xe0008300 0x8>;		/* config space access registers */
-		compatible = "fsl,mpc8349-pci";
-		device_type = "pci";
-		sleep = <&pmc 0x00010000>;
-	};
-};
diff --git a/arch/powerpc/configs/83xx/mpc832x_mds_defconfig b/arch/powerpc/configs/83xx/mpc832x_mds_defconfig
deleted file mode 100644
index e94555452fb2..000000000000
--- a/arch/powerpc/configs/83xx/mpc832x_mds_defconfig
+++ /dev/null
@@ -1,59 +0,0 @@
-CONFIG_SYSVIPC=y
-CONFIG_NO_HZ=y
-CONFIG_HIGH_RES_TIMERS=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_EXPERT=y
-# CONFIG_KALLSYMS is not set
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_MSDOS_PARTITION is not set
-# CONFIG_PPC_CHRP is not set
-# CONFIG_PPC_PMAC is not set
-CONFIG_PPC_83xx=y
-CONFIG_MPC832x_MDS=y
-CONFIG_MATH_EMULATION=y
-CONFIG_PCI=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_SYN_COOKIES=y
-# CONFIG_IPV6 is not set
-# CONFIG_FW_LOADER is not set
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_SIZE=32768
-CONFIG_SCSI=y
-CONFIG_NETDEVICES=y
-CONFIG_UCC_GETH=y
-CONFIG_DAVICOM_PHY=y
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-# CONFIG_VT is not set
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_HW_RANDOM=y
-CONFIG_I2C=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_I2C_MPC=y
-CONFIG_WATCHDOG=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_DS1374=y
-CONFIG_QUICC_ENGINE=y
-CONFIG_EXT2_FS=y
-CONFIG_EXT4_FS=y
-CONFIG_PROC_KCORE=y
-CONFIG_TMPFS=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_PCBC=m
diff --git a/arch/powerpc/configs/mpc83xx_defconfig b/arch/powerpc/configs/mpc83xx_defconfig
index 943c2d51bb60..8779f03bced1 100644
--- a/arch/powerpc/configs/mpc83xx_defconfig
+++ b/arch/powerpc/configs/mpc83xx_defconfig
@@ -11,7 +11,6 @@ CONFIG_PARTITION_ADVANCED=y
 # CONFIG_PPC_PMAC is not set
 CONFIG_PPC_83xx=y
 CONFIG_MPC831x_RDB=y
-CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
 CONFIG_MPC834x_ITX=y
 CONFIG_MPC836x_RDK=y
diff --git a/arch/powerpc/configs/ppc6xx_defconfig b/arch/powerpc/configs/ppc6xx_defconfig
index f08a7f43c629..a1f6c5f39ccf 100644
--- a/arch/powerpc/configs/ppc6xx_defconfig
+++ b/arch/powerpc/configs/ppc6xx_defconfig
@@ -44,7 +44,6 @@ CONFIG_EP8248E=y
 CONFIG_MGCOGE=y
 CONFIG_PPC_83xx=y
 CONFIG_MPC831x_RDB=y
-CONFIG_MPC832x_MDS=y
 CONFIG_MPC832x_RDB=y
 CONFIG_MPC834x_ITX=y
 CONFIG_MPC836x_RDK=y
diff --git a/arch/powerpc/platforms/83xx/Kconfig b/arch/powerpc/platforms/83xx/Kconfig
index 978d2b12e97c..d355ad40995f 100644
--- a/arch/powerpc/platforms/83xx/Kconfig
+++ b/arch/powerpc/platforms/83xx/Kconfig
@@ -25,13 +25,6 @@ config MPC831x_RDB
 	help
 	  This option enables support for the MPC8313 RDB and MPC8315 RDB boards.
 
-config MPC832x_MDS
-	bool "Freescale MPC832x MDS"
-	select DEFAULT_UIMAGE
-	select PPC_MPC832x
-	help
-	  This option enables support for the MPC832x MDS evaluation board.
-
 config MPC832x_RDB
 	bool "Freescale MPC832x RDB"
 	select DEFAULT_UIMAGE
diff --git a/arch/powerpc/platforms/83xx/Makefile b/arch/powerpc/platforms/83xx/Makefile
index 0c3a5067bd77..6b4013e01b3b 100644
--- a/arch/powerpc/platforms/83xx/Makefile
+++ b/arch/powerpc/platforms/83xx/Makefile
@@ -10,7 +10,6 @@ obj-$(CONFIG_MPC831x_RDB)	+= mpc831x_rdb.o
 obj-$(CONFIG_MPC832x_RDB)	+= mpc832x_rdb.o
 obj-$(CONFIG_MPC834x_ITX)	+= mpc834x_itx.o
 obj-$(CONFIG_MPC836x_RDK)	+= mpc836x_rdk.o
-obj-$(CONFIG_MPC832x_MDS)	+= mpc832x_mds.o
 obj-$(CONFIG_MPC837x_RDB)	+= mpc837x_rdb.o
 obj-$(CONFIG_ASP834x)		+= asp834x.o
 obj-$(CONFIG_KMETER1)		+= km83xx.o
diff --git a/arch/powerpc/platforms/83xx/mpc832x_mds.c b/arch/powerpc/platforms/83xx/mpc832x_mds.c
deleted file mode 100644
index 435344405d2c..000000000000
--- a/arch/powerpc/platforms/83xx/mpc832x_mds.c
+++ /dev/null
@@ -1,110 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * Copyright 2006 Freescale Semiconductor, Inc. All rights reserved.
- *
- * Description:
- * MPC832xE MDS board specific routines.
- */
-
-#include <linux/stddef.h>
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/errno.h>
-#include <linux/reboot.h>
-#include <linux/pci.h>
-#include <linux/kdev_t.h>
-#include <linux/major.h>
-#include <linux/console.h>
-#include <linux/delay.h>
-#include <linux/seq_file.h>
-#include <linux/root_dev.h>
-#include <linux/initrd.h>
-#include <linux/of_platform.h>
-#include <linux/of_device.h>
-
-#include <linux/atomic.h>
-#include <asm/time.h>
-#include <asm/io.h>
-#include <asm/machdep.h>
-#include <asm/ipic.h>
-#include <asm/irq.h>
-#include <asm/udbg.h>
-#include <sysdev/fsl_soc.h>
-#include <sysdev/fsl_pci.h>
-#include <soc/fsl/qe/qe.h>
-
-#include "mpc83xx.h"
-
-#undef DEBUG
-#ifdef DEBUG
-#define DBG(fmt...) udbg_printf(fmt)
-#else
-#define DBG(fmt...)
-#endif
-
-/* ************************************************************************
- *
- * Setup the architecture
- *
- */
-static void __init mpc832x_sys_setup_arch(void)
-{
-	struct device_node *np;
-	u8 __iomem *bcsr_regs = NULL;
-
-	mpc83xx_setup_arch();
-
-	/* Map BCSR area */
-	np = of_find_node_by_name(NULL, "bcsr");
-	if (np) {
-		struct resource res;
-
-		of_address_to_resource(np, 0, &res);
-		bcsr_regs = ioremap(res.start, resource_size(&res));
-		of_node_put(np);
-	}
-
-#ifdef CONFIG_QUICC_ENGINE
-	if ((np = of_find_node_by_name(NULL, "par_io")) != NULL) {
-		par_io_init(np);
-		of_node_put(np);
-
-		for_each_node_by_name(np, "ucc")
-			par_io_of_config(np);
-	}
-
-	if ((np = of_find_compatible_node(NULL, "network", "ucc_geth"))
-			!= NULL){
-		/* Reset the Ethernet PHYs */
-#define BCSR8_FETH_RST 0x50
-		clrbits8(&bcsr_regs[8], BCSR8_FETH_RST);
-		udelay(1000);
-		setbits8(&bcsr_regs[8], BCSR8_FETH_RST);
-		iounmap(bcsr_regs);
-		of_node_put(np);
-	}
-#endif				/* CONFIG_QUICC_ENGINE */
-}
-
-machine_device_initcall(mpc832x_mds, mpc83xx_declare_of_platform_devices);
-
-/*
- * Called very early, MMU is off, device-tree isn't unflattened
- */
-static int __init mpc832x_sys_probe(void)
-{
-	return of_machine_is_compatible("MPC832xMDS");
-}
-
-define_machine(mpc832x_mds) {
-	.name 		= "MPC832x MDS",
-	.probe 		= mpc832x_sys_probe,
-	.setup_arch 	= mpc832x_sys_setup_arch,
-	.discover_phbs	= mpc83xx_setup_pci,
-	.init_IRQ	= mpc83xx_ipic_init_IRQ,
-	.get_irq 	= ipic_get_irq,
-	.restart 	= mpc83xx_restart,
-	.time_init 	= mpc83xx_time_init,
-	.calibrate_decr	= generic_calibrate_decr,
-	.progress 	= udbg_progress,
-};
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 26+ messages in thread

* RE: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
                   ` (3 preceding siblings ...)
  2023-02-20 11:59 ` [PATCH 4/4] powerpc: drop MPC832x_MDS " Paul Gortmaker
@ 2023-02-20 22:40 ` Leo Li
  2023-02-24 21:16 ` Leo Li
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 26+ messages in thread
From: Leo Li @ 2023-02-20 22:40 UTC (permalink / raw)
  To: Paul Gortmaker, linuxppc-dev; +Cc: Scott Wood, Claudiu Manoil, Paul Mackerras



> -----Original Message-----
> From: Paul Gortmaker <paul.gortmaker@windriver.com>
> Sent: Monday, February 20, 2023 5:59 AM
> To: linuxppc-dev@lists.ozlabs.org
> Cc: Leo Li <leoyang.li@nxp.com>; Claudiu Manoil <claudiu.manoil@nxp.com>;
> Paul Gortmaker <paul.gortmaker@windriver.com>; Scott Wood
> <oss@buserror.net>; Michael Ellerman <mpe@ellerman.id.au>; Benjamin
> Herrenschmidt <benh@kernel.crashing.org>; Paul Mackerras
> <paulus@samba.org>
> Subject: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
> 
> [This RFC is proposed for v6.4 and hence is based off linux-next.]
> 
> This series removes support for four e300 (MPC83xx) Freescale processor
> family evaluation boards that were added to the kernel in the 2006 era.

Thanks.  Let me discuss this with our marketing team to see if they have any valid reason to keep them around.

> 
> These boards were all of a very similar form factor, a largish PCI or PCI-X card
> that could also be used standalone with an external power brick, and all
> shared the Modular Development System (MDS) designation.
> 
> These platforms were made in limited quantity and were generally designed
> to get early silicon into the hands of OEMs who would later develop their
> own boards/platforms.  As such, availability was limited to those who would
> be working on boards and/or BSP support.
> 
> Many early revision MDS platforms used a mechanical clamping system to
> hold the BGA CPU in place to facilitate CPU updates -- something not
> normally possible for a soldered down BGA in a COTS system.
> 
> The point of these details is to give context that reflects that these four
> boards were made in limited quantities, were not in a form factor that is
> really "hobbyist" friendly and hence make sense for removal 17 years later.
> 
> Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> 
> There will still exist several e300 Freescale Reference Design System (RDS)
> boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> were more of a COTS "ready to deploy" design more suited to hobbyists, it
> probably makes sense to consider removing these as well, based on age.
> 
> But before we get to that, lets see how this goes -- and then we should look
> at similar early e500 evaluation platforms [MPC8540-ADS, etc] next, as the
> oldest there date back to 2002[7] -- before considering RDB/mITX.
> 
> I intentionally didn't put any links in the commits, since as we all know, they
> tend not to be stable long term, so keep them here in the merge data.
> Credit to NXP for keeping around these old legacy docs this long!
> 
> Paul.
> 
> --
> 
> [1]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdesign%2Fqoriq-developer-resources%2Fmpc8349e-modular-
> development-
> system%3AMPC8349EMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> 0%7C%7C%7C&sdata=Q4COgwpjsE4mHXvl9HdGo3otPCYML3z%2FR6IoCEYRE
> wg%3D&reserved=0
> [2]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdocs%2Fen%2Fuser-
> guide%2FMPC8360EMDSUM.pdf&data=05%7C01%7Cleoyang.li%40nxp.com
> %7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c30
> 1635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8ey
> JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C3000%7C%7C%7C&sdata=JyLT0MfGAHQ8a%2FNgpLdVFtyACkwPR%2FOkB
> yN1aW0wySs%3D&reserved=0
> [3]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> mcus%2Fpowerquicc-processors%2Fpowerquicc-iii-mpc85xx%2Fmpc837xe-
> modular-development-
> system%3AMPC837XEMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> 0%7C%7C%7C&sdata=052dpEEcGmbuhRLnMDCNoOkTeguF%2BPA0oJGNvV1
> jSjI%3D&reserved=0
> [4]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> mcus%2Fpowerquicc-processors%2Fpowerquicc-ii-pro-mpc83xx%2Flow-
> power-powerquicc-ii-pro-processor-with-ddr2-tdm-pci-security-usb-quicc-
> engine-with-
> utopia%3AMPC8323E&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1
> e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%
> 7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4
> wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7
> C%7C%7C&sdata=mZQh%2FogNgNUb0wNJV972kYIDvn61gx0TWNd1u1d7PZ
> Q%3D&reserved=0
> [5]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdocs%2Fen%2Ffact-
> sheet%2FMPC8379ERDBFS.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%7
> Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c3016
> 35%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C3000%7C%7C%7C&sdata=EJmP6Regr7zpvYvHUmX64h3LZSaBT3Mb1h%2BN
> KQT%2FUls%3D&reserved=0
> [6]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .digikey.ca%2Fen%2Fproducts%2Fdetail%2Fnxp-usa-inc%2FMPC8349E-MITX-
> GP%2F1204733&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1e44264
> 0c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C1%7
> C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAw
> MDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%
> 7C&sdata=hw6IQDUaXH6huQFCnCkFIbNfj1xMrq%2FanDMUU%2FXZYQg%3
> D&reserved=0
> [7]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdocs%2Fen%2Freference-
> manual%2FMPC8560ADSUG.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%
> 7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301
> 635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C3000%7C%7C%7C&sdata=Ed%2BZR07y9Sp8xx5H47SAXzk9ET73creygxk%2B
> emmbfuA%3D&reserved=0
> 
> Cc: Scott Wood <oss@buserror.net>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Li Yang <leoyang.li@nxp.com>
> Cc: Claudiu Manoil <claudiu.manoil@nxp.com>
> 
> ---
> 
> Paul Gortmaker (4):
>   powerpc: drop MPC834x_MDS platform support
>   powerpc: drop MPC836x_MDS platform support
>   powerpc: drop MPC837x_MDS platform support
>   powerpc: drop MPC832x_MDS platform support
> 
>  arch/powerpc/boot/Makefile                    |   1 -
>  arch/powerpc/boot/dts/mpc832x_mds.dts         | 436 ---------------
>  arch/powerpc/boot/dts/mpc834x_mds.dts         | 403 --------------
>  arch/powerpc/boot/dts/mpc836x_mds.dts         | 481 -----------------
>  arch/powerpc/boot/dts/mpc8377_mds.dts         | 505 ------------------
>  arch/powerpc/boot/dts/mpc8378_mds.dts         | 489 -----------------
>  arch/powerpc/boot/dts/mpc8379_mds.dts         | 455 ----------------
>  .../configs/83xx/mpc832x_mds_defconfig        |  59 --
>  .../configs/83xx/mpc834x_mds_defconfig        |  58 --
>  .../configs/83xx/mpc836x_mds_defconfig        |  64 ---
>  .../configs/83xx/mpc837x_mds_defconfig        |  58 --
>  arch/powerpc/configs/mpc83xx_defconfig        |   4 -
>  arch/powerpc/configs/ppc6xx_defconfig         |   4 -
>  arch/powerpc/platforms/83xx/Kconfig           |  32 --
>  arch/powerpc/platforms/83xx/Makefile          |   4 -
>  arch/powerpc/platforms/83xx/mpc832x_mds.c     | 110 ----
>  arch/powerpc/platforms/83xx/mpc834x_mds.c     | 101 ----
>  arch/powerpc/platforms/83xx/mpc836x_mds.c     | 210 --------
>  arch/powerpc/platforms/83xx/mpc837x_mds.c     | 103 ----
>  19 files changed, 3577 deletions(-)
>  delete mode 100644 arch/powerpc/boot/dts/mpc832x_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc834x_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc836x_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc8377_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc8378_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc8379_mds.dts
>  delete mode 100644 arch/powerpc/configs/83xx/mpc832x_mds_defconfig
>  delete mode 100644 arch/powerpc/configs/83xx/mpc834x_mds_defconfig
>  delete mode 100644 arch/powerpc/configs/83xx/mpc836x_mds_defconfig
>  delete mode 100644 arch/powerpc/configs/83xx/mpc837x_mds_defconfig
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc832x_mds.c
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc834x_mds.c
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc836x_mds.c
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc837x_mds.c
> 
> --
> 2.17.1


^ permalink raw reply	[flat|nested] 26+ messages in thread

* RE: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
                   ` (4 preceding siblings ...)
  2023-02-20 22:40 ` [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Leo Li
@ 2023-02-24 21:16 ` Leo Li
  2023-02-25 16:50   ` Paul Gortmaker
  2023-02-25  7:40 ` Christophe Leroy
  2023-04-26 12:10 ` Michael Ellerman
  7 siblings, 1 reply; 26+ messages in thread
From: Leo Li @ 2023-02-24 21:16 UTC (permalink / raw)
  To: Paul Gortmaker, linuxppc-dev; +Cc: Scott Wood, Claudiu Manoil, Paul Mackerras



> -----Original Message-----
> From: Paul Gortmaker <paul.gortmaker@windriver.com>
> Sent: Monday, February 20, 2023 5:59 AM
> To: linuxppc-dev@lists.ozlabs.org
> Cc: Leo Li <leoyang.li@nxp.com>; Claudiu Manoil <claudiu.manoil@nxp.com>;
> Paul Gortmaker <paul.gortmaker@windriver.com>; Scott Wood
> <oss@buserror.net>; Michael Ellerman <mpe@ellerman.id.au>; Benjamin
> Herrenschmidt <benh@kernel.crashing.org>; Paul Mackerras
> <paulus@samba.org>
> Subject: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
> 
> [This RFC is proposed for v6.4 and hence is based off linux-next.]
> 
> This series removes support for four e300 (MPC83xx) Freescale processor
> family evaluation boards that were added to the kernel in the 2006 era.

Hi Paul,

I talked with our marketing team on this.  Although we do not recommend any new design with these SoCs, they are still being shipped in large amount to customers now.  Plus it is possible for the bigger amount of existing devices to be updating their software that includes a new kernel.  So we should definitely keep all the common SoC code that might be needed to support their own design.

> 
> These boards were all of a very similar form factor, a largish PCI or PCI-X card
> that could also be used standalone with an external power brick, and all
> shared the Modular Development System (MDS) designation.
> 
> These platforms were made in limited quantity and were generally designed
> to get early silicon into the hands of OEMs who would later develop their
> own boards/platforms.  As such, availability was limited to those who would
> be working on boards and/or BSP support.
> 
> Many early revision MDS platforms used a mechanical clamping system to
> hold the BGA CPU in place to facilitate CPU updates -- something not
> normally possible for a soldered down BGA in a COTS system.
> 
> The point of these details is to give context that reflects that these four
> boards were made in limited quantities, were not in a form factor that is
> really "hobbyist" friendly and hence make sense for removal 17 years later.

We would agree with you that the MDS platforms are only used by a limited number of customers for evaluation purpose, so it should be fine to be removed.  So for this series:

Acked-by: Li Yang <leoyang.li@nxp.com>

> 
> Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> 
> There will still exist several e300 Freescale Reference Design System (RDS)
> boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> were more of a COTS "ready to deploy" design more suited to hobbyists, it
> probably makes sense to consider removing these as well, based on age.

These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.

> 
> But before we get to that, lets see how this goes -- and then we should look
> at similar early e500 evaluation platforms [MPC8540-ADS, etc] next, as the
> oldest there date back to 2002[7] -- before considering RDB/mITX.
> 
> I intentionally didn't put any links in the commits, since as we all know, they
> tend not to be stable long term, so keep them here in the merge data.
> Credit to NXP for keeping around these old legacy docs this long!
> 
> Paul.
> 
> --
> 
> [1]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdesign%2Fqoriq-developer-resources%2Fmpc8349e-modular-
> development-
> system%3AMPC8349EMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> 0%7C%7C%7C&sdata=Q4COgwpjsE4mHXvl9HdGo3otPCYML3z%2FR6IoCEYRE
> wg%3D&reserved=0
> [2]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdocs%2Fen%2Fuser-
> guide%2FMPC8360EMDSUM.pdf&data=05%7C01%7Cleoyang.li%40nxp.com
> %7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c30
> 1635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8ey
> JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C3000%7C%7C%7C&sdata=JyLT0MfGAHQ8a%2FNgpLdVFtyACkwPR%2FOkB
> yN1aW0wySs%3D&reserved=0
> [3]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> mcus%2Fpowerquicc-processors%2Fpowerquicc-iii-mpc85xx%2Fmpc837xe-
> modular-development-
> system%3AMPC837XEMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> 0%7C%7C%7C&sdata=052dpEEcGmbuhRLnMDCNoOkTeguF%2BPA0oJGNvV1
> jSjI%3D&reserved=0
> [4]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> mcus%2Fpowerquicc-processors%2Fpowerquicc-ii-pro-mpc83xx%2Flow-
> power-powerquicc-ii-pro-processor-with-ddr2-tdm-pci-security-usb-quicc-
> engine-with-
> utopia%3AMPC8323E&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1
> e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%
> 7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4
> wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7
> C%7C%7C&sdata=mZQh%2FogNgNUb0wNJV972kYIDvn61gx0TWNd1u1d7PZ
> Q%3D&reserved=0
> [5]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdocs%2Fen%2Ffact-
> sheet%2FMPC8379ERDBFS.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%7
> Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c3016
> 35%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C3000%7C%7C%7C&sdata=EJmP6Regr7zpvYvHUmX64h3LZSaBT3Mb1h%2BN
> KQT%2FUls%3D&reserved=0
> [6]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .digikey.ca%2Fen%2Fproducts%2Fdetail%2Fnxp-usa-inc%2FMPC8349E-MITX-
> GP%2F1204733&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1e44264
> 0c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C1%7
> C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAw
> MDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%
> 7C&sdata=hw6IQDUaXH6huQFCnCkFIbNfj1xMrq%2FanDMUU%2FXZYQg%3
> D&reserved=0
> [7]
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> .nxp.com%2Fdocs%2Fen%2Freference-
> manual%2FMPC8560ADSUG.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%
> 7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301
> 635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C3000%7C%7C%7C&sdata=Ed%2BZR07y9Sp8xx5H47SAXzk9ET73creygxk%2B
> emmbfuA%3D&reserved=0
> 
> Cc: Scott Wood <oss@buserror.net>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Li Yang <leoyang.li@nxp.com>
> Cc: Claudiu Manoil <claudiu.manoil@nxp.com>
> 
> ---
> 
> Paul Gortmaker (4):
>   powerpc: drop MPC834x_MDS platform support
>   powerpc: drop MPC836x_MDS platform support
>   powerpc: drop MPC837x_MDS platform support
>   powerpc: drop MPC832x_MDS platform support
> 
>  arch/powerpc/boot/Makefile                    |   1 -
>  arch/powerpc/boot/dts/mpc832x_mds.dts         | 436 ---------------
>  arch/powerpc/boot/dts/mpc834x_mds.dts         | 403 --------------
>  arch/powerpc/boot/dts/mpc836x_mds.dts         | 481 -----------------
>  arch/powerpc/boot/dts/mpc8377_mds.dts         | 505 ------------------
>  arch/powerpc/boot/dts/mpc8378_mds.dts         | 489 -----------------
>  arch/powerpc/boot/dts/mpc8379_mds.dts         | 455 ----------------
>  .../configs/83xx/mpc832x_mds_defconfig        |  59 --
>  .../configs/83xx/mpc834x_mds_defconfig        |  58 --
>  .../configs/83xx/mpc836x_mds_defconfig        |  64 ---
>  .../configs/83xx/mpc837x_mds_defconfig        |  58 --
>  arch/powerpc/configs/mpc83xx_defconfig        |   4 -
>  arch/powerpc/configs/ppc6xx_defconfig         |   4 -
>  arch/powerpc/platforms/83xx/Kconfig           |  32 --
>  arch/powerpc/platforms/83xx/Makefile          |   4 -
>  arch/powerpc/platforms/83xx/mpc832x_mds.c     | 110 ----
>  arch/powerpc/platforms/83xx/mpc834x_mds.c     | 101 ----
>  arch/powerpc/platforms/83xx/mpc836x_mds.c     | 210 --------
>  arch/powerpc/platforms/83xx/mpc837x_mds.c     | 103 ----
>  19 files changed, 3577 deletions(-)
>  delete mode 100644 arch/powerpc/boot/dts/mpc832x_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc834x_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc836x_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc8377_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc8378_mds.dts
>  delete mode 100644 arch/powerpc/boot/dts/mpc8379_mds.dts
>  delete mode 100644 arch/powerpc/configs/83xx/mpc832x_mds_defconfig
>  delete mode 100644 arch/powerpc/configs/83xx/mpc834x_mds_defconfig
>  delete mode 100644 arch/powerpc/configs/83xx/mpc836x_mds_defconfig
>  delete mode 100644 arch/powerpc/configs/83xx/mpc837x_mds_defconfig
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc832x_mds.c
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc834x_mds.c
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc836x_mds.c
>  delete mode 100644 arch/powerpc/platforms/83xx/mpc837x_mds.c
> 
> --
> 2.17.1


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
                   ` (5 preceding siblings ...)
  2023-02-24 21:16 ` Leo Li
@ 2023-02-25  7:40 ` Christophe Leroy
  2023-02-25 16:20   ` Paul Gortmaker
  2023-04-26 12:10 ` Michael Ellerman
  7 siblings, 1 reply; 26+ messages in thread
From: Christophe Leroy @ 2023-02-25  7:40 UTC (permalink / raw)
  To: Paul Gortmaker, linuxppc-dev
  Cc: Scott Wood, Claudiu Manoil, Paul Mackerras, Li Yang



Le 20/02/2023 à 12:59, Paul Gortmaker a écrit :
> [This RFC is proposed for v6.4 and hence is based off linux-next.]
> 
> This series removes support for four e300 (MPC83xx) Freescale processor
> family evaluation boards that were added to the kernel in the 2006 era.
> 
> These boards were all of a very similar form factor, a largish PCI or PCI-X
> card that could also be used standalone with an external power brick, and
> all shared the Modular Development System (MDS) designation.
> 
> These platforms were made in limited quantity and were generally designed
> to get early silicon into the hands of OEMs who would later develop their
> own boards/platforms.  As such, availability was limited to those who would
> be working on boards and/or BSP support.
> 
> Many early revision MDS platforms used a mechanical clamping system to hold
> the BGA CPU in place to facilitate CPU updates -- something not normally
> possible for a soldered down BGA in a COTS system.
> 
> The point of these details is to give context that reflects that these four
> boards were made in limited quantities, were not in a form factor that is
> really "hobbyist" friendly and hence make sense for removal 17 years later.
> 
> Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> 
> There will still exist several e300 Freescale Reference Design System (RDS)
> boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> were more of a COTS "ready to deploy" design more suited to hobbyists, it
> probably makes sense to consider removing these as well, based on age.

Those boards are still being sold, see 
https://www.components-store.fr/product/NXP-Semiconductors-Freescale/MPC8323E-RDB.html 
they have 4600 pieces in stock.

Christophe

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-25  7:40 ` Christophe Leroy
@ 2023-02-25 16:20   ` Paul Gortmaker
  0 siblings, 0 replies; 26+ messages in thread
From: Paul Gortmaker @ 2023-02-25 16:20 UTC (permalink / raw)
  To: Christophe Leroy
  Cc: Scott Wood, Paul Mackerras, Claudiu Manoil, linuxppc-dev, Li Yang

[Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms] On 25/02/2023 (Sat 07:40) Christophe Leroy wrote:

> 
> 
> Le 20/02/2023 ?? 12:59, Paul Gortmaker a ??crit??:
> > [This RFC is proposed for v6.4 and hence is based off linux-next.]
> > 
> > This series removes support for four e300 (MPC83xx) Freescale processor
> > family evaluation boards that were added to the kernel in the 2006 era.
> > 
> > These boards were all of a very similar form factor, a largish PCI or PCI-X
> > card that could also be used standalone with an external power brick, and
> > all shared the Modular Development System (MDS) designation.
> > 
> > These platforms were made in limited quantity and were generally designed
> > to get early silicon into the hands of OEMs who would later develop their
> > own boards/platforms.  As such, availability was limited to those who would
> > be working on boards and/or BSP support.
> > 
> > Many early revision MDS platforms used a mechanical clamping system to hold
> > the BGA CPU in place to facilitate CPU updates -- something not normally
> > possible for a soldered down BGA in a COTS system.
> > 
> > The point of these details is to give context that reflects that these four
> > boards were made in limited quantities, were not in a form factor that is
> > really "hobbyist" friendly and hence make sense for removal 17 years later.
> > 
> > Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> > MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> > 
> > There will still exist several e300 Freescale Reference Design System (RDS)
> > boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> > were more of a COTS "ready to deploy" design more suited to hobbyists, it
> > probably makes sense to consider removing these as well, based on age.
> 
> Those boards are still being sold, see 
> https://www.components-store.fr/product/NXP-Semiconductors-Freescale/MPC8323E-RDB.html 
> they have 4600 pieces in stock.

Just to clarify for others - your link is for RDB boards - which I said
should be considered, but are not touched in this series.

Secondly, even if there may exist a large amount of NOS (New Old Stock)
of RDB boards from 15+ years ago - the reality is that they will only be
used in small quantities to repair legacy STB or similar - where no
hardware upgrade path exists.  That corner case will happen w/o changing
firmware or software (i.e. u-boot or kernel).

I can assure you that no sane company is going to take a 2006 STB/PVR
and do a software update to a 6.4 kernel.  That would go against decades
of Product Life Cycle experience, and would be inviting disaster as you
go up the wrong side of the bathtub curve.

As for hobbyists - feel free to go ahead and e-mail the folks at your
components-store link and ask for a quote, since they don't list a
price.  When you get an answer of $800-$2000 USD - tell me who is going
buy one vs. a modern PC.  Oh, and ask if they have next day shipping,
since they claim to have 4600 in stock - which also seems very suspect,
or a horribly bad investment on their part.

Don't get me wrong - I appreciate the input, but I don't think it really
alters what the right thing to do is for the 6.4+ kernel.

Thanks,
Paul.
--

> 
> Christophe

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-24 21:16 ` Leo Li
@ 2023-02-25 16:50   ` Paul Gortmaker
  2023-02-25 22:49     ` Arnd Bergmann
  2023-02-27 20:48     ` Li Yang
  0 siblings, 2 replies; 26+ messages in thread
From: Paul Gortmaker @ 2023-02-25 16:50 UTC (permalink / raw)
  To: Leo Li; +Cc: Scott Wood, Claudiu Manoil, Paul Mackerras, linuxppc-dev

[RE: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms] On 24/02/2023 (Fri 21:16) Leo Li wrote:

> 
> 
> > -----Original Message-----
> > From: Paul Gortmaker <paul.gortmaker@windriver.com>
> > Sent: Monday, February 20, 2023 5:59 AM
> > To: linuxppc-dev@lists.ozlabs.org
> > Cc: Leo Li <leoyang.li@nxp.com>; Claudiu Manoil <claudiu.manoil@nxp.com>;
> > Paul Gortmaker <paul.gortmaker@windriver.com>; Scott Wood
> > <oss@buserror.net>; Michael Ellerman <mpe@ellerman.id.au>; Benjamin
> > Herrenschmidt <benh@kernel.crashing.org>; Paul Mackerras
> > <paulus@samba.org>
> > Subject: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
> > 
> > [This RFC is proposed for v6.4 and hence is based off linux-next.]
> > 
> > This series removes support for four e300 (MPC83xx) Freescale processor
> > family evaluation boards that were added to the kernel in the 2006 era.
> 
> Hi Paul,
> 
> I talked with our marketing team on this.  Although we do not recommend any new design with these SoCs, they are still being shipped in large amount to customers now.  Plus it is possible for the bigger amount of existing devices to be updating their software that includes a new kernel.  So we should definitely keep all the common SoC code that might be needed to support their own design.

Thanks for confirming with your marketing team that they "do not
recommend any new design with these SoCs" -- it also confirms the
information I read on the web pages for the platforms.

As those of us immersed in this world all know from the 101 basics of
Product Life Cycle lessons, it doesn't matter if it is a phone or a
set-top-box/PVR or whatever else kind of non-PC consumer device --
kernel uprevs never happen in that product space.

So with the best interests of the mainline kernel in mind, I think we
are good to proceed with this for summer 2023.  And of course as I've
said many times before - the kernel is in git, so really you can't
delete anything anyway - it remains in history forever.

Thanks,
Paul.
--

> 
> > 
> > These boards were all of a very similar form factor, a largish PCI or PCI-X card
> > that could also be used standalone with an external power brick, and all
> > shared the Modular Development System (MDS) designation.
> > 
> > These platforms were made in limited quantity and were generally designed
> > to get early silicon into the hands of OEMs who would later develop their
> > own boards/platforms.  As such, availability was limited to those who would
> > be working on boards and/or BSP support.
> > 
> > Many early revision MDS platforms used a mechanical clamping system to
> > hold the BGA CPU in place to facilitate CPU updates -- something not
> > normally possible for a soldered down BGA in a COTS system.
> > 
> > The point of these details is to give context that reflects that these four
> > boards were made in limited quantities, were not in a form factor that is
> > really "hobbyist" friendly and hence make sense for removal 17 years later.
> 
> We would agree with you that the MDS platforms are only used by a limited number of customers for evaluation purpose, so it should be fine to be removed.  So for this series:
> 
> Acked-by: Li Yang <leoyang.li@nxp.com>
> 
> > 
> > Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> > MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> > 
> > There will still exist several e300 Freescale Reference Design System (RDS)
> > boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> > were more of a COTS "ready to deploy" design more suited to hobbyists, it
> > probably makes sense to consider removing these as well, based on age.
> 
> These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.
> 
> > 
> > But before we get to that, lets see how this goes -- and then we should look
> > at similar early e500 evaluation platforms [MPC8540-ADS, etc] next, as the
> > oldest there date back to 2002[7] -- before considering RDB/mITX.
> > 
> > I intentionally didn't put any links in the commits, since as we all know, they
> > tend not to be stable long term, so keep them here in the merge data.
> > Credit to NXP for keeping around these old legacy docs this long!
> > 
> > Paul.
> > 
> > --
> > 
> > [1]
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > .nxp.com%2Fdesign%2Fqoriq-developer-resources%2Fmpc8349e-modular-
> > development-
> > system%3AMPC8349EMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> > 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> > 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> > 0%7C%7C%7C&sdata=Q4COgwpjsE4mHXvl9HdGo3otPCYML3z%2FR6IoCEYRE
> > wg%3D&reserved=0
> > [2]
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > .nxp.com%2Fdocs%2Fen%2Fuser-
> > guide%2FMPC8360EMDSUM.pdf&data=05%7C01%7Cleoyang.li%40nxp.com
> > %7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c30
> > 1635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8ey
> > JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > 7C3000%7C%7C%7C&sdata=JyLT0MfGAHQ8a%2FNgpLdVFtyACkwPR%2FOkB
> > yN1aW0wySs%3D&reserved=0
> > [3]
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> > mcus%2Fpowerquicc-processors%2Fpowerquicc-iii-mpc85xx%2Fmpc837xe-
> > modular-development-
> > system%3AMPC837XEMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> > 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> > 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> > 0%7C%7C%7C&sdata=052dpEEcGmbuhRLnMDCNoOkTeguF%2BPA0oJGNvV1
> > jSjI%3D&reserved=0
> > [4]
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> > mcus%2Fpowerquicc-processors%2Fpowerquicc-ii-pro-mpc83xx%2Flow-
> > power-powerquicc-ii-pro-processor-with-ddr2-tdm-pci-security-usb-quicc-
> > engine-with-
> > utopia%3AMPC8323E&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1
> > e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%
> > 7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4
> > wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7
> > C%7C%7C&sdata=mZQh%2FogNgNUb0wNJV972kYIDvn61gx0TWNd1u1d7PZ
> > Q%3D&reserved=0
> > [5]
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > .nxp.com%2Fdocs%2Fen%2Ffact-
> > sheet%2FMPC8379ERDBFS.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%7
> > Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c3016
> > 35%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> > WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > 7C3000%7C%7C%7C&sdata=EJmP6Regr7zpvYvHUmX64h3LZSaBT3Mb1h%2BN
> > KQT%2FUls%3D&reserved=0
> > [6]
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > .digikey.ca%2Fen%2Fproducts%2Fdetail%2Fnxp-usa-inc%2FMPC8349E-MITX-
> > GP%2F1204733&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1e44264
> > 0c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C1%7
> > C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAw
> > MDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%
> > 7C&sdata=hw6IQDUaXH6huQFCnCkFIbNfj1xMrq%2FanDMUU%2FXZYQg%3
> > D&reserved=0
> > [7]
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > .nxp.com%2Fdocs%2Fen%2Freference-
> > manual%2FMPC8560ADSUG.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%
> > 7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301
> > 635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> > WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > 7C3000%7C%7C%7C&sdata=Ed%2BZR07y9Sp8xx5H47SAXzk9ET73creygxk%2B
> > emmbfuA%3D&reserved=0
> > 
> > Cc: Scott Wood <oss@buserror.net>
> > Cc: Michael Ellerman <mpe@ellerman.id.au>
> > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> > Cc: Paul Mackerras <paulus@samba.org>
> > Cc: Li Yang <leoyang.li@nxp.com>
> > Cc: Claudiu Manoil <claudiu.manoil@nxp.com>
> > 
> > ---
> > 
> > Paul Gortmaker (4):
> >   powerpc: drop MPC834x_MDS platform support
> >   powerpc: drop MPC836x_MDS platform support
> >   powerpc: drop MPC837x_MDS platform support
> >   powerpc: drop MPC832x_MDS platform support
> > 
> >  arch/powerpc/boot/Makefile                    |   1 -
> >  arch/powerpc/boot/dts/mpc832x_mds.dts         | 436 ---------------
> >  arch/powerpc/boot/dts/mpc834x_mds.dts         | 403 --------------
> >  arch/powerpc/boot/dts/mpc836x_mds.dts         | 481 -----------------
> >  arch/powerpc/boot/dts/mpc8377_mds.dts         | 505 ------------------
> >  arch/powerpc/boot/dts/mpc8378_mds.dts         | 489 -----------------
> >  arch/powerpc/boot/dts/mpc8379_mds.dts         | 455 ----------------
> >  .../configs/83xx/mpc832x_mds_defconfig        |  59 --
> >  .../configs/83xx/mpc834x_mds_defconfig        |  58 --
> >  .../configs/83xx/mpc836x_mds_defconfig        |  64 ---
> >  .../configs/83xx/mpc837x_mds_defconfig        |  58 --
> >  arch/powerpc/configs/mpc83xx_defconfig        |   4 -
> >  arch/powerpc/configs/ppc6xx_defconfig         |   4 -
> >  arch/powerpc/platforms/83xx/Kconfig           |  32 --
> >  arch/powerpc/platforms/83xx/Makefile          |   4 -
> >  arch/powerpc/platforms/83xx/mpc832x_mds.c     | 110 ----
> >  arch/powerpc/platforms/83xx/mpc834x_mds.c     | 101 ----
> >  arch/powerpc/platforms/83xx/mpc836x_mds.c     | 210 --------
> >  arch/powerpc/platforms/83xx/mpc837x_mds.c     | 103 ----
> >  19 files changed, 3577 deletions(-)
> >  delete mode 100644 arch/powerpc/boot/dts/mpc832x_mds.dts
> >  delete mode 100644 arch/powerpc/boot/dts/mpc834x_mds.dts
> >  delete mode 100644 arch/powerpc/boot/dts/mpc836x_mds.dts
> >  delete mode 100644 arch/powerpc/boot/dts/mpc8377_mds.dts
> >  delete mode 100644 arch/powerpc/boot/dts/mpc8378_mds.dts
> >  delete mode 100644 arch/powerpc/boot/dts/mpc8379_mds.dts
> >  delete mode 100644 arch/powerpc/configs/83xx/mpc832x_mds_defconfig
> >  delete mode 100644 arch/powerpc/configs/83xx/mpc834x_mds_defconfig
> >  delete mode 100644 arch/powerpc/configs/83xx/mpc836x_mds_defconfig
> >  delete mode 100644 arch/powerpc/configs/83xx/mpc837x_mds_defconfig
> >  delete mode 100644 arch/powerpc/platforms/83xx/mpc832x_mds.c
> >  delete mode 100644 arch/powerpc/platforms/83xx/mpc834x_mds.c
> >  delete mode 100644 arch/powerpc/platforms/83xx/mpc836x_mds.c
> >  delete mode 100644 arch/powerpc/platforms/83xx/mpc837x_mds.c
> > 
> > --
> > 2.17.1
> 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-25 16:50   ` Paul Gortmaker
@ 2023-02-25 22:49     ` Arnd Bergmann
  2023-02-27 20:42       ` Li Yang
  2023-02-27 20:48     ` Li Yang
  1 sibling, 1 reply; 26+ messages in thread
From: Arnd Bergmann @ 2023-02-25 22:49 UTC (permalink / raw)
  To: Paul Gortmaker, Leo Li
  Cc: Scott Wood, linuxppc-dev, Claudiu Manoil, Paul Mackerras

On Sat, Feb 25, 2023, at 17:50, Paul Gortmaker wrote:
> [RE: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms] On 
> 24/02/2023 (Fri 21:16) Leo Li wrote:
>
> Thanks for confirming with your marketing team that they "do not
> recommend any new design with these SoCs" -- it also confirms the
> information I read on the web pages for the platforms.
>
> As those of us immersed in this world all know from the 101 basics of
> Product Life Cycle lessons, it doesn't matter if it is a phone or a
> set-top-box/PVR or whatever else kind of non-PC consumer device --
> kernel uprevs never happen in that product space.
>
> So with the best interests of the mainline kernel in mind, I think we
> are good to proceed with this for summer 2023.  And of course as I've
> said many times before - the kernel is in git, so really you can't
> delete anything anyway - it remains in history forever.

Thanks for working on this, this is a good step towards removing
the known unused code. One aspect I'd add from doing similar cleanups
on arm32 is that I would prioritize removing evaluation platforms
for SoCs that have no other supported boards, and then
garbage-collecting the device drivers that become unused.

I'm not sure where the RDB boards fit in that, in particular if
an unmodified kernel would work on a machine that is derived from
the reference platform, or if it really only works on the machine
itself. On most arm platforms, we moved to having only per-soc
"compatible" strings, but on Freescale ppc32 it appears that
the kernel always matches a board specific string and requires
patches in order to support anything else.

       Arnd

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-25 22:49     ` Arnd Bergmann
@ 2023-02-27 20:42       ` Li Yang
  0 siblings, 0 replies; 26+ messages in thread
From: Li Yang @ 2023-02-27 20:42 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Scott Wood, Paul Gortmaker, Claudiu Manoil, linuxppc-dev, Paul Mackerras

On Sat, Feb 25, 2023 at 4:51 PM Arnd Bergmann <arnd@arndb.de> wrote:
>
> On Sat, Feb 25, 2023, at 17:50, Paul Gortmaker wrote:
> > [RE: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms] On
> > 24/02/2023 (Fri 21:16) Leo Li wrote:
> >
> > Thanks for confirming with your marketing team that they "do not
> > recommend any new design with these SoCs" -- it also confirms the
> > information I read on the web pages for the platforms.
> >
> > As those of us immersed in this world all know from the 101 basics of
> > Product Life Cycle lessons, it doesn't matter if it is a phone or a
> > set-top-box/PVR or whatever else kind of non-PC consumer device --
> > kernel uprevs never happen in that product space.
> >
> > So with the best interests of the mainline kernel in mind, I think we
> > are good to proceed with this for summer 2023.  And of course as I've
> > said many times before - the kernel is in git, so really you can't
> > delete anything anyway - it remains in history forever.
>
> Thanks for working on this, this is a good step towards removing
> the known unused code. One aspect I'd add from doing similar cleanups
> on arm32 is that I would prioritize removing evaluation platforms
> for SoCs that have no other supported boards, and then
> garbage-collecting the device drivers that become unused.
>
> I'm not sure where the RDB boards fit in that, in particular if
> an unmodified kernel would work on a machine that is derived from
> the reference platform, or if it really only works on the machine
> itself. On most arm platforms, we moved to having only per-soc
> "compatible" strings, but on Freescale ppc32 it appears that
> the kernel always matches a board specific string and requires
> patches in order to support anything else.

The RDB boards normally don't include the complex configuration
mechanisms as used on the MDS platforms to support different
configurations at the same time.  They were designed to mimic a real
product and should be much more likely to work unmodified or with some
minor tweaks.

Regards,
Leo

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-25 16:50   ` Paul Gortmaker
  2023-02-25 22:49     ` Arnd Bergmann
@ 2023-02-27 20:48     ` Li Yang
  2023-02-28 10:03       ` Joakim Tjernlund
  1 sibling, 1 reply; 26+ messages in thread
From: Li Yang @ 2023-02-27 20:48 UTC (permalink / raw)
  To: Paul Gortmaker; +Cc: Scott Wood, linuxppc-dev, Claudiu Manoil, Paul Mackerras

On Sat, Feb 25, 2023 at 10:52 AM Paul Gortmaker
<paul.gortmaker@windriver.com> wrote:
>
> [RE: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms] On 24/02/2023 (Fri 21:16) Leo Li wrote:
>
> >
> >
> > > -----Original Message-----
> > > From: Paul Gortmaker <paul.gortmaker@windriver.com>
> > > Sent: Monday, February 20, 2023 5:59 AM
> > > To: linuxppc-dev@lists.ozlabs.org
> > > Cc: Leo Li <leoyang.li@nxp.com>; Claudiu Manoil <claudiu.manoil@nxp.com>;
> > > Paul Gortmaker <paul.gortmaker@windriver.com>; Scott Wood
> > > <oss@buserror.net>; Michael Ellerman <mpe@ellerman.id.au>; Benjamin
> > > Herrenschmidt <benh@kernel.crashing.org>; Paul Mackerras
> > > <paulus@samba.org>
> > > Subject: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
> > >
> > > [This RFC is proposed for v6.4 and hence is based off linux-next.]
> > >
> > > This series removes support for four e300 (MPC83xx) Freescale processor
> > > family evaluation boards that were added to the kernel in the 2006 era.
> >
> > Hi Paul,
> >
> > I talked with our marketing team on this.  Although we do not recommend any new design with these SoCs, they are still being shipped in large amount to customers now.  Plus it is possible for the bigger amount of existing devices to be updating their software that includes a new kernel.  So we should definitely keep all the common SoC code that might be needed to support their own design.
>
> Thanks for confirming with your marketing team that they "do not
> recommend any new design with these SoCs" -- it also confirms the
> information I read on the web pages for the platforms.
>
> As those of us immersed in this world all know from the 101 basics of
> Product Life Cycle lessons, it doesn't matter if it is a phone or a
> set-top-box/PVR or whatever else kind of non-PC consumer device --
> kernel uprevs never happen in that product space.

One thing is that the QorIQ platforms are not for the consumer
devices.  They are mostly used in networking or communication
equipment.  I think their product life cycle would be more like the
server or data center scenario.

Regards,
Leo
>
> So with the best interests of the mainline kernel in mind, I think we
> are good to proceed with this for summer 2023.  And of course as I've
> said many times before - the kernel is in git, so really you can't
> delete anything anyway - it remains in history forever.
>
> Thanks,
> Paul.
> --
>
> >
> > >
> > > These boards were all of a very similar form factor, a largish PCI or PCI-X card
> > > that could also be used standalone with an external power brick, and all
> > > shared the Modular Development System (MDS) designation.
> > >
> > > These platforms were made in limited quantity and were generally designed
> > > to get early silicon into the hands of OEMs who would later develop their
> > > own boards/platforms.  As such, availability was limited to those who would
> > > be working on boards and/or BSP support.
> > >
> > > Many early revision MDS platforms used a mechanical clamping system to
> > > hold the BGA CPU in place to facilitate CPU updates -- something not
> > > normally possible for a soldered down BGA in a COTS system.
> > >
> > > The point of these details is to give context that reflects that these four
> > > boards were made in limited quantities, were not in a form factor that is
> > > really "hobbyist" friendly and hence make sense for removal 17 years later.
> >
> > We would agree with you that the MDS platforms are only used by a limited number of customers for evaluation purpose, so it should be fine to be removed.  So for this series:
> >
> > Acked-by: Li Yang <leoyang.li@nxp.com>
> >
> > >
> > > Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> > > MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> > >
> > > There will still exist several e300 Freescale Reference Design System (RDS)
> > > boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> > > were more of a COTS "ready to deploy" design more suited to hobbyists, it
> > > probably makes sense to consider removing these as well, based on age.
> >
> > These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.
> >
> > >
> > > But before we get to that, lets see how this goes -- and then we should look
> > > at similar early e500 evaluation platforms [MPC8540-ADS, etc] next, as the
> > > oldest there date back to 2002[7] -- before considering RDB/mITX.
> > >
> > > I intentionally didn't put any links in the commits, since as we all know, they
> > > tend not to be stable long term, so keep them here in the merge data.
> > > Credit to NXP for keeping around these old legacy docs this long!
> > >
> > > Paul.
> > >
> > > --
> > >
> > > [1]
> > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > > .nxp.com%2Fdesign%2Fqoriq-developer-resources%2Fmpc8349e-modular-
> > > development-
> > > system%3AMPC8349EMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> > > 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> > > 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> > > 0%7C%7C%7C&sdata=Q4COgwpjsE4mHXvl9HdGo3otPCYML3z%2FR6IoCEYRE
> > > wg%3D&reserved=0
> > > [2]
> > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > > .nxp.com%2Fdocs%2Fen%2Fuser-
> > > guide%2FMPC8360EMDSUM.pdf&data=05%7C01%7Cleoyang.li%40nxp.com
> > > %7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c30
> > > 1635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8ey
> > > JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > > 7C3000%7C%7C%7C&sdata=JyLT0MfGAHQ8a%2FNgpLdVFtyACkwPR%2FOkB
> > > yN1aW0wySs%3D&reserved=0
> > > [3]
> > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > > .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> > > mcus%2Fpowerquicc-processors%2Fpowerquicc-iii-mpc85xx%2Fmpc837xe-
> > > modular-development-
> > > system%3AMPC837XEMDS&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2
> > > 820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> > > 7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300
> > > 0%7C%7C%7C&sdata=052dpEEcGmbuhRLnMDCNoOkTeguF%2BPA0oJGNvV1
> > > jSjI%3D&reserved=0
> > > [4]
> > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > > .nxp.com%2Fproducts%2Fprocessors-and-microcontrollers%2Flegacy-mpu-
> > > mcus%2Fpowerquicc-processors%2Fpowerquicc-ii-pro-mpc83xx%2Flow-
> > > power-powerquicc-ii-pro-processor-with-ddr2-tdm-pci-security-usb-quicc-
> > > engine-with-
> > > utopia%3AMPC8323E&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1
> > > e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%
> > > 7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4
> > > wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7
> > > C%7C%7C&sdata=mZQh%2FogNgNUb0wNJV972kYIDvn61gx0TWNd1u1d7PZ
> > > Q%3D&reserved=0
> > > [5]
> > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > > .nxp.com%2Fdocs%2Fen%2Ffact-
> > > sheet%2FMPC8379ERDBFS.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%7
> > > Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c3016
> > > 35%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> > > WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > > 7C3000%7C%7C%7C&sdata=EJmP6Regr7zpvYvHUmX64h3LZSaBT3Mb1h%2BN
> > > KQT%2FUls%3D&reserved=0
> > > [6]
> > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > > .digikey.ca%2Fen%2Fproducts%2Fdetail%2Fnxp-usa-inc%2FMPC8349E-MITX-
> > > GP%2F1204733&data=05%7C01%7Cleoyang.li%40nxp.com%7Ca2820c1e44264
> > > 0c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C1%7
> > > C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAw
> > > MDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%
> > > 7C&sdata=hw6IQDUaXH6huQFCnCkFIbNfj1xMrq%2FanDMUU%2FXZYQg%3
> > > D&reserved=0
> > > [7]
> > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
> > > .nxp.com%2Fdocs%2Fen%2Freference-
> > > manual%2FMPC8560ADSUG.pdf&data=05%7C01%7Cleoyang.li%40nxp.com%
> > > 7Ca2820c1e442640c5a39108db1339fd9f%7C686ea1d3bc2b4c6fa92cd99c5c301
> > > 635%7C0%7C1%7C638124912025220501%7CUnknown%7CTWFpbGZsb3d8eyJ
> > > WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > > 7C3000%7C%7C%7C&sdata=Ed%2BZR07y9Sp8xx5H47SAXzk9ET73creygxk%2B
> > > emmbfuA%3D&reserved=0
> > >
> > > Cc: Scott Wood <oss@buserror.net>
> > > Cc: Michael Ellerman <mpe@ellerman.id.au>
> > > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> > > Cc: Paul Mackerras <paulus@samba.org>
> > > Cc: Li Yang <leoyang.li@nxp.com>
> > > Cc: Claudiu Manoil <claudiu.manoil@nxp.com>
> > >
> > > ---
> > >
> > > Paul Gortmaker (4):
> > >   powerpc: drop MPC834x_MDS platform support
> > >   powerpc: drop MPC836x_MDS platform support
> > >   powerpc: drop MPC837x_MDS platform support
> > >   powerpc: drop MPC832x_MDS platform support
> > >
> > >  arch/powerpc/boot/Makefile                    |   1 -
> > >  arch/powerpc/boot/dts/mpc832x_mds.dts         | 436 ---------------
> > >  arch/powerpc/boot/dts/mpc834x_mds.dts         | 403 --------------
> > >  arch/powerpc/boot/dts/mpc836x_mds.dts         | 481 -----------------
> > >  arch/powerpc/boot/dts/mpc8377_mds.dts         | 505 ------------------
> > >  arch/powerpc/boot/dts/mpc8378_mds.dts         | 489 -----------------
> > >  arch/powerpc/boot/dts/mpc8379_mds.dts         | 455 ----------------
> > >  .../configs/83xx/mpc832x_mds_defconfig        |  59 --
> > >  .../configs/83xx/mpc834x_mds_defconfig        |  58 --
> > >  .../configs/83xx/mpc836x_mds_defconfig        |  64 ---
> > >  .../configs/83xx/mpc837x_mds_defconfig        |  58 --
> > >  arch/powerpc/configs/mpc83xx_defconfig        |   4 -
> > >  arch/powerpc/configs/ppc6xx_defconfig         |   4 -
> > >  arch/powerpc/platforms/83xx/Kconfig           |  32 --
> > >  arch/powerpc/platforms/83xx/Makefile          |   4 -
> > >  arch/powerpc/platforms/83xx/mpc832x_mds.c     | 110 ----
> > >  arch/powerpc/platforms/83xx/mpc834x_mds.c     | 101 ----
> > >  arch/powerpc/platforms/83xx/mpc836x_mds.c     | 210 --------
> > >  arch/powerpc/platforms/83xx/mpc837x_mds.c     | 103 ----
> > >  19 files changed, 3577 deletions(-)
> > >  delete mode 100644 arch/powerpc/boot/dts/mpc832x_mds.dts
> > >  delete mode 100644 arch/powerpc/boot/dts/mpc834x_mds.dts
> > >  delete mode 100644 arch/powerpc/boot/dts/mpc836x_mds.dts
> > >  delete mode 100644 arch/powerpc/boot/dts/mpc8377_mds.dts
> > >  delete mode 100644 arch/powerpc/boot/dts/mpc8378_mds.dts
> > >  delete mode 100644 arch/powerpc/boot/dts/mpc8379_mds.dts
> > >  delete mode 100644 arch/powerpc/configs/83xx/mpc832x_mds_defconfig
> > >  delete mode 100644 arch/powerpc/configs/83xx/mpc834x_mds_defconfig
> > >  delete mode 100644 arch/powerpc/configs/83xx/mpc836x_mds_defconfig
> > >  delete mode 100644 arch/powerpc/configs/83xx/mpc837x_mds_defconfig
> > >  delete mode 100644 arch/powerpc/platforms/83xx/mpc832x_mds.c
> > >  delete mode 100644 arch/powerpc/platforms/83xx/mpc834x_mds.c
> > >  delete mode 100644 arch/powerpc/platforms/83xx/mpc836x_mds.c
> > >  delete mode 100644 arch/powerpc/platforms/83xx/mpc837x_mds.c
> > >
> > > --
> > > 2.17.1
> >

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-27 20:48     ` Li Yang
@ 2023-02-28 10:03       ` Joakim Tjernlund
  2023-02-28 17:51         ` Arnd Bergmann
  0 siblings, 1 reply; 26+ messages in thread
From: Joakim Tjernlund @ 2023-02-28 10:03 UTC (permalink / raw)
  To: leoyang.li, paul.gortmaker; +Cc: oss, paulus, claudiu.manoil, linuxppc-dev

On Mon, 2023-02-27 at 14:48 -0600, Li Yang wrote:
> On Sat, Feb 25, 2023 at 10:52 AM Paul Gortmaker
> <paul.gortmaker@windriver.com> wrote:
> > 
> > [RE: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms] On 24/02/2023 (Fri 21:16) Leo Li wrote:
> > 
> > > 
> > > 
> > > > -----Original Message-----
> > > > From: Paul Gortmaker <paul.gortmaker@windriver.com>
> > > > Sent: Monday, February 20, 2023 5:59 AM
> > > > To: linuxppc-dev@lists.ozlabs.org
> > > > Cc: Leo Li <leoyang.li@nxp.com>; Claudiu Manoil <claudiu.manoil@nxp.com>;
> > > > Paul Gortmaker <paul.gortmaker@windriver.com>; Scott Wood
> > > > <oss@buserror.net>; Michael Ellerman <mpe@ellerman.id.au>; Benjamin
> > > > Herrenschmidt <benh@kernel.crashing.org>; Paul Mackerras
> > > > <paulus@samba.org>
> > > > Subject: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
> > > > 
> > > > [This RFC is proposed for v6.4 and hence is based off linux-next.]
> > > > 
> > > > This series removes support for four e300 (MPC83xx) Freescale processor
> > > > family evaluation boards that were added to the kernel in the 2006 era.
> > > 
> > > Hi Paul,
> > > 
> > > I talked with our marketing team on this.  Although we do not recommend any new design with these SoCs, they are still being shipped in large amount to customers now.  Plus it is possible for the bigger amount of existing devices to be updating their software that includes a new kernel.  So we should definitely keep all the common SoC code that might be needed to support their own design.
> > 
> > Thanks for confirming with your marketing team that they "do not
> > recommend any new design with these SoCs" -- it also confirms the
> > information I read on the web pages for the platforms.
> > 
> > As those of us immersed in this world all know from the 101 basics of
> > Product Life Cycle lessons, it doesn't matter if it is a phone or a
> > set-top-box/PVR or whatever else kind of non-PC consumer device --
> > kernel uprevs never happen in that product space.
> 
> One thing is that the QorIQ platforms are not for the consumer
> devices.  They are mostly used in networking or communication
> equipment.  I think their product life cycle would be more like the
> server or data center scenario.
> 
> Regards,
> Leo
> > 
> > So with the best interests of the mainline kernel in mind, I think we
> > are good to proceed with this for summer 2023.  And of course as I've
> > said many times before - the kernel is in git, so really you can't
> > delete anything anyway - it remains in history forever.
> > 
> > Thanks,
> > Paul.
> > --
> > 
> > > 
> > > > 
> > > > These boards were all of a very similar form factor, a largish PCI or PCI-X card
> > > > that could also be used standalone with an external power brick, and all
> > > > shared the Modular Development System (MDS) designation.
> > > > 
> > > > These platforms were made in limited quantity and were generally designed
> > > > to get early silicon into the hands of OEMs who would later develop their
> > > > own boards/platforms.  As such, availability was limited to those who would
> > > > be working on boards and/or BSP support.
> > > > 
> > > > Many early revision MDS platforms used a mechanical clamping system to
> > > > hold the BGA CPU in place to facilitate CPU updates -- something not
> > > > normally possible for a soldered down BGA in a COTS system.
> > > > 
> > > > The point of these details is to give context that reflects that these four
> > > > boards were made in limited quantities, were not in a form factor that is
> > > > really "hobbyist" friendly and hence make sense for removal 17 years later.
> > > 
> > > We would agree with you that the MDS platforms are only used by a limited number of customers for evaluation purpose, so it should be fine to be removed.  So for this series:
> > > 
> > > Acked-by: Li Yang <leoyang.li@nxp.com>
> > > 
> > > > 
> > > > Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> > > > MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> > > > 
> > > > There will still exist several e300 Freescale Reference Design System (RDS)
> > > > boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> > > > were more of a COTS "ready to deploy" design more suited to hobbyists, it
> > > > probably makes sense to consider removing these as well, based on age.
> > > 
> > > These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.

Agreed, the RDS design is still used here.

> > 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-28 10:03       ` Joakim Tjernlund
@ 2023-02-28 17:51         ` Arnd Bergmann
  2023-02-28 18:20           ` Li Yang
  2023-03-01 14:23           ` Christophe Leroy
  0 siblings, 2 replies; 26+ messages in thread
From: Arnd Bergmann @ 2023-02-28 17:51 UTC (permalink / raw)
  To: Joakim Tjernlund, Leo Li, Paul Gortmaker
  Cc: Scott Wood, linuxppc-dev, Claudiu Manoil, Paul Mackerras

On Tue, Feb 28, 2023, at 11:03, Joakim Tjernlund wrote:
> On Mon, 2023-02-27 at 14:48 -0600, Li Yang wrote:
>> > > > 
>> > > > Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
>> > > > MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
>> > > > 
>> > > > There will still exist several e300 Freescale Reference Design System (RDS)
>> > > > boards[5] and mini-ITX boards[6] with support in the kernel.  While these
>> > > > were more of a COTS "ready to deploy" design more suited to hobbyists, it
>> > > > probably makes sense to consider removing these as well, based on age.
>> > > 
>> > > These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.
>
> Agreed, the RDS design is still used here.

Can you elaborate what the typical kernel upgrade schedule for
these boards?

Note that for the debate about dropping the machines from future
kernels, it does not really matter how many remaining users there
are or how many boards get sold. The only question is whether
someone is still planning to provide upgrades to kernels later
than linux-6.3 in the future.

It sounds like there are commercial requirements for validating
and distributing kernel upgrades (in addition to hobbyist uses), so
I would expect that whoever is paying for the upgrades has a clear
plan for how much longer they are going to do that, or at least
a some idea of how many of the previous LTS kernels (5.10, 5.15,
6.1) ended up actually getting shipped to users.

It may be worth pointing out that the official webpage for
the MPC8313ERDB board in the example only lists a hilariously
outdated BSP kernel based on a patched linux-2.6.23 release,
so maybe the marketing team can change that to point to the
latest validated LTS kernel instead.

     Arnd

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-28 17:51         ` Arnd Bergmann
@ 2023-02-28 18:20           ` Li Yang
  2023-03-01 14:23           ` Christophe Leroy
  1 sibling, 0 replies; 26+ messages in thread
From: Li Yang @ 2023-02-28 18:20 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Paul Gortmaker, Scott Wood, Claudiu Manoil, Paul Mackerras, linuxppc-dev

On Tue, Feb 28, 2023 at 11:52 AM Arnd Bergmann <arnd@arndb.de> wrote:
>
> On Tue, Feb 28, 2023, at 11:03, Joakim Tjernlund wrote:
> > On Mon, 2023-02-27 at 14:48 -0600, Li Yang wrote:
> >> > > >
> >> > > > Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> >> > > > MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> >> > > >
> >> > > > There will still exist several e300 Freescale Reference Design System (RDS)
> >> > > > boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> >> > > > were more of a COTS "ready to deploy" design more suited to hobbyists, it
> >> > > > probably makes sense to consider removing these as well, based on age.
> >> > >
> >> > > These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.
> >
> > Agreed, the RDS design is still used here.
>
> Can you elaborate what the typical kernel upgrade schedule for
> these boards?
>
> Note that for the debate about dropping the machines from future
> kernels, it does not really matter how many remaining users there
> are or how many boards get sold. The only question is whether
> someone is still planning to provide upgrades to kernels later
> than linux-6.3 in the future.
>
> It sounds like there are commercial requirements for validating
> and distributing kernel upgrades (in addition to hobbyist uses), so
> I would expect that whoever is paying for the upgrades has a clear
> plan for how much longer they are going to do that, or at least
> a some idea of how many of the previous LTS kernels (5.10, 5.15,
> 6.1) ended up actually getting shipped to users.
>
> It may be worth pointing out that the official webpage for
> the MPC8313ERDB board in the example only lists a hilariously
> outdated BSP kernel based on a patched linux-2.6.23 release,
> so maybe the marketing team can change that to point to the
> latest validated LTS kernel instead.

The BSP/SDK releases from NXP do follow a different development
principle from working with upstream directly.  However, we do value
the customers who prefer to work closer with the upstream community
than relying on our BSPs/SDKs deliveries and that's why we pushed our
development team internally to upstream code as much as possible.  And
we will try to help keep them well maintained in the community.

Regards,
Leo

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-28 17:51         ` Arnd Bergmann
  2023-02-28 18:20           ` Li Yang
@ 2023-03-01 14:23           ` Christophe Leroy
  2023-03-01 14:45             ` Arnd Bergmann
  2023-03-03  1:04             ` Paul Gortmaker
  1 sibling, 2 replies; 26+ messages in thread
From: Christophe Leroy @ 2023-03-01 14:23 UTC (permalink / raw)
  To: Arnd Bergmann, Joakim Tjernlund, Leo Li, Paul Gortmaker
  Cc: Scott Wood, Paul Mackerras, Claudiu Manoil, linuxppc-dev



Le 28/02/2023 à 18:51, Arnd Bergmann a écrit :
> On Tue, Feb 28, 2023, at 11:03, Joakim Tjernlund wrote:
>> On Mon, 2023-02-27 at 14:48 -0600, Li Yang wrote:
>>>>>>
>>>>>> Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
>>>>>> MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
>>>>>>
>>>>>> There will still exist several e300 Freescale Reference Design System (RDS)
>>>>>> boards[5] and mini-ITX boards[6] with support in the kernel.  While these
>>>>>> were more of a COTS "ready to deploy" design more suited to hobbyists, it
>>>>>> probably makes sense to consider removing these as well, based on age.
>>>>>
>>>>> These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.
>>
>> Agreed, the RDS design is still used here.
> 
> Can you elaborate what the typical kernel upgrade schedule for
> these boards?
> 
> Note that for the debate about dropping the machines from future
> kernels, it does not really matter how many remaining users there
> are or how many boards get sold. The only question is whether
> someone is still planning to provide upgrades to kernels later
> than linux-6.3 in the future.
> 
> It sounds like there are commercial requirements for validating
> and distributing kernel upgrades (in addition to hobbyist uses), so
> I would expect that whoever is paying for the upgrades has a clear
> plan for how much longer they are going to do that, or at least
> a some idea of how many of the previous LTS kernels (5.10, 5.15,
> 6.1) ended up actually getting shipped to users.
> 
> It may be worth pointing out that the official webpage for
> the MPC8313ERDB board in the example only lists a hilariously
> outdated BSP kernel based on a patched linux-2.6.23 release,
> so maybe the marketing team can change that to point to the
> latest validated LTS kernel instead.

Let me present things in a slightly different way.

My company has designed and manufactured and sold communication systems 
embedding three types of boards:
- First generation, with MPC 866, designed around 2002.
- Second generation, with MPC 885, designed around 2010.
- Third generation, with MPC 8321, designed around 2014.

When NXP announced end of life of MPC 866 and 885, we bought enough CPUs 
to be able to produce boards for the 10 following years so we still 
produce some.

MPC 8321 is still in production.

All those boards are used in critical systems where we have a customer 
requirement to keep all software including U-boot and Linux kernel up to 
date, for IT security reason mainly.

Until now, the boards were delivered with kernel 4.14, with is due to 
EOL early next year.
At the moment we are working on upgrading to mainline kernel with the 
target being to be able to upgrade our customers to next LTS kernel at 
the begining of 2024.

Note that because our kernel code is prehistoric, it is not mergeable to 
mainline. Not because of licence issues but because the code is just not 
following at all linux standard. So our boards are not in mainline. Two 
of them are in U-boot and the third one should soon be as well.

So, to come back about the RDB boards, we have a couple of MPC 885 ADS 
and a couple of MPC 8321 RDB. They are reference boards and we always 
check that a given kernel version properly runs on them before starting 
to port it to our hardware.

Hope it clarifies how those reference boards are used.

Christophe

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-01 14:23           ` Christophe Leroy
@ 2023-03-01 14:45             ` Arnd Bergmann
  2023-03-03  1:04             ` Paul Gortmaker
  1 sibling, 0 replies; 26+ messages in thread
From: Arnd Bergmann @ 2023-03-01 14:45 UTC (permalink / raw)
  To: Christophe Leroy, Joakim Tjernlund, Leo Li, Paul Gortmaker
  Cc: Scott Wood, Paul Mackerras, Claudiu Manoil, linuxppc-dev

On Wed, Mar 1, 2023, at 15:23, Christophe Leroy wrote:

> So, to come back about the RDB boards, we have a couple of MPC 885 ADS 
> and a couple of MPC 8321 RDB. They are reference boards and we always 
> check that a given kernel version properly runs on them before starting 
> to port it to our hardware.
>
> Hope it clarifies how those reference boards are used.

Indeed it does, thanks a lot for the clarification!

     Arnd

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-01 14:23           ` Christophe Leroy
  2023-03-01 14:45             ` Arnd Bergmann
@ 2023-03-03  1:04             ` Paul Gortmaker
  2023-03-03  9:14               ` Arnd Bergmann
  1 sibling, 1 reply; 26+ messages in thread
From: Paul Gortmaker @ 2023-03-03  1:04 UTC (permalink / raw)
  To: Christophe Leroy
  Cc: Arnd Bergmann, Leo Li, Scott Wood, Claudiu Manoil,
	Paul Mackerras, linuxppc-dev

[Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms] On 01/03/2023 (Wed 14:23) Christophe Leroy wrote:

> 
> 
> Le 28/02/2023 ?? 18:51, Arnd Bergmann a ??crit??:
> > On Tue, Feb 28, 2023, at 11:03, Joakim Tjernlund wrote:
> >> On Mon, 2023-02-27 at 14:48 -0600, Li Yang wrote:
> >>>>>>
> >>>>>> Here, we remove the MPC8548E-MDS[1], the MPC8360E-MDS[2], the
> >>>>>> MPC837xE-MDS[3], and the MPC832x-MDS[4] board support from the kernel.
> >>>>>>
> >>>>>> There will still exist several e300 Freescale Reference Design System (RDS)
> >>>>>> boards[5] and mini-ITX boards[6] with support in the kernel.  While these
> >>>>>> were more of a COTS "ready to deploy" design more suited to hobbyists, it
> >>>>>> probably makes sense to consider removing these as well, based on age.
> >>>>>
> >>>>> These boards are mass market boards that sold in larger amount and are much more likely to still be used.  We would suggest we keep them for now.
> >>
> >> Agreed, the RDS design is still used here.
> > 
> > Can you elaborate what the typical kernel upgrade schedule for
> > these boards?
> > 
> > Note that for the debate about dropping the machines from future
> > kernels, it does not really matter how many remaining users there
> > are or how many boards get sold. The only question is whether
> > someone is still planning to provide upgrades to kernels later
> > than linux-6.3 in the future.
> > 
> > It sounds like there are commercial requirements for validating
> > and distributing kernel upgrades (in addition to hobbyist uses), so
> > I would expect that whoever is paying for the upgrades has a clear
> > plan for how much longer they are going to do that, or at least
> > a some idea of how many of the previous LTS kernels (5.10, 5.15,
> > 6.1) ended up actually getting shipped to users.
> > 
> > It may be worth pointing out that the official webpage for
> > the MPC8313ERDB board in the example only lists a hilariously
> > outdated BSP kernel based on a patched linux-2.6.23 release,
> > so maybe the marketing team can change that to point to the
> > latest validated LTS kernel instead.
> 
> Let me present things in a slightly different way.
> 
> My company has designed and manufactured and sold communication systems 
> embedding three types of boards:
> - First generation, with MPC 866, designed around 2002.
> - Second generation, with MPC 885, designed around 2010.
> - Third generation, with MPC 8321, designed around 2014.
> 
> When NXP announced end of life of MPC 866 and 885, we bought enough CPUs 
> to be able to produce boards for the 10 following years so we still 
> produce some.
> 
> MPC 8321 is still in production.
> 
> All those boards are used in critical systems where we have a customer 
> requirement to keep all software including U-boot and Linux kernel up to 
> date, for IT security reason mainly.

Firstly, thank you for the detailed reply - I totally appreciate how
framing things with this detail was not without effort on your part.

And your reasons for updating u-boot and the kernel are also valid.

> Until now, the boards were delivered with kernel 4.14, with is due to 
> EOL early next year.
> At the moment we are working on upgrading to mainline kernel with the 
> target being to be able to upgrade our customers to next LTS kernel at 
> the begining of 2024.
> 
> Note that because our kernel code is prehistoric, it is not mergeable to 
> mainline. Not because of licence issues but because the code is just not 
> following at all linux standard. So our boards are not in mainline. Two 
> of them are in U-boot and the third one should soon be as well.
> 
> So, to come back about the RDB boards, we have a couple of MPC 885 ADS 
> and a couple of MPC 8321 RDB. They are reference boards and we always 
> check that a given kernel version properly runs on them before starting 
> to port it to our hardware.

Just as a reminder - I only mentioned RDB "for consideration".  None of
the RDB platforms were removed in this series.  I don't want people to
inadvertently conflate the two.

> Hope it clarifies how those reference boards are used.

It was really useful input and gave an insight into how things get used.

But let me put a slightly different slant on things.  If there is no
maintainer for the platform/architecture/CPU, then where is the
obligation for mainline to keep it up to date just for your company to
use the code/BSP as a reference?

Do they continue to do this for one more year, or three or ...  ???
Does someone list themselves in MAINTAINERS for arch/powerpc/83xx ?

Let us put that aside for now.  I've worked with linux-next for decade+
and have a pretty good idea how all that "upstream stuff" works.

If you have custom out-of-tree BSP and are interested in how upstream
changes impact it, you should have nightly builds pulling down
linux-next and applying your changes and finding when things break.

If you see change 0123abcdef breaks boot on your platform, you have a
legit voice to gripe about it right then and there.  Don't wait!!!

If you instead try and jump from v4.14 to v6.1 in one step, and then 
expect people to bisect on your behalf -- well good luck.

The same applies to RDB boards - doesn't matter if they are in tree or
support is applied manually.  If they are of interest to you, then track
and test regularly.  It will save you a whole lot of bisect effort.

Hope this helps,
Paul.
--

> 
> Christophe

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-03  1:04             ` Paul Gortmaker
@ 2023-03-03  9:14               ` Arnd Bergmann
  2023-03-03 19:41                 ` Crystal Wood
  2023-03-09 10:41                 ` Michael Ellerman
  0 siblings, 2 replies; 26+ messages in thread
From: Arnd Bergmann @ 2023-03-03  9:14 UTC (permalink / raw)
  To: Paul Gortmaker, Christophe Leroy
  Cc: Scott Wood, linuxppc-dev, Claudiu Manoil, Paul Mackerras, Leo Li

On Fri, Mar 3, 2023, at 02:04, Paul Gortmaker wrote:
> 01/03/2023 (Wed 14:23) Christophe Leroy wrote:
>> Le 28/02/2023 ?? 18:51, Arnd Bergmann a ??crit??:
>> Hope it clarifies how those reference boards are used.
>
> It was really useful input and gave an insight into how things get used.
>
> But let me put a slightly different slant on things.  If there is no
> maintainer for the platform/architecture/CPU, then where is the
> obligation for mainline to keep it up to date just for your company to
> use the code/BSP as a reference?
>
> Do they continue to do this for one more year, or three or ...  ???
> Does someone list themselves in MAINTAINERS for arch/powerpc/83xx ?
...
>
> If you see change 0123abcdef breaks boot on your platform, you have a
> legit voice to gripe about it right then and there.  Don't wait!!!

I think the answer here is that Christophe is already the only person
that does this, so he is the de-facto maintainer for ppc32 regardless
of whether he wants himself listed in the file or not:

$ git log --no-merges --format="%an" v5.0.. arch/powerpc/platforms/[458e]* | sort | uniq -c | sort -rn | grep -vw 1
     61 Christophe Leroy
     12 Michael Ellerman
     11 Thomas Gleixner
     11 Oliver O'Halloran
     11 Liang He
      7 Uwe Kleine-König
      6 Nick Child
      4 Rasmus Villemoes
      4 Randy Dunlap
      4 Mike Rapoport
      4 Julia Lawall
      4 Andy Shevchenko
      3 Xiaoming Ni
      3 Nicholas Piggin
      3 Marc Zyngier
      3 Christophe JAILLET
      3 Christoph Hellwig
      2 Paul Gortmaker
      2 Mathieu Malaterre
      2 Markus Elfring
      2 Jordan Niethe
      2 Dmitry Torokhov
      2 Arnd Bergmann

Pretty much everyone else on the list above only did treewide
cleanups, dead code removal or compile-time fixes, while Christophe
is the one that fixed machine specific bugs and added new features.

    Arnd

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-03  9:14               ` Arnd Bergmann
@ 2023-03-03 19:41                 ` Crystal Wood
  2023-03-04  7:31                   ` Christophe Leroy
  2023-03-09 10:41                 ` Michael Ellerman
  1 sibling, 1 reply; 26+ messages in thread
From: Crystal Wood @ 2023-03-03 19:41 UTC (permalink / raw)
  To: Arnd Bergmann, Paul Gortmaker, Christophe Leroy
  Cc: linuxppc-dev, Claudiu Manoil, Paul Mackerras, Leo Li

On Fri, 2023-03-03 at 10:14 +0100, Arnd Bergmann wrote:
> On Fri, Mar 3, 2023, at 02:04, Paul Gortmaker wrote:
> > 01/03/2023 (Wed 14:23) Christophe Leroy wrote:
> > > Le 28/02/2023 ?? 18:51, Arnd Bergmann a ??crit??:
> > > Hope it clarifies how those reference boards are used.
> > 
> > It was really useful input and gave an insight into how things get used.
> > 
> > But let me put a slightly different slant on things.  If there is no
> > maintainer for the platform/architecture/CPU, then where is the
> > obligation for mainline to keep it up to date just for your company to
> > use the code/BSP as a reference?
> > 
> > Do they continue to do this for one more year, or three or ...  ???
> > Does someone list themselves in MAINTAINERS for arch/powerpc/83xx ?
> ...
> > 
> > If you see change 0123abcdef breaks boot on your platform, you have a
> > legit voice to gripe about it right then and there.  Don't wait!!!
> 
> I think the answer here is that Christophe is already the only person
> that does this, so he is the de-facto maintainer for ppc32 regardless
> of whether he wants himself listed in the file or not:
> 
> $ git log --no-merges --format="%an" v5.0.. arch/powerpc/platforms/[458e]* |
> sort | uniq -c | sort -rn | grep -vw 1
>      61 Christophe Leroy
>      12 Michael Ellerman
>      11 Thomas Gleixner
>      11 Oliver O'Halloran
>      11 Liang He
>       7 Uwe Kleine-König
>       6 Nick Child
>       4 Rasmus Villemoes
>       4 Randy Dunlap
>       4 Mike Rapoport
>       4 Julia Lawall
>       4 Andy Shevchenko
>       3 Xiaoming Ni
>       3 Nicholas Piggin
>       3 Marc Zyngier
>       3 Christophe JAILLET
>       3 Christoph Hellwig
>       2 Paul Gortmaker
>       2 Mathieu Malaterre
>       2 Markus Elfring
>       2 Jordan Niethe
>       2 Dmitry Torokhov
>       2 Arnd Bergmann
> 
> Pretty much everyone else on the list above only did treewide
> cleanups, dead code removal or compile-time fixes, while Christophe
> is the one that fixed machine specific bugs and added new features.

Speaking of that, I'd be fine with Christophe replacing me in the "LINUX FOR
POWERPC EMBEDDED PPC83XX AND PPC85XX" entry, given that he's been way more
involved than me lately.

-Crystal


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-03 19:41                 ` Crystal Wood
@ 2023-03-04  7:31                   ` Christophe Leroy
  2023-03-04  9:37                     ` Pali Rohár
  0 siblings, 1 reply; 26+ messages in thread
From: Christophe Leroy @ 2023-03-04  7:31 UTC (permalink / raw)
  To: Crystal Wood, Arnd Bergmann, Paul Gortmaker, Pali Rohár
  Cc: linuxppc-dev, Claudiu Manoil, Paul Mackerras, Leo Li



Le 03/03/2023 à 20:41, Crystal Wood a écrit :
> On Fri, 2023-03-03 at 10:14 +0100, Arnd Bergmann wrote:
>> On Fri, Mar 3, 2023, at 02:04, Paul Gortmaker wrote:
>>> 01/03/2023 (Wed 14:23) Christophe Leroy wrote:
>>>> Le 28/02/2023 ?? 18:51, Arnd Bergmann a ??crit??:
>>>> Hope it clarifies how those reference boards are used.
>>>
>>> It was really useful input and gave an insight into how things get used.
>>>
>>> But let me put a slightly different slant on things.  If there is no
>>> maintainer for the platform/architecture/CPU, then where is the
>>> obligation for mainline to keep it up to date just for your company to
>>> use the code/BSP as a reference?
>>>
>>> Do they continue to do this for one more year, or three or ...  ???
>>> Does someone list themselves in MAINTAINERS for arch/powerpc/83xx ?
>> ...
>>>
>>> If you see change 0123abcdef breaks boot on your platform, you have a
>>> legit voice to gripe about it right then and there.  Don't wait!!!
>>
>> I think the answer here is that Christophe is already the only person
>> that does this, so he is the de-facto maintainer for ppc32 regardless
>> of whether he wants himself listed in the file or not:
>>
>> $ git log --no-merges --format="%an" v5.0.. arch/powerpc/platforms/[458e]* |
>> sort | uniq -c | sort -rn | grep -vw 1
>>       61 Christophe Leroy
>>       12 Michael Ellerman
>>       11 Thomas Gleixner
>>       11 Oliver O'Halloran
>>       11 Liang He
>>        7 Uwe Kleine-König
>>        6 Nick Child
>>        4 Rasmus Villemoes
>>        4 Randy Dunlap
>>        4 Mike Rapoport
>>        4 Julia Lawall
>>        4 Andy Shevchenko
>>        3 Xiaoming Ni
>>        3 Nicholas Piggin
>>        3 Marc Zyngier
>>        3 Christophe JAILLET
>>        3 Christoph Hellwig
>>        2 Paul Gortmaker
>>        2 Mathieu Malaterre
>>        2 Markus Elfring
>>        2 Jordan Niethe
>>        2 Dmitry Torokhov
>>        2 Arnd Bergmann
>>
>> Pretty much everyone else on the list above only did treewide
>> cleanups, dead code removal or compile-time fixes, while Christophe
>> is the one that fixed machine specific bugs and added new features.
> 
> Speaking of that, I'd be fine with Christophe replacing me in the "LINUX FOR
> POWERPC EMBEDDED PPC83XX AND PPC85XX" entry, given that he's been way more
> involved than me lately.

MPC83XX yes I can, I have MPC8321E Hardware, but PPC85XX I'm not sure. I 
don't know much more than what I can experiment with QEMU.

Maybe Pali for MPC85XX ?

Christophe

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-04  7:31                   ` Christophe Leroy
@ 2023-03-04  9:37                     ` Pali Rohár
  2023-03-04 18:35                       ` Martin Kennedy
  0 siblings, 1 reply; 26+ messages in thread
From: Pali Rohár @ 2023-03-04  9:37 UTC (permalink / raw)
  To: Christophe Leroy
  Cc: Arnd Bergmann, Leo Li, Crystal Wood, Paul Gortmaker,
	Claudiu Manoil, Paul Mackerras, Martin Kennedy, linuxppc-dev

On Saturday 04 March 2023 07:31:49 Christophe Leroy wrote:
> Le 03/03/2023 à 20:41, Crystal Wood a écrit :
> > On Fri, 2023-03-03 at 10:14 +0100, Arnd Bergmann wrote:
> >> On Fri, Mar 3, 2023, at 02:04, Paul Gortmaker wrote:
> >>> 01/03/2023 (Wed 14:23) Christophe Leroy wrote:
> >>>> Le 28/02/2023 ?? 18:51, Arnd Bergmann a ??crit??:
> >>>> Hope it clarifies how those reference boards are used.
> >>>
> >>> It was really useful input and gave an insight into how things get used.
> >>>
> >>> But let me put a slightly different slant on things.  If there is no
> >>> maintainer for the platform/architecture/CPU, then where is the
> >>> obligation for mainline to keep it up to date just for your company to
> >>> use the code/BSP as a reference?
> >>>
> >>> Do they continue to do this for one more year, or three or ...  ???
> >>> Does someone list themselves in MAINTAINERS for arch/powerpc/83xx ?
> >> ...
> >>>
> >>> If you see change 0123abcdef breaks boot on your platform, you have a
> >>> legit voice to gripe about it right then and there.  Don't wait!!!
> >>
> >> I think the answer here is that Christophe is already the only person
> >> that does this, so he is the de-facto maintainer for ppc32 regardless
> >> of whether he wants himself listed in the file or not:
> >>
> >> $ git log --no-merges --format="%an" v5.0.. arch/powerpc/platforms/[458e]* |
> >> sort | uniq -c | sort -rn | grep -vw 1
> >>       61 Christophe Leroy
> >>       12 Michael Ellerman
> >>       11 Thomas Gleixner
> >>       11 Oliver O'Halloran
> >>       11 Liang He
> >>        7 Uwe Kleine-König
> >>        6 Nick Child
> >>        4 Rasmus Villemoes
> >>        4 Randy Dunlap
> >>        4 Mike Rapoport
> >>        4 Julia Lawall
> >>        4 Andy Shevchenko
> >>        3 Xiaoming Ni
> >>        3 Nicholas Piggin
> >>        3 Marc Zyngier
> >>        3 Christophe JAILLET
> >>        3 Christoph Hellwig
> >>        2 Paul Gortmaker
> >>        2 Mathieu Malaterre
> >>        2 Markus Elfring
> >>        2 Jordan Niethe
> >>        2 Dmitry Torokhov
> >>        2 Arnd Bergmann
> >>
> >> Pretty much everyone else on the list above only did treewide
> >> cleanups, dead code removal or compile-time fixes, while Christophe
> >> is the one that fixed machine specific bugs and added new features.
> > 
> > Speaking of that, I'd be fine with Christophe replacing me in the "LINUX FOR
> > POWERPC EMBEDDED PPC83XX AND PPC85XX" entry, given that he's been way more
> > involved than me lately.
> 
> MPC83XX yes I can, I have MPC8321E Hardware, but PPC85XX I'm not sure. I 
> don't know much more than what I can experiment with QEMU.
> 
> Maybe Pali for MPC85XX ?
> 
> Christophe

I have P2020 SMP HW (mpc85xx platform) which I use on daily usage. So yes, I can help.

Martin Kennedy has other P1/P2 mpc85xx hardware and is working on Linux
support for it. So maybe can be interested in this discussion. I'm CCing.

I do not have mpc83xx HW.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-04  9:37                     ` Pali Rohár
@ 2023-03-04 18:35                       ` Martin Kennedy
  0 siblings, 0 replies; 26+ messages in thread
From: Martin Kennedy @ 2023-03-04 18:35 UTC (permalink / raw)
  To: Pali Rohár
  Cc: Arnd Bergmann, Leo Li, Crystal Wood, Paul Gortmaker,
	Claudiu Manoil, Paul Mackerras, linuxppc-dev

On Sat, Mar 4, 2023 at 4:37 AM Pali Rohár <pali@kernel.org> wrote:
>
> On Saturday 04 March 2023 07:31:49 Christophe Leroy wrote:
> > Le 03/03/2023 à 20:41, Crystal Wood a écrit :
> > > On Fri, 2023-03-03 at 10:14 +0100, Arnd Bergmann wrote:
> > >> On Fri, Mar 3, 2023, at 02:04, Paul Gortmaker wrote:
> > >>> 01/03/2023 (Wed 14:23) Christophe Leroy wrote:
> > >>>> Le 28/02/2023 ?? 18:51, Arnd Bergmann a ??crit??:
> > >>>> Hope it clarifies how those reference boards are used.
> > >>>
> > >>> It was really useful input and gave an insight into how things get used.
> > >>>
> > >>> But let me put a slightly different slant on things.  If there is no
> > >>> maintainer for the platform/architecture/CPU, then where is the
> > >>> obligation for mainline to keep it up to date just for your company to
> > >>> use the code/BSP as a reference?
> > >>>
> > >>> Do they continue to do this for one more year, or three or ...  ???
> > >>> Does someone list themselves in MAINTAINERS for arch/powerpc/83xx ?
> > >> ...
> > >>>
> > >>> If you see change 0123abcdef breaks boot on your platform, you have a
> > >>> legit voice to gripe about it right then and there.  Don't wait!!!
> > >>
> > >> I think the answer here is that Christophe is already the only person
> > >> that does this, so he is the de-facto maintainer for ppc32 regardless
> > >> of whether he wants himself listed in the file or not:
> > >>
> > >> $ git log --no-merges --format="%an" v5.0.. arch/powerpc/platforms/[458e]* |
> > >> sort | uniq -c | sort -rn | grep -vw 1
> > >>       61 Christophe Leroy
> > >>       12 Michael Ellerman
> > >>       11 Thomas Gleixner
> > >>       11 Oliver O'Halloran
> > >>       11 Liang He
> > >>        7 Uwe Kleine-König
> > >>        6 Nick Child
> > >>        4 Rasmus Villemoes
> > >>        4 Randy Dunlap
> > >>        4 Mike Rapoport
> > >>        4 Julia Lawall
> > >>        4 Andy Shevchenko
> > >>        3 Xiaoming Ni
> > >>        3 Nicholas Piggin
> > >>        3 Marc Zyngier
> > >>        3 Christophe JAILLET
> > >>        3 Christoph Hellwig
> > >>        2 Paul Gortmaker
> > >>        2 Mathieu Malaterre
> > >>        2 Markus Elfring
> > >>        2 Jordan Niethe
> > >>        2 Dmitry Torokhov
> > >>        2 Arnd Bergmann
> > >>
> > >> Pretty much everyone else on the list above only did treewide
> > >> cleanups, dead code removal or compile-time fixes, while Christophe
> > >> is the one that fixed machine specific bugs and added new features.
> > >
> > > Speaking of that, I'd be fine with Christophe replacing me in the "LINUX FOR
> > > POWERPC EMBEDDED PPC83XX AND PPC85XX" entry, given that he's been way more
> > > involved than me lately.
> >
> > MPC83XX yes I can, I have MPC8321E Hardware, but PPC85XX I'm not sure. I
> > don't know much more than what I can experiment with QEMU.
> >
> > Maybe Pali for MPC85XX ?
> >
> > Christophe
>
> I have P2020 SMP HW (mpc85xx platform) which I use on daily usage. So yes, I can help.
>
> Martin Kennedy has other P1/P2 mpc85xx hardware and is working on Linux
> support for it. So maybe can be interested in this discussion. I'm CCing.

I have mpc85xx hardware, mostly access points adapted from the
P1020WLAN board, but I am frankly a hobbyist. I do my work under
OpenWrt, and I have no relationship with the manufacturers of these
devices.

I only catch regressions on my boards when changes are backported to
the LTS kernel OpenWrt uses (so, presently, 5.15).

Martin

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-03-03  9:14               ` Arnd Bergmann
  2023-03-03 19:41                 ` Crystal Wood
@ 2023-03-09 10:41                 ` Michael Ellerman
  1 sibling, 0 replies; 26+ messages in thread
From: Michael Ellerman @ 2023-03-09 10:41 UTC (permalink / raw)
  To: Arnd Bergmann, Paul Gortmaker, Christophe Leroy
  Cc: Scott Wood, Paul Mackerras, Claudiu Manoil, linuxppc-dev, Leo Li

"Arnd Bergmann" <arnd@arndb.de> writes:
> On Fri, Mar 3, 2023, at 02:04, Paul Gortmaker wrote:
>> 01/03/2023 (Wed 14:23) Christophe Leroy wrote:
>>> Le 28/02/2023 ?? 18:51, Arnd Bergmann a ??crit??:
>>> Hope it clarifies how those reference boards are used.
>>
>> It was really useful input and gave an insight into how things get used.
>>
>> But let me put a slightly different slant on things.  If there is no
>> maintainer for the platform/architecture/CPU, then where is the
>> obligation for mainline to keep it up to date just for your company to
>> use the code/BSP as a reference?
>>
>> Do they continue to do this for one more year, or three or ...  ???
>> Does someone list themselves in MAINTAINERS for arch/powerpc/83xx ?
> ...
>>
>> If you see change 0123abcdef breaks boot on your platform, you have a
>> legit voice to gripe about it right then and there.  Don't wait!!!
>
> I think the answer here is that Christophe is already the only person
> that does this, so he is the de-facto maintainer for ppc32 regardless
> of whether he wants himself listed in the file or not:

Yes he is the de-facto 32-bit maintainer :)

He's listed as a reviewer on the converged 64-bit/32-bit maintainers
entry which is meant to reflect that:

LINUX FOR POWERPC (32-BIT AND 64-BIT)
M:	Michael Ellerman <mpe@ellerman.id.au>
R:	Nicholas Piggin <npiggin@gmail.com>
R:	Christophe Leroy <christophe.leroy@csgroup.eu>
L:	linuxppc-dev@lists.ozlabs.org

But we could add a separate 32-bit entry if people think that would make
things clearer.

Although I don't think we could run separate trees for 64-bit and
32-bit, there'd be too many conflicts, so in that way I think one entry
makes sense.

cheers

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms
  2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
                   ` (6 preceding siblings ...)
  2023-02-25  7:40 ` Christophe Leroy
@ 2023-04-26 12:10 ` Michael Ellerman
  7 siblings, 0 replies; 26+ messages in thread
From: Michael Ellerman @ 2023-04-26 12:10 UTC (permalink / raw)
  To: linuxppc-dev, Paul Gortmaker
  Cc: Scott Wood, Claudiu Manoil, Paul Mackerras, Li Yang

On Mon, 20 Feb 2023 06:59:09 -0500, Paul Gortmaker wrote:
> [This RFC is proposed for v6.4 and hence is based off linux-next.]
> 
> This series removes support for four e300 (MPC83xx) Freescale processor
> family evaluation boards that were added to the kernel in the 2006 era.
> 
> These boards were all of a very similar form factor, a largish PCI or PCI-X
> card that could also be used standalone with an external power brick, and
> all shared the Modular Development System (MDS) designation.
> 
> [...]

Applied to powerpc/next.

[1/4] powerpc: drop MPC834x_MDS platform support
      https://git.kernel.org/powerpc/c/da03101799579f6477feb47a3aefcdb2e2379da1
[2/4] powerpc: drop MPC836x_MDS platform support
      https://git.kernel.org/powerpc/c/7840b08aeccbd4d46261a6d5c27699d6939f712e
[3/4] powerpc: drop MPC837x_MDS platform support
      https://git.kernel.org/powerpc/c/aa572079633c293882d8fa3973bf6d8c27eb430f
[4/4] powerpc: drop MPC832x_MDS platform support
      https://git.kernel.org/powerpc/c/b8fa3af2dbcb0c84270d4d2ecf54a088f7c90701

cheers

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2023-04-26 12:18 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-20 11:59 [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Paul Gortmaker
2023-02-20 11:59 ` [PATCH 1/4] powerpc: drop MPC834x_MDS platform support Paul Gortmaker
2023-02-20 11:59 ` [PATCH 2/4] powerpc: drop MPC836x_MDS " Paul Gortmaker
2023-02-20 11:59 ` [PATCH 3/4] powerpc: drop MPC837x_MDS " Paul Gortmaker
2023-02-20 11:59 ` [PATCH 4/4] powerpc: drop MPC832x_MDS " Paul Gortmaker
2023-02-20 22:40 ` [RFC PATCH 0/4] Remove some e300/MPC83xx evaluation platforms Leo Li
2023-02-24 21:16 ` Leo Li
2023-02-25 16:50   ` Paul Gortmaker
2023-02-25 22:49     ` Arnd Bergmann
2023-02-27 20:42       ` Li Yang
2023-02-27 20:48     ` Li Yang
2023-02-28 10:03       ` Joakim Tjernlund
2023-02-28 17:51         ` Arnd Bergmann
2023-02-28 18:20           ` Li Yang
2023-03-01 14:23           ` Christophe Leroy
2023-03-01 14:45             ` Arnd Bergmann
2023-03-03  1:04             ` Paul Gortmaker
2023-03-03  9:14               ` Arnd Bergmann
2023-03-03 19:41                 ` Crystal Wood
2023-03-04  7:31                   ` Christophe Leroy
2023-03-04  9:37                     ` Pali Rohár
2023-03-04 18:35                       ` Martin Kennedy
2023-03-09 10:41                 ` Michael Ellerman
2023-02-25  7:40 ` Christophe Leroy
2023-02-25 16:20   ` Paul Gortmaker
2023-04-26 12:10 ` Michael Ellerman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).