Skip to contentSkip to conversation

ARM: imx: Remove imx21 support

PATCH Superseded Fabio Estevam 2 participants 6 messages Sep 2, 2020

Subsystems (4)

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore

Fabio Estevam

author reviewer
#0 lore raw

PATCH 1/5 ARM: imx: Remove imx21 support

imx21 has not been converted to device tree yet and there is only one single board that is supported (imx21ads).

To achieve the goal of converting all i.MX SoCs to devicetree-only platforms, remove imx21 support.

If someone is interested in supporting imx21, patches to add imx21 devicetree support will be welcome.

---
 arch/arm/mach-imx/Kconfig         |  19 --
 arch/arm/mach-imx/Makefile        |   5 -
 arch/arm/mach-imx/devices-imx21.h |  56 -----
 arch/arm/mach-imx/mach-mx21ads.c  | 338 ------------------------------
 arch/arm/mach-imx/mm-imx21.c      |  84 --------
 5 files changed, 502 deletions(-)
 delete mode 100644 arch/arm/mach-imx/devices-imx21.h
 delete mode 100644 arch/arm/mach-imx/mach-mx21ads.c
 delete mode 100644 arch/arm/mach-imx/mm-imx21.c
arch/arm/mach-imx/Kconfig +0 -19
index e7d7b90e2cf8..ae3b51b4a4fb 100644
@@ -53,12 +53,6 @@ config IMX_HAVE_IOMUX_V1
 config ARCH_MXC_IOMUX_V3
 	bool
 
-config SOC_IMX21
-	bool
-	select CPU_ARM926T
-	select IMX_HAVE_IOMUX_V1
-	select MXC_AVIC
-
 config SOC_IMX27
 	bool
 	select CPU_ARM926T
@@ -79,19 +73,6 @@ config SOC_IMX35
 
 if ARCH_MULTI_V5
 
-comment "MX21 platforms:"
-
-config MACH_MX21ADS
-	bool "MX21ADS platform"
-	select IMX_HAVE_PLATFORM_IMX_FB
-	select IMX_HAVE_PLATFORM_IMX_UART
-	select IMX_HAVE_PLATFORM_MXC_MMC
-	select IMX_HAVE_PLATFORM_MXC_NAND
-	select SOC_IMX21
-	help
-	  Include support for MX21ADS platform. This includes specific
-	  configurations for the board and its peripherals.
-
 comment "MX27 platforms:"
 
 config MACH_MX27ADS
arch/arm/mach-imx/Makefile +0 -5
index e7364e6c8c6b..d0370af0b1e3 100644
@@ -1,8 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0
 obj-y := cpu.o system.o irq-common.o
 
-obj-$(CONFIG_SOC_IMX21) += mm-imx21.o
-
 obj-$(CONFIG_SOC_IMX25) += cpu-imx25.o mach-imx25.o pm-imx25.o
 
 obj-$(CONFIG_SOC_IMX27) += cpu-imx27.o pm-imx27.o
@@ -37,9 +35,6 @@ obj-y += ssi-fiq.o
 obj-y += ssi-fiq-ksym.o
 endif
 
-# i.MX21 based machines
-obj-$(CONFIG_MACH_MX21ADS) += mach-mx21ads.o
-
 # i.MX27 based machines
 obj-$(CONFIG_MACH_MX27ADS) += mach-mx27ads.o
 obj-$(CONFIG_MACH_MX27_3DS) += mach-mx27_3ds.o
arch/arm/mach-imx/devices-imx21.h deleted +0 -56

56 lines not on this page · raw message

arch/arm/mach-imx/mach-mx21ads.c deleted +0 -338

338 lines not on this page · raw message

arch/arm/mach-imx/mm-imx21.c deleted +0 -84

84 lines not on this page · raw message

Signature · 7 lines
2.17.1


_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
author reviewer
#1 lore raw

PATCH 2/5 ARM: imx: Remove i.MX27 board files

i.MX27 has basic device tree support.

To achieve the goal of converting all i.MX SoCs to a devicetree-only platform, remove imx27 board files.

