rxtx.h 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. /*
  2. * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
  3. * All rights reserved.
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License as published by
  7. * the Free Software Foundation; either version 2 of the License, or
  8. * (at your option) any later version.
  9. *
  10. * This program is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. *
  15. * You should have received a copy of the GNU General Public License along
  16. * with this program; if not, write to the Free Software Foundation, Inc.,
  17. * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  18. *
  19. * File: rxtx.h
  20. *
  21. * Purpose:
  22. *
  23. * Author: Jerry Chen
  24. *
  25. * Date: Jun. 27, 2002
  26. *
  27. */
  28. #ifndef __RXTX_H__
  29. #define __RXTX_H__
  30. #include "ttype.h"
  31. #include "device.h"
  32. #include "wcmd.h"
  33. /*--------------------- Export Definitions -------------------------*/
  34. /*--------------------- Export Variables --------------------------*/
  35. /*--------------------- Export Functions --------------------------*/
  36. /*
  37. void
  38. vGenerateMACHeader(PSDevice pDevice, unsigned long dwTxBufferAddr, unsigned char *pbySkbData,
  39. unsigned int cbPacketSize, bool bDMA0Used, unsigned int *pcbHeadSize,
  40. unsigned int *pcbAppendPayload);
  41. void
  42. vProcessRxMACHeader(PSDevice pDevice, unsigned long dwRxBufferAddr, unsigned int cbPacketSize,
  43. bool bIsWEP, unsigned int *pcbHeadSize);
  44. */
  45. void
  46. vGenerateMACHeader (
  47. PSDevice pDevice,
  48. unsigned char *pbyBufferAddr,
  49. unsigned short wDuration,
  50. PSEthernetHeader psEthHeader,
  51. bool bNeedEncrypt,
  52. unsigned short wFragType,
  53. unsigned int uDMAIdx,
  54. unsigned int uFragIdx
  55. );
  56. unsigned int
  57. cbGetFragCount(
  58. PSDevice pDevice,
  59. PSKeyItem pTransmitKey,
  60. unsigned int cbFrameBodySize,
  61. PSEthernetHeader psEthHeader
  62. );
  63. void
  64. vGenerateFIFOHeader(PSDevice pDevice, unsigned char byPktTyp, unsigned char *pbyTxBufferAddr,
  65. bool bNeedEncrypt, unsigned int cbPayloadSize, unsigned int uDMAIdx, PSTxDesc pHeadTD,
  66. PSEthernetHeader psEthHeader, unsigned char *pPacket, PSKeyItem pTransmitKey,
  67. unsigned int uNodeIndex, unsigned int *puMACfragNum, unsigned int *pcbHeaderSize);
  68. void vDMA0_tx_80211(PSDevice pDevice, struct sk_buff *skb, unsigned char *pbMPDU, unsigned int cbMPDULen);
  69. CMD_STATUS csMgmt_xmit(PSDevice pDevice, PSTxMgmtPacket pPacket);
  70. CMD_STATUS csBeacon_xmit(PSDevice pDevice, PSTxMgmtPacket pPacket);
  71. #endif // __RXTX_H__