Lines Matching +full:4 +full:ghz +full:- +full:coexistence
6 * Copyright (C) 1999-2017, Broadcom Corporation
27 * <<Broadcom-WL-IPTag/Open:>>
54 #define DOT11_FCS_LEN 4u /* d11 FCS length */
55 #define DOT11_ICV_LEN 4 /* d11 ICV length */
59 #define DOT11_HTC_LEN 4 /* d11 HT Control field length */
62 #define DOT11_IV_LEN 4 /* d11 IV length */
64 #define DOT11_IV_AES_OCB_LEN 4 /* d11 IV/AES/OCB length */
109 * Bridge-Tunnel: 0x00 0x00 0xF8
119 * N.B.: This struct reflects the full 4 address 802.11 MAC header.
130 struct ether_addr a4; /* address 4 */
171 #define DOT11_CS_END_LEN 16 /* d11 CF-END frame length */
174 * RWL wifi protocol: The Vendor Specific Action frame is defined for vendor-specific signaling
230 #define DOT11_BAR_LEN 4 /* BAR frame payload length */
240 #define DOT11_BA_LEN 4 /* BA frame payload len (wo bitmap) */
270 #define DOT11_AUTH_SEQ_STATUS_LEN 4 /* length of auth frame without challenge IE and
278 #define DOT11_ASSOC_REQ_FIXED_LEN 4 /* length of assoc frame without info elts */
326 /* These lengths assume 64 MU groups, as specified in 802.11ac-2013 */
372 * Extension Channel Offset IE: 802.11n-D1.0 spec. added sideband
432 /* CSA mode - 802.11h-2003 $7.3.2.20 */
457 #define DOT11_EXT_CSA_IE_LEN 4 /* length of extended channel switch IE body */
496 WIDE_BW_CHAN_WIDTH_80_80 = 4
530 #define DOT11_OBSS_COEXINFO_LEN 1 /* length of OBSS Coexistence INFO IE */
554 #define DOT11_EXTCAP_LEN_IW 4
566 #define DOT11_EXTCAP_LEN_DMS 4
573 #define DOT11_TDLS_CAP_PU_BUFFER_STA 28 /* TDLS Peer U-APSD buffer STA support */
578 #define DOT11_TDLS_CAP_TDLS_WIDER_BW 61 /* TDLS Wider Band-Width */
588 #define DOT11_MEASURE_TYPE_NOISE 4 /* d11 measurement Noise Histogram type */
608 #define DOT11_MEASURE_MODE_DUR (1<<4) /* d11 measurement dur mandatory */
618 #define DOT11_MEASURE_BASIC_MAP_UNMEAS ((uint8)(1<<4)) /* d11 measurement map unmeasuremnt */
668 #define DOT11_MNG_IE_MREQ_MIN_LEN 4 /* d11 measurement report IE length */
669 #define DOT11_MNG_IE_MREQ_LCI_FIXED_LEN 4 /* d11 measurement report IE length */
742 #define DOT11_MNG_IE_MREP_FRNG_FIXED_LEN 4
796 #define AC_COUNT 4 /* number of ACs */
846 #define WME_QI_AP_APSD_MASK 0x80 /* U-APSD Supported mask */
847 #define WME_QI_AP_APSD_SHIFT 7 /* U-APSD Supported shift */
872 #define EDCF_AIFSN_SHIFT 12 /* 4 MSB(0xFFF) in ifs_ctl for AC idx */
877 #define EDCF_ECW2CW(exp) ((1 << (exp)) - 1)
880 #define EDCF_ECWMAX_SHIFT 4 /* cwmax exponent form shift */
887 /* Default BE ACI value for non-WME connection STA */
945 /* Estimated Service Parameters (ESP) IE - 802.11-2016 9.4.2.174 */
956 /* ESP Information list - 802.11-2016 9.4.2.174 */
968 #define DOT11_ESP_NBR_INFO_LISTS 4u /* max nbr of esp information lists */
994 #define DOT11_MGMT_NOTIFICATION_LEN 4 /* Fixed length */
1041 #define DOT11_FILS_SKEY 4 /* d11 fils shared key authentication w/o pfs */
1052 #define FC_SUBTYPE_SHIFT 4 /* subtype shift */
1071 #define SEQNUM_SHIFT 4 /* seq. number shift */
1087 #define FC_SUBTYPE_PROBE_REQ 4 /* probe request */
1093 #define FC_SUBTYPE_DEAUTH 12 /* de-authentication */
1095 #define FC_SUBTYPE_ACTION_NOACK 14 /* action no-ack */
1106 #define FC_SUBTYPE_CF_END 14 /* CF-END */
1107 #define FC_SUBTYPE_CF_END_ACK 15 /* CF-END ACK */
1111 #define FC_SUBTYPE_DATA_CF_ACK 1 /* Data + CF-ACK */
1112 #define FC_SUBTYPE_DATA_CF_POLL 2 /* Data + CF-Poll */
1113 #define FC_SUBTYPE_DATA_CF_ACK_POLL 3 /* Data + CF-Ack + CF-Poll */
1114 #define FC_SUBTYPE_NULL 4 /* Null */
1115 #define FC_SUBTYPE_CF_ACK 5 /* CF-Ack */
1116 #define FC_SUBTYPE_CF_POLL 6 /* CF-Poll */
1117 #define FC_SUBTYPE_CF_ACK_POLL 7 /* CF-Ack + CF-Poll */
1119 #define FC_SUBTYPE_QOS_DATA_CF_ACK 9 /* QoS Data + CF-Ack */
1120 #define FC_SUBTYPE_QOS_DATA_CF_POLL 10 /* QoS Data + CF-Poll */
1121 #define FC_SUBTYPE_QOS_DATA_CF_ACK_POLL 11 /* QoS Data + CF-Ack + CF-Poll */
1123 #define FC_SUBTYPE_QOS_CF_POLL 14 /* QoS CF-Poll */
1124 #define FC_SUBTYPE_QOS_CF_ACK_POLL 15 /* QoS CF-Ack + CF-Poll */
1128 #define FC_SUBTYPE_ANY_NULL(s) (((s) & 4) != 0)
1153 #define FC_ACTION_NOACK FC_KIND(FC_TYPE_MNG, FC_SUBTYPE_ACTION_NOACK) /* action no-ack */
1163 #define FC_CF_END FC_KIND(FC_TYPE_CTL, FC_SUBTYPE_CF_END) /* CF-END */
1164 #define FC_CF_END_ACK FC_KIND(FC_TYPE_CTL, FC_SUBTYPE_CF_END_ACK) /* CF-END ACK */
1184 /* End of Service Period (U-APSD) */
1185 #define QOS_EOSP_SHIFT 4 /* QoS End of Service Period shift */
1198 /* A-MSDU flag */
1228 #define DOT11_RC_INACTIVITY 4 /* Disassociated due to inactivity */
1250 /* 32-39 are QSTA specific reasons added in 11e */
1251 #define DOT11_RC_UNSPECIFIED_QOS 32 /* unspecified QoS-related reason */
1353 * does not support the DSSS-OFDM option
1388 #define DOT11_SC_ANTICLOG_TOCKEN_REQUIRED 76 /* Anti-clogging tocken required */
1396 #define DOT11_SC_SAE_HASH_TO_ELEMENT 126 /* SAE hash-to-element */
1423 #define DOT11_MNG_CF_PARMS_ID 4 /* d11 management CF parameter id */
1451 #define DOT11_MNG_NONERP_ID 47 /* d11 management NON-ERP id */
1475 #define DOT11_MNG_HT_BSS_COEXINFO_ID 72 /* d11 mgmt OBSS Coexistence INFO */
1487 #define DOT11_MNG_WNM_SLEEP_MODE_ID 93 /* 11v wnm-sleep mode id */
1536 #define EXT_MNG_OWE_DH_PARAM_ID 32u /* OWE DH Param ID - RFC 8110 */
1550 #define EXT_MNG_HE_6GBAND_CAP_ID 59u /* HE 6 GHz Band Capabilities */
1566 #define FILS_EXTID_MNG_SESSION_ID 4u /* FILS Session element */
1589 ((_ie)->id == DOT11_MNG_ID_EXT_ID) && \
1590 ((_ie)->len > 0) && \
1594 (_ie)->id = DOT11_MNG_ID_EXT_ID; \
1595 (_ie)->len = _len; \
1596 (_ie)->id_ext = _id; \
1608 * 802.11-2012, section 6.5.5.2, DATA_RATE parameter enumerates all the values.
1615 #define DOT11_RATE_2M 4 /* 2 Mbps in 500kbps units */
1630 * and bits 0-6 as the rate value
1636 * 802.11-2016 (and 802.11ax-D1.1), Sec 9.4.2.3
1651 *ERP-OFDM frames
1657 #define DOT11_MGN_TS_DELAY_LEN 4 /* length of TS DELAY IE */
1658 #define TS_DELAY_FIELD_SIZE 4 /* TS DELAY field size */
1679 /* 20/40 BSS Coexistence Management support bit position */
1695 /* WNM-Sleep Mode */
1716 /* Operating mode notification - VHT (11ac D3.0 - 8.4.2.29) */
1718 /* Fine timing measurement - D3.0 */
1742 /* VHT Operating mode bit fields - (11ac D8.0/802.11-2016 - 9.4.1.53) */
1749 #define DOT11_OPER_MODE_RXNSS_SHIFT 4
1757 (((nss) - 1) << DOT11_OPER_MODE_RXNSS_SHIFT & DOT11_OPER_MODE_RXNSS_MASK) |\
1764 (((nss) - 1) << DOT11_OPER_MODE_RXNSS_SHIFT & DOT11_OPER_MODE_RXNSS_MASK) |\
1802 /* Operating mode information element 802.11ac D3.0 - 8.4.2.168 */
1811 #define DOT11_OBSS_COEX_MNG_SUPPORT 0x01 /* 20/40 BSS Coexistence Management support */
1827 #define DOT11_ACTION_CAT_PUBLIC 4 /* category public */
1850 #define DOT11_SM_ACTION_CHANNEL_SWITCH 4 /* d11 action channel switch */
1858 #define DOT11_QOS_ACTION_QOS_MAP 4 /* d11 action QOS map */
1865 #define DOT11_PUB_ACTION_BSS_COEX_MNG 0 /* 20/40 Coexistence Management action id */
1866 #define DOT11_PUB_ACTION_CHANNEL_SWITCH 4 /* d11 action channel switch */
1893 #define DOT11_FT_ACTION_FT_REQ 1 /* FBT request - for over-the-DS FBT */
1894 #define DOT11_FT_ACTION_FT_RES 2 /* FBT response - for over-the-DS FBT */
1895 #define DOT11_FT_ACTION_FT_CON 3 /* FBT confirm - for OTDS with RRP */
1896 #define DOT11_FT_ACTION_FT_ACK 4 /* FBT ack */
1908 #define DOT11_WNM_ACTION_LOC_CFG_REQ 4
1940 /* VHT category action types - 802.11ac D3.0 - 8.5.23.1 */
1945 /* FILS category action types - 802.11ai D11.0 - 9.6.8.1 */
1984 #define DOT11_BSSTRANS_QUERY_LEN 4 /* Fixed length */
1991 #define DOT11_BSSTRANS_REASON_FIRST_ASSOC 4
2023 /* BSS Mgmt Transition Request Mode Field - 802.11v */
2047 #define DOT11_BSSTRANS_RESP_STATUS_REJ_TERM_UNDESIRED 4
2101 #define DOT11_TIMBC_STATUS_RESERVED 4
2116 uint8 len; /* 4 - 255 */
2130 uint8 check_beacon; /* need to check-beacon */
2135 #define DOT11_TIMBC_HDR_LEN (sizeof(dot11_timbc_t) - sizeof(dot11_tim_ie_t))
2136 #define DOT11_TIMBC_FIXED_LEN (sizeof(dot11_timbc_t) - 1) /* Fixed length */
2161 #define DOT11_TCLAS_FC_4_IP_HIGHER 4
2198 #define DOT11_TCLAS_FC_2_8021Q_LEN 4
2208 #define DOT11_TCLAS_FC_3_FILTER_LEN 4
2210 /** TCLAS frame classifier type 4 parameters for IPV4 is the same as TCLAS type 1 */
2214 /** TCLAS frame classifier type 4 parameters for IPV6 */
2255 #define DOT11_TCLAS_FC_MIN_LEN 4 /* Classifier Type 2 has the min size */
2283 /* TSPEC element defined in 802.11 std section 8.4.2.32 - Not supported */
2343 #define DOT11_TFS_STATUS_DENY_POLICY 4
2353 #define DOT11_FMS_TFS_STATUS_DENY_POLICY 4
2405 /** WNM-Sleep Management Request frame header */
2408 uint8 action; /* WNM action: wnm-sleep request (16) */
2415 /** WNM-Sleep Management Response frame header */
2418 uint8 action; /* WNM action: wnm-sleep request (17) */
2459 #define DOT11_WNM_SLEEP_IE_LEN 4 /* Fixed length */
2468 #define DOT11_WNM_SLEEP_RESP_DENY_KEY 4
2541 /** WNM-Notification Request frame header */
2547 uint8 data[1]; /* Sub-elements */
2550 #define DOT11_WNM_NOTIF_REQ_LEN 4 /* Fixed length */
2708 /** Over-the-DS Fast Transition Request frame header */
2719 /** Over-the-DS Fast Transition Response frame header */
2741 /* 11r - Size of the RDE (RIC Data Element) IE, including TLV header. */
2760 #define DOT11_RRM_CAP_BCN_PASSIVE 4
2774 /* bit18-bit23, not used for RRM_IOVAR */
2792 #define DOT11_RRM_CAP_FM_ENAB (1 << (DOT11_RRM_CAP_FM - 8))
2793 #define DOT11_RRM_CAP_CLM_ENAB (1 << (DOT11_RRM_CAP_CLM - 8))
2794 #define DOT11_RRM_CAP_NHM_ENAB (1 << (DOT11_RRM_CAP_NHM - 8))
2795 #define DOT11_RRM_CAP_SM_ENAB (1 << (DOT11_RRM_CAP_SM - 8))
2796 #define DOT11_RRM_CAP_LCIM_ENAB (1 << (DOT11_RRM_CAP_LCIM - 8))
2797 #define DOT11_RRM_CAP_TSCM_ENAB (1 << (DOT11_RRM_CAP_TSCM - 8))
2799 #define DOT11_RRM_CAP_MPC0_ENAB (1 << (DOT11_RRM_CAP_MPC0 - 24))
2800 #define DOT11_RRM_CAP_MPC1_ENAB (1 << (DOT11_RRM_CAP_MPC1 - 24))
2801 #define DOT11_RRM_CAP_MPC2_ENAB (1 << (DOT11_RRM_CAP_MPC2 - 24))
2802 #define DOT11_RRM_CAP_MPTI_ENAB (1 << (DOT11_RRM_CAP_MPTI - 24))
2809 #define DOT11_RRM_CAP_CIVIC_LOC_ENAB (1 << (DOT11_RRM_CAP_CIVIC_LOC - 32))
2810 #define DOT11_RRM_CAP_IDENT_LOC_ENAB (1 << (DOT11_RRM_CAP_IDENT_LOC - 32))
2855 #define DOT11_RM_ACTION_NR_REQ 4 /* Neighbor report request */
2892 #define DOT11_RMREQ_MODE_REQUEST 4
2899 #define DOT11_RMREP_MODE_REFUSED 4
2937 /* Sub-element IDs for Beacon Request */
2964 /* Sub-element IDs for Beacon Report */
2968 #define DOT11_RMREP_BCN_FRM_BODY_LEN_MAX 224 /* 802.11k-2008 7.3.2.22.6 */
2992 /* Sub-element IDs for Frame Report */
3165 /* group 2-9 use same qos data structure (tid 0-7), total 52 bytes */
3351 /* optional sub-elements */
3365 /* optional sub-elements */
3384 /* optional sub-elements */
3399 /* optional sub-elements */
3435 /* optional sub-elements */
3447 #define DOT11_FTM_RANGE_SUBELEM_ID 4
3459 /* neighbor report sub-elements */
3460 /* optional sub-elements */
3467 uint32 start_tsf; /* 4 lsb of tsf */
3484 uint32 start_tsf; /* 4 lsb of tsf */
3527 #define DOT11_NGBR_BSS_TERM_DUR_SE_ID 4
3631 #define PREN_PREAMBLE_EXT 4 /* extra preamble (multiply by unique_streams-1) */
3636 /* 802.11 HT PLCP format 802.11n-2009, sec 20.3.9.4.3
3637 * HT-SIG is composed of two 24 bit parts, HT-SIG1 and HT-SIG2
3639 /* HT-SIG1 */
3644 /* HT-SIG2 */
3650 #define HT_SIG2_STBC_SHIFT 4
3658 /* HT Timing-related parameters (802.11-2012, sec 20.3.6) */
3660 #define HT_T_L_SIG 4
3662 #define HT_T_LTF1 4
3664 #define HT_T_LTFs 4
3665 #define HT_T_STF 4
3667 #define HT_T_SYML 4
3677 #define APHY_SIGNAL_TIME 4 /* APHY signal time */
3678 #define APHY_SYMBOL_TIME 4 /* APHY symbol time */
3705 /* for VHT-A1 */
3706 /* SIG-A1 reserved bits */
3718 #define VHT_SIGA1_GID_SHIFT 4
3732 /* for VHT-A2 */
3739 #define VHT_SIGA2_MCS_SHIFT 4
3745 /* VHT Timing-related parameters (802.11ac D4.0, sec 22.3.6) */
3747 #define VHT_T_L_SIG 4
3749 #define VHT_T_LTF 4
3750 #define VHT_T_STF 4
3751 #define VHT_T_SIG_B 4
3752 #define VHT_T_SYML 4
3757 /** dot11Counters Table - 802.11 spec., Annex D */
3821 uint16 amsdu_mtu_pref; /* preferred A-MSDU MTU */
3834 #define BRF_PROP_11N_MCS 0x10 /* re-use afterburner bit */
3835 #define BRF_MEDIA_CLIENT 0x20 /* re-use afterburner bit to indicate media client device */
3838 (!((brcm_ie)->flags & BRF_ABCAP) && ((brcm_ie)->flags & BRF_PROP_11N_MCS))
3841 #define BRF1_AMSDU 0x1 /* A-MSDU capable */
3844 #define BRF1_PSOFIX 0x8 /* AP has fixed PS mode out-of-order packets */
3892 /* BRCM_PROP_IE_LEN = sizeof(relmcast_brcm_prop_ie_t)-((sizeof (id) + sizeof (len)))? */
3893 #define RELMCAST_BRCM_PROP_IE_LEN (sizeof(relmcast_brcm_prop_ie_t)-(2*sizeof(uint8)))
3908 #define BRCM_BTC_INFO_TYPE_LEN (sizeof(btc_brcm_prop_ie_t) - (2 * sizeof(uint8)))
3911 #define MCSSET_LEN 16 /* 16-bits per 8-bit set to give 128-bits bitmap of MCS Index */
3943 #define HT_PROP_IE_OVERHEAD 4 /* overhead bytes for prop oui ie */
3966 #define HT_CAP_LSIG_TXOP 0x8000 /* L-SIG TXOP protection support */
3970 #define HT_CAP_RX_STBC_TWO_STREAM 0x2 /* rx STBC support of 1-2 spatial streams */
3971 #define HT_CAP_RX_STBC_THREE_STREAM 0x3 /* rx STBC support of 1-3 spatial streams */
4009 #define VHT_MPDU_MSDU_DELTA 56 /* Difference in spec - vht mpdu, amsdu len */
4010 /* Max AMSDU len - per spec */
4011 #define VHT_MAX_AMSDU (VHT_MAX_MPDU - VHT_MPDU_MSDU_DELTA)
4021 #define AMPDU_MAX_MPDU_DENSITY 7 /* max mpdu density; in 1/4 usec units */
4023 #define AMPDU_DENSITY_1over4_US 1 /* 1/4 us density */
4026 #define AMPDU_DENSITY_2_US 4 /* 2 us density */
4027 #define AMPDU_DENSITY_4_US 5 /* 4 us density */
4036 #define AMPDU_RX_FACTOR_128K 4 /* max rcv ampdu len (128kb) */
4044 #define AMPDU_DELIMITER_LEN 4u /* length of ampdu delimiter */
4090 #define HT_OPMODE_NONGF 0x0004 /* protection mode non-GF */
4092 #define DOT11N_OBSS_NONHT 0x0010 /* OBSS Non-HT STA present */
4100 #define HT_LSIG_TXOP 0x0200 /* L-SIG TXOP Protection full support */
4110 #define GET_HT_OPMODE(add_ie) ((ltoh16_ua(&add_ie->opmode) & HT_OPMODE_MASK) \
4112 #define HT_MIXEDMODE_PRESENT(add_ie) ((ltoh16_ua(&add_ie->opmode) & HT_OPMODE_MASK) \
4114 #define HT_HT20_PRESENT(add_ie) ((ltoh16_ua(&add_ie->opmode) & HT_OPMODE_MASK) \
4116 #define HT_OPTIONAL_PRESENT(add_ie) ((ltoh16_ua(&add_ie->opmode) & HT_OPMODE_MASK) \
4120 #define HT_NONGF_PRESENT(add_ie) ((ltoh16_ua(&add_ie->opmode) & HT_OPMODE_NONGF) \
4121 == HT_OPMODE_NONGF) /* non-GF present */
4122 #define DOT11N_TXBURST_PRESENT(add_ie) ((ltoh16_ua(&add_ie->opmode) & DOT11N_TXBURST) \
4124 #define DOT11N_OBSS_NONHT_PRESENT(add_ie) ((ltoh16_ua(&add_ie->opmode) & DOT11N_OBSS_NONHT) \
4125 == DOT11N_OBSS_NONHT) /* OBSS Non-HT present */
4126 #define HT_OPMODE_CCFS2_GET(add_ie) ((ltoh16_ua(&(add_ie)->opmode) & HT_OPMODE_CCFS2_MASK) \
4129 (add_ie)->opmode &= htol16(~HT_OPMODE_CCFS2_MASK); \
4130 (add_ie)->opmode |= htol16(((ccfs2) << HT_OPMODE_CCFS2_SHIFT) & HT_OPMODE_CCFS2_MASK); \
4178 #define HT_CTRL_CSI_STEER_NCOM 2 /* non-compressed beamforming */
4192 /* supported MCS set - 64 bit field */
4200 /* 4B cap_info + 8B supp_mcs */
4203 /* VHT Capabilities Info field - 32bit - in VHT Cap IE */
4233 /* VHT CAP INFO extended NSS BW support - refer to IEEE 802.11 REVmc D8.0 Figure 9-559 */
4237 /* VHT Supported MCS Set - 64-bit - in VHT Cap IE */
4245 /* defines for field(s) in vht_cap_ie->rx_max_rate */
4249 /* defines for field(s) in vht_cap_ie->tx_max_rate */
4256 #define VHT_CAP_MCS_MAP_S 2 /* num bits for 1-stream */
4257 #define VHT_CAP_MCS_MAP_M 0x3 /* mask for 1-stream */
4278 /* mcsmap with MCS0-9 for Nss = 3 */
4333 VHT_OP_CHAN_WIDTH_160 = 2, /* deprecated - IEEE 802.11 REVmc D8.0 Table 11-25 */
4334 VHT_OP_CHAN_WIDTH_80_80 = 3 /* deprecated - IEEE 802.11 REVmc D8.0 Table 11-25 */
4344 * On the 5GHz band this is the entire IE,
4345 * on 2.4GHz the VHT IEs as defined in the 802.11ac
4350 * Bit0: 5G MCS 0-9 BW 160MHz
4351 * Bit1: 5G MCS 0-9 support BW 80MHz
4352 * Bit2: 5G MCS 0-9 support BW 20MHz
4353 * Bit3: 2.4G MCS 0-9 support BW 20MHz
4354 * Bits:4-7 Reserved for future use
4360 uint8 type; /* type of this IE = 4 */
4365 /* Def for rx & tx basic mcs maps - ea ss num has 2 bits of info */
4366 #define VHT_MCS_MAP_GET_SS_IDX(nss) (((nss)-1) * VHT_CAP_MCS_MAP_S)
4383 VHT_MCS_SS_SUPPORTED(4, mcsMap) ? 4 : \
4403 #define WPS_OUI_TYPE 4
4428 #define WFA_OUI_TYPE_TPQ 4 /* WFD Tunneled Probe ReQuest */
4441 #define RSN_AKM_PSK 2 /* Pre-shared Key */
4443 #define RSN_AKM_FBT_PSK 4 /* Fast Bss transition using Pre-shared Key */
4448 #define RSN_AKM_MFP_PSK 6 /* SHA256 key derivation, using Pre-shared Key */
4450 #define RSN_AKM_SHA256_PSK 6 /* SHA256 key derivation, using Pre-shared Key */
4452 #define RSN_AKM_SAE_PSK 8 /* AKM for SAE with 4-way handshake */
4455 #define RSN_AKM_SUITEB_SHA384_1X 12 /* Suite B-192 SHA384 */
4468 #define DOT11_MAX_DEFAULT_KEYS 4 /* number of default keys */
4472 #define DOT11_EXT_IV_FLAG (1<<5) /* flag to indicate IV is > 4 bytes */
4494 #define AES_GCM_MIC_SIZE 16 /* size of MIC for 128-bit GCM - .11adD9 */
4496 #define AES256_KEY_SIZE 32 /* size of AES 256 key - .11acD5 */
4501 #define WCN_TYPE 4 /* WCN type */
4531 /* Optional sub-elements follow */
4573 /* 802.11r-2008, 11A.10.3 - RRB frame format */
4641 #define TDLS_CHANNEL_SWITCH_TIMING_IE_LEN 4
4663 #define TDLS_PU_BUFFER_STATUS_AC_VI 4
4671 #define TDLS_PEER_TRAFFIC_IND 4
4688 /* FTM - fine timing measurement public action frames */
4690 uint8 category; /* category of action frame (4) */
4698 uint8 category; /* category of action frame (4) */
4702 uint8 tod[6]; /* t1 - last depart timestamp */
4703 uint8 toa[6]; /* t4 - last ack arrival timestamp */
4738 /* incorrect defs - here for ROM compatibiity */
4777 uint8 id; /* DOT11_MNG_FTM_PARAM_ID 8.4.2.166 11mcd2.6/2014 - revisit */
4782 #define DOT11_FTM_PARAMS_IE_LEN (sizeof(dot11_ftm_params_t) - 2)
4784 #define FTM_PARAMS_FIELD(_p, _off, _mask, _shift) (((_p)->info[(_off)] & (_mask)) >> (_shift))
4786 uint8 _ptmp = (_p)->info[_off] & ~(_mask); \
4787 (_p)->info[(_off)] = _ptmp | (((_val) << (_shift)) & (_mask)); \
4828 #define FTM_PARAMS_BURSTTMO_SHIFT 4
4835 #define FTM_PARAMS_BURSTTMO_USEC(_val) ((1 << ((_val)-2)) * 250)
4842 #define FTM_PARAMS_MINDELTA_USEC(_p) ((_p)->info[FTM_PARAMS_MINDELTA_OFFSET] * 100)
4844 (_p)->info[FTM_PARAMS_MINDELTA_OFFSET] = (_delta) / 100; \
4851 #define FTM_PARAMS_PARTIAL_TSF(_p) ((_p)->info[4] << 8 | (_p)->info[3])
4853 (_p)->info[3] = (_partial_tsf) & 0xff; \
4854 (_p)->info[4] = ((_partial_tsf) >> 8) & 0xff; \
4867 #define FTM_PARAMS_TSF_BW_MAX (FTM_PARAMS_TSF_BW_HI - FTM_PARAMS_TSF_BW_LOW)
4886 /* FTM1 - AKA ASAP Capable */
4916 /* burst period - units of 100ms */
4917 #define FTM_PARAMS_BURST_PERIOD(_p) (((_p)->info[8] << 8) | (_p)->info[7])
4919 (_p)->info[7] = (_bp) & 0xff; \
4920 (_p)->info[8] = ((_bp) >> 8) & 0xff; \
4929 /* FTM status values - last updated from 11mcD4.0 */
4936 FTM_PARAMS_STATUS_OVERRIDDEN = 4,
4947 FTM_PARAMS_CHAN_INFO_NON_HT_5 = 4,
4960 /* Reserved from 17 - 30 */
4962 /* Reserved from 32 - 63 */
4992 FTM_VS_TLV_SEQ_PARAMS = 4, /* toast parameters (FTM_REQ, BRCM proprietary) */
4993 FTM_VS_TLV_MF_BUF = 5, /* multi frame buffer - may span ftm vs ie's */
5023 #define DOT11_FTM_VS_LEN (sizeof(dot11_ftm_vs_tpk_ri_rr_params_t) - TLV_HDR_LEN)
5027 uint8 id; /* Extended - 255 11mc D4.3 */
5030 uint8 tsf_sync_info[4];
5034 /* ftm tsf sync info ie len - includes id ext */
5035 #define DOT11_FTM_SYNC_INFO_IE_LEN (sizeof(dot11_ftm_sync_info_t) - TLV_HDR_LEN)
5039 (_ie)->len == DOT11_FTM_SYNC_INFO_IE_LEN)
5056 (_ie)->id = DOT11_MNG_ID_EXT_ID; \
5057 (_ie)->len = _len; \
5058 (_ie)->ext_id = _id; \
5082 #define IW_ANT_PERSONAL_DEVICE_NETWORK 4
5141 #define VENUE_FACTORY 4
5151 #define NATI_UNSPECIFIED -1
5157 /* 802.11u IP address type availability - IPv6 */
5164 /* 802.11u IP address type availability - IPv4 */
5196 #define REALM_EXPANDED_INNER_EAP 4
5201 /* 802.11u non-EAP inner authentication type */
5206 #define REALM_MSCHAPV2 4
5212 #define REALM_HARDWARE_TOKEN 4
5242 DOT11_2GHZ_20MHZ_CLASS_12 = 81, /* Ch 1-11 */
5243 DOT11_5GHZ_20MHZ_CLASS_1 = 115, /* Ch 36-48 */
5244 DOT11_5GHZ_20MHZ_CLASS_2_DFS = 118, /* Ch 52-64 */
5245 DOT11_5GHZ_20MHZ_CLASS_3 = 124, /* Ch 149-161 */
5246 DOT11_5GHZ_20MHZ_CLASS_4_DFS = 121, /* Ch 100-140 */
5247 DOT11_5GHZ_20MHZ_CLASS_5 = 125, /* Ch 149-165 */
5248 DOT11_5GHZ_40MHZ_CLASS_22 = 116, /* Ch 36-44, lower */
5249 DOT11_5GHZ_40MHZ_CLASS_23_DFS = 119, /* Ch 52-60, lower */
5250 DOT11_5GHZ_40MHZ_CLASS_24_DFS = 122, /* Ch 100-132, lower */
5251 DOT11_5GHZ_40MHZ_CLASS_25 = 126, /* Ch 149-157, lower */
5252 DOT11_5GHZ_40MHZ_CLASS_27 = 117, /* Ch 40-48, upper */
5253 DOT11_5GHZ_40MHZ_CLASS_28_DFS = 120, /* Ch 56-64, upper */
5254 DOT11_5GHZ_40MHZ_CLASS_29_DFS = 123, /* Ch 104-136, upper */
5255 DOT11_5GHZ_40MHZ_CLASS_30 = 127, /* Ch 153-161, upper */
5256 DOT11_2GHZ_40MHZ_CLASS_32 = 83, /* Ch 1-7, lower */
5257 DOT11_2GHZ_40MHZ_CLASS_33 = 84, /* Ch 5-11, upper */