---
 arch/arm/configs/imx_v4_v5_defconfig        |   2 +-
 arch/arm/configs/multi_v5_defconfig         |   2 +-
 arch/arm/mach-imx/Kconfig                   | 101 +---
 arch/arm/mach-imx/Makefile                  |   9 +-
 arch/arm/mach-imx/imx27-dt.c                |  26 -
 arch/arm/mach-imx/mach-imx27_visstrim_m10.c | 562 --------------------
 arch/arm/mach-imx/mach-mx27_3ds.c           | 470 ----------------
 arch/arm/mach-imx/mach-mx27ads.c            | 407 --------------
 arch/arm/mach-imx/mach-pca100.c             | 426 ---------------
 9 files changed, 13 insertions(+), 1992 deletions(-)
 delete mode 100644 arch/arm/mach-imx/imx27-dt.c
 delete mode 100644 arch/arm/mach-imx/mach-imx27_visstrim_m10.c
 delete mode 100644 arch/arm/mach-imx/mach-mx27_3ds.c
 delete mode 100644 arch/arm/mach-imx/mach-mx27ads.c
 delete mode 100644 arch/arm/mach-imx/mach-pca100.c
arch/arm/configs/imx_v4_v5_defconfig +1 -1
index f5f1111f2118..aeb1209e0804 100644
@@ -20,9 +20,9 @@ CONFIG_MACH_MX27ADS=y
 CONFIG_MACH_MX27_3DS=y
 CONFIG_MACH_IMX27_VISSTRIM_M10=y
 CONFIG_MACH_PCA100=y
-CONFIG_MACH_IMX27_DT=y
 CONFIG_SOC_IMX1=y
 CONFIG_SOC_IMX25=y
+CONFIG_SOC_IMX27=y
 CONFIG_AEABI=y
 CONFIG_ZBOOT_ROM_TEXT=0x0
 CONFIG_ZBOOT_ROM_BSS=0x0
arch/arm/configs/multi_v5_defconfig +1 -1
index 2724fb3155cd..70b709a669d2 100644
@@ -29,8 +29,8 @@ CONFIG_MACH_MX27ADS=y
 CONFIG_MACH_MX27_3DS=y
 CONFIG_MACH_IMX27_VISSTRIM_M10=y
 CONFIG_MACH_PCA100=y
-CONFIG_MACH_IMX27_DT=y
 CONFIG_SOC_IMX25=y
+CONFIG_SOC_IMX27=y
 CONFIG_ARCH_MVEBU=y
 CONFIG_MACH_KIRKWOOD=y
 CONFIG_ARCH_ORION5X=y
arch/arm/mach-imx/Kconfig +10 -91

125 lines not on this page · raw message

arch/arm/mach-imx/Makefile +1 -8
index d0370af0b1e3..46a90d64c13b 100644
@@ -3,7 +3,7 @@ obj-y := cpu.o system.o irq-common.o
 
 obj-$(CONFIG_SOC_IMX25) += cpu-imx25.o mach-imx25.o pm-imx25.o
 
-obj-$(CONFIG_SOC_IMX27) += cpu-imx27.o pm-imx27.o
+obj-$(CONFIG_SOC_IMX27) += cpu-imx27.o pm-imx27.o mach-imx27.o
 obj-$(CONFIG_SOC_IMX27) += mm-imx27.o ehci-imx27.o
 
 obj-$(CONFIG_SOC_IMX31) += mm-imx3.o cpu-imx31.o iomux-imx31.o ehci-imx31.o
@@ -35,13 +35,6 @@ obj-y += ssi-fiq.o
 obj-y += ssi-fiq-ksym.o
 endif
 
-# i.MX27 based machines
-obj-$(CONFIG_MACH_MX27ADS) += mach-mx27ads.o
-obj-$(CONFIG_MACH_MX27_3DS) += mach-mx27_3ds.o
-obj-$(CONFIG_MACH_IMX27_VISSTRIM_M10) += mach-imx27_visstrim_m10.o
-obj-$(CONFIG_MACH_PCA100) += mach-pca100.o
-obj-$(CONFIG_MACH_IMX27_DT) += imx27-dt.o
-
 # i.MX31 based machines
 obj-$(CONFIG_MACH_MX31ADS) += mach-mx31ads.o
 obj-$(CONFIG_MACH_MX31LILLY) += mach-mx31lilly.o mx31lilly-db.o
