- Main Page
- Related Pages
- Data Structures
- Files

- File List
- Globals

# include/gpio/gpio_irq_handler.h

Go to the documentation of this file.

    00001
    00041 #ifndef GPIO_GPIO_IRQ_HANDLER_H_INCLUDED
    00042 #define GPIO_GPIO_IRQ_HANDLER_H_INCLUDED
    00043
    00044 #include <slist.h>
    00045 #include <chip/portmux.h>
    00046
    00050 struct gpio_irq_handler {
    00052         struct slist_node       node;
    00054         gpio_pin_t              pin;
    00056         void                    (*handler)(void *data);
    00058         void                    *data;
    00059 };
    00060
    00068 static inline void gpio_init_irq_handler(struct gpio_irq_handler *irqh,
    00069                 gpio_pin_t pin, void (*handler)(void *data), void *data)
    00070 {
    00071         irqh->pin = pin;
    00072         irqh->handler = handler;
    00073         irqh->data = data;
    00074 }
    00075
    00081 extern void gpio_register_irq_handler(struct gpio_irq_handler *irqh);
    00082
    00087 extern void gpio_priv_irq_group_interrupt(void *data);
    00088
    00089 #endif /* GPIO_GPIO_IRQ_HANDLER_H_INCLUDED */
    00090