rtw_ht.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. /******************************************************************************
  2. *
  3. * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
  4. *
  5. * This program is free software; you can redistribute it and/or modify it
  6. * under the terms of version 2 of the GNU General Public License as
  7. * published by the Free Software Foundation.
  8. *
  9. * This program is distributed in the hope that it will be useful, but WITHOUT
  10. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11. * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
  12. * more details.
  13. *
  14. * You should have received a copy of the GNU General Public License along with
  15. * this program; if not, write to the Free Software Foundation, Inc.,
  16. * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
  17. *
  18. *
  19. ******************************************************************************/
  20. #ifndef _RTW_HT_H_
  21. #define _RTW_HT_H_
  22. struct ht_priv
  23. {
  24. u32 ht_option;
  25. u32 ampdu_enable;//for enable Tx A-MPDU
  26. //u8 baddbareq_issued[16];
  27. u32 tx_amsdu_enable;//for enable Tx A-MSDU
  28. u32 tx_amsdu_maxlen; // 1: 8k, 0:4k ; default:8k, for tx
  29. u32 rx_ampdu_maxlen; //for rx reordering ctrl win_sz, updated when join_callback.
  30. u8 bwmode;//
  31. u8 ch_offset;//PRIME_CHNL_OFFSET
  32. u8 sgi;//short GI
  33. //for processing Tx A-MPDU
  34. u8 agg_enable_bitmap;
  35. //u8 ADDBA_retry_count;
  36. u8 candidate_tid_bitmap;
  37. u8 ldpc_cap;
  38. u8 stbc_cap;
  39. u8 beamform_cap;
  40. struct rtw_ieee80211_ht_cap ht_cap;
  41. };
  42. typedef enum AGGRE_SIZE{
  43. HT_AGG_SIZE_8K = 0,
  44. HT_AGG_SIZE_16K = 1,
  45. HT_AGG_SIZE_32K = 2,
  46. HT_AGG_SIZE_64K = 3,
  47. VHT_AGG_SIZE_128K = 4,
  48. VHT_AGG_SIZE_256K = 5,
  49. VHT_AGG_SIZE_512K = 6,
  50. VHT_AGG_SIZE_1024K = 7,
  51. }AGGRE_SIZE_E, *PAGGRE_SIZE_E;
  52. typedef enum _RT_HT_INF0_CAP{
  53. RT_HT_CAP_USE_TURBO_AGGR = 0x01,
  54. RT_HT_CAP_USE_LONG_PREAMBLE = 0x02,
  55. RT_HT_CAP_USE_AMPDU = 0x04,
  56. RT_HT_CAP_USE_WOW = 0x8,
  57. RT_HT_CAP_USE_SOFTAP = 0x10,
  58. RT_HT_CAP_USE_92SE = 0x20,
  59. RT_HT_CAP_USE_88C_92C = 0x40,
  60. RT_HT_CAP_USE_AP_CLIENT_MODE = 0x80, // AP team request to reserve this bit, by Emily
  61. }RT_HT_INF0_CAPBILITY, *PRT_HT_INF0_CAPBILITY;
  62. typedef enum _RT_HT_INF1_CAP{
  63. RT_HT_CAP_USE_VIDEO_CLIENT = 0x01,
  64. RT_HT_CAP_USE_JAGUAR_BCUT = 0x02,
  65. RT_HT_CAP_USE_JAGUAR_CCUT = 0x04,
  66. }RT_HT_INF1_CAPBILITY, *PRT_HT_INF1_CAPBILITY;
  67. #define LDPC_HT_ENABLE_RX BIT0
  68. #define LDPC_HT_ENABLE_TX BIT1
  69. #define LDPC_HT_TEST_TX_ENABLE BIT2
  70. #define LDPC_HT_CAP_TX BIT3
  71. #define STBC_HT_ENABLE_RX BIT0
  72. #define STBC_HT_ENABLE_TX BIT1
  73. #define STBC_HT_TEST_TX_ENABLE BIT2
  74. #define STBC_HT_CAP_TX BIT3
  75. #define BEAMFORMING_HT_BEAMFORMER_ENABLE BIT0 // Declare our NIC supports beamformer
  76. #define BEAMFORMING_HT_BEAMFORMEE_ENABLE BIT1 // Declare our NIC supports beamformee
  77. #define BEAMFORMING_HT_BEAMFORMER_TEST BIT2 // Transmiting Beamforming no matter the target supports it or not
  78. #endif //_RTL871X_HT_H_