|
@@ -1,6 +1,6 @@
|
|
|
/*
|
|
|
* Copyright (c) 2021, The Linux Foundation. All rights reserved.
|
|
|
- * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
|
+ * Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
|
*
|
|
|
* Permission to use, copy, modify, and/or distribute this software for any
|
|
|
* purpose with or without fee is hereby granted, provided that the above
|
|
@@ -161,6 +161,10 @@ enum wlan_main_tag {
|
|
|
* @WLAN_CONN_DIAG_EAP_FAIL_EVENT: EAP failure
|
|
|
* @WLAN_CONN_DIAG_CUSTOM_EVENT: Additional WLAN logs
|
|
|
* @WLAN_CONN_DIAG_EAP_START_EVENT: EAPOL start frame
|
|
|
+ * @WLAN_CONN_DIAG_NBR_RPT_REQ_EVENT: Neighbor report request
|
|
|
+ * @WLAN_CONN_DIAG_NBR_RPT_RESP_EVENT: Neighbor report response
|
|
|
+ * @WLAN_CONN_DIAG_BCN_RPT_REQ_EVENT: Beacon report request
|
|
|
+ * @WLAN_CONN_DIAG_BCN_RPT_RESP_EVENT: Beacon report response
|
|
|
* @WLAN_CONN_DIAG_MAX: MAX tag
|
|
|
*/
|
|
|
enum qca_conn_diag_log_event_type {
|
|
@@ -205,6 +209,10 @@ enum qca_conn_diag_log_event_type {
|
|
|
WLAN_CONN_DIAG_EAP_FAIL_EVENT,
|
|
|
WLAN_CONN_DIAG_CUSTOM_EVENT,
|
|
|
WLAN_CONN_DIAG_EAP_START_EVENT,
|
|
|
+ WLAN_CONN_DIAG_NBR_RPT_REQ_EVENT,
|
|
|
+ WLAN_CONN_DIAG_NBR_RPT_RESP_EVENT,
|
|
|
+ WLAN_CONN_DIAG_BCN_RPT_REQ_EVENT,
|
|
|
+ WLAN_CONN_DIAG_BCN_RPT_RESP_EVENT,
|
|
|
WLAN_CONN_DIAG_MAX
|
|
|
};
|
|
|
|
|
@@ -224,6 +232,84 @@ struct wlan_connectivity_log_diag_cmn {
|
|
|
uint64_t ktime_us;
|
|
|
} qdf_packed;
|
|
|
|
|
|
+#define DIAG_NBR_RPT_VERSION 1
|
|
|
+
|
|
|
+/**
|
|
|
+ * struct wlan_diag_nbr_rpt - Neighbor report structure
|
|
|
+ * @diag_cmn: Common diag info
|
|
|
+ * @version: structure version
|
|
|
+ * @num_rpt: the number of neighbor report elements in response frame.
|
|
|
+ * @subtype: Event Subtype
|
|
|
+ * @token: dialog token. Dialog Token is a nonzero value chosen by the STA
|
|
|
+ * @num_freq: Number of frequency in response frame
|
|
|
+ * @ssid_len: SSID length
|
|
|
+ * @seq_num: Sequence number
|
|
|
+ * @ssid: SSID
|
|
|
+ * @freq: Frequency list in response frame
|
|
|
+ */
|
|
|
+struct wlan_diag_nbr_rpt {
|
|
|
+ struct wlan_connectivity_log_diag_cmn diag_cmn;
|
|
|
+ uint8_t version;
|
|
|
+ uint8_t num_rpt;
|
|
|
+ uint8_t subtype;
|
|
|
+ uint8_t token;
|
|
|
+ uint16_t num_freq;
|
|
|
+ uint16_t ssid_len;
|
|
|
+ uint32_t seq_num;
|
|
|
+ char ssid[WLAN_SSID_MAX_LEN];
|
|
|
+ uint32_t freq[WLAN_MAX_LOGGING_FREQ];
|
|
|
+} qdf_packed;
|
|
|
+
|
|
|
+/**
|
|
|
+ * enum wlan_bcn_rpt_measurement_mode - Measurement mode enum.
|
|
|
+ * Defined in IEEE Std 802.11‐2020 Table 9-103.
|
|
|
+ * @MEASURE_MODE_PASSIVE: Passive measurement mode
|
|
|
+ * @MEASURE_MODE_ACTIVE: Active measurement mode
|
|
|
+ * @MEASURE_MODE_BCN_TABLE: Beacon table measurement mode
|
|
|
+ * @MEASURE_MODE_RESERVED: Reserved
|
|
|
+ */
|
|
|
+enum wlan_bcn_rpt_measurement_mode {
|
|
|
+ MEASURE_MODE_PASSIVE = 0,
|
|
|
+ MEASURE_MODE_ACTIVE,
|
|
|
+ MEASURE_MODE_BCN_TABLE,
|
|
|
+ MEASURE_MODE_RESERVED = 0xFF
|
|
|
+};
|
|
|
+
|
|
|
+#define DIAG_BCN_RPT_VERSION 1
|
|
|
+
|
|
|
+/**
|
|
|
+ * struct wlan_diag_bcn_rpt - Beacon report structure
|
|
|
+ * @diag_cmn: Common diag info
|
|
|
+ * @version: structure version
|
|
|
+ * @subtype: Event Subtype
|
|
|
+ * @diag_token: Dialog token
|
|
|
+ * @op_class: Operating classes that include primary channels
|
|
|
+ * @chan: The channel number field in the beacon report request.
|
|
|
+ * @req_mode: hex value defines Duration mandatory, parallel, enable,
|
|
|
+ * request, and report bits.
|
|
|
+ * @num_rpt: the number of neighbor report elements in response frame.
|
|
|
+ * @meas_token: A nonzero number that is unique among the Measurement Request
|
|
|
+ * elements
|
|
|
+ * @mode: Mode used for measurement.Values defined in IEEE
|
|
|
+ * Std 802.11‐2020 Table 9-103.
|
|
|
+ * @duration: The duration over which the Beacon report was measured.(in ms)
|
|
|
+ * @seq_num: Sequence number.
|
|
|
+ */
|
|
|
+struct wlan_diag_bcn_rpt {
|
|
|
+ struct wlan_connectivity_log_diag_cmn diag_cmn;
|
|
|
+ uint8_t version;
|
|
|
+ uint8_t subtype;
|
|
|
+ uint8_t diag_token;
|
|
|
+ uint8_t op_class;
|
|
|
+ uint8_t chan;
|
|
|
+ uint8_t req_mode;
|
|
|
+ uint8_t num_rpt;
|
|
|
+ uint8_t meas_token;
|
|
|
+ uint16_t mode;
|
|
|
+ uint16_t duration;
|
|
|
+ uint32_t seq_num;
|
|
|
+} qdf_packed;
|
|
|
+
|
|
|
#define DIAG_ROAM_CAND_VERSION 1
|
|
|
|
|
|
/**
|