arch/arm/mach-imx/imx27-dt.c deleted +0 -26
deleted file mode 100644
index 29d97bd64381..000000000000
@@ -1,26 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * Copyright 2012 Sascha Hauer, Pengutronix
- */
-
-#include <linux/irq.h>
-#include <linux/of_irq.h>
-#include <linux/of_platform.h>
-#include <asm/mach/arch.h>
-#include <asm/mach/time.h>
-
-#include "common.h"
-#include "mx27.h"
-
-static const char * const imx27_dt_board_compat[] __initconst = {
-	"fsl,imx27",
-	NULL
-};
-
-DT_MACHINE_START(IMX27_DT, "Freescale i.MX27 (Device Tree Support)")
-	.map_io		= mx27_map_io,
-	.init_early	= imx27_init_early,
-	.init_irq	= mx27_init_irq,
-	.init_late	= imx27_pm_init,
-	.dt_compat	= imx27_dt_board_compat,
-MACHINE_END
arch/arm/mach-imx/mach-imx27_visstrim_m10.c deleted +0 -562

562 lines not on this page · raw message

arch/arm/mach-imx/mach-mx27_3ds.c deleted +0 -470

470 lines not on this page · raw message

arch/arm/mach-imx/mach-mx27ads.c deleted +0 -407

407 lines not on this page · raw message

arch/arm/mach-imx/mach-pca100.c deleted +0 -426

426 lines not on this page · raw message

Signature · 7 lines
2.17.1


_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
author reviewer
#2 lore raw

PATCH 4/5 ARM: imx: Remove i.MX35 board files

In reply to Fabio Estevam

i.MX35 has basic device tree support.

To achieve the goal of converting all i.MX SoCs to a devicetree-only platform, remove imx35 board files.

---
 arch/arm/configs/imx_v6_v7_defconfig |   5 +-
 arch/arm/mach-imx/Kconfig            |  73 +---
 arch/arm/mach-imx/Makefile           |   8 +-
 arch/arm/mach-imx/imx35-dt.c         |  32 --
 arch/arm/mach-imx/mach-mx35_3ds.c    | 516 ---------------------------
 arch/arm/mach-imx/mach-pcm043.c      | 412 ---------------------
 arch/arm/mach-imx/mach-vpr200.c      | 306 ----------------
 7 files changed, 10 insertions(+), 1342 deletions(-)
 delete mode 100644 arch/arm/mach-imx/imx35-dt.c
 delete mode 100644 arch/arm/mach-imx/mach-mx35_3ds.c
 delete mode 100644 arch/arm/mach-imx/mach-pcm043.c
 delete mode 100644 arch/arm/mach-imx/mach-vpr200.c
arch/arm/configs/imx_v6_v7_defconfig +1 -4
index 337d3ede0f7f..0fa79bd00219 100644
@@ -15,11 +15,8 @@ CONFIG_PERF_EVENTS=y
 # CONFIG_COMPAT_BRK is not set
 CONFIG_ARCH_MULTI_V6=y
 CONFIG_ARCH_MXC=y
-CONFIG_MACH_IMX35_DT=y
-CONFIG_MACH_PCM043=y
-CONFIG_MACH_MX35_3DS=y
-CONFIG_MACH_VPR200=y
 CONFIG_SOC_IMX31=y
+CONFIG_SOC_IMX35=y
 CONFIG_SOC_IMX50=y
 CONFIG_SOC_IMX51=y
 CONFIG_SOC_IMX53=y
arch/arm/mach-imx/Kconfig +8 -65

88 lines not on this page · raw message

arch/arm/mach-imx/Makefile +1 -7
index 1b3c0cad148b..d6607f3000d9 100644
@@ -7,7 +7,7 @@ obj-$(CONFIG_SOC_IMX27) += cpu-imx27.o pm-imx27.o mach-imx27.o
 obj-$(CONFIG_SOC_IMX27) += mm-imx27.o ehci-imx27.o
 
 obj-$(CONFIG_SOC_IMX31) += mm-imx3.o cpu-imx31.o iomux-imx31.o ehci-imx31.o mach-imx31.o
