21 lines
402 B
C
21 lines
402 B
C
|
#ifndef AT91_PIO_H_
|
||
|
#define AT91_PIO_H_
|
||
|
|
||
|
#include <stdint.h>
|
||
|
|
||
|
struct pio_pinchange_isr {
|
||
|
uint32_t mask;
|
||
|
void (*func)(uint32_t status, uint32_t input);
|
||
|
};
|
||
|
|
||
|
#define PIO_PINCHANGE_ISR(mask, func) \
|
||
|
static struct pio_pinchange_isr \
|
||
|
__attribute__((used, section(".pio_isr"))) \
|
||
|
pio_isr_##func = { mask, &func };
|
||
|
|
||
|
|
||
|
void pio_trigger_isr(uint32_t mask);
|
||
|
void at91_pio_init(void);
|
||
|
|
||
|
#endif /*AT91_PIO_H_*/
|