More AVR32 achitecture ports.
[pub/USBasp.git] / LUFA / Drivers / USB / HighLevel / USBInterrupt.c
index ee6d16e..f009a0a 100644 (file)
@@ -28,6 +28,7 @@
   this software.\r
 */\r
 \r
+#define  __INCLUDE_FROM_USB_DRIVER\r
 #include "USBInterrupt.h"\r
 \r
 void USB_INT_DisableAllInterrupts(void)\r
@@ -50,17 +51,24 @@ void USB_INT_DisableAllInterrupts(void)
 \r
 void USB_INT_ClearAllInterrupts(void)\r
 {\r
-       #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
-       USBINT  = 0;\r
-       #endif\r
-       \r
-       #if defined(USB_CAN_BE_HOST)\r
-       UHINT   = 0;\r
-       OTGINT  = 0;\r
-       #endif\r
-       \r
-       #if defined(USB_CAN_BE_DEVICE)\r
-       UDINT   = 0;\r
+       #if defined(__AVR32__)\r
+               AVR32_USBB.USBSTACLR = 0xFFFFFF;\r
+               AVR32_USBB.UHINTCLR = 0xFFFFFF;\r
+               AVR32_USBB.UECONX = \r
+               AVR32_USBB.UDINTCLR = 0xFFFFFF;         \r
+       #elif defined(__AVR__)\r
+               #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
+               USBINT  = 0;\r
+               #endif\r
+               \r
+               #if defined(USB_CAN_BE_HOST)\r
+               UHINT   = 0;\r
+               OTGINT  = 0;\r
+               #endif\r
+               \r
+               #if defined(USB_CAN_BE_DEVICE)\r
+               UDINT   = 0;\r
+               #endif\r
        #endif\r
 }\r
 \r