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

Commit fd952405 authored by David S. Miller's avatar David S. Miller
Browse files
parents cdfb74d4 fa9a741b
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -5127,6 +5127,7 @@ RALINK RT2X00 WIRELESS LAN DRIVER
P:	rt2x00 project
M:	Ivo van Doorn <IvDoorn@gmail.com>
M:	Gertjan van Wingerde <gwingerde@gmail.com>
M:	Helmut Schaa <helmut.schaa@googlemail.com>
L:	linux-wireless@vger.kernel.org
L:	users@rt2x00.serialmonkey.com (moderated for non-subscribers)
W:	http://rt2x00.serialmonkey.com/
@@ -6767,12 +6768,12 @@ S: Maintained
F:	drivers/net/wireless/wl1251/*

WL1271 WIRELESS DRIVER
M:	Luciano Coelho <luciano.coelho@nokia.com>
M:	Luciano Coelho <coelho@ti.com>
L:	linux-wireless@vger.kernel.org
W:	http://wireless.kernel.org
W:	http://wireless.kernel.org/en/users/Drivers/wl12xx
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx.git
S:	Maintained
F:	drivers/net/wireless/wl12xx/wl1271*
F:	drivers/net/wireless/wl12xx/
F:	include/linux/wl12xx.h

WL3501 WIRELESS PCMCIA CARD DRIVER
+11 −0
Original line number Diff line number Diff line
@@ -40,6 +40,17 @@ config ATH5K_DEBUG

	  modprobe ath5k debug=0x00000400

config ATH5K_TRACER
	bool "Atheros 5xxx tracer"
	depends on ATH5K
	depends on EVENT_TRACING
	---help---
	  Say Y here to enable tracepoints for the ath5k driver
	  using the kernel tracing infrastructure.  Select this
	  option if you are interested in debugging the driver.

	  If unsure, say N.

config ATH5K_AHB
	bool "Atheros 5xxx AHB bus support"
	depends on (ATHEROS_AR231X && !PCI)
+8 −10
Original line number Diff line number Diff line
@@ -210,14 +210,9 @@
/* Initial values */
#define	AR5K_INIT_CYCRSSI_THR1			2

/* Tx retry limits */
#define AR5K_INIT_SH_RETRY			10
#define AR5K_INIT_LG_RETRY			AR5K_INIT_SH_RETRY
/* For station mode */
#define AR5K_INIT_SSH_RETRY			32
#define AR5K_INIT_SLG_RETRY			AR5K_INIT_SSH_RETRY
#define AR5K_INIT_TX_RETRY			10

/* Tx retry limit defaults from standard */
#define AR5K_INIT_RETRY_SHORT			7
#define AR5K_INIT_RETRY_LONG			4

