All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock
@ 2012-04-12 20:35 Felix Fietkau
  2012-04-12 20:35 ` [PATCH 2/4] ath9k_hw: add support for 8 AP mode interfaces Felix Fietkau
  2012-04-13 15:10 ` [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock Zefir Kurtisi
  0 siblings, 2 replies; 5+ messages in thread
From: Felix Fietkau @ 2012-04-12 20:35 UTC (permalink / raw)
  To: linux-wireless; +Cc: linville, mcgrof

It is unused and useless

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
---
 drivers/net/wireless/ath/ath9k/hw.c |    1 -
 drivers/net/wireless/ath/ath9k/hw.h |    5 -----
 2 files changed, 0 insertions(+), 6 deletions(-)

diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c
index d1345a8..6fa8128 100644
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -445,7 +445,6 @@ static void ath9k_hw_init_defaults(struct ath_hw *ah)
 		AR_STA_ID1_MCAST_KSRCH;
 	if (AR_SREV_9100(ah))
 		ah->sta_id1_defaults |= AR_STA_ID1_AR9100_BA_FIX;
-	ah->enable_32kHz_clock = DONT_USE_32KHZ;
 	ah->slottime = ATH9K_SLOT_TIME_9;
 	ah->globaltxtimeout = (u32) -1;
 	ah->power_mode = ATH9K_PM_UNDEFINED;
diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h
index aa1680a..d85a8de 100644
--- a/drivers/net/wireless/ath/ath9k/hw.h
+++ b/drivers/net/wireless/ath/ath9k/hw.h
@@ -762,11 +762,6 @@ struct ath_hw {
 
 	u32 sta_id1_defaults;
 	u32 misc_mode;
-	enum {
-		AUTO_32KHZ,
-		USE_32KHZ,
-		DONT_USE_32KHZ,
-	} enable_32kHz_clock;
 
 	/* Private to hardware code */
 	struct ath_hw_private_ops private_ops;
-- 
1.7.3.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/4] ath9k_hw: add support for 8 AP mode interfaces
  2012-04-12 20:35 [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock Felix Fietkau
@ 2012-04-12 20:35 ` Felix Fietkau
  2012-04-12 20:35   ` [PATCH 3/4] ath9k: do not register LEDs on AR913x Felix Fietkau
  2012-04-13 15:10 ` [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock Zefir Kurtisi
  1 sibling, 1 reply; 5+ messages in thread
From: Felix Fietkau @ 2012-04-12 20:35 UTC (permalink / raw)
  To: linux-wireless; +Cc: linville, mcgrof

Also tweak beacon response times for better stability with the shorter
timer intervals.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
---
 drivers/net/wireless/ath/ath9k/ath9k.h |    2 +-
 drivers/net/wireless/ath/ath9k/hw.c    |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/wireless/ath/ath9k/ath9k.h b/drivers/net/wireless/ath/ath9k/ath9k.h
index 0792d87..52142fa 100644
--- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++ b/drivers/net/wireless/ath/ath9k/ath9k.h
@@ -369,7 +369,7 @@ struct ath_vif {
  * number of beacon intervals, the game's up.
  */
 #define BSTUCK_THRESH           	9
-#define	ATH_BCBUF               	4
+#define	ATH_BCBUF               	8
 #define ATH_DEFAULT_BINTVAL     	100 /* TU */
 #define ATH_DEFAULT_BMISS_LIMIT 	10
 #define IEEE80211_MS_TO_TU(x)           (((x) * 1000) / 1024)
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c
index 6fa8128..373cef6 100644
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -388,8 +388,8 @@ static void ath9k_hw_init_config(struct ath_hw *ah)
 {
 	int i;
 
-	ah->config.dma_beacon_response_time = 2;
-	ah->config.sw_beacon_response_time = 10;
+	ah->config.dma_beacon_response_time = 1;
+	ah->config.sw_beacon_response_time = 6;
 	ah->config.additional_swba_backoff = 0;
 	ah->config.ack_6mb = 0x0;
 	ah->config.cwm_ignore_extcca = 0;
-- 
1.7.3.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 3/4] ath9k: do not register LEDs on AR913x
  2012-04-12 20:35 ` [PATCH 2/4] ath9k_hw: add support for 8 AP mode interfaces Felix Fietkau
@ 2012-04-12 20:35   ` Felix Fietkau
  2012-04-12 20:35     ` [PATCH 4/4] ath9k: optimize the hardware hang check Felix Fietkau
  0 siblings, 1 reply; 5+ messages in thread
From: Felix Fietkau @ 2012-04-12 20:35 UTC (permalink / raw)
  To: linux-wireless; +Cc: linville, mcgrof

LED support is typically handled via system GPIO on these platforms.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
---
 drivers/net/wireless/ath/ath9k/gpio.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/ath/ath9k/gpio.c b/drivers/net/wireless/ath/ath9k/gpio.c
index fbe23de..dd10f4a 100644
--- a/drivers/net/wireless/ath/ath9k/gpio.c
+++ b/drivers/net/wireless/ath/ath9k/gpio.c
@@ -41,6 +41,9 @@ void ath_init_leds(struct ath_softc *sc)
 {
 	int ret;
 
+	if (AR_SREV_9100(sc->sc_ah))
+		return;
+
 	if (sc->sc_ah->led_pin < 0) {
 		if (AR_SREV_9287(sc->sc_ah))
 			sc->sc_ah->led_pin = ATH_LED_PIN_9287;
-- 
1.7.3.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 4/4] ath9k: optimize the hardware hang check
  2012-04-12 20:35   ` [PATCH 3/4] ath9k: do not register LEDs on AR913x Felix Fietkau
@ 2012-04-12 20:35     ` Felix Fietkau
  0 siblings, 0 replies; 5+ messages in thread
From: Felix Fietkau @ 2012-04-12 20:35 UTC (permalink / raw)
  To: linux-wireless; +Cc: linville, mcgrof

Since it's only called when beacons are stuck, move it to the SWBA handler
tasklet, to avoid doing redundant checks on every single interrupt.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
---
 drivers/net/wireless/ath/ath9k/beacon.c |    3 +++
 drivers/net/wireless/ath/ath9k/main.c   |   11 -----------
 2 files changed, 3 insertions(+), 11 deletions(-)

diff --git a/drivers/net/wireless/ath/ath9k/beacon.c b/drivers/net/wireless/ath/ath9k/beacon.c
index 6264182..df5b6ac 100644
--- a/drivers/net/wireless/ath/ath9k/beacon.c
+++ b/drivers/net/wireless/ath/ath9k/beacon.c
@@ -369,6 +369,9 @@ void ath_beacon_tasklet(unsigned long data)
 	if (ath9k_hw_numtxpending(ah, sc->beacon.beaconq) != 0) {
 		sc->beacon.bmisscnt++;
 
+		if (!ath9k_hw_check_alive(ah))
+			ieee80211_queue_work(sc->hw, &sc->hw_check_work);
+
 		if (sc->beacon.bmisscnt < BSTUCK_THRESH * sc->nbcnvifs) {
 			ath_dbg(common, BSTUCK,
 				"missed %u consecutive beacons\n",
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index fcb13e3..95dc62e 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -692,17 +692,6 @@ void ath9k_tasklet(unsigned long data)
 		goto out;
 	}
 
-	/*
-	 * Only run the baseband hang check if beacons stop working in AP or
-	 * IBSS mode, because it has a high false positive rate. For station
-	 * mode it should not be necessary, since the upper layers will detect
-	 * this through a beacon miss automatically and the following channel
-	 * change will trigger a hardware reset anyway
-	 */
-	if (ath9k_hw_numtxpending(ah, sc->beacon.beaconq) != 0 &&
-	    !ath9k_hw_check_alive(ah))
-		ieee80211_queue_work(sc->hw, &sc->hw_check_work);
-
 	if ((status & ATH9K_INT_TSFOOR) && sc->ps_enabled) {
 		/*
 		 * TSF sync does not look correct; remain awake to sync with
-- 
1.7.3.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock
  2012-04-12 20:35 [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock Felix Fietkau
  2012-04-12 20:35 ` [PATCH 2/4] ath9k_hw: add support for 8 AP mode interfaces Felix Fietkau
@ 2012-04-13 15:10 ` Zefir Kurtisi
  1 sibling, 0 replies; 5+ messages in thread
From: Zefir Kurtisi @ 2012-04-13 15:10 UTC (permalink / raw)
  To: Felix Fietkau; +Cc: linux-wireless, linville, mcgrof

On 04/12/2012 10:35 PM, Felix Fietkau wrote:
> It is unused and useless
> 
> Signed-off-by: Felix Fietkau <nbd@openwrt.org>
> ---
>  drivers/net/wireless/ath/ath9k/hw.c |    1 -
>  drivers/net/wireless/ath/ath9k/hw.h |    5 -----
>  2 files changed, 0 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c
> index d1345a8..6fa8128 100644
> --- a/drivers/net/wireless/ath/ath9k/hw.c
> +++ b/drivers/net/wireless/ath/ath9k/hw.c
> @@ -445,7 +445,6 @@ static void ath9k_hw_init_defaults(struct ath_hw *ah)
>  		AR_STA_ID1_MCAST_KSRCH;
>  	if (AR_SREV_9100(ah))
>  		ah->sta_id1_defaults |= AR_STA_ID1_AR9100_BA_FIX;
> -	ah->enable_32kHz_clock = DONT_USE_32KHZ;
>  	ah->slottime = ATH9K_SLOT_TIME_9;
>  	ah->globaltxtimeout = (u32) -1;
>  	ah->power_mode = ATH9K_PM_UNDEFINED;
> diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h
> index aa1680a..d85a8de 100644
> --- a/drivers/net/wireless/ath/ath9k/hw.h
> +++ b/drivers/net/wireless/ath/ath9k/hw.h
> @@ -762,11 +762,6 @@ struct ath_hw {
>  
>  	u32 sta_id1_defaults;
>  	u32 misc_mode;
> -	enum {
> -		AUTO_32KHZ,
> -		USE_32KHZ,
> -		DONT_USE_32KHZ,
> -	} enable_32kHz_clock;
>  
>  	/* Private to hardware code */
>  	struct ath_hw_private_ops private_ops;

Hi Felix,

that went already in as part of '[PATCH] ath9k: remove dead code' some
days ago [1].

Cheers, Zefir


[1] http://article.gmane.org/gmane.linux.kernel.wireless.general/88559

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-04-13 15:10 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-12 20:35 [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock Felix Fietkau
2012-04-12 20:35 ` [PATCH 2/4] ath9k_hw: add support for 8 AP mode interfaces Felix Fietkau
2012-04-12 20:35   ` [PATCH 3/4] ath9k: do not register LEDs on AR913x Felix Fietkau
2012-04-12 20:35     ` [PATCH 4/4] ath9k: optimize the hardware hang check Felix Fietkau
2012-04-13 15:10 ` [PATCH 1/4] ath9k_hw: remove enable_32kHz_clock Zefir Kurtisi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.