Lines Matching refs:svc_rdy_ext
3991 struct ath12k_wmi_svc_rdy_ext_parse *svc_rdy_ext = data; in ath12k_wmi_hw_mode_caps_parse() local
3998 if (svc_rdy_ext->n_hw_mode_caps >= svc_rdy_ext->arg.num_hw_modes) in ath12k_wmi_hw_mode_caps_parse()
4003 svc_rdy_ext->n_hw_mode_caps++; in ath12k_wmi_hw_mode_caps_parse()
4006 svc_rdy_ext->tot_phy_id += fls(phy_map); in ath12k_wmi_hw_mode_caps_parse()
4014 struct ath12k_wmi_svc_rdy_ext_parse *svc_rdy_ext = data; in ath12k_wmi_hw_mode_caps() local
4020 svc_rdy_ext->n_hw_mode_caps = 0; in ath12k_wmi_hw_mode_caps()
4021 svc_rdy_ext->hw_mode_caps = ptr; in ath12k_wmi_hw_mode_caps()
4025 svc_rdy_ext); in ath12k_wmi_hw_mode_caps()
4031 for (i = 0 ; i < svc_rdy_ext->n_hw_mode_caps; i++) { in ath12k_wmi_hw_mode_caps()
4032 hw_mode_caps = &svc_rdy_ext->hw_mode_caps[i]; in ath12k_wmi_hw_mode_caps()
4041 svc_rdy_ext->pref_hw_mode_caps = *hw_mode_caps; in ath12k_wmi_hw_mode_caps()
4058 struct ath12k_wmi_svc_rdy_ext_parse *svc_rdy_ext = data; in ath12k_wmi_mac_phy_caps_parse() local
4063 if (svc_rdy_ext->n_mac_phy_caps >= svc_rdy_ext->tot_phy_id) in ath12k_wmi_mac_phy_caps_parse()
4067 if (!svc_rdy_ext->n_mac_phy_caps) { in ath12k_wmi_mac_phy_caps_parse()
4068 svc_rdy_ext->mac_phy_caps = kzalloc((svc_rdy_ext->tot_phy_id) * len, in ath12k_wmi_mac_phy_caps_parse()
4070 if (!svc_rdy_ext->mac_phy_caps) in ath12k_wmi_mac_phy_caps_parse()
4074 memcpy(svc_rdy_ext->mac_phy_caps + svc_rdy_ext->n_mac_phy_caps, ptr, len); in ath12k_wmi_mac_phy_caps_parse()
4075 svc_rdy_ext->n_mac_phy_caps++; in ath12k_wmi_mac_phy_caps_parse()
4083 struct ath12k_wmi_svc_rdy_ext_parse *svc_rdy_ext = data; in ath12k_wmi_ext_hal_reg_caps_parse() local
4088 if (svc_rdy_ext->n_ext_hal_reg_caps >= svc_rdy_ext->arg.num_phy) in ath12k_wmi_ext_hal_reg_caps_parse()
4091 svc_rdy_ext->n_ext_hal_reg_caps++; in ath12k_wmi_ext_hal_reg_caps_parse()
4099 struct ath12k_wmi_svc_rdy_ext_parse *svc_rdy_ext = data; in ath12k_wmi_ext_hal_reg_caps() local
4104 svc_rdy_ext->n_ext_hal_reg_caps = 0; in ath12k_wmi_ext_hal_reg_caps()
4105 svc_rdy_ext->ext_hal_reg_caps = ptr; in ath12k_wmi_ext_hal_reg_caps()
4108 svc_rdy_ext); in ath12k_wmi_ext_hal_reg_caps()
4114 for (i = 0; i < svc_rdy_ext->arg.num_phy; i++) { in ath12k_wmi_ext_hal_reg_caps()
4116 svc_rdy_ext->soc_hal_reg_caps, in ath12k_wmi_ext_hal_reg_caps()
4117 svc_rdy_ext->ext_hal_reg_caps, i, in ath12k_wmi_ext_hal_reg_caps()
4139 struct ath12k_wmi_svc_rdy_ext_parse *svc_rdy_ext = data; in ath12k_wmi_ext_soc_hal_reg_caps_parse() local
4140 u8 hw_mode_id = le32_to_cpu(svc_rdy_ext->pref_hw_mode_caps.hw_mode_id); in ath12k_wmi_ext_soc_hal_reg_caps_parse()
4145 svc_rdy_ext->soc_hal_reg_caps = ptr; in ath12k_wmi_ext_soc_hal_reg_caps_parse()
4146 svc_rdy_ext->arg.num_phy = le32_to_cpu(svc_rdy_ext->soc_hal_reg_caps->num_phy); in ath12k_wmi_ext_soc_hal_reg_caps_parse()
4149 phy_id_map = le32_to_cpu(svc_rdy_ext->pref_hw_mode_caps.phy_id_map); in ath12k_wmi_ext_soc_hal_reg_caps_parse()
4154 svc_rdy_ext, in ath12k_wmi_ext_soc_hal_reg_caps_parse()
4282 struct ath12k_wmi_svc_rdy_ext_parse *svc_rdy_ext = data; in ath12k_wmi_svc_rdy_ext_parse() local
4288 &svc_rdy_ext->arg); in ath12k_wmi_svc_rdy_ext_parse()
4296 svc_rdy_ext->hw_caps = ptr; in ath12k_wmi_svc_rdy_ext_parse()
4297 svc_rdy_ext->arg.num_hw_modes = in ath12k_wmi_svc_rdy_ext_parse()
4298 le32_to_cpu(svc_rdy_ext->hw_caps->num_hw_modes); in ath12k_wmi_svc_rdy_ext_parse()
4303 svc_rdy_ext); in ath12k_wmi_svc_rdy_ext_parse()
4309 if (!svc_rdy_ext->hw_mode_done) { in ath12k_wmi_svc_rdy_ext_parse()
4310 ret = ath12k_wmi_hw_mode_caps(ab, len, ptr, svc_rdy_ext); in ath12k_wmi_svc_rdy_ext_parse()
4314 svc_rdy_ext->hw_mode_done = true; in ath12k_wmi_svc_rdy_ext_parse()
4315 } else if (!svc_rdy_ext->mac_phy_done) { in ath12k_wmi_svc_rdy_ext_parse()
4316 svc_rdy_ext->n_mac_phy_caps = 0; in ath12k_wmi_svc_rdy_ext_parse()
4319 svc_rdy_ext); in ath12k_wmi_svc_rdy_ext_parse()
4325 svc_rdy_ext->mac_phy_done = true; in ath12k_wmi_svc_rdy_ext_parse()
4326 } else if (!svc_rdy_ext->ext_hal_reg_done) { in ath12k_wmi_svc_rdy_ext_parse()
4327 ret = ath12k_wmi_ext_hal_reg_caps(ab, len, ptr, svc_rdy_ext); in ath12k_wmi_svc_rdy_ext_parse()
4331 svc_rdy_ext->ext_hal_reg_done = true; in ath12k_wmi_svc_rdy_ext_parse()
4332 } else if (!svc_rdy_ext->mac_phy_chainmask_combo_done) { in ath12k_wmi_svc_rdy_ext_parse()
4333 svc_rdy_ext->mac_phy_chainmask_combo_done = true; in ath12k_wmi_svc_rdy_ext_parse()
4334 } else if (!svc_rdy_ext->mac_phy_chainmask_cap_done) { in ath12k_wmi_svc_rdy_ext_parse()
4335 svc_rdy_ext->mac_phy_chainmask_cap_done = true; in ath12k_wmi_svc_rdy_ext_parse()
4336 } else if (!svc_rdy_ext->oem_dma_ring_cap_done) { in ath12k_wmi_svc_rdy_ext_parse()
4337 svc_rdy_ext->oem_dma_ring_cap_done = true; in ath12k_wmi_svc_rdy_ext_parse()
4338 } else if (!svc_rdy_ext->dma_ring_cap_done) { in ath12k_wmi_svc_rdy_ext_parse()
4340 &svc_rdy_ext->dma_caps_parse); in ath12k_wmi_svc_rdy_ext_parse()
4344 svc_rdy_ext->dma_ring_cap_done = true; in ath12k_wmi_svc_rdy_ext_parse()
4357 struct ath12k_wmi_svc_rdy_ext_parse svc_rdy_ext = { }; in ath12k_service_ready_ext_event() local
4362 &svc_rdy_ext); in ath12k_service_ready_ext_event()
4371 kfree(svc_rdy_ext.mac_phy_caps); in ath12k_service_ready_ext_event()