X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/c8a438d66c40f444b5b5fa6a814492fef75886ed..e9029d49d5455ec146d2e87436d43d747d6c657a:/LUFA/Drivers/USB/Class/Common/RNDIS.h diff --git a/LUFA/Drivers/USB/Class/Common/RNDIS.h b/LUFA/Drivers/USB/Class/Common/RNDIS.h index f98fc6d81..f931de826 100644 --- a/LUFA/Drivers/USB/Class/Common/RNDIS.h +++ b/LUFA/Drivers/USB/Class/Common/RNDIS.h @@ -68,6 +68,9 @@ #endif /* Macros: */ + /** Additional error code for RNDIS functions when a device returns a logical command failure. */ + #define RNDIS_ERROR_LOGICAL_CMD_FAILED 0x80 + /** Implemented RNDIS Version Major. */ #define REMOTE_NDIS_VERSION_MAJOR 0x01 @@ -111,7 +114,10 @@ #define REMOTE_NDIS_MEDIA_STATE_DISCONNECTED 0x00000001UL //@} + /** \name RNDIS Media Types */ + //@{ #define REMOTE_NDIS_MEDIUM_802_3 0x00000000UL + //@} /** \name RNDIS Connection Types */ //@{ @@ -211,23 +217,14 @@ */ typedef struct { - uint8_t Octets[6]; /**< Individual bytes of a MAC address */ + uint8_t Octets[6]; /**< Individual bytes of a MAC address */ } ATTR_PACKED MAC_Address_t; - /** \brief RNDIS Ethernet Frame Packet Information Structure. - * - * Type define for an Ethernet frame buffer data and information structure. - */ - typedef struct - { - uint8_t FrameData[ETHERNET_FRAME_SIZE_MAX]; /**< Ethernet frame contents. */ - uint16_t FrameLength; /**< Length in bytes of the Ethernet frame stored in the buffer. */ - bool FrameInBuffer; /**< Indicates if a frame is currently stored in the buffer. */ - } ATTR_PACKED Ethernet_Frame_Info_t; - /** \brief RNDIS Common Message Header Structure. * * Type define for a RNDIS message header, sent before RNDIS messages. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -238,6 +235,8 @@ /** \brief RNDIS Message Structure. * * Type define for a RNDIS packet message, used to encapsulate Ethernet packets sent to and from the adapter. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -257,6 +256,8 @@ /** \brief RNDIS Initialization Message Structure. * * Type define for a RNDIS Initialize command message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -272,6 +273,8 @@ /** \brief RNDIS Initialize Complete Message Structure. * * Type define for a RNDIS Initialize Complete response message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -294,6 +297,8 @@ /** \brief RNDIS Keep Alive Message Structure. * * Type define for a RNDIS Keep Alive command message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -305,6 +310,8 @@ /** \brief RNDIS Keep Alive Complete Message Structure. * * Type define for a RNDIS Keep Alive Complete response message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -317,6 +324,8 @@ /** \brief RNDIS Reset Complete Message Structure. * * Type define for a RNDIS Reset Complete response message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -330,6 +339,8 @@ /** \brief RNDIS OID Property Set Message Structure. * * Type define for a RNDIS OID Property Set command message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -346,6 +357,8 @@ /** \brief RNDIS OID Property Set Complete Message Structure. * * Type define for a RNDIS OID Property Set Complete response message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -358,6 +371,8 @@ /** \brief RNDIS OID Property Query Message Structure. * * Type define for a RNDIS OID Property Query command message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct { @@ -374,6 +389,8 @@ /** \brief RNDIS OID Property Query Complete Message Structure. * * Type define for a RNDIS OID Property Query Complete response message. + * + * \note Regardless of CPU architecture, these values should be stored as little endian. */ typedef struct {