aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
diff options
context:
space:
mode:
Diffstat (limited to 'LUFA/Drivers/USB/HighLevel/USBInterrupt.c')
-rw-r--r--LUFA/Drivers/USB/HighLevel/USBInterrupt.c29
1 files changed, 18 insertions, 11 deletions
diff --git a/LUFA/Drivers/USB/HighLevel/USBInterrupt.c b/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
index f8da7e656..f009a0aa5 100644
--- a/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
+++ b/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
@@ -51,17 +51,24 @@ void USB_INT_DisableAllInterrupts(void)
void USB_INT_ClearAllInterrupts(void)
{
- #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)
- USBINT = 0;
- #endif
-
- #if defined(USB_CAN_BE_HOST)
- UHINT = 0;
- OTGINT = 0;
- #endif
-
- #if defined(USB_CAN_BE_DEVICE)
- UDINT = 0;
+ #if defined(__AVR32__)
+ AVR32_USBB.USBSTACLR = 0xFFFFFF;
+ AVR32_USBB.UHINTCLR = 0xFFFFFF;
+ AVR32_USBB.UECONX =
+ AVR32_USBB.UDINTCLR = 0xFFFFFF;
+ #elif defined(__AVR__)
+ #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)
+ USBINT = 0;
+ #endif
+
+ #if defined(USB_CAN_BE_HOST)
+ UHINT = 0;
+ OTGINT = 0;
+ #endif
+
+ #if defined(USB_CAN_BE_DEVICE)
+ UDINT = 0;
+ #endif
#endif
}