diff --git a/LUFA/Drivers/USB/LowLevel/Host.c b/LUFA/Drivers/USB/LowLevel/Host.c index 9186f1c799..1e22ffcb7f 100644 --- a/LUFA/Drivers/USB/LowLevel/Host.c +++ b/LUFA/Drivers/USB/LowLevel/Host.c @@ -67,9 +67,13 @@ void USB_Host_ProcessNextHostState(void) break; case HOST_STATE_Powered_WaitForDeviceSettle: #if HOST_DEVICE_SETTLE_DELAY_MS > 0 - _delay_ms(1); - if (!(WaitMSRemaining--)) + { + _delay_ms(1); + break; + } + else + #endif { USB_Host_VBUS_Manual_Off(); @@ -79,9 +83,6 @@ void USB_Host_ProcessNextHostState(void) USB_HostState = HOST_STATE_Powered_WaitForConnect; } - #else - USB_HostState = HOST_STATE_Powered_WaitForConnect; - #endif break; case HOST_STATE_Powered_WaitForConnect: diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt index 5cb7862969..5dc83cc65b 100644 --- a/LUFA/ManPages/ChangeLog.txt +++ b/LUFA/ManPages/ChangeLog.txt @@ -27,6 +27,7 @@ * - Fixed misnamed SI_Host_USBTask() and SI_Host_ConfigurePipes() functions * - Fixed broken USB_GetNextDescriptor() function causing the descriptor to jump ahead double the expected amount * - Fixed Pipe_IsEndpointBound() not masking the given Endpoint Address against PIPE_EPNUM_MASK + * - Fixed host state machine not enabling Auto VBUS mode when HOST_DEVICE_SETTLE_DELAY_MS is set to zero * * \section Sec_ChangeLog091122 Version 091122 *