From patchwork Wed Nov 25 16:06:54 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 7700861 Return-Path: X-Original-To: patchwork-linux-samsung-soc@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 7FE2BBF90C for ; Wed, 25 Nov 2015 16:08:48 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 3993A2084C for ; Wed, 25 Nov 2015 16:08:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 219C2206FB for ; Wed, 25 Nov 2015 16:08:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753002AbbKYQIA (ORCPT ); Wed, 25 Nov 2015 11:08:00 -0500 Received: from mout.kundenserver.de ([217.72.192.74]:54686 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752882AbbKYQH4 (ORCPT ); Wed, 25 Nov 2015 11:07:56 -0500 Received: from wuerfel.lan. ([134.3.118.24]) by mrelayeu.kundenserver.de (mreue103) with ESMTPSA (Nemesis) id 0LjtbV-1acbAt2CUb-00bw7F; Wed, 25 Nov 2015 17:07:10 +0100 From: Arnd Bergmann To: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org, Kukjin Kim , Krzysztof Kozlowski , Mark Brown , Vasily Khoruzhick , Charles Keepax , Tomasz Figa , Ben Dooks , linux-samsung-soc@vger.kernel.org, Arnd Bergmann Subject: [PATCH 09/10] ARM: s3c64xx: multiplatform support Date: Wed, 25 Nov 2015 17:06:54 +0100 Message-Id: <1448467615-447097-10-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.1.0.rc2 In-Reply-To: <1448467615-447097-1-git-send-email-arnd@arndb.de> References: <1448467615-447097-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:cG2bnjZlxaX/lYhCdnIcemxp4WS4YY7fr9R1vG2UX+lV7uCbgil 1xfLqP3AqAuW7dnEJLM2GNwXbCvP5pkBPBIrcaER5PfXtz7kzvTYJDFmDLQTbtvtn9a64Qu LPfatUdS7kYk/w0zgZxocebbcdEMpnb7O6BAdLAgVu65WO5rn9DiWAsABfQn80vyVUmforX BecdpFj+tvtbSqTqeK2fQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:d8zqBRnpkNw=:qQ+fu/ySCDL/8gzRd0a8vC x0x6m5YcQnq+yZjQVcMVdxejQ/Q8c2PzPcPYFsRtZpuA8WLDc2tscDIoA7f26JpiCu0x6Whdo mB0J2iORVUjJoPBcr+8dy+B9/n6PIq1Ph8vzeQQs4a2ivx3GkiY5Thy91LjmUxqYrkz6ClOZl GN+ZksxHgoDvGfQnaVOjRfIE9JpZFpL6D1EJ4UglwBXlsCke5CrTYYnrvVVTPWGR2nOty0uXT ArjrHTpOdN0YMdbPB3+elyCTgCiToD+ksjKltIFkVbb77zKHHSetyIM/ZDxMSwGCZoyV0zpMh qALM/35aPrCB3VWJol+nzeR2eqGAVKs/oIxGqt3dLxKl1FgskjmVYZGk50qUQLDQtU7+NrFkx 3z13c18wwy6xPqIgWHb67cuQ456eULzitwSHiEkXLhFouCiP0luV0BumPvOn0r5hIP106NuAz +5E0CHLCSq40A1feKb7uK5TFyxeTXdeoE4mAW5eEhUxmM4+df80xnv9wX8r2EM6Ak0EghIIsR /8GbbnulNBwe/5wLLy54EPl5biabEADOdvGBQftK1FBvRrlzBdxDO9nkk2N+3nB7oGzwfqsN5 xgeR97aLBPjf6p3Rf4Rh3rRTu+Lo9j4XaOl1axK013AVRrNvFX7HsTMivHTau4MXwhdM8tDRE pecKMU4JRZbHcBs/IL6n6sX8nYdlcmhQMWN6QpzbXi+8bpNbXMYrcR8T8NCW+JhyTbSw= Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org X-Spam-Status: No, score=-7.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP After all preparation work is done, we can finally move the Kconfig option for s3c64xx into ARCH_MULTIPLATFORM. This implies allowing SAMSUNG_ATAGS for multiplatform again, but now disallowing the ADC driver below it, as that still has dependencies on header files. Signed-off-by: Arnd Bergmann --- arch/arm/Kconfig | 27 --------------------------- arch/arm/configs/multi_v7_defconfig | 3 +++ arch/arm/configs/s3c6400_defconfig | 2 ++ arch/arm/mach-s3c64xx/Kconfig | 22 +++++++++++++++++++++- arch/arm/mach-s3c64xx/Makefile | 3 +++ arch/arm/plat-samsung/Kconfig | 2 +- arch/arm/plat-samsung/Makefile | 3 ++- 7 files changed, 32 insertions(+), 30 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 1ec6a153d8e5..f08306499a82 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -626,33 +626,6 @@ config ARCH_S3C24XX (), the IPAQ 1940 or the Samsung SMDK2410 development board (and derivatives). -config ARCH_S3C64XX - bool "Samsung S3C64XX" - select ARCH_REQUIRE_GPIOLIB - select ARM_AMBA - select ARM_VIC - select ATAGS - select CLKDEV_LOOKUP - select CLKSRC_SAMSUNG_PWM - select COMMON_CLK_SAMSUNG - select CPU_V6K - select GENERIC_CLOCKEVENTS - select GPIO_SAMSUNG - select HAVE_S3C2410_I2C if I2C - select HAVE_S3C2410_WATCHDOG if WATCHDOG - select HAVE_TCM - select NO_IOPORT_MAP - select PLAT_SAMSUNG - select PM_GENERIC_DOMAINS if PM - select S3C_DEV_NAND - select S3C_GPIO_TRACK - select SAMSUNG_ATAGS - select SAMSUNG_WAKEMASK - select SAMSUNG_WDT_RESET - select SPARSE_IRQ - help - Samsung S3C64XX series based systems - config ARCH_DAVINCI bool "TI DaVinci" select ARCH_HAS_HOLES_MEMORYMODEL diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig index c8953e102a7c..44f0f2a8124d 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -11,6 +11,9 @@ CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y CONFIG_PARTITION_ADVANCED=y CONFIG_CMDLINE_PARTITION=y +CONFIG_ARCH_MULTI_V7=y +# CONFIG_ARCH_MULTI_V5 is not set +# CONFIG_ARCH_MULTI_V4 is not set CONFIG_ARCH_VIRT=y CONFIG_ARCH_ALPINE=y CONFIG_ARCH_MVEBU=y diff --git a/arch/arm/configs/s3c6400_defconfig b/arch/arm/configs/s3c6400_defconfig index e2f9fa5bb54b..e0f66936ae02 100644 --- a/arch/arm/configs/s3c6400_defconfig +++ b/arch/arm/configs/s3c6400_defconfig @@ -5,6 +5,8 @@ CONFIG_KALLSYMS_ALL=y CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y # CONFIG_BLK_DEV_BSG is not set +CONFIG_ARCH_MULTI_V6=y +# CONFIG_ARCH_MULTI_V7 is not set CONFIG_ARCH_S3C64XX=y CONFIG_S3C_BOOT_ERROR_RESET=y CONFIG_MACH_SMDK6400=y diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig index 28c7097e8506..caf71a99389e 100644 --- a/arch/arm/mach-s3c64xx/Kconfig +++ b/arch/arm/mach-s3c64xx/Kconfig @@ -2,6 +2,27 @@ # Simtec Electronics, Ben Dooks # # Licensed under GPLv2 +menuconfig ARCH_S3C64XX + bool "Samsung S3C64XX" if ARCH_MULTI_V6 + select ARCH_REQUIRE_GPIOLIB + select ARM_AMBA + select ARM_VIC + select ATAGS + select CLKSRC_SAMSUNG_PWM + select COMMON_CLK_SAMSUNG + select GPIO_SAMSUNG + select HAVE_S3C2410_I2C if I2C + select HAVE_S3C2410_WATCHDOG if WATCHDOG + select HAVE_TCM + select PLAT_SAMSUNG + select PM_GENERIC_DOMAINS if PM + select S3C_DEV_NAND + select S3C_GPIO_TRACK + select SAMSUNG_ATAGS + select SAMSUNG_WAKEMASK if PM + select SAMSUNG_WDT_RESET + help + Samsung S3C64XX series based systems if ARCH_S3C64XX @@ -310,7 +331,6 @@ config MACH_S3C64XX_DT select CPU_S3C6410 select PINCTRL select PINCTRL_S3C64XX - select USE_OF help Machine support for Samsung S3C6400/S3C6410 machines with Device Tree enabled. diff --git a/arch/arm/mach-s3c64xx/Makefile b/arch/arm/mach-s3c64xx/Makefile index bb233f342f31..04cdcd40e23c 100644 --- a/arch/arm/mach-s3c64xx/Makefile +++ b/arch/arm/mach-s3c64xx/Makefile @@ -5,6 +5,9 @@ # # Licensed under GPLv2 +ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include +asflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include -I$(srctree)/arch/arm/plat-samsung/include + # Core obj-y += common.o diff --git a/arch/arm/plat-samsung/Kconfig b/arch/arm/plat-samsung/Kconfig index 83697414bfa0..aa78c72fcecd 100644 --- a/arch/arm/plat-samsung/Kconfig +++ b/arch/arm/plat-samsung/Kconfig @@ -39,7 +39,6 @@ config S3C_LOWLEVEL_UART_PORT config SAMSUNG_ATAGS def_bool n - depends on !ARCH_MULTIPLATFORM depends on ATAGS help This option enables ATAGS based boot support code for @@ -70,6 +69,7 @@ config S3C_GPIO_TRACK config S3C_ADC bool "ADC common driver support" + depends on !ARCH_MULTIPLATFORM help Core support for the ADC block found in the Samsung SoC systems for drivers such as the touchscreen and hwmon to use to share diff --git a/arch/arm/plat-samsung/Makefile b/arch/arm/plat-samsung/Makefile index aeb19e3288b9..be172efec15c 100644 --- a/arch/arm/plat-samsung/Makefile +++ b/arch/arm/plat-samsung/Makefile @@ -4,7 +4,8 @@ # # Licensed under GPLv2 -ccflags-$(CONFIG_ARCH_MULTI_V7) += -I$(srctree)/$(src)/include +ccflags-$(CONFIG_ARCH_S3C64XX) := -I$(srctree)/arch/arm/mach-s3c64xx/include +ccflags-$(CONFIG_ARCH_MULTIPLATFORM) += -I$(srctree)/$(src)/include # Objects we always build independent of SoC choice