X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/065ed4da207173495d0a569b0f2973daebb841f0..3aa8a69246942c27a389950caad0374ffb3e6056:/LUFA/Drivers/USB/Core/HostStandardReq.c diff --git a/LUFA/Drivers/USB/Core/HostStandardReq.c b/LUFA/Drivers/USB/Core/HostStandardReq.c index 12ccd91e3..ee5d8cb42 100644 --- a/LUFA/Drivers/USB/Core/HostStandardReq.c +++ b/LUFA/Drivers/USB/Core/HostStandardReq.c @@ -55,12 +55,19 @@ uint8_t USB_Host_SendControlRequest(void* const BufferPtr) Pipe_Unfreeze(); + #if defined(ARCH_BIG_ENDIAN) Pipe_Write_8(USB_ControlRequest.bmRequestType); Pipe_Write_8(USB_ControlRequest.bRequest); Pipe_Write_16_LE(USB_ControlRequest.wValue); Pipe_Write_16_LE(USB_ControlRequest.wIndex); Pipe_Write_16_LE(USB_ControlRequest.wLength); + #else + uint8_t* HeaderStream = (uint8_t*)&USB_ControlRequest; + for (uint8_t HeaderByte = 0; HeaderByte < sizeof(USB_Request_Header_t); HeaderByte++) + Pipe_Write_8(*(HeaderStream++)); + #endif + Pipe_ClearSETUP(); if ((ReturnStatus = USB_Host_WaitForIOS(USB_HOST_WAITFOR_SetupSent)) != HOST_SENDCONTROL_Successful) @@ -243,7 +250,7 @@ uint8_t USB_Host_GetDeviceStatus(uint8_t* const FeatureStatus) USB_ControlRequest = (USB_Request_Header_t) { .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_DEVICE), - .bRequest = REQ_GetFeature, + .bRequest = REQ_GetStatus, .wValue = 0, .wIndex = 0, .wLength = 0, @@ -254,7 +261,7 @@ uint8_t USB_Host_GetDeviceStatus(uint8_t* const FeatureStatus) return USB_Host_SendControlRequest(FeatureStatus); } -uint8_t USB_Host_ClearPipeStall(const uint8_t EndpointAddress) +uint8_t USB_Host_ClearEndpointStall(const uint8_t EndpointAddress) { USB_ControlRequest = (USB_Request_Header_t) {