diff options
Diffstat (limited to 'LUFA/Drivers')
-rw-r--r-- | LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c index 1f37dfd49..8285f7e92 100644 --- a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c +++ b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c @@ -63,6 +63,13 @@ void USB_Init( USB_Options = Options; #endif + #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR) + /* Workaround for AVR8 bootloaders that fail to turn off the OTG pad before running + * the loaded application. This causes VBUS detection to fail unless we first force + * it off to reset it. */ + USB_OTGPAD_Off(); + #endif + if (!(USB_Options & USB_OPT_REG_DISABLED)) USB_REG_On(); else |