summaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-mxs.c
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@secretlab.ca>2011-06-06 17:37:58 +0200
committerGrant Likely <grant.likely@secretlab.ca>2011-06-06 17:37:58 +0200
commit7b2fa5702059a03c11f934224724b2f712a749ce (patch)
tree42e9357b0925346fa2639f74e0bf9e13e58915ce /drivers/gpio/gpio-mxs.c
parentLinux 3.0-rc2 (diff)
downloadlinux-7b2fa5702059a03c11f934224724b2f712a749ce.tar.xz
linux-7b2fa5702059a03c11f934224724b2f712a749ce.zip
gpio/mxs: Move Freescale mxs gpio driver to drivers/gpio
GPIO drivers are getting moved to drivers/gpio for cleanup and consolidation. This patch moves the mxs driver. Follow up patches will clean it up and make it a fine upstanding example of a gpio driver. v2: Removed header file entirely and put struct definition directly into driver. The struct isn't used anywhere else in the kernel. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to '')
-rw-r--r--drivers/gpio/gpio-mxs.c (renamed from arch/arm/mach-mxs/gpio.c)11
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/arm/mach-mxs/gpio.c b/drivers/gpio/gpio-mxs.c
index 2c950fef71a8..e26bf309b214 100644
--- a/arch/arm/mach-mxs/gpio.c
+++ b/drivers/gpio/gpio-mxs.c
@@ -29,8 +29,6 @@
#include <mach/mx28.h>
#include <asm-generic/bug.h>
-#include "gpio.h"
-
static struct mxs_gpio_port *mxs_gpio_ports;
static int gpio_table_size;
@@ -50,6 +48,15 @@ static int gpio_table_size;
#define GPIO_INT_LEV_MASK (1 << 0)
#define GPIO_INT_POL_MASK (1 << 1)
+struct mxs_gpio_port {
+ void __iomem *base;
+ int id;
+ int irq;
+ int irq_high;
+ int virtual_irq_start;
+ struct gpio_chip chip;
+};
+
/* Note: This driver assumes 32 GPIOs are handled in one register */
static void clear_gpio_irqstatus(struct mxs_gpio_port *port, u32 index)