aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2011-09-28 13:24:08 +0000
committerDean Camera <dean@fourwalledcubicle.com>2011-09-28 13:24:08 +0000
commit3223786c49335e732ed5719510c24b4c50ff8b46 (patch)
treef838dbe60040a442783151f5a708c59545bcd0f6 /LUFA/Drivers
parent77dbfd3cc44b91ea04990c65f3de70267ceb2460 (diff)
downloadlufa-3223786c49335e732ed5719510c24b4c50ff8b46.tar.gz
lufa-3223786c49335e732ed5719510c24b4c50ff8b46.tar.bz2
lufa-3223786c49335e732ed5719510c24b4c50ff8b46.zip
Fix compile error on the UC3 targets when INTERRUPT_CONTROL_ENDPOINT compile time option is used (thanks to Ian Woloschin).
Small size improvement for Little Endian devices when USB host mode is used. Minor documentation fixes.
Diffstat (limited to 'LUFA/Drivers')
-rw-r--r--LUFA/Drivers/USB/Core/HostStandardReq.c7
-rw-r--r--LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.c2
2 files changed, 8 insertions, 1 deletions
diff --git a/LUFA/Drivers/USB/Core/HostStandardReq.c b/LUFA/Drivers/USB/Core/HostStandardReq.c
index 5bbe5d3fd..55fee404b 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_Byte(*(HeaderStream++));
+ #endif
+
Pipe_ClearSETUP();
if ((ReturnStatus = USB_Host_WaitForIOS(USB_HOST_WAITFOR_SetupSent)) != HOST_SENDCONTROL_Successful)
diff --git a/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.c b/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.c
index fec007cdc..3487087a8 100644
--- a/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.c
+++ b/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.c
@@ -206,7 +206,7 @@ ISR(USB_GEN_vect)
}
#if defined(INTERRUPT_CONTROL_ENDPOINT) && defined(USB_CAN_BE_DEVICE)
-ISR(USB_COM_vect, ISR_BLOCK)
+ISR(USB_COM_vect)
{
uint8_t PrevSelectedEndpoint = Endpoint_GetCurrentEndpoint();