Update ENDPOINT_EPNUM_MASK to be 0x0F, the maximum possible USB endpoint number withi...
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Host / CDC.h
index 4bb9863..7fd9e49 100644 (file)
 
                                        struct
                                        {
-                                               uint8_t HostToDevice; /**< Control line states from the host to device, as a set of \c CDC_CONTROL_LINE_OUT_*
-                                                                                          *   masks - to notify the device of changes to these values, call the
-                                                                                          *   \ref CDC_Host_SendControlLineStateChange() function.
-                                                                                          */
-                                               uint8_t DeviceToHost; /**< Control line states from the device to host, as a set of \c CDC_CONTROL_LINE_IN_*
-                                                                                          *   masks. This value is updated each time \ref CDC_Host_USBTask() is called.
-                                                                                          */
+                                               uint16_t HostToDevice; /**< Control line states from the host to device, as a set of \c CDC_CONTROL_LINE_OUT_*
+                                                                       *   masks - to notify the device of changes to these values, call the
+                                                                       *   \ref CDC_Host_SendControlLineStateChange() function.
+                                                                       */
+                                               uint16_t DeviceToHost; /**< Control line states from the device to host, as a set of \c CDC_CONTROL_LINE_IN_*
+                                                                       *   masks. This value is updated each time \ref CDC_Host_USBTask() is called.
+                                                                       */
                                        } ControlLineStates; /**< Current states of the virtual serial port's control lines between the device and host. */
 
                                        CDC_LineEncoding_t LineEncoding; /**< Line encoding used in the virtual serial port, for the device's information.
                         *  This should be called once after the stack has enumerated the attached device, while the host state machine is in
                         *  the Addressed state.
                         *
-                        *  \note The pipe index numbers as given in the interface's configuration structure must not overlap with any other
-                        *        interface, or pipe bank corruption will occur. Gaps in the allocated pipe numbers or non-sequential indexes
-                        *        within a single interface is allowed, but no two interfaces of any type have have interleaved pipe indexes.
-                        *
                         *  \param[in,out] CDCInterfaceInfo        Pointer to a structure containing an CDC Class host configuration and state.
                         *  \param[in]     ConfigDescriptorSize    Length of the attached device's Configuration Descriptor.
                         *  \param[in]     DeviceConfigDescriptor  Pointer to a buffer containing the attached device's Configuration Descriptor.
                         */
                        uint8_t CDC_Host_SendControlLineStateChange(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo) ATTR_NON_NULL_PTR_ARG(1);
 
-                       /** Sends a Send Break request to the device. This is generally used to separate data data or to indicate a special condition
+                       /** Sends a Send Break request to the device. This is generally used to separate data or to indicate a special condition
                         *  to the receiving device.
                         *
                         *  \param[in,out] CDCInterfaceInfo  Pointer to a structure containing a CDC Class host configuration and state.
                                #endif
 
                                void CDC_Host_Event_Stub(void) ATTR_CONST;
+                               
                                void EVENT_CDC_Host_ControLineStateChanged(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo)
                                                                           ATTR_WEAK ATTR_NON_NULL_PTR_ARG(1) ATTR_ALIAS(CDC_Host_Event_Stub);
 
-                               static uint8_t DCOMP_CDC_Host_NextCDCControlInterface(void* const CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);
-                               static uint8_t DCOMP_CDC_Host_NextCDCDataInterface(void* const CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);
-                               static uint8_t DCOMP_CDC_Host_NextCDCInterfaceEndpoint(void* const CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);
+                               static uint8_t DCOMP_CDC_Host_NextCDCControlInterface(void* const CurrentDescriptor)
+                                                                                     ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
+                               static uint8_t DCOMP_CDC_Host_NextCDCDataInterface(void* const CurrentDescriptor)
+                                                                                  ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
+                               static uint8_t DCOMP_CDC_Host_NextCDCInterfaceEndpoint(void* const CurrentDescriptor)
+                                                                                      ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
                        #endif
        #endif