Seems fine to me...

Acked-by: John W. Linville <[email protected]>

On Wed, Feb 06, 2013 at 04:31:00AM -0500, CAI Qian wrote:
> John, Felix, context fix only, and also need an ACK/NAK for stable-3.4. :)
> 
> Regards,
> CAI Qian
> 
> From 4a8f199508d79ff8a7d1e22f47b912baaf225336 Mon Sep 17 00:00:00 2001
> From: Felix Fietkau <[email protected]>
> Date: Sun, 20 Jan 2013 21:55:20 +0100
> Subject: [PATCH] ath9k_hw: fix calibration issues on chainmask that don't
>  include chain 0
> 
> Cc: [email protected]
> Signed-off-by: Felix Fietkau <[email protected]>
> Signed-off-by: John W. Linville <[email protected]>
> 
> diff --git a/drivers/net/wireless/ath/ath9k/ar9003_calib.c 
> b/drivers/net/wireless/ath/ath9k/ar9003_calib.c
> index 63089cc..9284bca 100644
> --- a/drivers/net/wireless/ath/ath9k/ar9003_calib.c
> +++ b/drivers/net/wireless/ath/ath9k/ar9003_calib.c
> @@ -938,6 +938,8 @@ static bool ar9003_hw_init_cal(struct ath_hw *ah,
>                                            AR_PHY_CL_TAB_1,
>                                            AR_PHY_CL_TAB_2 };
>  
> +        ar9003_hw_set_chain_masks(ah, ah->caps.rx_chainmask, 
> ah->caps.tx_chainmask);
> +
>          if (rtt) {
>                  if (!ar9003_hw_rtt_restore(ah, chan))
>                          run_rtt_cal = true;
> diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.c 
> b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
> index 600aca9..f86ee0c 100644
> --- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c
> +++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
> @@ -543,7 +543,7 @@ static void ar9003_hw_init_bb(struct ath_hw *ah,
>          udelay(synthDelay + BASE_ACTIVATE_DELAY);
>  }
>  
> -static void ar9003_hw_set_chain_masks(struct ath_hw *ah, u8 rx, u8 tx)
> +void ar9003_hw_set_chain_masks(struct ath_hw *ah, u8 rx, u8 tx)
>  {
>          switch (rx) {
>          case 0x5:
> diff --git a/drivers/net/wireless/ath/ath9k/hw.h 
> b/drivers/net/wireless/ath/ath9k/hw.h
> index f8e1fbb..d5c5dca 100644
> --- a/drivers/net/wireless/ath/ath9k/hw.h
> +++ b/drivers/net/wireless/ath/ath9k/hw.h
> @@ -1014,6 +1014,7 @@ int ar9003_paprd_setup_gain_table(struct ath_hw *ah, 
> int chain);
>  int ar9003_paprd_init_table(struct ath_hw *ah);
>  bool ar9003_paprd_is_done(struct ath_hw *ah);
>  void ar9003_hw_set_paprd_txdesc(struct ath_hw *ah, void *ds, u8 chains);
> +void ar9003_hw_set_chain_masks(struct ath_hw *ah, u8 rx, u8 tx);
>  
>  /* Hardware family op attach helpers */
>  void ar5008_hw_attach_phy_ops(struct ath_hw *ah);
> 

-- 
John W. Linville                Someday the world will need a hero, and you
[email protected]                  might be all we have.  Be ready.
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to