Added new EVENT_CDC_Device_BreakSent() event and CDC_Host_SendBreak() function to...
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Host / CDC.c
index bc8e089..8a00616 100644 (file)
@@ -261,6 +261,22 @@ uint8_t CDC_Host_SendControlLineStateChange(USB_ClassInfo_CDC_Host_t* const CDCI
        return USB_Host_SendControlRequest(NULL);\r
 }\r
 \r
+uint8_t CDC_Host_SendBreak(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo, const uint8_t Duration)\r
+{\r
+       USB_ControlRequest = (USB_Request_Header_t)\r
+       {\r
+               .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
+               .bRequest      = REQ_SendBreak,\r
+               .wValue        = Duration,\r
+               .wIndex        = CDCInterfaceInfo->State.ControlInterfaceNumber,\r
+               .wLength       = 0,\r
+       };\r
+\r
+       Pipe_SelectPipe(PIPE_CONTROLPIPE);\r
+       \r
+       return USB_Host_SendControlRequest(NULL);\r
+}\r
+\r
 uint8_t CDC_Host_SendString(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo, char* Data, const uint16_t Length)\r
 {\r
        if ((USB_HostState != HOST_STATE_Configured) || !(CDCInterfaceInfo->State.IsActive))\r
@@ -303,8 +319,6 @@ uint8_t CDC_Host_SendByte(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo, cons
 \r
 uint16_t CDC_Host_BytesReceived(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo)\r
 {\r
-       uint16_t BytesInPipe = 0;\r
-\r
        if ((USB_HostState != HOST_STATE_Configured) || !(CDCInterfaceInfo->State.IsActive))\r
          return 0;\r
        \r