From aa78367f3397f256133bfb5e06b31c2d1b10e63a Mon Sep 17 00:00:00 2001 From: Rhythm Patwa Date: Fri, 12 Jun 2020 12:34:33 -0700 Subject: [PATCH] qcacmn: Add support to handle preamble puncturing Tx WMI parameters Add service ready parameter to update the capability for Preamble Puncturing Tx support from target. Add WMI support for configuration of Punctured band setting from Host. Change-Id: If5714c162356c35c7c385c4596043c0bc671be9a --- target_if/init_deinit/inc/service_ready_param.h | 2 ++ wmi/inc/wmi_unified_param.h | 1 + wmi/src/wmi_unified_tlv.c | 3 +++ 3 files changed, 6 insertions(+) diff --git a/target_if/init_deinit/inc/service_ready_param.h b/target_if/init_deinit/inc/service_ready_param.h index fcf8c7c37aed..8417df0c5ade 100644 --- a/target_if/init_deinit/inc/service_ready_param.h +++ b/target_if/init_deinit/inc/service_ready_param.h @@ -386,6 +386,7 @@ struct wlan_psoc_host_service_ext_param { * @num_dbr_ring_caps: Number of direct buf rx ring capabilities * @chwidth_num_peer_caps: Peer limit for peer_chan_width_switch WMI cmd * @max_ndp_sessions: Max number of ndp session fw supports + * @preamble_puncture_bw_cap: Preamble Puncturing Tx support */ struct wlan_psoc_host_service_ext2_param { uint8_t reg_db_version_major; @@ -395,6 +396,7 @@ struct wlan_psoc_host_service_ext2_param { uint32_t num_dbr_ring_caps; uint32_t chwidth_num_peer_caps; uint32_t max_ndp_sessions; + uint32_t preamble_puncture_bw_cap; }; #endif /* _SERVICE_READY_PARAM_H_*/ diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index 964935241c19..fc10bcf34a48 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/wmi/inc/wmi_unified_param.h @@ -4850,6 +4850,7 @@ typedef enum { wmi_pdev_param_enable_srp, wmi_pdev_param_enable_sr_prohibit, wmi_pdev_param_sr_trigger_margin, + wmi_pdev_param_pream_punct_bw, wmi_pdev_param_max, } wmi_conv_pdev_params_id; diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c index 084e6e9c4581..5943f7a393d0 100644 --- a/wmi/src/wmi_unified_tlv.c +++ b/wmi/src/wmi_unified_tlv.c @@ -328,6 +328,7 @@ static const uint32_t pdev_param_tlv[] = { [wmi_pdev_param_enable_srp] = WMI_PDEV_PARAM_ENABLE_SRP, [wmi_pdev_param_enable_sr_prohibit] = WMI_PDEV_PARAM_ENABLE_SR_PROHIBIT, [wmi_pdev_param_sr_trigger_margin] = WMI_PDEV_PARAM_SR_TRIGGER_MARGIN, + [wmi_pdev_param_pream_punct_bw] = WMI_PDEV_PARAM_SET_PREAM_PUNCT_BW, }; /** @@ -11303,6 +11304,8 @@ extract_service_ready_ext2_tlv(wmi_unified_t wmi_handle, uint8_t *event, else param->max_ndp_sessions = 0; + param->preamble_puncture_bw_cap = ev->preamble_puncture_bw; + return QDF_STATUS_SUCCESS; }