diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2011-05-18 14:33:34 +0000 |
---|---|---|
committer | Dean Camera <dean@fourwalledcubicle.com> | 2011-05-18 14:33:34 +0000 |
commit | 9d733d44b402ce33c3c41e45b497c2f92be393f5 (patch) | |
tree | 2ddf8b9b25e696ec4a2ab30c181f253005036be7 /LUFA/Drivers/USB/Class/Common | |
parent | 41de1d1dab863c7b769f6e492c36c115994c403d (diff) | |
download | lufa-9d733d44b402ce33c3c41e45b497c2f92be393f5.tar.gz lufa-9d733d44b402ce33c3c41e45b497c2f92be393f5.tar.bz2 lufa-9d733d44b402ce33c3c41e45b497c2f92be393f5.zip |
Add new RNDIS_Host_IsPacketReceived(), RNDIS_Device_ReadPacket() and RNDIS_Device_WritePacket() functions to the Device RNDIS Class Driver.
Modify RNDIS demos to suit the simplified Ethernet_Frame_Info_t structure.
Diffstat (limited to 'LUFA/Drivers/USB/Class/Common')
-rw-r--r-- | LUFA/Drivers/USB/Class/Common/RNDIS.h | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/LUFA/Drivers/USB/Class/Common/RNDIS.h b/LUFA/Drivers/USB/Class/Common/RNDIS.h index f98fc6d81..0ca50d5af 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 @@ -205,25 +208,25 @@ }; /* Type Defines: */ - /** \brief MAC Address Structure. + /** \brief Ethernet Frame Packet Information Structure. * - * Type define for a physical MAC address of a device on a network. + * Type define for an Ethernet frame buffer data and information structure. This can be used to conveniently + * store both the size and data in an Ethernet frame. */ typedef struct { - uint8_t Octets[6]; /**< Individual bytes of a MAC address */ - } ATTR_PACKED MAC_Address_t; + uint8_t FrameData[ETHERNET_FRAME_SIZE_MAX]; /**< Ethernet frame contents. */ + uint16_t FrameLength; /**< Length in bytes of the Ethernet frame stored in the buffer. */ + } Ethernet_Frame_Info_t; - /** \brief RNDIS Ethernet Frame Packet Information Structure. + /** \brief MAC Address Structure. * - * Type define for an Ethernet frame buffer data and information structure. + * Type define for a physical MAC address of a device on a network. */ 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; + uint8_t Octets[6]; /**< Individual bytes of a MAC address */ + } ATTR_PACKED MAC_Address_t; /** \brief RNDIS Common Message Header Structure. * |