diff options
-rw-r--r-- | firmware/src/dfu/dbgu.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/firmware/src/dfu/dbgu.c b/firmware/src/dfu/dbgu.c index a95322f..725d495 100644 --- a/firmware/src/dfu/dbgu.c +++ b/firmware/src/dfu/dbgu.c @@ -63,8 +63,12 @@ void AT91F_DBGU_Init(void) AT91F_US_EnableIt((AT91PS_USART) AT91C_BASE_DBGU, AT91C_US_RXRDY); /* open interrupt */ + + /* FIXME: This should be HIGH_LEVEL, but somehow this triggers an + * interrupt storm. no idea why it's working in 'os' but not in 'dfu' + * */ AT91F_AIC_ConfigureIt(AT91C_BASE_AIC, AT91C_ID_SYS, USART_SYS_LEVEL, - AT91C_AIC_SRCTYPE_INT_HIGH_LEVEL, + AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE, DBGU_irq_handler); AT91F_AIC_EnableIt(AT91C_BASE_AIC, AT91C_ID_SYS); |