From: Tomasz Figa <t.figa@samsung.com> To: linux-samsung-soc@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, Kukjin Kim <kgene.kim@samsung.com>, Arnd Bergmann <arnd@arndb.de>, Olof Johansson <olof@lixom.net>, Marek Szyprowski <m.szyprowski@samsung.com>, Sylwester Nawrocki <s.nawrocki@samsung.com>, Thomas Abraham <thomas.abraham@linaro.org>, Tomasz Figa <t.figa@samsung.com>, Grant Likely <grant.likely@linaro.org>, Linus Walleij <linus.walleij@linaro.org>, Kyungmin Park <kyungmin.park@samsung.com> Subject: [PATCH 14/28] ARM: SAMSUNG: Introduce GPIO_SAMSUNG Kconfig entry Date: Fri, 14 Jun 2013 21:32:50 +0200 [thread overview] Message-ID: <1371238384-1504-15-git-send-email-t.figa@samsung.com> (raw) In-Reply-To: <1371238384-1504-1-git-send-email-t.figa@samsung.com> This patch adds Kconfig entry that selects whether legacy Samsung GPIO driver should be built or not. For platforms that support only DT based boot, the new pinctrl driver is used and so the old one is not needed. Cc: Grant Likely <grant.likely@linaro.org> Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> --- arch/arm/Kconfig | 6 ++++++ arch/arm/plat-samsung/Makefile | 5 +++-- arch/arm/plat-samsung/include/plat/pm.h | 5 +++++ drivers/gpio/Kconfig | 7 +++++++ drivers/gpio/Makefile | 2 +- 5 files changed, 22 insertions(+), 3 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index ae7247d..9c69e6c 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -695,6 +695,7 @@ config ARCH_S3C24XX select CLKDEV_LOOKUP select CLKSRC_MMIO select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -718,6 +719,7 @@ config ARCH_S3C64XX select CLKSRC_MMIO select CPU_V6 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -741,6 +743,7 @@ config ARCH_S5P64X0 select CLKSRC_MMIO select CPU_V6 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -758,6 +761,7 @@ config ARCH_S5PC100 select CLKSRC_MMIO select CPU_V7 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -776,6 +780,7 @@ config ARCH_S5PV210 select CLKSRC_MMIO select CPU_V7 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -795,6 +800,7 @@ config ARCH_EXYNOS select COMMON_CLK select CPU_V7 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG diff --git a/arch/arm/plat-samsung/Makefile b/arch/arm/plat-samsung/Makefile index b549ea9..8d95c15 100644 --- a/arch/arm/plat-samsung/Makefile +++ b/arch/arm/plat-samsung/Makefile @@ -52,10 +52,11 @@ obj-$(CONFIG_SAMSUNG_DMADEV) += dma-ops.o # PM support obj-$(CONFIG_PM) += pm.o -obj-$(CONFIG_PM) += pm-gpio.o +obj-$(CONFIG_GPIO_SAMSUNG) += pm-gpio.o obj-$(CONFIG_SAMSUNG_PM_CHECK) += pm-check.o obj-$(CONFIG_SAMSUNG_WAKEMASK) += wakeup-mask.o -obj-$(CONFIG_S5P_PM) += s5p-pm.o s5p-irq-pm.o +obj-$(CONFIG_S5P_PM) += s5p-pm.o +obj-$(CONFIG_S5P_PM) += s5p-irq-pm.o obj-$(CONFIG_S5P_SLEEP) += s5p-sleep.o diff --git a/arch/arm/plat-samsung/include/plat/pm.h b/arch/arm/plat-samsung/include/plat/pm.h index f6fcade..5d47ca3 100644 --- a/arch/arm/plat-samsung/include/plat/pm.h +++ b/arch/arm/plat-samsung/include/plat/pm.h @@ -166,6 +166,7 @@ extern void s3c_pm_check_store(void); */ extern void s3c_pm_configure_extint(void); +#ifdef CONFIG_GPIO_SAMSUNG /** * samsung_pm_restore_gpios() - restore the state of the gpios after sleep. * @@ -181,6 +182,10 @@ extern void samsung_pm_restore_gpios(void); * Save the GPIO states for resotration on resume. See samsung_pm_restore_gpios(). */ extern void samsung_pm_save_gpios(void); +#else +static inline void samsung_pm_restore_gpios(void) {} +static inline void samsung_pm_save_gpios(void) {} +#endif extern void s3c_pm_save_core(void); extern void s3c_pm_restore_core(void); diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index 573c449..9c993ed 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -209,6 +209,13 @@ config GPIO_RCAR help Say yes here to support GPIO on Renesas R-Car SoCs. +config GPIO_SAMSUNG + bool + depends on PLAT_SAMSUNG + help + Legacy GPIO support. Use only for platforms without support for + pinctrl. + config GPIO_SPEAR_SPICS bool "ST SPEAr13xx SPI Chip Select as GPIO support" depends on PLAT_SPEAR diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile index 0cb2d65..ef3e983 100644 --- a/drivers/gpio/Makefile +++ b/drivers/gpio/Makefile @@ -59,7 +59,7 @@ 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_GPIO_SAMSUNG) += gpio-samsung.o obj-$(CONFIG_ARCH_SA1100) += gpio-sa1100.o obj-$(CONFIG_GPIO_SCH) += gpio-sch.o obj-$(CONFIG_GPIO_SODAVILLE) += gpio-sodaville.o -- 1.8.2.1
WARNING: multiple messages have this Message-ID (diff)
From: t.figa@samsung.com (Tomasz Figa) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 14/28] ARM: SAMSUNG: Introduce GPIO_SAMSUNG Kconfig entry Date: Fri, 14 Jun 2013 21:32:50 +0200 [thread overview] Message-ID: <1371238384-1504-15-git-send-email-t.figa@samsung.com> (raw) In-Reply-To: <1371238384-1504-1-git-send-email-t.figa@samsung.com> This patch adds Kconfig entry that selects whether legacy Samsung GPIO driver should be built or not. For platforms that support only DT based boot, the new pinctrl driver is used and so the old one is not needed. Cc: Grant Likely <grant.likely@linaro.org> Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> --- arch/arm/Kconfig | 6 ++++++ arch/arm/plat-samsung/Makefile | 5 +++-- arch/arm/plat-samsung/include/plat/pm.h | 5 +++++ drivers/gpio/Kconfig | 7 +++++++ drivers/gpio/Makefile | 2 +- 5 files changed, 22 insertions(+), 3 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index ae7247d..9c69e6c 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -695,6 +695,7 @@ config ARCH_S3C24XX select CLKDEV_LOOKUP select CLKSRC_MMIO select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -718,6 +719,7 @@ config ARCH_S3C64XX select CLKSRC_MMIO select CPU_V6 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -741,6 +743,7 @@ config ARCH_S5P64X0 select CLKSRC_MMIO select CPU_V6 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -758,6 +761,7 @@ config ARCH_S5PC100 select CLKSRC_MMIO select CPU_V7 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -776,6 +780,7 @@ config ARCH_S5PV210 select CLKSRC_MMIO select CPU_V7 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG @@ -795,6 +800,7 @@ config ARCH_EXYNOS select COMMON_CLK select CPU_V7 select GENERIC_CLOCKEVENTS + select GPIO_SAMSUNG select HAVE_CLK select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG diff --git a/arch/arm/plat-samsung/Makefile b/arch/arm/plat-samsung/Makefile index b549ea9..8d95c15 100644 --- a/arch/arm/plat-samsung/Makefile +++ b/arch/arm/plat-samsung/Makefile @@ -52,10 +52,11 @@ obj-$(CONFIG_SAMSUNG_DMADEV) += dma-ops.o # PM support obj-$(CONFIG_PM) += pm.o -obj-$(CONFIG_PM) += pm-gpio.o +obj-$(CONFIG_GPIO_SAMSUNG) += pm-gpio.o obj-$(CONFIG_SAMSUNG_PM_CHECK) += pm-check.o obj-$(CONFIG_SAMSUNG_WAKEMASK) += wakeup-mask.o -obj-$(CONFIG_S5P_PM) += s5p-pm.o s5p-irq-pm.o +obj-$(CONFIG_S5P_PM) += s5p-pm.o +obj-$(CONFIG_S5P_PM) += s5p-irq-pm.o obj-$(CONFIG_S5P_SLEEP) += s5p-sleep.o diff --git a/arch/arm/plat-samsung/include/plat/pm.h b/arch/arm/plat-samsung/include/plat/pm.h index f6fcade..5d47ca3 100644 --- a/arch/arm/plat-samsung/include/plat/pm.h +++ b/arch/arm/plat-samsung/include/plat/pm.h @@ -166,6 +166,7 @@ extern void s3c_pm_check_store(void); */ extern void s3c_pm_configure_extint(void); +#ifdef CONFIG_GPIO_SAMSUNG /** * samsung_pm_restore_gpios() - restore the state of the gpios after sleep. * @@ -181,6 +182,10 @@ extern void samsung_pm_restore_gpios(void); * Save the GPIO states for resotration on resume. See samsung_pm_restore_gpios(). */ extern void samsung_pm_save_gpios(void); +#else +static inline void samsung_pm_restore_gpios(void) {} +static inline void samsung_pm_save_gpios(void) {} +#endif extern void s3c_pm_save_core(void); extern void s3c_pm_restore_core(void); diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index 573c449..9c993ed 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -209,6 +209,13 @@ config GPIO_RCAR help Say yes here to support GPIO on Renesas R-Car SoCs. +config GPIO_SAMSUNG + bool + depends on PLAT_SAMSUNG + help + Legacy GPIO support. Use only for platforms without support for + pinctrl. + config GPIO_SPEAR_SPICS bool "ST SPEAr13xx SPI Chip Select as GPIO support" depends on PLAT_SPEAR diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile index 0cb2d65..ef3e983 100644 --- a/drivers/gpio/Makefile +++ b/drivers/gpio/Makefile @@ -59,7 +59,7 @@ 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_GPIO_SAMSUNG) += gpio-samsung.o obj-$(CONFIG_ARCH_SA1100) += gpio-sa1100.o obj-$(CONFIG_GPIO_SCH) += gpio-sch.o obj-$(CONFIG_GPIO_SODAVILLE) += gpio-sodaville.o -- 1.8.2.1
next prev parent reply other threads:[~2013-06-14 19:33 UTC|newest] Thread overview: 87+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-06-14 19:32 [PATCH 00/28] Twenty eight patches big Exynos cleanup Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 02/28] ARM: EXYNOS: Make ARCH_EXYNOS select USE_OF Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 03/28] ARM: SAMSUNG: Introduce SAMSUNG_ATAGS Kconfig entry Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 04/28] ARM: EXYNOS: common: Remove legacy PMU initialization code Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 05/28] ARM: EXYNOS: common: Remove legacy EINT " Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 06/28] ARM: EXYNOS: common: Remove legacy UART " Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 07/28] ARM: EXYNOS: Remove legacy dev- and setup- files Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 08/28] ARM: EXYNOS: common: Remove legacy interrupt initialization code Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 09/28] ARM: EXYNOS: common: Remove legacy timer " Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 10/28] ARM: EXYNOS: common: Remove platform device initialization Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 11/28] ARM: EXYNOS: common: Remove legacy mapping of chip ID block Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 12/28] ARM: EXYNOS: firmware: Remove check for device tree presence Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 13/28] ARM: EXYNOS: pm_domains: Remove legacy power domain registration code Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa [this message] 2013-06-14 19:32 ` [PATCH 14/28] ARM: SAMSUNG: Introduce GPIO_SAMSUNG Kconfig entry Tomasz Figa 2013-06-17 9:22 ` Linus Walleij 2013-06-17 9:22 ` Linus Walleij 2013-06-14 19:32 ` [PATCH 15/28] ARM: EXYNOS: Provide compatibility stubs for PM code in pm-core.h header Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 16/28] ARM: SAMSUNG: Compile s5p-irq-pm only with ATAGS support Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 17/28] ARM: EXYNOS: Decouple ARCH_EXYNOS from PLAT_S5P Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-15 1:52 ` Kukjin Kim 2013-06-15 1:52 ` Kukjin Kim 2013-06-15 12:02 ` Tomasz Figa 2013-06-15 12:02 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 18/28] ARM: SAMSUNG: pm: Include most of mach/ headers conditionally Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 19/28] ARM: EXYNOS: Do not select legacy Kconfig symbols any more Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 20/28] ARM: EXYNOS: Remove setup-i2c0.c Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-15 1:54 ` Kukjin Kim 2013-06-15 1:54 ` Kukjin Kim 2013-06-15 12:03 ` Tomasz Figa 2013-06-15 12:03 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 21/28] ARM: EXYNOS: Remove mach/gpio.h Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 22/28] ARM: EXYNOS: Remove mach/regs-gpio.h header Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:32 ` [PATCH 23/28] ARM: SAMSUNG: Make legacy MFC support code depend on SAMSUNG_ATAGS Tomasz Figa 2013-06-14 19:32 ` Tomasz Figa 2013-06-14 19:33 ` [PATCH 24/28] ARM: EXYNOS: Select SPARSE_IRQ for Exynos Tomasz Figa 2013-06-14 19:33 ` Tomasz Figa 2013-06-14 19:33 ` [PATCH 25/28] ARM: EXYNOS: Remove mach/irqs.h header Tomasz Figa 2013-06-14 19:33 ` Tomasz Figa 2013-06-14 19:33 ` [PATCH 26/28] ARM: EXYNOS: Remove unused base addresses from mach/map.h header Tomasz Figa 2013-06-14 19:33 ` Tomasz Figa 2013-06-14 19:33 ` [PATCH 27/28] ARM: EXYNOS: Remove CONFIG_SOC_EXYNOS4412 Tomasz Figa 2013-06-14 19:33 ` Tomasz Figa 2013-06-15 2:15 ` Kukjin Kim 2013-06-15 2:15 ` Kukjin Kim 2013-06-15 12:11 ` Tomasz Figa 2013-06-15 12:11 ` Tomasz Figa 2013-06-15 14:06 ` Eduardo Valentin 2013-06-15 14:06 ` Eduardo Valentin 2013-06-15 14:06 ` Eduardo Valentin 2013-06-15 14:39 ` Tomasz Figa 2013-06-15 14:39 ` Tomasz Figa 2013-06-14 19:33 ` [PATCH 28/28] ARM: EXYNOS: Remove mach/regs-usb-phy.h header Tomasz Figa 2013-06-14 19:33 ` Tomasz Figa 2013-06-14 21:26 ` [PATCH 00/28] Twenty eight patches big Exynos cleanup Arnd Bergmann 2013-06-14 21:26 ` Arnd Bergmann 2013-06-14 21:47 ` Tomasz Figa 2013-06-14 21:47 ` Tomasz Figa 2013-06-15 2:20 ` Kukjin Kim 2013-06-15 2:20 ` Kukjin Kim 2013-06-14 22:40 ` Arnd Bergmann 2013-06-14 22:40 ` Arnd Bergmann 2013-06-15 2:30 ` Kukjin Kim 2013-06-15 2:30 ` Kukjin Kim 2013-06-15 12:19 ` Tomasz Figa 2013-06-15 12:19 ` Tomasz Figa
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1371238384-1504-15-git-send-email-t.figa@samsung.com \ --to=t.figa@samsung.com \ --cc=arnd@arndb.de \ --cc=grant.likely@linaro.org \ --cc=kgene.kim@samsung.com \ --cc=kyungmin.park@samsung.com \ --cc=linus.walleij@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-samsung-soc@vger.kernel.org \ --cc=m.szyprowski@samsung.com \ --cc=olof@lixom.net \ --cc=s.nawrocki@samsung.com \ --cc=thomas.abraham@linaro.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.