@@ -2060,6 +2060,12 @@ static int ath12k_host_cap_parse_mlo(struct ath12k_base *ab,
req->mlo_num_chips_valid = 1;
req->mlo_num_chips = ag->num_devices;
+ ath12k_dbg(ab, ATH12K_DBG_QMI, "MLO Capability advertisement:");
+ ath12k_dbg(ab, ATH12K_DBG_QMI, " * device_id: %d", req->mlo_chip_id);
+ ath12k_dbg(ab, ATH12K_DBG_QMI, " * group_id: %d", req->mlo_group_id);
+ ath12k_dbg(ab, ATH12K_DBG_QMI, " * num_devices: %d", req->mlo_num_chips);
+ ath12k_dbg(ab, ATH12K_DBG_QMI, " * Devices info:");
+
mutex_lock(&ag->mutex_lock);
for (i = 0; i < ag->num_devices; i++) {
info = &req->mlo_chip_info[i];
@@ -2074,13 +2080,19 @@ static int ath12k_host_cap_parse_mlo(struct ath12k_base *ab,
info->chip_id = partner_ab->device_id;
info->num_local_links = partner_ab->qmi.num_radios;
- ath12k_dbg(ab, ATH12K_DBG_QMI, "MLO device id %d num_link %d\n",
- info->chip_id, info->num_local_links);
+ ath12k_dbg(ab, ATH12K_DBG_QMI, " * device_id: %d",
+ info->chip_id);
+ ath12k_dbg(ab, ATH12K_DBG_QMI, " * num_links: %d",
+ info->num_local_links);
for (j = 0; j < info->num_local_links; j++) {
- info->hw_link_id[j] = hw_link_id;
+ info->hw_link_id[j] = partner_ab->wsi_index + j;
info->valid_mlo_link_id[j] = 1;
+ ath12k_dbg(ab, ATH12K_DBG_QMI,
+ " * hw_link_id: %d\n",
+ info->hw_link_id[j]);
+
hw_link_id++;
}
}