-obj-$(CONFIG_SOC_IMX35) += mm-imx3.o cpu-imx35.o ehci-imx35.o
+obj-$(CONFIG_SOC_IMX35) += mm-imx3.o cpu-imx35.o ehci-imx35.o mach-imx35.o
 
 imx5-pm-$(CONFIG_PM) += pm-imx5.o
 obj-$(CONFIG_SOC_IMX5) += cpu-imx5.o $(imx5-pm-y)
@@ -35,12 +35,6 @@ obj-y += ssi-fiq.o
 obj-y += ssi-fiq-ksym.o
 endif
 
-# i.MX35 based machines
-obj-$(CONFIG_MACH_PCM043) += mach-pcm043.o
-obj-$(CONFIG_MACH_MX35_3DS) += mach-mx35_3ds.o
-obj-$(CONFIG_MACH_VPR200) += mach-vpr200.o
-obj-$(CONFIG_MACH_IMX35_DT) += imx35-dt.o
-
 obj-$(CONFIG_HAVE_IMX_ANATOP) += anatop.o
 obj-$(CONFIG_HAVE_IMX_GPC) += gpc.o
 obj-$(CONFIG_HAVE_IMX_MMDC) += mmdc.o
arch/arm/mach-imx/imx35-dt.c deleted +0 -32
deleted file mode 100644
index ec5c3068715c..000000000000
@@ -1,32 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * Copyright 2012 Steffen Trumtrar, Pengutronix
- *
- * based on imx27-dt.c
- */
-
-#include <linux/irq.h>
-#include <linux/irqdomain.h>
-#include <linux/of_irq.h>
-#include <linux/of_platform.h>
-#include <linux/clk-provider.h>
-#include <linux/clocksource.h>
-#include <asm/mach/arch.h>
-#include <asm/mach/time.h>
-#include <asm/hardware/cache-l2x0.h>
-#include "common.h"
-#include "mx35.h"
-
-static const char * const imx35_dt_board_compat[] __initconst = {
-	"fsl,imx35",
-	NULL
-};
-
-DT_MACHINE_START(IMX35_DT, "Freescale i.MX35 (Device Tree Support)")
-	.l2c_aux_val 	= 0,
-	.l2c_aux_mask	= ~0,
-	.map_io		= mx35_map_io,
-	.init_early	= imx35_init_early,
-	.init_irq	= mx35_init_irq,
-	.dt_compat	= imx35_dt_board_compat,
-MACHINE_END
arch/arm/mach-imx/mach-mx35_3ds.c deleted +0 -516

516 lines not on this page · raw message

arch/arm/mach-imx/mach-pcm043.c deleted +0 -412

412 lines not on this page · raw message

arch/arm/mach-imx/mach-vpr200.c deleted +0 -306

306 lines not on this page · raw message

Signature · 7 lines
2.17.1


_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
author reviewer
#3 lore raw

PATCH 5/5 ARM: imx: Remove ehci board files

In reply to Fabio Estevam

Now that the i.MX board files have been removed, there is no need for keeping the ehci related files, so just remove them.

---
 arch/arm/mach-imx/Makefile     |  7 ++-
 arch/arm/mach-imx/ehci-imx27.c | 74 ----------------------------
 arch/arm/mach-imx/ehci-imx31.c | 74 ----------------------------
 arch/arm/mach-imx/ehci-imx35.c | 89 ----------------------------------
 arch/arm/mach-imx/ehci.h       | 44 -----------------
 5 files changed, 3 insertions(+), 285 deletions(-)
 delete mode 100644 arch/arm/mach-imx/ehci-imx27.c
 delete mode 100644 arch/arm/mach-imx/ehci-imx31.c
 delete mode 100644 arch/arm/mach-imx/ehci-imx35.c
 delete mode 100644 arch/arm/mach-imx/ehci.h
