summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Fainelli <florian.fainelli@telecomint.eu>2008-01-30 13:33:35 +0100
committerIngo Molnar <mingo@elte.hu>2008-01-30 13:33:35 +0100
commita608295935d237bdbe95eefdba1e3fa40676df31 (patch)
tree6b35ecf726f7487dc6fc0e9b1097604021eb72bd
parentade761496dcd0aea1c41da21d5a6ced4897f02e7 (diff)
downloadop-kernel-dev-a608295935d237bdbe95eefdba1e3fa40676df31.zip
op-kernel-dev-a608295935d237bdbe95eefdba1e3fa40676df31.tar.gz
x86: add generic GPIO support to x86
This patch adds the generic GPIO support to the x86 architecture. We do the same as for MIPS, we let the machine override the gpio callbacks and provide defaults one in mach-generic. Signed-off-by: Florian Fainelli <florian.fainelli@telecomint.eu> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/Kconfig3
-rw-r--r--include/asm-x86/gpio.h6
-rw-r--r--include/asm-x86/mach-generic/gpio.h15
3 files changed, 24 insertions, 0 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 8e1b33c..32e2671 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -72,6 +72,9 @@ config GENERIC_BUG
config GENERIC_HWEIGHT
def_bool y
+config GENERIC_GPIO
+ def_bool n
+
config ARCH_MAY_HAVE_PC_FDC
def_bool y
diff --git a/include/asm-x86/gpio.h b/include/asm-x86/gpio.h
new file mode 100644
index 0000000..ff87fca
--- /dev/null
+++ b/include/asm-x86/gpio.h
@@ -0,0 +1,6 @@
+#ifndef _ASM_I386_GPIO_H
+#define _ASM_I386_GPIO_H
+
+#include <gpio.h>
+
+#endif /* _ASM_I386_GPIO_H */
diff --git a/include/asm-x86/mach-generic/gpio.h b/include/asm-x86/mach-generic/gpio.h
new file mode 100644
index 0000000..5305dcb
--- /dev/null
+++ b/include/asm-x86/mach-generic/gpio.h
@@ -0,0 +1,15 @@
+#ifndef __ASM_MACH_GENERIC_GPIO_H
+#define __ASM_MACH_GENERIC_GPIO_H
+
+int gpio_request(unsigned gpio, const char *label);
+void gpio_free(unsigned gpio);
+int gpio_direction_input(unsigned gpio);
+int gpio_direction_output(unsigned gpio, int value);
+int gpio_get_value(unsigned gpio);
+void gpio_set_value(unsigned gpio, int value);
+int gpio_to_irq(unsigned gpio);
+int irq_to_gpio(unsigned irq);
+
+#include <asm-generic/gpio.h> /* cansleep wrappers */
+
+#endif /* __ASM_MACH_GENERIC_GPIO_H */
OpenPOWER on IntegriCloud