Fixed HID hpst class driver incorrectly binding to HID devices that do not have an OUT endpoint.

pull/1469/head
Dean Camera 14 years ago
parent ed9d77aeee
commit b20d25854d

@ -88,7 +88,7 @@ uint8_t HID_Host_ConfigurePipes(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo
USB_Descriptor_Endpoint_t* EndpointData = DESCRIPTOR_PCAST(ConfigDescriptorData, USB_Descriptor_Endpoint_t);
if (EndpointData->EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
DataINEndpoint = EndpointData;
DataINEndpoint = EndpointData;
else
DataOUTEndpoint = EndpointData;
}
@ -115,6 +115,9 @@ uint8_t HID_Host_ConfigurePipes(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo
}
else if (PipeNum == HIDInterfaceInfo->Config.DataOUTPipeNumber)
{
if (DataOUTEndpoint == NULL)
continue;
Size = DataOUTEndpoint->EndpointSize;
EndpointAddress = DataOUTEndpoint->EndpointAddress;
Token = PIPE_TOKEN_OUT;

@ -25,6 +25,7 @@
* <b>Fixed:</b>
* - Core:
* - Fixed broken USBFOO board drivers due to missing BOARD_USBFOO define
* - Fixed HID hpst class driver incorrectly binding to HID devices that do not have an OUT endpoint
* - Library Applications:
* - Fixed Benito project discarding incoming data from the USB virtual serial port when the USART is busy
* - Fixed broken DFU bootloader, added XPLAIN support for bootloader start when XCK jumpered to ground

Loading…
Cancel
Save