aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Greear <greearb@candelatech.com>2016-09-26 14:56:26 -0400
committerKalle Valo <kvalo@qca.qualcomm.com>2016-09-27 08:18:33 -0400
commit30d2049b3277cdf6964996f86626add08cf160df (patch)
treea2ce490cf8dac2486b6561c9f7c546256c0a36e3
parent15138fdf327da6132b6e00e3d8c083476eb9aea2 (diff)
ath10k: support up to 64 vdevs
The (1 << x) - 1 trick won't work when you are trying to fill up all 64 bits, so add special case for that. Signed-off-by: Ben Greear <greearb@candelatech.com> [kvalo@qca.qualcomm.com: remove the sentence about moving limits] Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
-rw-r--r--drivers/net/wireless/ath/ath10k/core.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c
index 98af0053d30d..21ae8d663e67 100644
--- a/drivers/net/wireless/ath/ath10k/core.c
+++ b/drivers/net/wireless/ath/ath10k/core.c
@@ -1972,7 +1972,10 @@ int ath10k_core_start(struct ath10k *ar, enum ath10k_firmware_mode mode,
1972 goto err_hif_stop; 1972 goto err_hif_stop;
1973 } 1973 }
1974 1974
1975 ar->free_vdev_map = (1LL << ar->max_num_vdevs) - 1; 1975 if (ar->max_num_vdevs >= 64)
1976 ar->free_vdev_map = 0xFFFFFFFFFFFFFFFFLL;
1977 else
1978 ar->free_vdev_map = (1LL << ar->max_num_vdevs) - 1;
1976 1979
1977 INIT_LIST_HEAD(&ar->arvifs); 1980 INIT_LIST_HEAD(&ar->arvifs);
1978 1981