|
@@ -13219,6 +13219,36 @@ extract_roam_scan_stats_tlv(wmi_unified_t wmi_handle, void *evt_buf,
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
+#ifdef WLAN_FEATURE_PKT_CAPTURE
|
|
|
+static QDF_STATUS
|
|
|
+extract_vdev_mgmt_offload_event_tlv(void *handle, void *evt_buf,
|
|
|
+ struct mgmt_offload_event_params *params)
|
|
|
+{
|
|
|
+ WMI_VDEV_MGMT_OFFLOAD_EVENTID_param_tlvs *param_tlvs;
|
|
|
+ wmi_mgmt_hdr *hdr;
|
|
|
+
|
|
|
+ param_tlvs = (WMI_VDEV_MGMT_OFFLOAD_EVENTID_param_tlvs *)evt_buf;
|
|
|
+ if (!param_tlvs)
|
|
|
+ return QDF_STATUS_E_INVAL;
|
|
|
+
|
|
|
+ hdr = param_tlvs->fixed_param;
|
|
|
+ if (!hdr)
|
|
|
+ return QDF_STATUS_E_INVAL;
|
|
|
+
|
|
|
+ if (hdr->buf_len > param_tlvs->num_bufp)
|
|
|
+ return QDF_STATUS_E_INVAL;
|
|
|
+
|
|
|
+ params->tsf_l32 = hdr->tsf_l32;
|
|
|
+ params->chan_freq = hdr->chan_freq;
|
|
|
+ params->rate_kbps = hdr->rate_kbps;
|
|
|
+ params->rssi = hdr->rssi;
|
|
|
+ params->buf_len = hdr->buf_len;
|
|
|
+ params->tx_status = hdr->tx_status;
|
|
|
+ params->buf = param_tlvs->bufp;
|
|
|
+ return QDF_STATUS_SUCCESS;
|
|
|
+}
|
|
|
+#endif /* WLAN_FEATURE_PKT_CAPTURE */
|
|
|
+
|
|
|
#ifdef FEATURE_WLAN_TIME_SYNC_FTM
|
|
|
/**
|
|
|
* send_wlan_ts_ftm_trigger_cmd_tlv(): send wlan time sync cmd to FW
|
|
@@ -13683,6 +13713,9 @@ struct wmi_ops tlv_ops = {
|
|
|
.extract_roam_scan_stats = extract_roam_scan_stats_tlv,
|
|
|
.extract_roam_result_stats = extract_roam_result_stats_tlv,
|
|
|
.extract_roam_11kv_stats = extract_roam_11kv_stats_tlv,
|
|
|
+#ifdef WLAN_FEATURE_PKT_CAPTURE
|
|
|
+ .extract_vdev_mgmt_offload_event = extract_vdev_mgmt_offload_event_tlv,
|
|
|
+#endif
|
|
|
|
|
|
#ifdef FEATURE_WLAN_TIME_SYNC_FTM
|
|
|
.send_wlan_time_sync_ftm_trigger_cmd = send_wlan_ts_ftm_trigger_cmd_tlv,
|