arch/arm/mach-imx/Makefile +3 -4
index d6607f3000d9..ca35d3e4cab4 100644
@@ -3,11 +3,10 @@ obj-y := cpu.o system.o irq-common.o
 
 obj-$(CONFIG_SOC_IMX25) += cpu-imx25.o mach-imx25.o pm-imx25.o
 
-obj-$(CONFIG_SOC_IMX27) += cpu-imx27.o pm-imx27.o mach-imx27.o
-obj-$(CONFIG_SOC_IMX27) += mm-imx27.o ehci-imx27.o
+obj-$(CONFIG_SOC_IMX27) += cpu-imx27.o pm-imx27.o mach-imx27.o mm-imx27.o
 
-obj-$(CONFIG_SOC_IMX31) += mm-imx3.o cpu-imx31.o iomux-imx31.o ehci-imx31.o mach-imx31.o
-obj-$(CONFIG_SOC_IMX35) += mm-imx3.o cpu-imx35.o ehci-imx35.o mach-imx35.o
+obj-$(CONFIG_SOC_IMX31) += mm-imx3.o cpu-imx31.o iomux-imx31.o mach-imx31.o
+obj-$(CONFIG_SOC_IMX35) += mm-imx3.o cpu-imx35.o mach-imx35.o
 
 imx5-pm-$(CONFIG_PM) += pm-imx5.o
 obj-$(CONFIG_SOC_IMX5) += cpu-imx5.o $(imx5-pm-y)
arch/arm/mach-imx/ehci-imx27.c deleted +0 -74

74 lines not on this page · raw message

arch/arm/mach-imx/ehci-imx31.c deleted +0 -74

74 lines not on this page · raw message

arch/arm/mach-imx/ehci-imx35.c deleted +0 -89

89 lines not on this page · raw message

arch/arm/mach-imx/ehci.h deleted +0 -44

44 lines not on this page · raw message

Signature · 7 lines
2.17.1


_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
#4 lore raw

Re: [PATCH 5/5] ARM: imx: Remove ehci board files

Quoted 6 lines · Fabio Estevam

Now that the i.MX board files have been removed, there is no need for keeping the ehci related files, so just remove them.

Quoted 11 lines
---
 arch/arm/mach-imx/Makefile     |  7 ++-
 arch/arm/mach-imx/ehci-imx27.c | 74 ----------------------------
 arch/arm/mach-imx/ehci-imx31.c | 74 ----------------------------
 arch/arm/mach-imx/ehci-imx35.c | 89 ----------------------------------
 arch/arm/mach-imx/ehci.h       | 44 -----------------
 5 files changed, 3 insertions(+), 285 deletions(-)
 delete mode 100644 arch/arm/mach-imx/ehci-imx27.c
 delete mode 100644 arch/arm/mach-imx/ehci-imx31.c
 delete mode 100644 arch/arm/mach-imx/ehci-imx35.c
 delete mode 100644 arch/arm/mach-imx/ehci.h

Do you plan to send another patch to remove linux/platform_data/usb-ehci-mxc.h and parts of drivers/usb/host/ehci-mxc.c, to get merged by the USB maintainers? I suppose we could merge that at the same time through the soc tree, or separately, but it would make sense to get it done.

Arnd

author reviewer
#5 lore raw

Re: [PATCH 5/5] ARM: imx: Remove ehci board files

Hi Arnd,

Quoted 4 lines · Arnd Bergmann

Do you plan to send another patch to remove linux/platform_data/usb-ehci-mxc.h and parts of drivers/usb/host/ehci-mxc.c, to get merged by the USB maintainers? I suppose we could merge that at the same time through the soc tree, or separately, but it would make sense to get it done.

Yes, I plan to remove the drivers pieces after this series lands into a -rc1 release.

Besides drivers/usb/host/ehci-mxc.c that you mentioned, there are other drivers that can also be removed:

drivers/usb/host/imx21-hcd.c
drivers/usb/host/imx21-dbg.c
drivers/pinctrl/freescale/pinctrl-imx21.c
drivers/clk/imx/clk-imx21.c

Thanks,

Fabio Estevam