Skip to contentSkip to conversation

remove non-DT for exynos

GIT PULL New Kukjin Kim 3 participants 7 messages Jun 11, 2013 – Jun 15, 2013

Subsystems (4)
lore
Share & tools
lore

Kukjin Kim

author
#0 lore raw

The following changes since commit 317ddd256b9c24b0d78fa8018f80f1e495481a10:

Linux 3.10-rc5 (2013-06-08 17:41:04 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git
tags/remove-nondt-exynos

for you to fetch changes up to 8661bc149b95b5d4298b4ffd55c298972c4820d1:

ARM: exynos4_defconfig: remove non-DT configuration (2013-06-10
18:37:01 +0900)

----------------------------------------------------------------
remove non DT support for exynos

----------------------------------------------------------------
Kukjin Kim (2):
ARM: EXYNOS: no more support non-DT for EXYNOS SoCs
ARM: exynos4_defconfig: remove non-DT configuration

  arch/arm/configs/exynos4_defconfig |  68 --------
  arch/arm/mach-exynos/Kconfig       | 320 
+-----------------------------------
  arch/arm/mach-exynos/Makefile      |  26 ---
  arch/arm/mach-exynos/common.c      |  10 --
  arch/arm/mach-exynos/dev-ahci.c    | 255 -----------------------------
  arch/arm/mach-exynos/dev-ohci.c    |  52 ------
  arch/arm/mach-exynos/dma.c         | 322 
-------------------------------------
  arch/arm/mach-exynos/pm_domains.c  |   7 -
  8 files changed, 1 insertion(+), 1059 deletions(-)

delete mode 100644 arch/arm/configs/exynos4_defconfig delete mode 100644 arch/arm/mach-exynos/dev-ahci.c delete mode 100644 arch/arm/mach-exynos/dev-ohci.c delete mode 100644 arch/arm/mach-exynos/dma.c

#1 lore raw
Quoted 23 lines · Kukjin Kim

The following changes since commit 317ddd256b9c24b0d78fa8018f80f1e495481a10:

Linux 3.10-rc5 (2013-06-08 17:41:04 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git
tags/remove-nondt-exynos

for you to fetch changes up to 8661bc149b95b5d4298b4ffd55c298972c4820d1:

ARM: exynos4_defconfig: remove non-DT configuration (2013-06-10
18:37:01 +0900)

----------------------------------------------------------------
remove non DT support for exynos

----------------------------------------------------------------
Kukjin Kim (2):
ARM: EXYNOS: no more support non-DT for EXYNOS SoCs
ARM: exynos4_defconfig: remove non-DT configuration

Quoted 15 lines
 arch/arm/configs/exynos4_defconfig |  68 --------
 arch/arm/mach-exynos/Kconfig       | 320
+-----------------------------------
 arch/arm/mach-exynos/Makefile      |  26 ---
 arch/arm/mach-exynos/common.c      |  10 --
 arch/arm/mach-exynos/dev-ahci.c    | 255 -----------------------------
 arch/arm/mach-exynos/dev-ohci.c    |  52 ------
 arch/arm/mach-exynos/dma.c         | 322
-------------------------------------
 arch/arm/mach-exynos/pm_domains.c  |   7 -
 8 files changed, 1 insertion(+), 1059 deletions(-)
 delete mode 100644 arch/arm/configs/exynos4_defconfig
 delete mode 100644 arch/arm/mach-exynos/dev-ahci.c
 delete mode 100644 arch/arm/mach-exynos/dev-ohci.c
 delete mode 100644 arch/arm/mach-exynos/dma.c

Kukjin,

What about the legacy board files? I don't see them removed (nor converted to DT) here, so this is not a full removal.

Also, the argument to keep exynos4_defconfig was that it needed to enable non-DT boards. I think we might as well just remove the defconfig and make sure all the needed options are enabled in exynos_defconfig -- they should coexist just fine.

I'll hold off pulling until the defconfig situation has been resolved, but please follow up on the board file piece too.

-Olof

author
#2 lore raw
Quoted 42 lines · Olof Johansson
Quoted 1 line · Kukjin Kim

The following changes since commit

317ddd256b9c24b0d78fa8018f80f1e495481a10:

Quoted 22 lines

Linux 3.10-rc5 (2013-06-08 17:41:04 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git
tags/remove-nondt-exynos

for you to fetch changes up to 8661bc149b95b5d4298b4ffd55c298972c4820d1:

ARM: exynos4_defconfig: remove non-DT configuration (2013-06-10
18:37:01 +0900)

----------------------------------------------------------------
remove non DT support for exynos

----------------------------------------------------------------
Kukjin Kim (2):
ARM: EXYNOS: no more support non-DT for EXYNOS SoCs
ARM: exynos4_defconfig: remove non-DT configuration

Quoted 15 lines
 arch/arm/configs/exynos4_defconfig |  68 --------
 arch/arm/mach-exynos/Kconfig       | 320
+-----------------------------------
 arch/arm/mach-exynos/Makefile      |  26 ---
 arch/arm/mach-exynos/common.c      |  10 --
 arch/arm/mach-exynos/dev-ahci.c    | 255 -----------------------------
 arch/arm/mach-exynos/dev-ohci.c    |  52 ------
 arch/arm/mach-exynos/dma.c         | 322
-------------------------------------
 arch/arm/mach-exynos/pm_domains.c  |   7 -
 8 files changed, 1 insertion(+), 1059 deletions(-)
 delete mode 100644 arch/arm/configs/exynos4_defconfig
 delete mode 100644 arch/arm/mach-exynos/dev-ahci.c
 delete mode 100644 arch/arm/mach-exynos/dev-ohci.c
 delete mode 100644 arch/arm/mach-exynos/dma.c
Quoted 2 lines

Kukjin,

Hi Olof,

Quoted 4 lines

What about the legacy board files? I don't see them removed (nor converted to
DT) here, so this is not a full removal.

Oops, why are there still the board files :( Probably, there was a mistake...

Thanks.

Quoted 7 lines

Also, the argument to keep exynos4_defconfig was that it needed to enable non-DT boards. I think we might as well just remove the defconfig and make sure
all the needed options are enabled in exynos_defconfig -- they should coexist
just fine.

OK agreed.

Quoted 3 lines

I'll hold off pulling until the defconfig situation has been resolved, but please follow up on the board file piece too.

Sure, thanks.

- Kukjin

#3 lore raw

PATCH 1/1 ARM: exynos: remove unused code

In reply to Kukjin Kim

After exynos has been converted to DT-only booting by removing most a lot of the ATAGS code, I had a closer look of what is left. It turns out that a number of unused files are left in the tree that can be removed along with about another quarter of the remaining code in mach-exynos.

Specifically this includes:

* all board files
* all setup-*.c files
* dev-audio.c and dev-uart.c
* all code testing for of_have_populated_dt
* the eint_irqchip
* almost all the mach/irqs.h constants (the remaining ones are likely bugs)
* Most physical address constants. The remaining ones are either bugs or used for the iotable. Both can probably get removed in the long run.
* regs-usb-phy.h, which was already unused before
* A lot of code in plat-samsung/ can be made conditional on CONFIG_ATAGS, in particular now unused device definitions.

---
Hi Kukjin,

Could you check the validity of this patch please?

I think we should apply it on top of your series. I've generated the patch using 'git format-patch -D' for brevity, so be careful to actually delete the unused files if you want to apply it to a local branch on your side.

Arnd

 arch/arm/Kconfig                                 |    1 -
 arch/arm/mach-exynos/Makefile                    |   14 -
 arch/arm/mach-exynos/common.c                    |  529 +--------
 arch/arm/mach-exynos/common.h                    |    5 +-
 arch/arm/mach-exynos/dev-audio.c                 |  254 ----
 arch/arm/mach-exynos/dev-uart.c                  |   55 -
 arch/arm/mach-exynos/firmware.c                  |   22 +-
 arch/arm/mach-exynos/include/mach/gpio.h         |  289 -----
 arch/arm/mach-exynos/include/mach/irqs.h         |  430 +------
 arch/arm/mach-exynos/include/mach/map.h          |  208 +---
 arch/arm/mach-exynos/include/mach/pm-core.h      |    5 +-
 arch/arm/mach-exynos/include/mach/regs-usb-phy.h |   74 --
 arch/arm/mach-exynos/mach-armlex4210.c           |  207 ----
 arch/arm/mach-exynos/mach-exynos4-dt.c           |   13 +-
 arch/arm/mach-exynos/mach-exynos5-dt.c           |    8 +-
 arch/arm/mach-exynos/mach-nuri.c                 | 1388 ----------------------
 arch/arm/mach-exynos/mach-origen.c               |  823 -------------
 arch/arm/mach-exynos/mach-smdk4x12.c             |  396 ------
 arch/arm/mach-exynos/mach-smdkv310.c             |  444 -------
 arch/arm/mach-exynos/mach-universal_c210.c       | 1159 ------------------
 arch/arm/mach-exynos/pm_domains.c                |   84 +-
 arch/arm/mach-exynos/setup-fimc.c                |   44 -
 arch/arm/mach-exynos/setup-fimd0.c               |   43 -
 arch/arm/mach-exynos/setup-i2c0.c                |   29 -
 arch/arm/mach-exynos/setup-i2c1.c                |   23 -
 arch/arm/mach-exynos/setup-i2c2.c                |   23 -
 arch/arm/mach-exynos/setup-i2c3.c                |   23 -
 arch/arm/mach-exynos/setup-i2c4.c                |   23 -
 arch/arm/mach-exynos/setup-i2c5.c                |   23 -
 arch/arm/mach-exynos/setup-i2c6.c                |   23 -
 arch/arm/mach-exynos/setup-i2c7.c                |   23 -
 arch/arm/mach-exynos/setup-keypad.c              |   36 -
 arch/arm/mach-exynos/setup-sdhci-gpio.c          |  152 ---
 arch/arm/mach-exynos/setup-spi.c                 |   45 -
 arch/arm/mach-exynos/setup-usb-phy.c             |  223 ----
 arch/arm/plat-samsung/Kconfig                    |    2 +-
 arch/arm/plat-samsung/Makefile                   |    7 +-
 arch/arm/plat-samsung/init.c                     |   11 +-
 arch/arm/plat-samsung/pm.c                       |    6 +-
 drivers/gpio/Kconfig                             |    4 +
 drivers/gpio/Makefile                            |    6 +-
 41 files changed, 68 insertions(+), 7109 deletions(-)
arch/arm/Kconfig +0 -1
index d462a38..f912265 100644
@@ -794,7 +794,6 @@ config ARCH_EXYNOS
 	select HAVE_S3C2410_I2C if I2C
 	select HAVE_S3C2410_WATCHDOG if WATCHDOG
 	select HAVE_S3C_RTC if RTC_CLASS
-	select NEED_MACH_GPIO_H
 	select NEED_MACH_MEMORY_H
 	help
 	  Support for SAMSUNG's EXYNOS SoCs (EXYNOS4/5)
arch/arm/mach-exynos/Makefile +0 -14
index 9811f87..9d19565 100644
@@ -5,13 +5,6 @@
 #
 # Licensed under GPLv2
 
-obj-y				:=
-obj-m				:=
-obj-n				:=
-obj-				:=
-
-# Core
-
 obj-$(CONFIG_ARCH_EXYNOS)	+= common.o
 
 obj-$(CONFIG_PM)		+= pm.o
@@ -34,10 +27,3 @@ AFLAGS_exynos-smc.o		:=-Wa,-march=armv7-a$(plus_sec)
 
 obj-$(CONFIG_MACH_EXYNOS4_DT)		+= mach-exynos4-dt.o
 obj-$(CONFIG_MACH_EXYNOS5_DT)		+= mach-exynos5-dt.o
-
-# device support
-
-obj-y					+= dev-uart.o
-obj-$(CONFIG_ARCH_EXYNOS4)		+= dev-audio.o
-
-obj-$(CONFIG_ARCH_EXYNOS)		+= setup-i2c0.o
arch/arm/mach-exynos/common.c +8 -521

625 lines not on this page · raw message

arch/arm/mach-exynos/common.h +2 -3
index 11fc1e2..4410885 100644
@@ -19,9 +19,8 @@ void exynos_init_time(void);
 extern unsigned long xxti_f, xusbxti_f;
 
 struct map_desc;
-void exynos_init_io(struct map_desc *mach_desc, int size);
-void exynos4_init_irq(void);
-void exynos5_init_irq(void);
+void exynos_init_io(void);
+void exynos_init_irq(void);
 void exynos4_restart(char mode, const char *cmd);
 void exynos5_restart(char mode, const char *cmd);
 void exynos_init_late(void);
arch/arm/mach-exynos/dev-audio.c deleted +0 -0
deleted file mode 100644
index c662c89..0000000
arch/arm/mach-exynos/dev-uart.c deleted +0 -0
deleted file mode 100644
index c48aff0..0000000
arch/arm/mach-exynos/firmware.c +10 -12
index ed11f10..932129e 100644
@@ -48,20 +48,18 @@ static const struct firmware_ops exynos_firmware_ops = {
 
 void __init exynos_firmware_init(void)
 {
-	if (of_have_populated_dt()) {
-		struct device_node *nd;
-		const __be32 *addr;
+	struct device_node *nd;
+	const __be32 *addr;
 
-		nd = of_find_compatible_node(NULL, NULL,
-						"samsung,secure-firmware");
-		if (!nd)
-			return;
+	nd = of_find_compatible_node(NULL, NULL,
+					"samsung,secure-firmware");
+	if (!nd)
+		return;
 
-		addr = of_get_address(nd, 0, NULL, NULL);
-		if (!addr) {
-			pr_err("%s: No address specified.\n", __func__);
-			return;
-		}
+	addr = of_get_address(nd, 0, NULL, NULL);
+	if (!addr) {
+		pr_err("%s: No address specified.\n", __func__);
+		return;
 	}
 
 	pr_info("Running under secure firmware.\n");
arch/arm/mach-exynos/include/mach/gpio.h deleted +0 -0
deleted file mode 100644
index eb24f1e..0000000
arch/arm/mach-exynos/include/mach/irqs.h +9 -421

455 lines not on this page · raw message

arch/arm/mach-exynos/include/mach/map.h +6 -202

253 lines not on this page · raw message

arch/arm/mach-exynos/include/mach/pm-core.h +1 -4
index 296090e..bbfc6e3 100644
@@ -34,10 +34,7 @@ static inline void s3c_pm_debug_init_uart(void)
 
 static inline void s3c_pm_arch_prepare_irqs(void)
 {
-	u32 eintmask = s3c_irqwake_eintmask;
-
-	if (of_have_populated_dt())
-		eintmask = exynos_get_eint_wake_mask();
+	u32 eintmask = exynos_get_eint_wake_mask();
 
 	__raw_writel(eintmask, S5P_EINT_WAKEUP_MASK);
 	__raw_writel(s3c_irqwake_intmask & ~(1 << 31), S5P_WAKEUP_MASK);
arch/arm/mach-exynos/include/mach/regs-usb-phy.h deleted +0 -0
deleted file mode 100644
index 0727773..0000000
arch/arm/mach-exynos/mach-armlex4210.c deleted +0 -0
deleted file mode 100644
index 5f0f557..0000000
arch/arm/mach-exynos/mach-exynos4-dt.c +2 -11
index b9ed834..20f0c04 100644
@@ -23,15 +23,7 @@
 
 #include "common.h"
 
-static void __init exynos4_dt_map_io(void)
-{
-	exynos_init_io(NULL, 0);
-}
 
-static void __init exynos4_dt_machine_init(void)
-{
-	of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
-}
 
 static char const *exynos4_dt_compat[] __initdata = {
 	"samsung,exynos4210",
@@ -55,10 +47,9 @@ static void __init exynos4_reserve(void)
 DT_MACHINE_START(EXYNOS4210_DT, "Samsung Exynos4 (Flattened Device Tree)")
 	/* Maintainer: Thomas Abraham <[email protected]> */
 	.smp		= smp_ops(exynos_smp_ops),
-	.init_irq	= exynos4_init_irq,
-	.map_io		= exynos4_dt_map_io,
+	.init_irq	= exynos_init_irq,
+	.map_io		= exynos_init_io,
 	.init_early	= exynos_firmware_init,
-	.init_machine	= exynos4_dt_machine_init,
 	.init_late	= exynos_init_late,
 	.init_time	= exynos_init_time,
 	.dt_compat	= exynos4_dt_compat,
arch/arm/mach-exynos/mach-exynos5-dt.c +2 -6
index 9596861..526a608 100644
@@ -27,10 +27,6 @@
 static u64 dma_mask64 = DMA_BIT_MASK(64);
 static u64 dma_mask32 = DMA_BIT_MASK(32);
 
-static void __init exynos5_dt_map_io(void)
-{
-	exynos_init_io(NULL, 0);
-}
 
 static int exynos5440_platform_notifier(struct notifier_block *nb,
 				  unsigned long event, void *__dev)
@@ -104,9 +100,9 @@ static void __init exynos5_reserve(void)
 
 DT_MACHINE_START(EXYNOS5_DT, "SAMSUNG EXYNOS5 (Flattened Device Tree)")
 	/* Maintainer: Kukjin Kim <[email protected]> */
-	.init_irq	= exynos5_init_irq,
 	.smp		= smp_ops(exynos_smp_ops),
-	.map_io		= exynos5_dt_map_io,
+	.init_irq	= exynos_init_irq,
+	.map_io		= exynos_init_io,
 	.init_machine	= exynos5_dt_machine_init,
 	.init_late	= exynos_init_late,
 	.init_time	= exynos_init_time,
arch/arm/mach-exynos/mach-nuri.c deleted +0 -0
deleted file mode 100644
index 5c8b287..0000000
arch/arm/mach-exynos/mach-origen.c deleted +0 -0
deleted file mode 100644
index 27f03ed..0000000
arch/arm/mach-exynos/mach-smdk4x12.c deleted +0 -0
deleted file mode 100644
index 2c8af96..0000000
arch/arm/mach-exynos/mach-smdkv310.c deleted +0 -0
deleted file mode 100644
index d95b8cf..0000000
arch/arm/mach-exynos/mach-universal_c210.c deleted +0 -0
deleted file mode 100644
index 74ddb2b..0000000
arch/arm/mach-exynos/pm_domains.c +1 -83

90 lines not on this page · raw message

arch/arm/mach-exynos/setup-fimc.c deleted +0 -0
deleted file mode 100644
index 6a45078..0000000
arch/arm/mach-exynos/setup-fimd0.c deleted +0 -0
deleted file mode 100644
index 5665bb4..0000000
arch/arm/mach-exynos/setup-i2c0.c deleted +0 -0
deleted file mode 100644
index e2d9dfb..0000000
arch/arm/mach-exynos/setup-i2c1.c deleted +0 -0
deleted file mode 100644
index 8d2279c..0000000
arch/arm/mach-exynos/setup-i2c2.c deleted +0 -0
deleted file mode 100644
index 0ed62fc..0000000
arch/arm/mach-exynos/setup-i2c3.c deleted +0 -0
deleted file mode 100644
index 7787fd2..0000000
arch/arm/mach-exynos/setup-i2c4.c deleted +0 -0
deleted file mode 100644
index edc847f..0000000
arch/arm/mach-exynos/setup-i2c5.c deleted +0 -0
deleted file mode 100644
index d88af7f..0000000
arch/arm/mach-exynos/setup-i2c6.c deleted +0 -0
deleted file mode 100644
index c590286..0000000
arch/arm/mach-exynos/setup-i2c7.c deleted +0 -0
deleted file mode 100644
index 1bba755..0000000
arch/arm/mach-exynos/setup-keypad.c deleted +0 -0
deleted file mode 100644
index 7862bfb..0000000
arch/arm/mach-exynos/setup-sdhci-gpio.c deleted +0 -0
deleted file mode 100644
index d5b98c8..0000000
arch/arm/mach-exynos/setup-spi.c deleted +0 -0
deleted file mode 100644
index 4999829..0000000
arch/arm/mach-exynos/setup-usb-phy.c deleted +0 -0
deleted file mode 100644
index 6af4066..0000000
arch/arm/plat-samsung/Kconfig +1 -1
index f8ed2de..cb1556c 100644
@@ -27,7 +27,7 @@ config PLAT_S5P
 	select S5P_GPIO_DRVSTR
 	select SAMSUNG_CLKSRC if !COMMON_CLK
 	select SAMSUNG_GPIOLIB_4BIT
-	select SAMSUNG_IRQ_VIC_TIMER
+	select SAMSUNG_IRQ_VIC_TIMER if (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
 	help
 	  Base platform code for Samsung's S5P series SoC.
 
arch/arm/plat-samsung/Makefile +6 -1
index a23c460..ae1b411 100644
@@ -29,16 +29,19 @@ obj-$(CONFIG_S5P_GPIO_INT)	+= s5p-irq-gpioint.o
 
 obj-$(CONFIG_S3C_ADC)	+= adc.o
 
+ifdef CONFIG_ATAGS
 # devices
 
 obj-y				+= platformdata.o
 
 obj-y				+= devs.o
 obj-y				+= dev-uart.o
-obj-$(CONFIG_S5P_DEV_MFC)	+= s5p-dev-mfc.o
 obj-$(CONFIG_S5P_DEV_UART)	+= s5p-dev-uart.o
 
 obj-$(CONFIG_SAMSUNG_DEV_BACKLIGHT)	+= dev-backlight.o
+endif
+
+obj-$(CONFIG_S5P_DEV_MFC)	+= s5p-dev-mfc.o
 
 obj-$(CONFIG_S3C_SETUP_CAMIF)	+= setup-camif.o
 obj-$(CONFIG_S5P_SETUP_MIPIPHY)	+= setup-mipiphy.o
@@ -52,7 +55,9 @@ obj-$(CONFIG_SAMSUNG_DMADEV)	+= dma-ops.o
 # PM support
 
 obj-$(CONFIG_PM)		+= pm.o
+ifdef CONFIG_ATAGS
 obj-$(CONFIG_PM)		+= pm-gpio.o
+endif
 obj-$(CONFIG_SAMSUNG_PM_CHECK)	+= pm-check.o
 
 obj-$(CONFIG_SAMSUNG_WAKEMASK)	+= wakeup-mask.o
arch/arm/plat-samsung/init.c +7 -4
index 79d10fc..847c4d6 100644
@@ -63,6 +63,7 @@ void __init s3c_init_cpu(unsigned long idcode,
 	cpu->map_io();
 }
 
+#ifdef CONFIG_ATAGS
 /* s3c24xx_init_clocks
  *
  * Initialise the clock subsystem and associated information from the
@@ -139,21 +140,23 @@ void __init s3c24xx_init_uarts(struct s3c2410_uartcfg *cfg, int no)
 	} else
 		(cpu->init_uarts)(cfg, no);
 }
+#endif
 
 static int __init s3c_arch_init(void)
 {
 	int ret;
 
-	// do the correct init for cpu
-
-	if (cpu == NULL)
-		panic("s3c_arch_init: NULL cpu\n");
+	/* we might be called for a non-samsung platform */
+	if (!cpu)
+		return 0;
 
 	ret = (cpu->init)();
 	if (ret != 0)
 		return ret;
 
+#ifdef CONFIG_ATAGS
 	ret = platform_add_devices(s3c24xx_uart_devs, nr_uarts);
+#endif
 	return ret;
 }
 
arch/arm/plat-samsung/pm.c +4 -2
index 53210ec..4578134 100644
@@ -270,7 +270,8 @@ static int s3c_pm_enter(suspend_state_t state)
 
 	/* save all necessary core registers not covered by the drivers */
 
-	samsung_pm_save_gpios();
+	if (IS_ENABLED(CONFIG_ATAGS))
+		samsung_pm_save_gpios();
 	samsung_pm_saved_gpios();
 	s3c_pm_save_uarts();
 	s3c_pm_save_core();
@@ -310,7 +311,8 @@ static int s3c_pm_enter(suspend_state_t state)
 
 	s3c_pm_restore_core();
 	s3c_pm_restore_uarts();
-	samsung_pm_restore_gpios();
+	if (IS_ENABLED(CONFIG_ATAGS))
+		samsung_pm_restore_gpios();
 	s3c_pm_restored_gpios();
 
 	s3c_pm_debug_init();
drivers/gpio/Kconfig +4 -0
index f471fe8..09bcbff 100644
@@ -209,6 +209,10 @@ config GPIO_RCAR
 	help
 	  Say yes here to support GPIO on Renesas R-Car SoCs.
 
+config GPIO_SAMSUNG
+	def_bool PLAT_S3C24XX || PLAT_S3C64XX || ARCH_S5P64X0 || \
+		 ARCH_S5PC100 || ARCH_S5PV210
+
 config GPIO_SPEAR_SPICS
 	bool "ST SPEAr13xx SPI Chip Select as GPIO support"
 	depends on PLAT_SPEAR
drivers/gpio/Makefile +5 -1
index 0cb2d65..5cf2238 100644
@@ -59,7 +59,11 @@ obj-$(CONFIG_GPIO_PXA)		+= gpio-pxa.o
 obj-$(CONFIG_GPIO_RC5T583)	+= gpio-rc5t583.o
 obj-$(CONFIG_GPIO_RDC321X)	+= gpio-rdc321x.o
 obj-$(CONFIG_GPIO_RCAR)		+= gpio-rcar.o
-obj-$(CONFIG_PLAT_SAMSUNG)	+= gpio-samsung.o
+obj-$(CONFIG_PLAT_S3C24XX)	+= gpio-samsung.o
+obj-$(CONFIG_PLAT_S3C64XX)	+= gpio-samsung.o
+obj-$(CONFIG_ARCH_S5P64X0)	+= gpio-samsung.o
+obj-$(CONFIG_ARCH_S5PC100)	+= gpio-samsung.o
+obj-$(CONFIG_ARCH_S5PV210)	+= gpio-samsung.o
 obj-$(CONFIG_ARCH_SA1100)	+= gpio-sa1100.o
 obj-$(CONFIG_GPIO_SCH)		+= gpio-sch.o
 obj-$(CONFIG_GPIO_SODAVILLE)	+= gpio-sodaville.o
#4 lore raw

PATCH 1/1 ARM: exynos: remove unused code

Quoted 23 lines · Arnd Bergmann

After exynos has been converted to DT-only booting by removing most a lot of the ATAGS code, I had a closer look of what is left. It turns out that a number of unused files are left in the tree that can be removed along with about another quarter of the remaining code in mach-exynos.

Specifically this includes:

* all board files
* all setup-*.c files
* dev-audio.c and dev-uart.c
* all code testing for of_have_populated_dt
* the eint_irqchip
* almost all the mach/irqs.h constants (the remaining ones are likely bugs)
* Most physical address constants. The remaining ones are either bugs or used for the iotable. Both can probably get removed in the long run.
* regs-usb-phy.h, which was already unused before
* A lot of code in plat-samsung/ can be made conditional on CONFIG_ATAGS, in particular now unused device definitions.

Quoted 1 line
Quoted 8 lines

Hi Kukjin,

Could you check the validity of this patch please?

I think we should apply it on top of your series. I've generated the patch using 'git format-patch -D' for brevity, so be careful to actually delete the unused files if you want to apply it to a local branch on your side.

Great. This is the piece that I wanted to see in the non-DT-removal branch before I pulled it.

-Olof

author
#5 lore raw

PATCH 1/1 ARM: exynos: remove unused code

Quoted 33 lines · Olof Johansson
Quoted 23 lines · Arnd Bergmann

After exynos has been converted to DT-only booting by removing most a lot of the ATAGS code, I had a closer look of what is left. It turns out that a number of unused files are left in the tree that can be removed along with about another quarter of the remaining code in mach-exynos.

Specifically this includes:

* all board files
* all setup-*.c files
* dev-audio.c and dev-uart.c
* all code testing for of_have_populated_dt
* the eint_irqchip
* almost all the mach/irqs.h constants (the remaining ones are likely bugs)
* Most physical address constants. The remaining ones are either bugs or used for the iotable. Both can probably get removed in the long run.
* regs-usb-phy.h, which was already unused before
* A lot of code in plat-samsung/ can be made conditional on CONFIG_ATAGS, in particular now unused device definitions.

Quoted 1 line
Quoted 4 lines

Hi Kukjin,

Could you check the validity of this patch please?

Quoted 8 lines
Quoted 4 lines

I think we should apply it on top of your series. I've generated the patch using 'git format-patch -D' for brevity, so be careful to actually delete the unused files if you want to apply it to a local branch on your side.

Great. This is the piece that I wanted to see in the non-DT-removal branch before I pulled it.

Yeah, I think so. But as Arnd suggested, I'm looking at Tomasz's patches and it will be sorted out in this weekend.

Thanks,
- Kukjin

#6 lore raw

PATCH 1/1 ARM: exynos: remove unused code

Quoted 39 lines · Kukjin Kim
Quoted 38 lines · Olof Johansson
Quoted 23 lines · Arnd Bergmann

After exynos has been converted to DT-only booting by removing most a lot of the ATAGS code, I had a closer look of what is left. It turns out that a number of unused files are left in the tree that can be removed along with about another quarter of the remaining code in mach-exynos.

Specifically this includes:

* all board files
* all setup-*.c files
* dev-audio.c and dev-uart.c
* all code testing for of_have_populated_dt
* the eint_irqchip
* almost all the mach/irqs.h constants (the remaining ones are likely bugs)
* Most physical address constants. The remaining ones are either bugs or used for the iotable. Both can probably get removed in the long run.
* regs-usb-phy.h, which was already unused before
* A lot of code in plat-samsung/ can be made conditional on CONFIG_ATAGS, in particular now unused device definitions.

Quoted 1 line
Quoted 8 lines

Hi Kukjin,

Could you check the validity of this patch please?

I think we should apply it on top of your series. I've generated the patch using 'git format-patch -D' for brevity, so be careful to actually delete the unused files if you want to apply it to a local branch on your side.

Quoted 5 lines
Quoted 3 lines

Great. This is the piece that I wanted to see in the non-DT-removal branch before I pulled it.

Yeah, I think so. But as Arnd suggested, I'm looking at Tomasz's patches and it will be sorted out in this weekend.

Yes, please pick up Thomasz' patches instead (and his follow-up ones early next week).

-Olof