|
楼主 |
发表于 2013-1-12 01:24:22
|
显示全部楼层
每个传输的数据包(802.3或802.11)包括发送和接收,以硬件规格头部开始(可选),紧跟着包描述符(必须),然后才是具体的数据包。
发送和接收到的数据包描述符是不一样的。
接收数据包的描述符如下:
/** RxPD Descriptor */
typedef struct _RxPD
{
/** Current Rx packet status */
u16 RxStatus;
/** SNR */
u8 SNR;
/** Tx Control */
u8 RxControl;
/** Pkt Length */
u16 PktLen;
/** Noise Floor */
u8 NF;
/** Rx Packet Rate */
u8 RxRate;
/** Pkt offset */
u32 PktOffset;
u8 RxPacketType;
u8 Reserved_1[3];
/** Pkt Priority */
u8 Priority;
u8 Reserved[3];
} __ATTRIB_PACK__ RxPD, *PRxPD;
发送数据包的描述符如下:
/** TxPD descriptor */
typedef struct _TxPD
{
/** Current Tx packet status */
u32 TxStatus;
/** Tx Control */
u32 TxControl;
u32 TxPacketLocation;
/** Tx packet length */
u16 TxPacketLength;
/**Destination MAC address */
u8 TxDestAddr[MRVDRV_ETH_ADDR_LEN];
/** Pkt Priority */
u8 Priority;
/** Trasnit Pkt Flags*/
u8 Flags;
/** Amount of time the packet has been queued in the driver (units = 2ms)*/
u8 PktDelay_2ms;
/** Reserved */
u8 Reserved1;
} __ATTRIB_PACK__ TxPD, *PTxPD; |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|