summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorSarada Prasanna Garnayak <sgarna@codeaurora.org>2017-01-25 18:30:47 +0530
committerRakesh Pillai <pillair@codeaurora.org>2017-01-28 17:43:02 +0530
commitdecb173988d3a37ce0e4fdc442c5e2fc8ff0244e (patch)
tree1ca4322950309a4835d93a6fb53903212219c658 /drivers/net
parentc08c17a3bed82ce7bc50049e2f62df44571a08f6 (diff)
ath10k: Add wmi service ready event for HL1.0 fw
wmi service ready bitmap has changed in HL1.0 fw. Add wmi service ready event to support svc bitmap. CRs-Fixed: 1115986 Change-Id: Ie83878d186ebb2e4e919f75f6c87887384f79796 Signed-off-by: Govind Singh <govinds@codeaurora.org> Signed-off-by: Rakesh Pillai <pillair@codeaurora.org> Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/ath/ath10k/wmi-tlv.c7
-rw-r--r--drivers/net/wireless/ath/ath10k/wmi-tlv.h9
2 files changed, 15 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/wmi-tlv.c b/drivers/net/wireless/ath/ath10k/wmi-tlv.c
index 51d64d91b727..7a8f9cfd8253 100644
--- a/drivers/net/wireless/ath/ath10k/wmi-tlv.c
+++ b/drivers/net/wireless/ath/ath10k/wmi-tlv.c
@@ -937,7 +937,12 @@ static int ath10k_wmi_tlv_op_pull_svc_rdy_ev(struct ath10k *ar,
ev = tb[WMI_TLV_TAG_STRUCT_SERVICE_READY_EVENT];
reg = tb[WMI_TLV_TAG_STRUCT_HAL_REG_CAPABILITIES];
- svc_bmap = tb[WMI_TLV_TAG_ARRAY_UINT32];
+ if (QCA_REV_WCN3990(ar)) {
+ svc_bmap = (__le32 *)(skb->data +
+ WMI_TLV_TAG_STRUCT_HL_1_0_SVC_OFFSET);
+ } else {
+ svc_bmap = tb[WMI_TLV_TAG_ARRAY_UINT32];
+ }
mem_reqs = tb[WMI_TLV_TAG_ARRAY_STRUCT];
if (!ev || !reg || !svc_bmap || !mem_reqs) {
diff --git a/drivers/net/wireless/ath/ath10k/wmi-tlv.h b/drivers/net/wireless/ath/ath10k/wmi-tlv.h
index 1206c6415e9c..496fee5d489b 100644
--- a/drivers/net/wireless/ath/ath10k/wmi-tlv.h
+++ b/drivers/net/wireless/ath/ath10k/wmi-tlv.h
@@ -889,6 +889,7 @@ enum wmi_tlv_tag {
WMI_TLV_TAG_STRUCT_SAP_OFL_DEL_STA_EVENT,
WMI_TLV_TAG_STRUCT_APFIND_CMD_PARAM,
WMI_TLV_TAG_STRUCT_APFIND_EVENT_HDR,
+ WMI_TLV_TAG_STRUCT_HL_1_0_SVC_OFFSET = 176,
WMI_TLV_TAG_MAX
};
@@ -1358,6 +1359,14 @@ struct wmi_tlv_svc_rdy_ev {
__le32 max_num_scan_chans;
__le32 hw_bd_id; /* 0 means hw_bd_info is invalid */
struct wmi_tlv_hw_bd_info hw_bd_info[5];
+#ifdef CONFIG_ATH10K_SNOC
+ __le32 max_supported_macs;
+ __le32 wmi_fw_sub_feat_caps;
+ __le32 num_dbs_hw_modes;
+ __le32 txrx_chainmask;
+ __le32 default_dbs_hw_mode_index;
+ __le32 num_msdu_desc;
+#endif
} __packed;
struct wmi_tlv_rdy_ev {