Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9e0aab86 authored by David S. Miller's avatar David S. Miller
Browse files


John W. Linville says:

====================
This is another flurry of fixes intended for the 3.9 stream...

A mac80211 pull from Johannes:

"Seth fixes a stupid bug I introduced into one of his earlier patches,
Chun-Yeow fixes mesh forwarding and Felix fixes monitor mode. I myself
fixed a small locking issue and, the biggest change here, removed some
nl80211 information with which sometimes the per wiphy information was
getting too large for the typical 4k-minus-overhead. In my -next tree I
have a patch to allow splitting that and add back the information
removed now."

An iwlwifi pull from Johannes:

"I have a fix for a pretty important bug regarding DMA mapping, that
could cause the DMA engine to overwrite data we wanted to send to it, so
that the next time we send it it would be bad. This particularly affects
calibration results. Other than that, three little fixes for the MVM
driver."

But wait, there's more!

Avinash Patil fixes an incorrectly timed delay in mwifiex.

Bing Zhao prevents a crash in SD8688 caused by failing to properly
set a flag before issuing a command.

Felix Fietkau is the big here this time, providing a trio of minor
ath9k fixes and correcting the advertised interface combinations for
rt2x00 when mesh support is disabled.

Finally, Hauke Mehrtens gives us a patch that correctlin initializes
a spin lock in the bcma code.

Please let me know if there are problems!
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 8b82547e 98b7ff9a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -404,6 +404,8 @@ void bcma_core_pci_hostmode_init(struct bcma_drv_pci *pc)
		return;
	}

	spin_lock_init(&pc_host->cfgspace_lock);

	pc->host_controller = pc_host;
	pc_host->pci_controller.io_resource = &pc_host->io_resource;
	pc_host->pci_controller.mem_resource = &pc_host->mem_resource;
+1 −1
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@
#define WME_MAX_BA              WME_BA_BMP_SIZE
#define ATH_TID_MAX_BUFS        (2 * WME_MAX_BA)

#define ATH_RSSI_DUMMY_MARKER   0x127
#define ATH_RSSI_DUMMY_MARKER   127
#define ATH_RSSI_LPF_LEN 		10
#define RSSI_LPF_THRESHOLD		-20
#define ATH_RSSI_EP_MULTIPLIER     (1<<7)
+1 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
#include <linux/firmware.h>
#include <linux/skbuff.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/leds.h>
#include <linux/slab.h>
#include <net/mac80211.h>
+11 −7
Original line number Diff line number Diff line
@@ -1067,15 +1067,19 @@ static bool ath9k_rx_prepare(struct ath9k_htc_priv *priv,

	last_rssi = priv->rx.last_rssi;

	if (ieee80211_is_beacon(hdr->frame_control) &&
	    !is_zero_ether_addr(common->curbssid) &&
	    ether_addr_equal(hdr->addr3, common->curbssid)) {
		s8 rssi = rxbuf->rxstatus.rs_rssi;

		if (likely(last_rssi != ATH_RSSI_DUMMY_MARKER))
		rxbuf->rxstatus.rs_rssi = ATH_EP_RND(last_rssi,
						     ATH_RSSI_EP_MULTIPLIER);
			rssi = ATH_EP_RND(last_rssi, ATH_RSSI_EP_MULTIPLIER);

	if (rxbuf->rxstatus.rs_rssi < 0)
		rxbuf->rxstatus.rs_rssi = 0;
		if (rssi < 0)
			rssi = 0;

	if (ieee80211_is_beacon(fc))
		priv->ah->stats.avgbrssi = rxbuf->rxstatus.rs_rssi;
		priv->ah->stats.avgbrssi = rssi;
	}

	rx_status->mactime = be64_to_cpu(rxbuf->rxstatus.rs_tstamp);
	rx_status->band = hw->conf.channel->band;
+3 −1
Original line number Diff line number Diff line
@@ -1463,7 +1463,9 @@ static bool ath9k_hw_chip_reset(struct ath_hw *ah,
			reset_type = ATH9K_RESET_POWER_ON;
		else
			reset_type = ATH9K_RESET_COLD;
	}
	} else if (ah->chip_fullsleep || REG_READ(ah, AR_Q_TXE) ||
		   (REG_READ(ah, AR_CR) & AR_CR_RXE))
		reset_type = ATH9K_RESET_COLD;

	if (!ath9k_hw_set_reset_reg(ah, reset_type))
		return false;
Loading