On 05/29/2014 06:36 AM, Bartosz Markowski wrote:
Firmware 10.x supports up to 8 virtual AP interfaces (comparing to 7 for main firmware). Previous vdev map initialization was missing enough space for 8 + 1 vdevs (we may spent one for mac monitor), due to wrong define used. Use correct one - TARGET_10X_NUM_VDEVS - for 10.x firmware.
You are bumping total vdevs up to 16 with that patch...have you actually tested that many? The stock firmware has quite a bit of deficiencies in the concurrency handling, at least for stations. For what it's worth, my firmware will only work on stock kernels because I ignore the request for 16 vdevs in the firmware and knock it down to 8 to match the kernel driver (before your change below). Thanks, Ben
Signed-off-by: Bartosz Markowski <bartosz.markowski@xxxxxxxxx> --- drivers/net/wireless/ath/ath10k/core.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c index 82017f5..e6c56c5 100644 --- a/drivers/net/wireless/ath/ath10k/core.c +++ b/drivers/net/wireless/ath/ath10k/core.c @@ -795,7 +795,11 @@ int ath10k_core_start(struct ath10k *ar) if (status) goto err_htc_stop; - ar->free_vdev_map = (1 << TARGET_NUM_VDEVS) - 1; + if (test_bit(ATH10K_FW_FEATURE_WMI_10X, ar->fw_features)) + ar->free_vdev_map = (1 << TARGET_10X_NUM_VDEVS) - 1; + else + ar->free_vdev_map = (1 << TARGET_NUM_VDEVS) - 1; + INIT_LIST_HEAD(&ar->arvifs); if (!test_bit(ATH10K_FLAG_FIRST_BOOT_DONE, &ar->dev_flags))
-- Ben Greear <greearb@xxxxxxxxxxxxxxx> Candela Technologies Inc http://www.candelatech.com -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html