Skip to contentSkip to conversation

Patch "ath10k: fix firmware assert in monitor mode" has been added to the 4.5-stable tree

PATCH [email protected] 1 participant 1 message Jun 4, 2016

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

ath10k: fix firmware assert in monitor mode

to the 4.5-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
ath10k-fix-firmware-assert-in-monitor-mode.patch
and it can be found in the queue-4.5 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 8a75fc54745fd3ce9062ab1cc6429a9da9ac2a68 Mon Sep 17 00:00:00 2001

From: Rajkumar Manoharan <[email protected]>
Date: Wed, 2 Mar 2016 20:13:52 +0530
Subject: ath10k: fix firmware assert in monitor mode

From: Rajkumar Manoharan <[email protected]>

commit 8a75fc54745fd3ce9062ab1cc6429a9da9ac2a68 upstream.

commit 166de3f1895d ("ath10k: remove supported chain mask") had revealed an issue on monitor mode. Configuring NSS upon monitor interface creation is causing target assert in all qca9888x and qca6174 firmware. Firmware assert issue can be reproduced by below sequence even after reverting commit 166de3f1895d ("ath10k: remove supported chain mask").

ip link set wlan0 down
iw wlan0 set type monitor
iw phy0 set antenna 7
ip link set wlan0 up

This issue is originally reported on qca9888 with 10.1 firmware.

Fixes 5572a95b4b ("ath10k: apply chainmask settings to vdev on creation")
---
 drivers/net/wireless/ath/ath10k/mac.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
drivers/net/wireless/ath/ath10k/mac.c +4 -1
@@ -4474,7 +4474,10 @@ static int ath10k_add_interface(struct i
 		goto err_vdev_delete;
 	}
 
-	if (ar->cfg_tx_chainmask) {
+	/* Configuring number of spatial stream for monitor interface is causing
+	 * target assert in qca9888 and qca6174.
+	 */
+	if (ar->cfg_tx_chainmask && (vif->type != NL80211_IFTYPE_MONITOR)) {
 		u16 nss = get_nss_from_chainmask(ar->cfg_tx_chainmask);
 
 		vdev_param = ar->wmi.vdev_param->nss;

Patches currently in stable-queue which might be from [email protected] are

queue-4.5/ath10k-fix-firmware-assert-in-monitor-mode.patch queue-4.5/ath10k-fix-rx_channel-during-hw-reconfigure.patch