From 79e54580ae0ce192f6c66a11880136eac483fc29 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Mon, 16 Nov 2009 05:45:05 +0000 Subject: Fixed HOST_STATE_AS_GPIOR being ignored whilst in Host mode (thanks to David Lyons). --- LUFA/Drivers/USB/HighLevel/Events.h | 5 +++++ LUFA/Drivers/USB/HighLevel/USBTask.h | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-) (limited to 'LUFA/Drivers/USB/HighLevel') diff --git a/LUFA/Drivers/USB/HighLevel/Events.h b/LUFA/Drivers/USB/HighLevel/Events.h index 933091a5b..89eb6419d 100644 --- a/LUFA/Drivers/USB/HighLevel/Events.h +++ b/LUFA/Drivers/USB/HighLevel/Events.h @@ -195,6 +195,11 @@ * This event is time-critical; each packet within the request transaction must be acknowledged or * sent within 50ms or the host will abort the transfer. * + * The library interally handles all standard control requests with the exceptions of SYNC FRAME, + * SET DESCRIPTOR and SET INTERFACE. These and all other non-standard control requests will be left + * for the user to process via this event if desired. If not handled in the user application, requests + * are automatically STALLed. + * * \note This event does not exist if the USB_HOST_ONLY token is supplied to the compiler (see * \ref Group_USBManagement documentation). * diff --git a/LUFA/Drivers/USB/HighLevel/USBTask.h b/LUFA/Drivers/USB/HighLevel/USBTask.h index 9c0abf013..cc0601548 100644 --- a/LUFA/Drivers/USB/HighLevel/USBTask.h +++ b/LUFA/Drivers/USB/HighLevel/USBTask.h @@ -76,7 +76,7 @@ extern USB_Request_Header_t USB_ControlRequest; #if defined(USB_CAN_BE_HOST) || defined(__DOXYGEN__) - #if !defined(HOST_STATE_AS_GPIOR1) || defined(__DOXYGEN__) + #if !defined(HOST_STATE_AS_GPIOR) || defined(__DOXYGEN__) /** Indicates the current host state machine state. When in host mode, this indicates the state * via one of the values of the \ref USB_Host_States_t enum values. * @@ -100,7 +100,7 @@ #else #define _GET_HOST_GPIOR_NAME2(y) GPIOR ## y #define _GET_HOST_GPIOR_NAME(x) _GET_HOST_GPIOR_NAME2(x) - #define USB_HostState _GET_HOST_GPIOR_NAME(HOST_STATE_AS_GPIOR) + #define USB_HostState _GET_HOST_GPIOR_NAME(HOST_STATE_AS_GPIOR) #endif #endif @@ -132,7 +132,7 @@ #else #define _GET_DEVICE_GPIOR_NAME2(y) GPIOR ## y #define _GET_DEVICE_GPIOR_NAME(x) _GET_DEVICE_GPIOR_NAME2(x) - #define USB_DeviceState _GET_DEVICE_GPIOR_NAME(DEVICE_STATE_AS_GPIOR) + #define USB_DeviceState _GET_DEVICE_GPIOR_NAME(DEVICE_STATE_AS_GPIOR) #endif #endif @@ -175,7 +175,7 @@ #endif /* Macros: */ - #define HOST_TASK_NONBLOCK_WAIT(duration, nextstate) {USB_HostState = HOST_STATE_WaitForDevice; WaitMSRemaining = duration; PostWaitState = nextstate; } + #define HOST_TASK_NONBLOCK_WAIT(duration, nextstate) MACROS{USB_HostState = HOST_STATE_WaitForDevice; WaitMSRemaining = duration; PostWaitState = nextstate; }MACROE #endif /* Disable C linkage for C++ Compilers: */ -- cgit v1.2.3