Tx Feature: -AMPDU -QoS Data -Non Qos Data -WDS Data(Not Mesh) -IBSS Data -Packet Sequence Number Maintain -HTC insertion(RDG) -HTC insertion -(TXBF Sounding Frame) -IPX(8137) -AppleTalk(80F3) -LLC Tunnel(AAAA03000000/ AAAA030000F8) -VLAN Remove (per pkt control) TXD -HF (00: non-802.11 data frame) (pTxBlk->NeedTrans) -ETYPE (1: indicate that this frame is an Ehternet-II frame which type/len >= 1536(0x600)) (RTMP_GET_PACKET_PROTOCOL(pkt) need check if already 802.3 packet in ) -VLAN (0: no VLAN field, 1: exist VLAN field) (RTMP_GET_PACKET_VLAN(pkt)) -RMVL (0: keep VLAN field, 1: remove VLAN field) (dat setting, current setting use 1 that remove vlan) -MRD (More Data: TX_BLK_TEST_FLAG(pTxBlk, fTX_bMoreData)) -EOSP (End of service period: TX_BLK_TEST_FLAG(pTxBlk, fTX_bWMM_UAPSD_EOSP)) -PF (pTxBlk->CipherAlg) -HE (must be 0) -DAS -OM[5:0] -NA -Header Padding (padding the dummy bytes in the head of header) WTBL -PA -QoS (will be set when peer side has HT capability) -TD (According to mac_entry->EntryType and ) -FD (According to entry type) Tx Translation rule Frame Control Field[15:0] -Protocol version (fixed value: 0x00) -Type[1:0] =2'b10 (Data SW guarantee) -SubType[3:0]=4'b0000 (non-QoS) or 4'b1000(QoS) = WTBL.QoS bit -ToDS = WTBL.TD -FromDS = WTBL.FD -MoreFrag = 1'b0 (fragment packet should be 802.11 format) -Retry - HW generate -PwrMgt -MoreData = TxD.MRD -ProtectFrame = TxD.PF -Order = TxD.HE (must be 0) Duration/ID[15:0] = 16'h0 (TMAC will replace this) A1-A4 DA = (TxD.DAS = 0, DA in MSDU) or (TxD.DAS = 1, PA in WTBL) (use TMI_DAS_FROM_MPDU for TxD.DAS) SA = SA in MSDU (DMA read it from header buffer) BSSID = select by TxD.OM[5:0] for multiple BSSID RA = PA in WTBL TA = select by TxD.OM[5:0] Sequence Control field[15:0] = HW prepare QoS Control [15:0] TID[3:0] = TxD.TID (pTxBlk->UserPriority) EOSP(bit 4) = TxD.EOSP Ack Policy[1:0] = 2'b01 if TxD.NA == 1 = 2'b00 if TxD.NA == 0 and not PSMP queue (AC6) = 2'b10 if PSMA queue (AC6), TxD.NA must be 0 A-MSDU = 1'b0 QoS Control [15:8] = 8'h0 (Not support Mesh-TX header translation) Driver Tx path: 1.not need to touch skb->data packet 2.Only build txd header and fill related information for ethernet-ii or 802.3 packet Rx Feature: -Translation Enable/Disable (DCR.RX_HDR_TRANS_EN / DCR.RX_HDR_TRANS_CHK_BSSID) -Translation Enable/Disable per Peer (WTBL.DIS_RHTR) -QoS Data -Non-QoS Data -MPDU carry a MSDU -MPDU carry a AMSDU -No Error packet convert -Fragment data convert