| /* |
| * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc. |
| * All rights reserved. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License as published by |
| * the Free Software Foundation; either version 2 of the License, or |
| * (at your option) any later version. |
| * |
| * This program is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| * GNU General Public License for more details. |
| * |
| * You should have received a copy of the GNU General Public License along |
| * with this program; if not, write to the Free Software Foundation, Inc., |
| * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
| * |
| * File: rxtx.h |
| * |
| * Purpose: |
| * |
| * Author: Jerry Chen |
| * |
| * Date: Jun. 27, 2002 |
| * |
| */ |
| |
| #ifndef __RXTX_H__ |
| #define __RXTX_H__ |
| |
| #include "ttype.h" |
| #include "device.h" |
| #include "wcmd.h" |
| |
| /*--------------------- Export Definitions -------------------------*/ |
| |
| /*--------------------- Export Classes ----------------------------*/ |
| |
| /*--------------------- Export Variables --------------------------*/ |
| |
| /*--------------------- Export Functions --------------------------*/ |
| |
| |
| #ifdef __cplusplus |
| extern "C" { /* Assume C declarations for C++ */ |
| #endif /* __cplusplus */ |
| |
| /* |
| VOID vGenerateMACHeader( |
| IN PSDevice pDevice, |
| IN DWORD dwTxBufferAddr, |
| IN PBYTE pbySkbData, |
| IN UINT cbPacketSize, |
| IN BOOL bDMA0Used, |
| OUT PUINT pcbHeadSize, |
| OUT PUINT pcbAppendPayload |
| ); |
| |
| VOID vProcessRxMACHeader ( |
| IN PSDevice pDevice, |
| IN DWORD dwRxBufferAddr, |
| IN UINT cbPacketSize, |
| IN BOOL bIsWEP, |
| OUT PUINT pcbHeadSize |
| ); |
| */ |
| |
| |
| VOID |
| vGenerateMACHeader ( |
| IN PSDevice pDevice, |
| IN PBYTE pbyBufferAddr, |
| IN WORD wDuration, |
| IN PSEthernetHeader psEthHeader, |
| IN BOOL bNeedEncrypt, |
| IN WORD wFragType, |
| IN UINT uDMAIdx, |
| IN UINT uFragIdx |
| ); |
| |
| |
| UINT |
| cbGetFragCount( |
| IN PSDevice pDevice, |
| IN PSKeyItem pTransmitKey, |
| IN UINT cbFrameBodySize, |
| IN PSEthernetHeader psEthHeader |
| ); |
| |
| |
| VOID |
| vGenerateFIFOHeader ( |
| IN PSDevice pDevice, |
| IN BYTE byPktTyp, |
| IN PBYTE pbyTxBufferAddr, |
| IN BOOL bNeedEncrypt, |
| IN UINT cbPayloadSize, |
| IN UINT uDMAIdx, |
| IN PSTxDesc pHeadTD, |
| IN PSEthernetHeader psEthHeader, |
| IN PBYTE pPacket, |
| IN PSKeyItem pTransmitKey, |
| IN UINT uNodeIndex, |
| OUT PUINT puMACfragNum, |
| OUT PUINT pcbHeaderSize |
| ); |
| |
| |
| VOID vDMA0_tx_80211(PSDevice pDevice, struct sk_buff *skb, PBYTE pbMPDU, UINT cbMPDULen); |
| CMD_STATUS csMgmt_xmit(PSDevice pDevice, PSTxMgmtPacket pPacket); |
| CMD_STATUS csBeacon_xmit(PSDevice pDevice, PSTxMgmtPacket pPacket); |
| |
| #ifdef __cplusplus |
| } /* End of extern "C" { */ |
| #endif /* __cplusplus */ |
| |
| |
| |
| |
| #endif // __RXTX_H__ |
| |
| |
| |