More AVR32 UC3B architecture ports - USB device mode applications can now be sucessfu...
[pub/lufa.git] / LUFA / Drivers / USB / Core / UC3B / USBInterrupt_UC3B.c
index 9324acf..beab9f0 100644 (file)
 \r
 void USB_INT_DisableAllInterrupts(void)\r
 {\r
-       #if defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
-       USBCON &= ~((1 << VBUSTE) | (1 << IDTE));\r
-       #elif defined(USB_SERIES_4_AVR)\r
-       USBCON &= ~(1 << VBUSTE);\r
-       #endif\r
-\r
-       #if defined(USB_CAN_BE_BOTH)\r
-       OTGIEN  = 0;\r
-       #endif\r
-\r
-       #if defined(USB_CAN_BE_HOST)\r
-       UHIEN   = 0;\r
-       #endif\r
+       AVR32_USBB.USBCON.vbuste = false;\r
+       AVR32_USBB.USBCON.idte   = false;\r
 \r
-       #if defined(USB_CAN_BE_DEVICE)\r
-       UDIEN   = 0;\r
-       #endif\r
+       AVR32_USBB.uhinteclr = 0xFFFFFFFF;\r
+       AVR32_USBB.udinteclr = 0xFFFFFFFF;\r
 }\r
 \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
+       AVR32_USBB.USBSTACLR.vbustic = true;\r
+       AVR32_USBB.USBSTACLR.idtic   = true;\r
 \r
-       #if defined(USB_CAN_BE_BOTH)\r
-       OTGINT = 0;\r
-       #endif\r
-\r
-       #if defined(USB_CAN_BE_HOST)\r
-       UHINT  = 0;\r
-       #endif\r
-\r
-       #if defined(USB_CAN_BE_DEVICE)\r
-       UDINT  = 0;\r
-       #endif\r
+       AVR32_USBB.uhintclr = 0xFFFFFFFF;\r
+       AVR32_USBB.udintclr = 0xFFFFFFFF;\r
 }\r
 \r
-ISR(USB_GEN_vect, ISR_BLOCK)\r
+ISR(USB_GEN_vect)\r
 {\r
        #if defined(USB_CAN_BE_DEVICE)\r
        #if !defined(NO_SOF_EVENTS)\r
@@ -83,7 +61,6 @@ ISR(USB_GEN_vect, ISR_BLOCK)
        }\r
        #endif\r
 \r
-       #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
        if (USB_INT_HasOccurred(USB_INT_VBUS) && USB_INT_IsEnabled(USB_INT_VBUS))\r
        {\r
                USB_INT_Clear(USB_INT_VBUS);\r
@@ -99,7 +76,6 @@ ISR(USB_GEN_vect, ISR_BLOCK)
                        EVENT_USB_Device_Disconnect();\r
                }\r
        }\r
-       #endif\r
 \r
        if (USB_INT_HasOccurred(USB_INT_SUSPI) && USB_INT_IsEnabled(USB_INT_SUSPI))\r
        {\r
@@ -110,26 +86,12 @@ ISR(USB_GEN_vect, ISR_BLOCK)
 \r
                USB_CLK_Freeze();\r
 \r
-               if (!(USB_Options & USB_OPT_MANUAL_PLL))\r
-                 USB_PLL_Off();\r
-\r
-               #if defined(USB_SERIES_2_AVR) && !defined(NO_LIMITED_CONTROLLER_CONNECT)\r
-               USB_DeviceState = DEVICE_STATE_Unattached;\r
-               EVENT_USB_Device_Disconnect();\r
-               #else\r
                USB_DeviceState = DEVICE_STATE_Suspended;\r
                EVENT_USB_Device_Suspend();\r
-               #endif\r
        }\r
 \r
        if (USB_INT_HasOccurred(USB_INT_WAKEUPI) && USB_INT_IsEnabled(USB_INT_WAKEUPI))\r
        {\r
-               if (!(USB_Options & USB_OPT_MANUAL_PLL))\r
-               {\r
-                       USB_PLL_On();\r
-                       while (!(USB_PLL_IsReady()));\r
-               }\r
-\r
                USB_CLK_Unfreeze();\r
 \r
                USB_INT_Clear(USB_INT_WAKEUPI);\r
@@ -142,11 +104,7 @@ ISR(USB_GEN_vect, ISR_BLOCK)
                else\r
                  USB_DeviceState = (USB_Device_IsAddressSet()) ? DEVICE_STATE_Configured : DEVICE_STATE_Powered;\r
 \r
-               #if defined(USB_SERIES_2_AVR) && !defined(NO_LIMITED_CONTROLLER_CONNECT)\r
-               EVENT_USB_Device_Connect();\r
-               #else\r
                EVENT_USB_Device_WakeUp();\r
-               #endif\r
        }\r
 \r
        if (USB_INT_HasOccurred(USB_INT_EORSTI) && USB_INT_IsEnabled(USB_INT_EORSTI))\r