diff options
Diffstat (limited to 'LUFA/Drivers/USB/LowLevel/LowLevel.c')
-rw-r--r-- | LUFA/Drivers/USB/LowLevel/LowLevel.c | 34 |
1 files changed, 9 insertions, 25 deletions
diff --git a/LUFA/Drivers/USB/LowLevel/LowLevel.c b/LUFA/Drivers/USB/LowLevel/LowLevel.c index cd7fa891d..41d9e10cc 100644 --- a/LUFA/Drivers/USB/LowLevel/LowLevel.c +++ b/LUFA/Drivers/USB/LowLevel/LowLevel.c @@ -54,8 +54,6 @@ void USB_Init( #endif
)
{
- USB_ShutDown();
-
#if defined(USB_CAN_BE_BOTH)
USB_CurrentMode = Mode;
#endif
@@ -120,29 +118,9 @@ void USB_ShutDown(void) EVENT_USB_Disconnect();
#endif
+ USB_ResetInterface();
USB_Detach();
-
- USB_INT_DisableAllInterrupts();
- USB_INT_ClearAllInterrupts();
-
- USB_IsInitialized = false;
-
- #if defined(USB_CAN_BE_HOST)
- USB_HostState = HOST_STATE_Unattached;
- #endif
-
- #if defined(USB_CAN_BE_DEVICE)
- USB_DeviceState = DEVICE_STATE_Unattached;
- USB_ConfigurationNumber = 0;
- USB_RemoteWakeupEnabled = false;
- USB_CurrentlySelfPowered = false;
- #endif
-
- #if defined(CAN_BE_BOTH)
- USB_CurrentMode = USB_MODE_NONE;
- #endif
-
- USB_Interface_Disable();
+ USB_Controller_Disable();
USB_PLL_Off();
#if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)
@@ -152,6 +130,12 @@ void USB_ShutDown(void) #if defined(USB_CAN_BE_BOTH)
UHWCON &= ~(1 << UIDE);
#endif
+
+ USB_IsInitialized = false;
+
+ #if defined(CAN_BE_BOTH)
+ USB_CurrentMode = USB_MODE_NONE;
+ #endif
}
void USB_ResetInterface(void)
@@ -180,7 +164,7 @@ void USB_ResetInterface(void) while (!(USB_PLL_IsReady()));
}
- USB_Interface_Reset();
+ USB_Controller_Reset();
#if defined(USB_CAN_BE_BOTH)
if (UHWCON & (1 << UIDE))
|