ath10k: add 2ghz channel arguments to service ready structure
authorTomislav Požega <pozega.tomislav@gmail.com>
Mon, 23 Sep 2019 19:49:21 +0000 (21:49 +0200)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 1 Oct 2019 11:13:41 +0000 (14:13 +0300)
Add lowest/highest 2ghz channel arguments for use within WMI service
ready structure.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath10k/core.h
drivers/net/wireless/ath/ath10k/wmi-tlv.c
drivers/net/wireless/ath/ath10k/wmi.c
drivers/net/wireless/ath/ath10k/wmi.h

index c96d1a17fd0015885cd08509579db307b40743cb..2a0a0086e0ad8a2b710a8644914cfd3cb1d156f4 100644 (file)
@@ -967,6 +967,8 @@ struct ath10k {
        u32 num_rf_chains;
        u32 max_spatial_stream;
        /* protected by conf_mutex */
+       u32 low_2ghz_chan;
+       u32 high_2ghz_chan;
        u32 low_5ghz_chan;
        u32 high_5ghz_chan;
        bool ani_enabled;
index 363fd0bd1e2d7fa097ac9026c6eebfb4e84c7a22..bda52ca75c7e24e8e1f2ed406e90005dd7ecaaa5 100644 (file)
@@ -1207,6 +1207,8 @@ static int ath10k_wmi_tlv_op_pull_svc_rdy_ev(struct ath10k *ar,
        arg->phy_capab = ev->phy_capability;
        arg->num_rf_chains = ev->num_rf_chains;
        arg->eeprom_rd = reg->eeprom_rd;
+       arg->low_2ghz_chan = reg->low_2ghz_chan;
+       arg->high_2ghz_chan = reg->high_2ghz_chan;
        arg->low_5ghz_chan = reg->low_5ghz_chan;
        arg->high_5ghz_chan = reg->high_5ghz_chan;
        arg->num_mem_reqs = ev->num_mem_reqs;
index 1ec609d359dd17caa6b32356c14d907042f6fb42..3ef6ee30ffd18fdcbaa33716f981a0f7d876b8f1 100644 (file)
@@ -5362,6 +5362,8 @@ ath10k_wmi_main_op_pull_svc_rdy_ev(struct ath10k *ar, struct sk_buff *skb,
        arg->phy_capab = ev->phy_capability;
        arg->num_rf_chains = ev->num_rf_chains;
        arg->eeprom_rd = ev->hal_reg_capabilities.eeprom_rd;
+       arg->low_2ghz_chan = ev->hal_reg_capabilities.low_2ghz_chan;
+       arg->high_2ghz_chan = ev->hal_reg_capabilities.high_2ghz_chan;
        arg->low_5ghz_chan = ev->hal_reg_capabilities.low_5ghz_chan;
        arg->high_5ghz_chan = ev->hal_reg_capabilities.high_5ghz_chan;
        arg->num_mem_reqs = ev->num_mem_reqs;
@@ -5400,6 +5402,8 @@ ath10k_wmi_10x_op_pull_svc_rdy_ev(struct ath10k *ar, struct sk_buff *skb,
        arg->phy_capab = ev->phy_capability;
        arg->num_rf_chains = ev->num_rf_chains;
        arg->eeprom_rd = ev->hal_reg_capabilities.eeprom_rd;
+       arg->low_2ghz_chan = ev->hal_reg_capabilities.low_2ghz_chan;
+       arg->high_2ghz_chan = ev->hal_reg_capabilities.high_2ghz_chan;
        arg->low_5ghz_chan = ev->hal_reg_capabilities.low_5ghz_chan;
        arg->high_5ghz_chan = ev->hal_reg_capabilities.high_5ghz_chan;
        arg->num_mem_reqs = ev->num_mem_reqs;
@@ -5454,6 +5458,8 @@ static void ath10k_wmi_event_service_ready_work(struct work_struct *work)
        ar->phy_capability = __le32_to_cpu(arg.phy_capab);
        ar->num_rf_chains = __le32_to_cpu(arg.num_rf_chains);
        ar->hw_eeprom_rd = __le32_to_cpu(arg.eeprom_rd);
+       ar->low_2ghz_chan = __le32_to_cpu(arg.low_2ghz_chan);
+       ar->high_2ghz_chan = __le32_to_cpu(arg.high_2ghz_chan);
        ar->low_5ghz_chan = __le32_to_cpu(arg.low_5ghz_chan);
        ar->high_5ghz_chan = __le32_to_cpu(arg.high_5ghz_chan);
 
index bdeebc5b84b44d8497b45d57445f580e070bae2a..9ccaeb7ed052685f6ada45e9301310dc2c025787 100644 (file)
@@ -6870,6 +6870,8 @@ struct wmi_svc_rdy_ev_arg {
        __le32 num_rf_chains;
        __le32 eeprom_rd;
        __le32 num_mem_reqs;
+       __le32 low_2ghz_chan;
+       __le32 high_2ghz_chan;
        __le32 low_5ghz_chan;
        __le32 high_5ghz_chan;
        const __le32 *service_map;