ath10k: move free_vdev_map initialization
This is necessary for hw reconfiguration to work.
Since mac80211 is not calling remove_interface()
is such case we must reset free_vdev_map.
Also use a define instead of a hardcoded value for
vdev map initialization.
Signed-off-by: Michal Kazior <michal.kazior@tieto.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c
index 01c1d82..0e4a704 100644
--- a/drivers/net/wireless/ath/ath10k/core.c
+++ b/drivers/net/wireless/ath/ath10k/core.c
@@ -458,8 +458,6 @@
ar->hif.priv = hif_priv;
ar->hif.ops = hif_ops;
- ar->free_vdev_map = 0xFF; /* 8 vdevs */
-
init_completion(&ar->scan.started);
init_completion(&ar->scan.completed);
init_completion(&ar->scan.on_channel);
@@ -590,6 +588,8 @@
if (status)
goto err_disconnect_htc;
+ ar->free_vdev_map = (1 << TARGET_NUM_VDEVS) - 1;
+
return 0;
err_disconnect_htc: