]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-avr32/arch-at32ap/portmux.h
[AVR32] Add Atmel SSC driver platform device to AT32AP architecture
[linux-2.6-omap-h63xx.git] / include / asm-avr32 / arch-at32ap / portmux.h
index 4d50421262a1e3948ee1de525bd51e0da75306b6..9930871decde1e61bbb522b9d9243759263f773c 100644 (file)
@@ -7,10 +7,22 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
-#ifndef __ASM_AVR32_AT32_PORTMUX_H__
-#define __ASM_AVR32_AT32_PORTMUX_H__
+#ifndef __ASM_ARCH_PORTMUX_H__
+#define __ASM_ARCH_PORTMUX_H__
 
-void portmux_set_func(unsigned int portmux_id, unsigned int pin_id,
-                     unsigned int function_id);
+/*
+ * Set up pin multiplexing, called from board init only.
+ *
+ * The following flags determine the initial state of the pin.
+ */
+#define AT32_GPIOF_PULLUP      0x00000001      /* (not-OUT) Enable pull-up */
+#define AT32_GPIOF_OUTPUT      0x00000002      /* (OUT) Enable output driver */
+#define AT32_GPIOF_HIGH                0x00000004      /* (OUT) Set output high */
+#define AT32_GPIOF_DEGLITCH    0x00000008      /* (IN) Filter glitches */
+
+void at32_select_periph(unsigned int pin, unsigned int periph,
+                       unsigned long flags);
+void at32_select_gpio(unsigned int pin, unsigned long flags);
+void at32_reserve_pin(unsigned int pin);
 
-#endif /* __ASM_AVR32_AT32_PORTMUX_H__ */
+#endif /* __ASM_ARCH_PORTMUX_H__ */