/*\r
LUFA Library\r
- Copyright (C) Dean Camera, 2009.\r
+ Copyright (C) Dean Camera, 2010.\r
\r
dean [at] fourwalledcubicle [dot] com\r
www.fourwalledcubicle.com\r
*/\r
\r
/*\r
- Copyright 2009 Dean Camera (dean [at] fourwalledcubicle [dot] com)\r
+ Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com)\r
\r
Permission to use, copy, modify, distribute, and sell this \r
software and its documentation for any purpose is hereby granted\r
this software.\r
*/\r
\r
+#define __INCLUDE_FROM_USB_DRIVER\r
#include "LowLevel.h"\r
\r
#if (!defined(USB_HOST_ONLY) && !defined(USB_DEVICE_ONLY))\r
#endif\r
\r
USB_IsInitialized = true;\r
-\r
- sei();\r
}\r
\r
void USB_ShutDown(void)\r
USB_Detach();\r
USB_Controller_Disable();\r
\r
+ USB_INT_DisableAllInterrupts();\r
+ USB_INT_ClearAllInterrupts();\r
+\r
+ #if defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
+ UHWCON &= ~(1 << UIMOD);\r
+ #endif\r
+ \r
if (!(USB_Options & USB_OPT_MANUAL_PLL))\r
USB_PLL_Off();\r
\r
+ USB_REG_Off();\r
+\r
#if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
USB_OTGPAD_Off();\r
#endif\r
USB_ConfigurationNumber = 0;\r
\r
#if !defined(NO_DEVICE_REMOTE_WAKEUP)\r
- USB_RemoteWakeupEnabled = false;\r
+ USB_RemoteWakeupEnabled = false;\r
#endif\r
\r
#if !defined(NO_DEVICE_SELF_POWER)\r
- USB_CurrentlySelfPowered = false;\r
+ USB_CurrentlySelfPowered = false;\r
#endif\r
#endif\r
\r
USB_INT_Clear(USB_INT_EORSTI);\r
USB_INT_Enable(USB_INT_EORSTI);\r
\r
- #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
- USB_INT_Enable(USB_INT_VBUS);\r
- #endif\r
+ #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR)\r
+ USB_INT_Enable(USB_INT_VBUS);\r
+ #endif\r
#elif defined(USB_HOST_ONLY)\r
USB_Host_HostMode_On();\r
\r