summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap1/gpio16xx.c
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2012-02-24 19:34:33 +0100
committerTony Lindgren <tony@atomide.com>2012-02-24 19:34:33 +0100
commit63325ff235deeed5a5fc25705e292239115c76cd (patch)
tree115ac82cd6f5c5abaaf7b1e622a9b522914ca05a /arch/arm/mach-omap1/gpio16xx.c
parentARM: OMAP: Move omap_init_consistent_dma_size() to local common.h (diff)
downloadlinux-63325ff235deeed5a5fc25705e292239115c76cd.tar.xz
linux-63325ff235deeed5a5fc25705e292239115c76cd.zip
ARM: OMAP1: Move 16xx GPIO system clock to platform init code
This way we can remove omap_read/write call from the GPIO driver and remove include to linux/io.h. Cc: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap1/gpio16xx.c')
-rw-r--r--arch/arm/mach-omap1/gpio16xx.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-omap1/gpio16xx.c b/arch/arm/mach-omap1/gpio16xx.c
index 0f399bd0e70e..99cabc498ab5 100644
--- a/arch/arm/mach-omap1/gpio16xx.c
+++ b/arch/arm/mach-omap1/gpio16xx.c
@@ -218,6 +218,13 @@ static int __init omap16xx_gpio_init(void)
if (!cpu_is_omap16xx())
return -EINVAL;
+ /*
+ * Enable system clock for GPIO module.
+ * The CAM_CLK_CTRL *is* really the right place.
+ */
+ omap_writel(omap_readl(ULPD_CAM_CLK_CTRL) | 0x04,
+ ULPD_CAM_CLK_CTRL);
+
for (i = 0; i < ARRAY_SIZE(omap16xx_gpio_dev); i++)
platform_device_register(omap16xx_gpio_dev[i]);