]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
.32 patches
authorGreg Kroah-Hartman <gregkh@suse.de>
Mon, 29 Mar 2010 22:56:48 +0000 (15:56 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 29 Mar 2010 22:56:48 +0000 (15:56 -0700)
queue-2.6.32/alsa-hda-use-alc260_will-quirk-for-another-acer-model-0x1025007f.patch [new file with mode: 0644]
queue-2.6.32/ath9k-configure-the-beacon-only-if-the-sta-is-associated.patch [new file with mode: 0644]
queue-2.6.32/ath9k-enable-tim-timer-interrupt-only-when-needed.patch [new file with mode: 0644]
queue-2.6.32/series

diff --git a/queue-2.6.32/alsa-hda-use-alc260_will-quirk-for-another-acer-model-0x1025007f.patch b/queue-2.6.32/alsa-hda-use-alc260_will-quirk-for-another-acer-model-0x1025007f.patch
new file mode 100644 (file)
index 0000000..21482c8
--- /dev/null
@@ -0,0 +1,33 @@
+From 950200e2ff11daae1c5d9426703bdd494603f38b Mon Sep 17 00:00:00 2001
+From: Daniel T Chen <crimsun@ubuntu.com>
+Date: Sun, 13 Dec 2009 14:11:02 -0500
+Subject: ALSA: hda: Use ALC260_WILL quirk for another Acer model (0x1025007f)
+
+From: Daniel T Chen <crimsun@ubuntu.com>
+
+commit 950200e2ff11daae1c5d9426703bdd494603f38b upstream.
+
+BugLink: https://bugs.launchpad.net/bugs/418627
+
+The original reporter states that this quirk is necessary to obtain
+reasonable gain for playback.  Without it, sound is inaudible.  Tested
+with playback (spkr and hp) and capture.
+
+Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/pci/hda/patch_realtek.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -6252,6 +6252,7 @@ static const char *alc260_models[ALC260_
+ static struct snd_pci_quirk alc260_cfg_tbl[] = {
+       SND_PCI_QUIRK(0x1025, 0x007b, "Acer C20x", ALC260_ACER),
++      SND_PCI_QUIRK(0x1025, 0x007f, "Acer", ALC260_WILL),
+       SND_PCI_QUIRK(0x1025, 0x008f, "Acer", ALC260_ACER),
+       SND_PCI_QUIRK(0x1509, 0x4540, "Favorit 100XS", ALC260_FAVORIT100),
+       SND_PCI_QUIRK(0x103c, 0x2808, "HP d5700", ALC260_HP_3013),
diff --git a/queue-2.6.32/ath9k-configure-the-beacon-only-if-the-sta-is-associated.patch b/queue-2.6.32/ath9k-configure-the-beacon-only-if-the-sta-is-associated.patch
new file mode 100644 (file)
index 0000000..637a6de
--- /dev/null
@@ -0,0 +1,36 @@
+From ec3a9974892956aec86a4065bf6e48bc2cd92d04 Mon Sep 17 00:00:00 2001
+From: Senthil Balasubramanian <senthilkumar@atheros.com>
+Date: Wed, 3 Feb 2010 22:50:18 +0530
+Subject: ath9k: configure the beacon only if the STA is associated
+
+From: Senthil Balasubramanian <senthilkumar@atheros.com>
+
+commit 1a20034a73a40b8056731f9db0c535cec2961eb7 upstream.
+
+beacons configuration SHOULD be done only if the STA is associated.
+
+Signed-off-by: Senthil Balasubramanian <senthilkumar@atheros.com>
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/net/wireless/ath/ath9k/beacon.c |    7 +++++++
+ 1 file changed, 7 insertions(+)
+
+--- a/drivers/net/wireless/ath/ath9k/beacon.c
++++ b/drivers/net/wireless/ath/ath9k/beacon.c
+@@ -559,6 +559,13 @@ static void ath_beacon_config_sta(struct
+       u64 tsf;
+       int num_beacons, offset, dtim_dec_count, cfp_dec_count;
++      /* No need to configure beacon if we are not associated */
++      if (!common->curaid) {
++              ath_print(common, ATH_DBG_BEACON,
++                       "STA is not yet associated..skipping beacon config\n");
++              return;
++      }
++
+       memset(&bs, 0, sizeof(bs));
+       intval = conf->beacon_interval & ATH9K_BEACON_PERIOD;
diff --git a/queue-2.6.32/ath9k-enable-tim-timer-interrupt-only-when-needed.patch b/queue-2.6.32/ath9k-enable-tim-timer-interrupt-only-when-needed.patch
new file mode 100644 (file)
index 0000000..252afb2
--- /dev/null
@@ -0,0 +1,95 @@
+From e74a0bf39351c2c21c2d80e5af86e5b358c00d1d Mon Sep 17 00:00:00 2001
+From: Senthil Balasubramanian <senthilkumar@atheros.com>
+Date: Thu, 11 Mar 2010 11:50:54 -0800
+Subject: ath9k: Enable TIM timer interrupt only when needed.
+
+From: Senthil Balasubramanian <senthilkumar@atheros.com>
+
+commit 3f7c5c10e9dc6bf90179eb9f7c06151d508fb324 upstream.
+
+The TIM timer interrupt is enabled even before the ACK of nullqos
+is received which is unnecessary.
+
+Also clean up the CONF_PS part of config callback properly for
+better readability.
+
+Signed-off-by: Senthil Balasubramanian <senthilkumar@atheros.com>
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/net/wireless/ath/ath9k/ath9k.h |    1 +
+ drivers/net/wireless/ath/ath9k/main.c  |   25 ++++++++++++++-----------
+ drivers/net/wireless/ath/ath9k/xmit.c  |    7 +++----
+ 3 files changed, 18 insertions(+), 15 deletions(-)
+
+--- a/drivers/net/wireless/ath/ath9k/ath9k.h
++++ b/drivers/net/wireless/ath/ath9k/ath9k.h
+@@ -368,6 +368,7 @@ void ath_tx_aggr_start(struct ath_softc
+                      u16 tid, u16 *ssn);
+ void ath_tx_aggr_stop(struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid);
+ void ath_tx_aggr_resume(struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid);
++void ath9k_enable_ps(struct ath_softc *sc);
+ /********/
+ /* VIFs */
+--- a/drivers/net/wireless/ath/ath9k/main.c
++++ b/drivers/net/wireless/ath/ath9k/main.c
+@@ -2305,6 +2305,19 @@ static void ath9k_remove_interface(struc
+       mutex_unlock(&sc->mutex);
+ }
++void ath9k_enable_ps(struct ath_softc *sc)
++{
++      sc->ps_enabled = true;
++      if (!(sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_AUTOSLEEP)) {
++              if ((sc->imask & ATH9K_INT_TIM_TIMER) == 0) {
++                      sc->imask |= ATH9K_INT_TIM_TIMER;
++                      ath9k_hw_set_interrupts(sc->sc_ah,
++                                      sc->imask);
++              }
++      }
++      ath9k_hw_setrxabort(sc->sc_ah, 1);
++}
++
+ static int ath9k_config(struct ieee80211_hw *hw, u32 changed)
+ {
+       struct ath_wiphy *aphy = hw->priv;
+@@ -2336,19 +2349,9 @@ static int ath9k_config(struct ieee80211
+       if (changed & IEEE80211_CONF_CHANGE_PS) {
+               if (conf->flags & IEEE80211_CONF_PS) {
+                       sc->sc_flags |= SC_OP_PS_ENABLED;
+-                      if (!(ah->caps.hw_caps &
+-                            ATH9K_HW_CAP_AUTOSLEEP)) {
+-                              if ((sc->imask & ATH9K_INT_TIM_TIMER) == 0) {
+-                                      sc->imask |= ATH9K_INT_TIM_TIMER;
+-                                      ath9k_hw_set_interrupts(sc->sc_ah,
+-                                                      sc->imask);
+-                              }
+-                      }
+-                      sc->ps_enabled = true;
+                       if ((sc->sc_flags & SC_OP_NULLFUNC_COMPLETED)) {
+                               sc->sc_flags &= ~SC_OP_NULLFUNC_COMPLETED;
+-                              sc->ps_enabled = true;
+-                              ath9k_hw_setrxabort(sc->sc_ah, 1);
++                              ath9k_enable_ps(sc);
+                       }
+               } else {
+                       sc->ps_enabled = false;
+--- a/drivers/net/wireless/ath/ath9k/xmit.c
++++ b/drivers/net/wireless/ath/ath9k/xmit.c
+@@ -1979,10 +1979,9 @@ static void ath_tx_processq(struct ath_s
+               if (bf->bf_isnullfunc &&
+                   (ds->ds_txstat.ts_status & ATH9K_TX_ACKED)) {
+-                      if ((sc->sc_flags & SC_OP_PS_ENABLED)) {
+-                              sc->ps_enabled = true;
+-                              ath9k_hw_setrxabort(sc->sc_ah, 1);
+-                      } else
++                      if ((sc->sc_flags & SC_OP_PS_ENABLED))
++                              ath9k_enable_ps(sc);
++                      else
+                               sc->sc_flags |= SC_OP_NULLFUNC_COMPLETED;
+               }
index 7ebad0b7c031b3cbffbc7d5975891481381dacd0..1207f2789cc4f74cc8df387c4d4d8fc5164c7886 100644 (file)
@@ -98,3 +98,6 @@ hwmon-coretemp-add-missing-newline-to-dev_warn-message.patch
 alsa-hda-use-lpib-for-ga-ma770-ud3-board.patch
 alsa-ac97-add-toshiba-p500-to-ac97-jack-sense-blacklist.patch
 alsa-ac97-add-ibm-thinkpad-r40e-to-headphone-line-jack-sense-blacklist.patch
+alsa-hda-use-alc260_will-quirk-for-another-acer-model-0x1025007f.patch
+ath9k-enable-tim-timer-interrupt-only-when-needed.patch
+ath9k-configure-the-beacon-only-if-the-sta-is-associated.patch