Fixed PDI/TPI programming speed of ~250KHz in the AVRISP-MKII Clone project, instead...
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Common / CDC.h
index eb6577e..aaaf121 100644 (file)
@@ -3,7 +3,7 @@
      Copyright (C) Dean Camera, 2010.
 
   dean [at] fourwalledcubicle [dot] com
-      www.fourwalledcubicle.com
+           www.lufa-lib.org
 */
 
 /*
@@ -66,6 +66,8 @@
                #endif
 
        /* Macros: */
+               /** \name Virtual Control Line Masks */
+               //@{
                /** Mask for the DTR handshake line for use with the \ref CDC_REQ_SetControlLineState class-specific request
                 *  from the host, to indicate that the DTR line state should be high.
                 */
                 *  to indicate that a data overrun error has occurred on the virtual serial port.
                 */
                #define CDC_CONTROL_LINE_IN_OVERRUNERROR (1 << 6)
-
+               //@}
+               
                /** Macro to define a CDC class-specific functional descriptor. CDC functional descriptors have a
                 *  uniform structure but variable sized data payloads, thus cannot be represented accurately by
                 *  a single typedef struct. A macro is used instead so that functional descriptors can be created
                     }
 
        /* Enums: */
+               /** Enum for possible Class, Subclass and Protocol values of device and interface descriptors relating to the CDC
+                *  device class.
+                */
+               enum CDC_Descriptor_ClassSubclassProtocol_t
+               {
+                       CDC_CSCP_CDCClass               = 0x02, /**< Descriptor Class value indicating that the device or interface
+                                                                *   belongs to the CDC class.
+                                                                */
+                       CDC_CSCP_NoSpecificSubclass     = 0x00, /**< Descriptor Subclass value indicating that the device or interface
+                                                                *   belongs to no specific subclass of the CDC class.
+                                                                */
+                       CDC_CSCP_ACMSubclass            = 0x02, /**< Descriptor Subclass value indicating that the device or interface
+                                                                *   belongs to the Abstract Control Model CDC subclass.
+                                                                */
+                       CDC_CSCP_ATCommandProtocol      = 0x01, /**< Descriptor Protocol value indicating that the device or interface
+                                                                *   belongs to the AT Command protocol of the CDC class.
+                                                                */
+                       CDC_CSCP_NoSpecificProtocol     = 0x00, /**< Descriptor Class value indicating that the device or interface
+                                                                *   belongs to no specific protocol of the CDC class.
+                                                                */
+                       CDC_CSCP_VendorSpecificProtocol = 0xFF, /**< Descriptor Class value indicating that the device or interface
+                                                                *   belongs to a vendor-specific protocol of the CDC class.
+                                                                */
+                       CDC_CSCP_CDCDataClass           = 0x0A, /**< Descriptor Class value indicating that the device or interface
+                                                                *   belongs to the CDC Data class.
+                                                                */
+                       CDC_CSCP_NoDataSubclass         = 0x00, /**< Descriptor Subclass value indicating that the device or interface
+                                                                *   belongs to no specific subclass of the CDC data class.
+                                                                */
+                       CDC_CSCP_NoDataProtocol         = 0x00, /**< Descriptor Protocol value indicating that the device or interface
+                                                                *   belongs to no specific protocol of the CDC data class.
+                                                                */
+               };
+               
                /** Enum for the CDC class specific control requests that can be issued by the USB bus host. */
                enum CDC_ClassRequests_t
                {