forked from mfulz_github/qmk_firmware
Make device mode configure the control endpoint even before the bus has been reset, so that the device will enumerate correctly on hosts that do not reset the device before initial use.
This commit is contained in:
parent
b17e87d140
commit
d66a925786
|
@ -60,6 +60,11 @@ void USB_Init(
|
|||
USB_Options = Options;
|
||||
#endif
|
||||
|
||||
if (!(USB_Options & USB_OPT_REG_DISABLED))
|
||||
USB_REG_On();
|
||||
else
|
||||
USB_REG_Off();
|
||||
|
||||
#if defined(USB_CAN_BE_BOTH)
|
||||
if (Mode == USB_MODE_UID)
|
||||
{
|
||||
|
@ -112,11 +117,6 @@ void USB_ResetInterface(void)
|
|||
USB_INT_ClearAllInterrupts();
|
||||
|
||||
USB_Controller_Reset();
|
||||
|
||||
if (!(USB_Options & USB_OPT_REG_DISABLED))
|
||||
USB_REG_On();
|
||||
else
|
||||
USB_REG_Off();
|
||||
|
||||
if (!(USB_Options & USB_OPT_MANUAL_PLL))
|
||||
{
|
||||
|
@ -126,9 +126,7 @@ void USB_ResetInterface(void)
|
|||
|
||||
USB_PLL_On();
|
||||
while (!(USB_PLL_IsReady()));
|
||||
}
|
||||
|
||||
USB_CLK_Unfreeze();
|
||||
}
|
||||
|
||||
#if defined(USB_CAN_BE_BOTH)
|
||||
if (UIDModeSelectEnabled)
|
||||
|
@ -137,6 +135,8 @@ void USB_ResetInterface(void)
|
|||
USB_INT_Enable(USB_INT_IDTI);
|
||||
}
|
||||
#endif
|
||||
|
||||
USB_CLK_Unfreeze();
|
||||
|
||||
if (USB_CurrentMode == USB_MODE_DEVICE)
|
||||
{
|
||||
|
@ -159,8 +159,6 @@ void USB_ResetInterface(void)
|
|||
#if (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR))
|
||||
USB_OTGPAD_On();
|
||||
#endif
|
||||
|
||||
USB_Attach();
|
||||
}
|
||||
|
||||
#if defined(USB_CAN_BE_DEVICE)
|
||||
|
@ -201,10 +199,14 @@ static void USB_Init_Device(void)
|
|||
USB_INT_Enable(USB_INT_VBUS);
|
||||
#endif
|
||||
|
||||
USB_INT_Clear(USB_INT_SUSPEND);
|
||||
Endpoint_ConfigureEndpoint(ENDPOINT_CONTROLEP, EP_TYPE_CONTROL,
|
||||
ENDPOINT_DIR_OUT, USB_ControlEndpointSize,
|
||||
ENDPOINT_BANK_SINGLE);
|
||||
|
||||
USB_INT_Enable(USB_INT_SUSPEND);
|
||||
USB_INT_Clear(USB_INT_EORSTI);
|
||||
USB_INT_Enable(USB_INT_EORSTI);
|
||||
|
||||
USB_Attach();
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in New Issue