aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB
diff options
context:
space:
mode:
Diffstat (limited to 'LUFA/Drivers/USB')
-rw-r--r--LUFA/Drivers/USB/Class/Host/CDC.h2
-rw-r--r--LUFA/Drivers/USB/LowLevel/HostChapter9.c2
-rw-r--r--LUFA/Drivers/USB/LowLevel/LowLevel.c2
3 files changed, 5 insertions, 1 deletions
diff --git a/LUFA/Drivers/USB/Class/Host/CDC.h b/LUFA/Drivers/USB/Class/Host/CDC.h
index 4054cf117..3c24617e1 100644
--- a/LUFA/Drivers/USB/Class/Host/CDC.h
+++ b/LUFA/Drivers/USB/Class/Host/CDC.h
@@ -80,6 +80,8 @@
struct
{
+ bool Active; /**< Indicates if the interface is currently active, i.e. attached to the connected device */
+
uint32_t BaudRateBPS; /**< Baud rate of the virtual serial port, in bits per second */
uint8_t CharFormat; /**< Character format of the virtual serial port, a value from the
* CDCDevice_CDC_LineCodingFormats_t enum
diff --git a/LUFA/Drivers/USB/LowLevel/HostChapter9.c b/LUFA/Drivers/USB/LowLevel/HostChapter9.c
index 238e099ef..2bdab7c67 100644
--- a/LUFA/Drivers/USB/LowLevel/HostChapter9.c
+++ b/LUFA/Drivers/USB/LowLevel/HostChapter9.c
@@ -46,7 +46,7 @@ uint8_t USB_Host_SendControlRequest(void* BufferPtr)
USB_Host_ResumeBus();
if ((ReturnStatus = USB_Host_WaitMS(1)) != HOST_WAITERROR_Successful)
- return ReturnStatus;
+ goto End_Of_Control_Send;
Pipe_SetToken(PIPE_TOKEN_SETUP);
Pipe_ClearErrorFlags();
diff --git a/LUFA/Drivers/USB/LowLevel/LowLevel.c b/LUFA/Drivers/USB/LowLevel/LowLevel.c
index b829c19f7..4fcf4fcab 100644
--- a/LUFA/Drivers/USB/LowLevel/LowLevel.c
+++ b/LUFA/Drivers/USB/LowLevel/LowLevel.c
@@ -186,6 +186,8 @@ void USB_ResetInterface(void)
if (!(USB_Options & USB_OPT_REG_DISABLED))
USB_REG_On();
+ else
+ USB_REG_Off();
USB_CLK_Unfreeze();