summaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorRyan Mallon <rmallon@gmail.com>2012-01-10 23:58:30 +0100
committerRyan Mallon <rmallon@gmail.com>2012-03-14 01:42:30 +0100
commit08932d81961b1c57870949d069ce2dad235da443 (patch)
treecd1a70688920cd83632c116019dd6e7d9152f00a /arch/arm
parentep93xx: Move peripheral defines to local SoC header (diff)
downloadlinux-08932d81961b1c57870949d069ce2dad235da443.tar.xz
linux-08932d81961b1c57870949d069ce2dad235da443.zip
ep93xx: Configure GPIO ports in core code
Move the pinmux setting of the EP93xx GPIOs to the core code. This removes the need for the GPIO driver to have access to the system controller registers. Signed-off-by: Ryan Mallon <rmallon@gmail.com> Cc: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Mika Westerberg <mika.westerberg@iki.fi> Acked-by: Hartley Sweeten <hsweeten@visionengravers.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-ep93xx/core.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-ep93xx/core.c b/arch/arm/mach-ep93xx/core.c
index 776b34619901..bab6e470cbd7 100644
--- a/arch/arm/mach-ep93xx/core.c
+++ b/arch/arm/mach-ep93xx/core.c
@@ -909,6 +909,13 @@ void __init ep93xx_init_devices(void)
/* Disallow access to MaverickCrunch initially */
ep93xx_devcfg_clear_bits(EP93XX_SYSCON_DEVCFG_CPENA);
+ /* Default all ports to GPIO */
+ ep93xx_devcfg_set_bits(EP93XX_SYSCON_DEVCFG_KEYS |
+ EP93XX_SYSCON_DEVCFG_GONK |
+ EP93XX_SYSCON_DEVCFG_EONIDE |
+ EP93XX_SYSCON_DEVCFG_GONIDE |
+ EP93XX_SYSCON_DEVCFG_HONIDE);
+
/* Get the GPIO working early, other devices need it */
platform_device_register(&ep93xx_gpio_device);