Home | History | Annotate | Download | only in include
      1 /*
      2  * Indices for 802.11 a/b/g/n/ac 1-3 chain symmetric transmit rates
      3  *
      4  * Copyright (C) 1999-2012, Broadcom Corporation
      5  *
      6  * Permission to use, copy, modify, and/or distribute this software for any
      7  * purpose with or without fee is hereby granted, provided that the above
      8  * copyright notice and this permission notice appear in all copies.
      9  *
     10  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
     11  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
     12  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
     13  * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
     14  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
     15  * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
     16  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
     17  *
     18  * $Id: bcmwifi_rates.h 252708 2011-04-12 06:45:56Z $
     19  */
     20 
     21 #ifndef _bcmwifi_rates_h_
     22 #define _bcmwifi_rates_h_
     23 
     24 #ifdef __cplusplus
     25 extern "C" {
     26 #endif
     27 
     28 
     29 #define WL_RATESET_SZ_DSSS		4
     30 #define WL_RATESET_SZ_OFDM		8
     31 #define WL_RATESET_SZ_HT_MCS	8
     32 #define WL_RATESET_SZ_VHT_MCS	10
     33 
     34 #define WL_TX_CHAINS_MAX	3
     35 
     36 #define WL_RATE_DISABLED		(-128)
     37 
     38 
     39 typedef enum wl_tx_bw {
     40 	WL_TX_BW_20,
     41 	WL_TX_BW_40,
     42 	WL_TX_BW_80,
     43 	WL_TX_BW_20IN40,
     44 	WL_TX_BW_20IN80,
     45 	WL_TX_BW_40IN80,
     46 	WL_TX_BW_ALL
     47 } wl_tx_bw_t;
     48 
     49 
     50 
     51 typedef enum wl_tx_mode {
     52 	WL_TX_MODE_NONE,
     53 	WL_TX_MODE_STBC,
     54 	WL_TX_MODE_CDD,
     55 	WL_TX_MODE_SDM
     56 } wl_tx_mode_t;
     57 
     58 
     59 
     60 typedef enum wl_tx_chains {
     61 	WL_TX_CHAINS_1 = 1,
     62 	WL_TX_CHAINS_2,
     63 	WL_TX_CHAINS_3
     64 } wl_tx_chains_t;
     65 
     66 
     67 
     68 typedef enum wl_tx_nss {
     69 	WL_TX_NSS_1 = 1,
     70 	WL_TX_NSS_2,
     71 	WL_TX_NSS_3
     72 } wl_tx_nss_t;
     73 
     74 
     75 typedef enum clm_rates {
     76 
     77 
     78 
     79 	WL_RATE_1X1_DSSS_1         = 0,
     80 	WL_RATE_1X1_DSSS_2         = 1,
     81 	WL_RATE_1X1_DSSS_5_5       = 2,
     82 	WL_RATE_1X1_DSSS_11        = 3,
     83 
     84 	WL_RATE_1X1_OFDM_6         = 4,
     85 	WL_RATE_1X1_OFDM_9         = 5,
     86 	WL_RATE_1X1_OFDM_12        = 6,
     87 	WL_RATE_1X1_OFDM_18        = 7,
     88 	WL_RATE_1X1_OFDM_24        = 8,
     89 	WL_RATE_1X1_OFDM_36        = 9,
     90 	WL_RATE_1X1_OFDM_48        = 10,
     91 	WL_RATE_1X1_OFDM_54        = 11,
     92 
     93 	WL_RATE_1X1_MCS0           = 12,
     94 	WL_RATE_1X1_MCS1           = 13,
     95 	WL_RATE_1X1_MCS2           = 14,
     96 	WL_RATE_1X1_MCS3           = 15,
     97 	WL_RATE_1X1_MCS4           = 16,
     98 	WL_RATE_1X1_MCS5           = 17,
     99 	WL_RATE_1X1_MCS6           = 18,
    100 	WL_RATE_1X1_MCS7           = 19,
    101 
    102 	WL_RATE_1X1_VHT0SS1        = 12,
    103 	WL_RATE_1X1_VHT1SS1        = 13,
    104 	WL_RATE_1X1_VHT2SS1        = 14,
    105 	WL_RATE_1X1_VHT3SS1        = 15,
    106 	WL_RATE_1X1_VHT4SS1        = 16,
    107 	WL_RATE_1X1_VHT5SS1        = 17,
    108 	WL_RATE_1X1_VHT6SS1        = 18,
    109 	WL_RATE_1X1_VHT7SS1        = 19,
    110 	WL_RATE_1X1_VHT8SS1        = 20,
    111 	WL_RATE_1X1_VHT9SS1        = 21,
    112 
    113 
    114 
    115 
    116 
    117 	WL_RATE_1X2_DSSS_1         = 22,
    118 	WL_RATE_1X2_DSSS_2         = 23,
    119 	WL_RATE_1X2_DSSS_5_5       = 24,
    120 	WL_RATE_1X2_DSSS_11        = 25,
    121 
    122 	WL_RATE_1X2_CDD_OFDM_6     = 26,
    123 	WL_RATE_1X2_CDD_OFDM_9     = 27,
    124 	WL_RATE_1X2_CDD_OFDM_12    = 28,
    125 	WL_RATE_1X2_CDD_OFDM_18    = 29,
    126 	WL_RATE_1X2_CDD_OFDM_24    = 30,
    127 	WL_RATE_1X2_CDD_OFDM_36    = 31,
    128 	WL_RATE_1X2_CDD_OFDM_48    = 32,
    129 	WL_RATE_1X2_CDD_OFDM_54    = 33,
    130 
    131 	WL_RATE_1X2_CDD_MCS0       = 34,
    132 	WL_RATE_1X2_CDD_MCS1       = 35,
    133 	WL_RATE_1X2_CDD_MCS2       = 36,
    134 	WL_RATE_1X2_CDD_MCS3       = 37,
    135 	WL_RATE_1X2_CDD_MCS4       = 38,
    136 	WL_RATE_1X2_CDD_MCS5       = 39,
    137 	WL_RATE_1X2_CDD_MCS6       = 40,
    138 	WL_RATE_1X2_CDD_MCS7       = 41,
    139 
    140 	WL_RATE_1X2_VHT0SS1        = 34,
    141 	WL_RATE_1X2_VHT1SS1        = 35,
    142 	WL_RATE_1X2_VHT2SS1        = 36,
    143 	WL_RATE_1X2_VHT3SS1        = 37,
    144 	WL_RATE_1X2_VHT4SS1        = 38,
    145 	WL_RATE_1X2_VHT5SS1        = 39,
    146 	WL_RATE_1X2_VHT6SS1        = 40,
    147 	WL_RATE_1X2_VHT7SS1        = 41,
    148 	WL_RATE_1X2_VHT8SS1        = 42,
    149 	WL_RATE_1X2_VHT9SS1        = 43,
    150 
    151 
    152 	WL_RATE_2X2_STBC_MCS0      = 44,
    153 	WL_RATE_2X2_STBC_MCS1      = 45,
    154 	WL_RATE_2X2_STBC_MCS2      = 46,
    155 	WL_RATE_2X2_STBC_MCS3      = 47,
    156 	WL_RATE_2X2_STBC_MCS4      = 48,
    157 	WL_RATE_2X2_STBC_MCS5      = 49,
    158 	WL_RATE_2X2_STBC_MCS6      = 50,
    159 	WL_RATE_2X2_STBC_MCS7      = 51,
    160 
    161 	WL_RATE_2X2_STBC_VHT0SS1   = 44,
    162 	WL_RATE_2X2_STBC_VHT1SS1   = 45,
    163 	WL_RATE_2X2_STBC_VHT2SS1   = 46,
    164 	WL_RATE_2X2_STBC_VHT3SS1   = 47,
    165 	WL_RATE_2X2_STBC_VHT4SS1   = 48,
    166 	WL_RATE_2X2_STBC_VHT5SS1   = 49,
    167 	WL_RATE_2X2_STBC_VHT6SS1   = 50,
    168 	WL_RATE_2X2_STBC_VHT7SS1   = 51,
    169 	WL_RATE_2X2_STBC_VHT8SS1   = 52,
    170 	WL_RATE_2X2_STBC_VHT9SS1   = 53,
    171 
    172 	WL_RATE_2X2_SDM_MCS8       = 54,
    173 	WL_RATE_2X2_SDM_MCS9       = 55,
    174 	WL_RATE_2X2_SDM_MCS10      = 56,
    175 	WL_RATE_2X2_SDM_MCS11      = 57,
    176 	WL_RATE_2X2_SDM_MCS12      = 58,
    177 	WL_RATE_2X2_SDM_MCS13      = 59,
    178 	WL_RATE_2X2_SDM_MCS14      = 60,
    179 	WL_RATE_2X2_SDM_MCS15      = 61,
    180 
    181 	WL_RATE_2X2_VHT0SS2        = 54,
    182 	WL_RATE_2X2_VHT1SS2        = 55,
    183 	WL_RATE_2X2_VHT2SS2        = 56,
    184 	WL_RATE_2X2_VHT3SS2        = 57,
    185 	WL_RATE_2X2_VHT4SS2        = 58,
    186 	WL_RATE_2X2_VHT5SS2        = 59,
    187 	WL_RATE_2X2_VHT6SS2        = 60,
    188 	WL_RATE_2X2_VHT7SS2        = 61,
    189 	WL_RATE_2X2_VHT8SS2        = 62,
    190 	WL_RATE_2X2_VHT9SS2        = 63,
    191 
    192 
    193 
    194 
    195 
    196 	WL_RATE_1X3_DSSS_1         = 64,
    197 	WL_RATE_1X3_DSSS_2         = 65,
    198 	WL_RATE_1X3_DSSS_5_5       = 66,
    199 	WL_RATE_1X3_DSSS_11        = 67,
    200 
    201 	WL_RATE_1X3_CDD_OFDM_6     = 68,
    202 	WL_RATE_1X3_CDD_OFDM_9     = 69,
    203 	WL_RATE_1X3_CDD_OFDM_12    = 70,
    204 	WL_RATE_1X3_CDD_OFDM_18    = 71,
    205 	WL_RATE_1X3_CDD_OFDM_24    = 72,
    206 	WL_RATE_1X3_CDD_OFDM_36    = 73,
    207 	WL_RATE_1X3_CDD_OFDM_48    = 74,
    208 	WL_RATE_1X3_CDD_OFDM_54    = 75,
    209 
    210 	WL_RATE_1X3_CDD_MCS0       = 76,
    211 	WL_RATE_1X3_CDD_MCS1       = 77,
    212 	WL_RATE_1X3_CDD_MCS2       = 78,
    213 	WL_RATE_1X3_CDD_MCS3       = 79,
    214 	WL_RATE_1X3_CDD_MCS4       = 80,
    215 	WL_RATE_1X3_CDD_MCS5       = 81,
    216 	WL_RATE_1X3_CDD_MCS6       = 82,
    217 	WL_RATE_1X3_CDD_MCS7       = 83,
    218 
    219 	WL_RATE_1X3_VHT0SS1        = 76,
    220 	WL_RATE_1X3_VHT1SS1        = 77,
    221 	WL_RATE_1X3_VHT2SS1        = 78,
    222 	WL_RATE_1X3_VHT3SS1        = 79,
    223 	WL_RATE_1X3_VHT4SS1        = 80,
    224 	WL_RATE_1X3_VHT5SS1        = 81,
    225 	WL_RATE_1X3_VHT6SS1        = 82,
    226 	WL_RATE_1X3_VHT7SS1        = 83,
    227 	WL_RATE_1X3_VHT8SS1        = 84,
    228 	WL_RATE_1X3_VHT9SS1        = 85,
    229 
    230 
    231 	WL_RATE_2X3_STBC_MCS0      = 86,
    232 	WL_RATE_2X3_STBC_MCS1      = 87,
    233 	WL_RATE_2X3_STBC_MCS2      = 88,
    234 	WL_RATE_2X3_STBC_MCS3      = 89,
    235 	WL_RATE_2X3_STBC_MCS4      = 90,
    236 	WL_RATE_2X3_STBC_MCS5      = 91,
    237 	WL_RATE_2X3_STBC_MCS6      = 92,
    238 	WL_RATE_2X3_STBC_MCS7      = 93,
    239 
    240 	WL_RATE_2X3_STBC_VHT0SS1   = 86,
    241 	WL_RATE_2X3_STBC_VHT1SS1   = 87,
    242 	WL_RATE_2X3_STBC_VHT2SS1   = 88,
    243 	WL_RATE_2X3_STBC_VHT3SS1   = 89,
    244 	WL_RATE_2X3_STBC_VHT4SS1   = 90,
    245 	WL_RATE_2X3_STBC_VHT5SS1   = 91,
    246 	WL_RATE_2X3_STBC_VHT6SS1   = 92,
    247 	WL_RATE_2X3_STBC_VHT7SS1   = 93,
    248 	WL_RATE_2X3_STBC_VHT8SS1   = 94,
    249 	WL_RATE_2X3_STBC_VHT9SS1   = 95,
    250 
    251 	WL_RATE_2X3_SDM_MCS8       = 96,
    252 	WL_RATE_2X3_SDM_MCS9       = 97,
    253 	WL_RATE_2X3_SDM_MCS10      = 98,
    254 	WL_RATE_2X3_SDM_MCS11      = 99,
    255 	WL_RATE_2X3_SDM_MCS12      = 100,
    256 	WL_RATE_2X3_SDM_MCS13      = 101,
    257 	WL_RATE_2X3_SDM_MCS14      = 102,
    258 	WL_RATE_2X3_SDM_MCS15      = 103,
    259 
    260 	WL_RATE_2X3_VHT0SS2        = 96,
    261 	WL_RATE_2X3_VHT1SS2        = 97,
    262 	WL_RATE_2X3_VHT2SS2        = 98,
    263 	WL_RATE_2X3_VHT3SS2        = 99,
    264 	WL_RATE_2X3_VHT4SS2        = 100,
    265 	WL_RATE_2X3_VHT5SS2        = 101,
    266 	WL_RATE_2X3_VHT6SS2        = 102,
    267 	WL_RATE_2X3_VHT7SS2        = 103,
    268 	WL_RATE_2X3_VHT8SS2        = 104,
    269 	WL_RATE_2X3_VHT9SS2        = 105,
    270 
    271 
    272 	WL_RATE_3X3_SDM_MCS16      = 106,
    273 	WL_RATE_3X3_SDM_MCS17      = 107,
    274 	WL_RATE_3X3_SDM_MCS18      = 108,
    275 	WL_RATE_3X3_SDM_MCS19      = 109,
    276 	WL_RATE_3X3_SDM_MCS20      = 110,
    277 	WL_RATE_3X3_SDM_MCS21      = 111,
    278 	WL_RATE_3X3_SDM_MCS22      = 112,
    279 	WL_RATE_3X3_SDM_MCS23      = 113,
    280 
    281 	WL_RATE_3X3_VHT0SS3        = 106,
    282 	WL_RATE_3X3_VHT1SS3        = 107,
    283 	WL_RATE_3X3_VHT2SS3        = 108,
    284 	WL_RATE_3X3_VHT3SS3        = 109,
    285 	WL_RATE_3X3_VHT4SS3        = 110,
    286 	WL_RATE_3X3_VHT5SS3        = 111,
    287 	WL_RATE_3X3_VHT6SS3        = 112,
    288 	WL_RATE_3X3_VHT7SS3        = 113,
    289 	WL_RATE_3X3_VHT8SS3        = 114,
    290 	WL_RATE_3X3_VHT9SS3        = 115,
    291 
    292 
    293 	WL_NUMRATES                = 116
    294 } clm_rates_t;
    295 
    296 #ifdef __cplusplus
    297 }
    298 #endif
    299 
    300 #endif
    301