Fix XMEGA core USB driver so that device mode enumerates correctly on the host PC.
[pub/USBasp.git] / LUFA / Drivers / USB / Core / USBController.h
index 49fbb41..1c44c16 100644 (file)
                #endif
 
        /* Defines: */
+               /** \name Endpoint Direction Masks */
+               //@{
+               /** Endpoint direction mask, for masking against endpoint addresses to retrieve the endpoint's
+                *  direction for comparing with the \c ENDPOINT_DIR_* masks.
+                */
+               #define ENDPOINT_DIR_MASK                  0x80
+
+               /** Endpoint address direction mask for an OUT direction (Host to Device) endpoint. This may be ORed with
+                *  the index of the address within a device to obtain the full endpoint address.
+                */
+               #define ENDPOINT_DIR_OUT                   0x00
+
+               /** Endpoint address direction mask for an IN direction (Device to Host) endpoint. This may be ORed with
+                *  the index of the address within a device to obtain the full endpoint address.
+                */
+               #define ENDPOINT_DIR_IN                    0x80
+               //@}
+
                /** \name Endpoint/Pipe Type Masks */
                //@{
+               /** Mask for determining the type of an endpoint from an endpoint descriptor. This should then be compared
+                *  with the \c EP_TYPE_* masks to determine the exact type of the endpoint.
+                */
+               #define EP_TYPE_MASK                       0x03
+
                /** Mask for a CONTROL type endpoint or pipe.
                 *
                 *  \note See \ref Group_EndpointManagement and \ref Group_PipeManagement for endpoint/pipe functions.