summaryrefslogtreecommitdiff
path: root/firmware/src/dfu
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/src/dfu')
-rw-r--r--firmware/src/dfu/dbgu.c6
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);
personal git repositories of Harald Welte. Your mileage may vary