USB_HostRequest renamed to USB_ControlRequest, entire control request header is now read into USB_ControlRequest in Device mode rather than having the library pass only partially read header data to the application.
The USB_UnhandledControlPacket event has had its parameters removed, in favour of accessing the new USB_ControlRequest structure. The Endpoint control stream functions now correctly send a ZLP to the host when less data than requested is sent.
This commit is contained in:
parent
e5e7eaee7a
commit
d860e9e842
43 changed files with 209 additions and 317 deletions
|
|
@ -181,7 +181,7 @@ TASK(USB_CDC_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
|
|||
|
|
@ -257,7 +257,7 @@ void WriteNextReport(uint8_t* ReportOUTData, uint8_t ReportIndex, uint8_t Report
|
|||
else
|
||||
{
|
||||
/* Class specific request to send a HID report to the device */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),
|
||||
.bRequest = REQ_SetReport,
|
||||
|
|
@ -286,7 +286,7 @@ TASK(USB_HID_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
|
|||
|
|
@ -253,7 +253,7 @@ TASK(USB_Keyboard_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
@ -303,7 +303,7 @@ TASK(USB_Keyboard_Host)
|
|||
}
|
||||
|
||||
/* HID class request to set the keyboard protocol to the Boot Protocol */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),
|
||||
.bRequest = REQ_SetProtocol,
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ uint8_t GetHIDReportData(void)
|
|||
/* Create a buffer big enough to hold the entire returned HID report */
|
||||
uint8_t HIDReportData[HIDReportSize];
|
||||
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_INTERFACE),
|
||||
.bRequest = REQ_GetDescriptor,
|
||||
|
|
|
|||
|
|
@ -184,7 +184,7 @@ TASK(USB_Keyboard_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
|
|||
|
|
@ -155,7 +155,7 @@ TASK(USB_MassStore_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
|
|||
|
|
@ -250,7 +250,7 @@ static uint8_t MassStore_GetReturnedStatus(void)
|
|||
*/
|
||||
uint8_t MassStore_ClearPipeStall(const uint8_t EndpointNum)
|
||||
{
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_ENDPOINT),
|
||||
.bRequest = REQ_ClearFeature,
|
||||
|
|
@ -272,7 +272,7 @@ uint8_t MassStore_ClearPipeStall(const uint8_t EndpointNum)
|
|||
*/
|
||||
uint8_t MassStore_MassStorageReset(void)
|
||||
{
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),
|
||||
.bRequest = REQ_MassStorageReset,
|
||||
|
|
@ -298,7 +298,7 @@ uint8_t MassStore_GetMaxLUN(uint8_t* const MaxLUNIndex)
|
|||
{
|
||||
uint8_t ErrorCode;
|
||||
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),
|
||||
.bRequest = REQ_GetMaxLUN,
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ TASK(USB_Mouse_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
@ -298,7 +298,7 @@ TASK(USB_Mouse_Host)
|
|||
}
|
||||
|
||||
/* HID class request to set the mouse protocol to the Boot Protocol */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),
|
||||
.bRequest = REQ_SetProtocol,
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ uint8_t GetHIDReportData(void)
|
|||
/* Create a buffer big enough to hold the entire returned HID report */
|
||||
uint8_t HIDReportData[HIDReportSize];
|
||||
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_INTERFACE),
|
||||
.bRequest = REQ_GetDescriptor,
|
||||
|
|
|
|||
|
|
@ -185,7 +185,7 @@ TASK(USB_Mouse_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
|
|||
|
|
@ -263,7 +263,7 @@ bool SImage_IsEventReceived(void)
|
|||
*/
|
||||
uint8_t SImage_ClearPipeStall(const uint8_t EndpointNum)
|
||||
{
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_ENDPOINT),
|
||||
.bRequest = REQ_ClearFeature,
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ TASK(USB_SImage_Host)
|
|||
{
|
||||
case HOST_STATE_Addressed:
|
||||
/* Standard request to set the device configuration to configuration 1 */
|
||||
USB_HostRequest = (USB_Host_Request_Header_t)
|
||||
USB_ControlRequest = (USB_Request_Header_t)
|
||||
{
|
||||
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),
|
||||
.bRequest = REQ_SetConfiguration,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue