diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig index 1516896e8d177d53d1bff8a6c0ed0b1d7cb0eeee..cc7c0b21e2b8c559d05602c2b499cfc93776c3f0 100644 --- a/arch/arm/mach-msm/Kconfig +++ b/arch/arm/mach-msm/Kconfig @@ -11,6 +11,7 @@ config ARCH_MSM7X00A select MSM_SMD select MSM_SMD_PKG3 select CPU_V6 + select GPIO_MSM_V1 select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS @@ -22,6 +23,7 @@ config ARCH_MSM7X30 select MSM_VIC select CPU_V7 select MSM_GPIOMUX + select GPIO_MSM_V1 select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS @@ -33,6 +35,7 @@ config ARCH_QSD8X50 select MSM_VIC select CPU_V7 select MSM_GPIOMUX + select GPIO_MSM_V1 select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile index 9519fd28a025fd415abf9b7a591ac167085dac18..c0709afd21309fe42836a1828a2e1caa41e490e2 100644 --- a/arch/arm/mach-msm/Makefile +++ b/arch/arm/mach-msm/Makefile @@ -34,6 +34,4 @@ ifndef CONFIG_ARCH_MSM8960 # TODO: TLMM Mapping issues need to be resolved obj-y += gpio-v2.o endif -else -obj-y += gpio.o endif diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index 2967002a9f820b2894dd1f8f1110a47a9694e250..382c67c660701aac39d00e988862efbc3d90ea98 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -90,6 +90,14 @@ config GPIO_EXYNOS4 def_bool y depends on CPU_EXYNOS4210 +config GPIO_MSM_V1 + tristate "Qualcomm MSM GPIO v1" + depends on GPIOLIB && ARCH_MSM + help + Say yes here to support the GPIO interface on ARM v6 based + Qualcomm MSM chips. Most of the pins on the MSM can be + selected for GPIO, and are controlled by this driver. + config GPIO_PLAT_SAMSUNG def_bool y depends on SAMSUNG_GPIOLIB_4BIT diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile index b605f8ec6fbe0afc01e6c4604de67e6a85f98add..72d4e505677364d33952433b6bf46ae4032e1a92 100644 --- a/drivers/gpio/Makefile +++ b/drivers/gpio/Makefile @@ -19,6 +19,7 @@ obj-$(CONFIG_GPIO_MAX7301) += max7301.o obj-$(CONFIG_GPIO_MAX732X) += max732x.o obj-$(CONFIG_GPIO_MC33880) += mc33880.o obj-$(CONFIG_GPIO_MCP23S08) += mcp23s08.o +obj-$(CONFIG_GPIO_MSM_V1) += gpio-msm-v1.o obj-$(CONFIG_GPIO_74X164) += 74x164.o obj-$(CONFIG_ARCH_OMAP) += gpio-omap.o obj-$(CONFIG_GPIO_PCA953X) += pca953x.o diff --git a/arch/arm/mach-msm/gpio.c b/drivers/gpio/gpio-msm-v1.c similarity index 99% rename from arch/arm/mach-msm/gpio.c rename to drivers/gpio/gpio-msm-v1.c index 3bbf50ed2b4268f8e2b6a9ec24efa1b573cb4726..52a4d4286ebad60d9a3cc678b6fd85b514812343 100644 --- a/arch/arm/mach-msm/gpio.c +++ b/drivers/gpio/gpio-msm-v1.c @@ -1,7 +1,6 @@ -/* linux/arch/arm/mach-msm/gpio.c - * +/* * Copyright (C) 2007 Google, Inc. - * Copyright (c) 2009-2010, Code Aurora Forum. All rights reserved. + * Copyright (c) 2009-2011, Code Aurora Forum. All rights reserved. * * This software is licensed under the terms of the GNU General Public * License version 2, as published by the Free Software Foundation, and