ARM: gpio: make trivial GPIOLIB implementation the default
[linux-2.6.git] / arch / arm / plat-orion / include / plat / gpio.h
index 33f6c6a..f7d7630 100644 (file)
 #ifndef __PLAT_GPIO_H
 #define __PLAT_GPIO_H
 
-/*
- * GENERIC_GPIO primitives.
- */
-int gpio_request(unsigned pin, const char *label);
-void gpio_free(unsigned pin);
-int gpio_direction_input(unsigned pin);
-int gpio_direction_output(unsigned pin, int value);
-int gpio_get_value(unsigned pin);
-void gpio_set_value(unsigned pin, int value);
+#include <linux/init.h>
 
 /*
  * Orion-specific GPIO API extensions.
@@ -27,15 +19,17 @@ void gpio_set_value(unsigned pin, int value);
 void orion_gpio_set_unused(unsigned pin);
 void orion_gpio_set_blink(unsigned pin, int blink);
 
-#define GPIO_BIDI_OK           (1 << 0)
-#define GPIO_INPUT_OK          (1 << 1)
-#define GPIO_OUTPUT_OK         (1 << 2)
+#define GPIO_INPUT_OK          (1 << 0)
+#define GPIO_OUTPUT_OK         (1 << 1)
 void orion_gpio_set_valid(unsigned pin, int mode);
 
+/* Initialize gpiolib. */
+void __init orion_gpio_init(int gpio_base, int ngpio,
+                           u32 base, int mask_offset, int secondary_irq_base);
+
 /*
  * GPIO interrupt handling.
  */
-extern struct irq_chip orion_gpio_irq_chip;
 void orion_gpio_irq_handler(int irqoff);