Add the MACRO definitions for Radio Measurement (RM) Enabled Capabilities defined in IEEE Std 802.11-2024, 9.4.2.43, Table 9-218. Signed-off-by: Gokul Sivakumar --- include/linux/ieee80211.h | 42 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h index a3a2ac682fd4..2ab5ab2bee2b 100644 --- a/include/linux/ieee80211.h +++ b/include/linux/ieee80211.h @@ -4028,6 +4028,48 @@ enum ieee80211_s1g_actioncode { WLAN_S1G_TWT_INFORMATION = 11, }; +/* RM Enabled Capabilities (IEEE Std 802.11-2024, 9.4.2.43, Table 9-218) */ +#define IEEE80211_RM_ENAB_CAP0_LINK_MSR BIT(0) +#define IEEE80211_RM_ENAB_CAP0_NEIGHBOR_REPORT BIT(1) +#define IEEE80211_RM_ENAB_CAP0_PARALLEL_MSR BIT(2) +#define IEEE80211_RM_ENAB_CAP0_REPEATED_MSR BIT(3) +#define IEEE80211_RM_ENAB_CAP0_BCN_PASSIVE_MSR BIT(4) +#define IEEE80211_RM_ENAB_CAP0_BCN_ACTIVE_MSR BIT(5) +#define IEEE80211_RM_ENAB_CAP0_BCN_TABLE_MSR BIT(6) +#define IEEE80211_RM_ENAB_CAP0_BCN_MSR_REPORTING_COND BIT(7) + +#define IEEE80211_RM_ENAB_CAP1_FRAME_MSR BIT(0) +#define IEEE80211_RM_ENAB_CAP1_CHANNEL_LOAD_MSR BIT(1) +#define IEEE80211_RM_ENAB_CAP1_NOISE_HISTOGRAM_MSR BIT(2) +#define IEEE80211_RM_ENAB_CAP1_STATISTICS_MSR BIT(3) +#define IEEE80211_RM_ENAB_CAP1_LCI_MSR BIT(4) +#define IEEE80211_RM_ENAB_CAP1_LCI_AZIMUTH BIT(5) +#define IEEE80211_RM_ENAB_CAP1_TRANSMIT_STREAM_MSR BIT(6) +#define IEEE80211_RM_ENAB_CAP1_TRIGGERED_TRANSMIT_STREAM_MSR BIT(7) + +#define IEEE80211_RM_ENAB_CAP2_AP_CHANNEL_REPORT BIT(0) +#define IEEE80211_RM_ENAB_CAP2_RM_MIB BIT(1) +#define IEEE80211_RM_ENAB_CAP2_OP_CH_MAX_MSR_DUR_SHIFT 2 +#define IEEE80211_RM_ENAB_CAP2_OP_CH_MAX_MSR_DUR_MASK \ + (7 << IEEE80211_RM_ENAB_CAP_OP_CH_MAX_MSR_DUR_SHIFT) +#define IEEE80211_RM_ENAB_CAP2_NONOP_CH_MAX_MSR_DUR_SHIFT 5 +#define IEEE80211_RM_ENAB_CAP2_NONOP_CH_MAX_MSR_DUR_MASK \ + (7 << IEEE80211_RM_ENAB_CAP_NONOP_CH_MAX_MSR_DUR_SHIFT) + +#define IEEE80211_RM_ENAB_CAP3_MSR_PILOT_SHIFT 0 +#define IEEE80211_RM_ENAB_CAP3_MSR_PILOR_MASK \ + (7 << IEEE80211_RM_ENAB_CAP_MSR_PILOT_SHIFT) +#define IEEE80211_RM_ENAB_CAP3_MSR_PILOT_TRANSMISSION_INFO BIT(3) +#define IEEE80211_RM_ENAB_CAP3_NEIGHBOR_REPORT_TSF_OFFSET BIT(4) +#define IEEE80211_RM_ENAB_CAP3_RCPI_MSR BIT(5) +#define IEEE80211_RM_ENAB_CAP3_RSNI_MSR BIT(6) +#define IEEE80211_RM_ENAB_CAP3_BSS_AVERAGE_ACCESS_DELAY BIT(7) + +#define IEEE80211_RM_ENAB_CAP4_BSS_AVAIL_ADMIISSION_CAPACITY BIT(0) +#define IEEE80211_RM_ENAB_CAP4_ANTENNA BIT(1) +#define IEEE80211_RM_ENAB_CAP4_FTM_RANGE_REPORT BIT(2) +#define IEEE80211_RM_ENAB_CAP4_CIVIC_LOCATION_MSR BIT(3) + /* Radio measurement action codes as defined in IEEE 802.11-2024 - Table 9-470 */ enum ieee80211_radio_measurement_actioncode { WLAN_RM_ACTION_RADIO_MEASUREMENT_REQUEST = 0, -- 2.25.1