/* Slot time */
#define AR5K_INIT_SLOT_TIME_TURBO		6
@@ -1057,7 +1052,9 @@ struct ath5k_hw {
#define ah_modes		ah_capabilities.cap_mode
#define ah_ee_version		ah_capabilities.cap_eeprom.ee_version

	u32			ah_limit_tx_retries;
	u8			ah_retry_long;
	u8			ah_retry_short;

	u8			ah_coverage_class;
	bool			ah_ack_bitrate_high;
	u8			ah_bwmode;
@@ -1067,7 +1064,6 @@ struct ath5k_hw {
	u8			ah_ant_mode;
	u8			ah_tx_ant;
	u8			ah_def_ant;
	bool			ah_software_retry;

	struct ath5k_capabilities ah_capabilities;

@@ -1250,6 +1246,8 @@ int ath5k_hw_set_tx_queueprops(struct ath5k_hw *ah, int queue,
int ath5k_hw_setup_tx_queue(struct ath5k_hw *ah,
			    enum ath5k_tx_queue queue_type,
			    struct ath5k_txq_info *queue_info);
void ath5k_hw_set_tx_retry_limits(struct ath5k_hw *ah,
				  unsigned int queue);
u32 ath5k_hw_num_tx_pending(struct ath5k_hw *ah, unsigned int queue);
void ath5k_hw_release_tx_queue(struct ath5k_hw *ah, unsigned int queue);
int ath5k_hw_reset_tx_queue(struct ath5k_hw *ah, unsigned int queue);
+2 −2
Original line number Diff line number Diff line
@@ -118,8 +118,8 @@ int ath5k_hw_init(struct ath5k_softc *sc)
	ah->ah_bwmode = AR5K_BWMODE_DEFAULT;
	ah->ah_txpower.txp_tpc = AR5K_TUNE_TPC_TXPOWER;
	ah->ah_imr = 0;
	ah->ah_limit_tx_retries = AR5K_INIT_TX_RETRY;
	ah->ah_software_retry = false;
	ah->ah_retry_short = AR5K_INIT_RETRY_SHORT;
	ah->ah_retry_long = AR5K_INIT_RETRY_LONG;
	ah->ah_ant_mode = AR5K_ANTMODE_DEFAULT;
	ah->ah_noise_floor = -95;	/* until first NF calibration is run */
	sc->ani_state.ani_mode = ATH5K_ANI_MODE_AUTO;
+12 −7
Original line number Diff line number Diff line
@@ -61,6 +61,9 @@
#include "debug.h"
#include "ani.h"

#define CREATE_TRACE_POINTS
#include "trace.h"

int ath5k_modparam_nohwcrypt;
module_param_named(nohwcrypt, ath5k_modparam_nohwcrypt, bool, S_IRUGO);
MODULE_PARM_DESC(nohwcrypt, "Disable hardware encryption.");
@@ -1379,7 +1382,7 @@ ath5k_receive_frame(struct ath5k_softc *sc, struct sk_buff *skb,
	    sc->sbands[sc->curchan->band].bitrates[rxs->rate_idx].hw_value_short)
		rxs->flag |= RX_FLAG_SHORTPRE;

	ath5k_debug_dump_skb(sc, skb, "RX  ", 0);
	trace_ath5k_rx(sc, skb);

	ath5k_update_beacon_rssi(sc, skb, rs->rs_rssi);

@@ -1524,7 +1527,7 @@ ath5k_tx_queue(struct ieee80211_hw *hw, struct sk_buff *skb,
	unsigned long flags;
	int padsize;

	ath5k_debug_dump_skb(sc, skb, "TX  ", 1);
	trace_ath5k_tx(sc, skb, txq);

	/*
	 * The hardware expects the header padded to 4 byte boundaries.
@@ -1573,7 +1576,7 @@ ath5k_tx_queue(struct ieee80211_hw *hw, struct sk_buff *skb,

static void
ath5k_tx_frame_completed(struct ath5k_softc *sc, struct sk_buff *skb,
			 struct ath5k_tx_status *ts)
			 struct ath5k_txq *txq, struct ath5k_tx_status *ts)
{
	struct ieee80211_tx_info *info;
	int i;
@@ -1625,6 +1628,7 @@ ath5k_tx_frame_completed(struct ath5k_softc *sc, struct sk_buff *skb,
	else
		sc->stats.antenna_tx[0]++; /* invalid */

	trace_ath5k_tx_complete(sc, skb, txq, ts);
	ieee80211_tx_status(sc->hw, skb);
}

@@ -1661,7 +1665,7 @@ ath5k_tx_processq(struct ath5k_softc *sc, struct ath5k_txq *txq)

			dma_unmap_single(sc->dev, bf->skbaddr, skb->len,
					DMA_TO_DEVICE);
			ath5k_tx_frame_completed(sc, skb, &ts);
			ath5k_tx_frame_completed(sc, skb, txq, &ts);
		}

		/*
@@ -1803,8 +1807,6 @@ ath5k_beacon_update(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
		goto out;
	}

	ath5k_debug_dump_skb(sc, skb, "BC  ", 1);

	ath5k_txbuf_free_skb(sc, avf->bbuf);
	avf->bbuf->skb = skb;
	ret = ath5k_beacon_setup(sc, avf->bbuf);
@@ -1899,6 +1901,8 @@ ath5k_beacon_send(struct ath5k_softc *sc)
			sc->opmode == NL80211_IFTYPE_MESH_POINT)
		ath5k_beacon_update(sc->hw, vif);

	trace_ath5k_tx(sc, bf->skb, &sc->txqs[sc->bhalq]);

	ath5k_hw_set_txdp(ah, sc->bhalq, bf->daddr);
	ath5k_hw_start_tx_dma(ah, sc->bhalq);
	ATH5K_DBG(sc, ATH5K_DEBUG_BEACON, "TXDP[%u] = %llx (%p)\n",
@@ -2399,7 +2403,8 @@ ath5k_init_softc(struct ath5k_softc *sc, const struct ath_bus_ops *bus_ops)
	/* set up multi-rate retry capabilities */
	if (sc->ah->ah_version == AR5K_AR5212) {
		hw->max_rates = 4;
		hw->max_rate_tries = 11;
		hw->max_rate_tries = max(AR5K_INIT_RETRY_SHORT,
					 AR5K_INIT_RETRY_LONG);
	}

	hw->vif_data_size = sizeof(struct ath5k_vif);
Loading