]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.19-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Sep 2019 19:53:41 +0000 (21:53 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Sep 2019 19:53:41 +0000 (21:53 +0200)
added patches:
alsa-hda-realtek-enable-micmute-led-for-huawei-laptops.patch
iwlwifi-mvm-always-init-rs_fw-with-20mhz-bandwidth-rates.patch
iwlwifi-mvm-send-bcast-management-frames-to-the-right-station.patch
media-tvp5150-fix-switch-exit-in-set-control-handler.patch

queue-4.19/alsa-hda-realtek-enable-micmute-led-for-huawei-laptops.patch [new file with mode: 0644]
queue-4.19/iwlwifi-mvm-always-init-rs_fw-with-20mhz-bandwidth-rates.patch [new file with mode: 0644]
queue-4.19/iwlwifi-mvm-send-bcast-management-frames-to-the-right-station.patch [new file with mode: 0644]
queue-4.19/media-tvp5150-fix-switch-exit-in-set-control-handler.patch [new file with mode: 0644]
queue-4.19/series

diff --git a/queue-4.19/alsa-hda-realtek-enable-micmute-led-for-huawei-laptops.patch b/queue-4.19/alsa-hda-realtek-enable-micmute-led-for-huawei-laptops.patch
new file mode 100644 (file)
index 0000000..e0702ff
--- /dev/null
@@ -0,0 +1,61 @@
+From 0fbf21c3b36a9921467aa7525d2768b07f9f8fbb Mon Sep 17 00:00:00 2001
+From: Ayman Bagabas <ayman.bagabas@gmail.com>
+Date: Thu, 23 May 2019 05:30:11 -0400
+Subject: ALSA: hda/realtek - Enable micmute LED for Huawei laptops
+
+From: Ayman Bagabas <ayman.bagabas@gmail.com>
+
+commit 0fbf21c3b36a9921467aa7525d2768b07f9f8fbb upstream.
+
+Since this LED is found on all Huawei laptops, we can hook it to
+huawei-wmi platform driver to control it.
+
+Also, some renames have been made to use product name instead of common
+name to avoid confusions.
+
+Fixes: 8ac51bbc4cfe ("ALSA: hda: fix front speakers on Huawei MBXP")
+Signed-off-by: Ayman Bagabas <ayman.bagabas@gmail.com>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/pci/hda/patch_realtek.c |    7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -5657,7 +5657,7 @@ enum {
+       ALC298_FIXUP_TPT470_DOCK,
+       ALC255_FIXUP_DUMMY_LINEOUT_VERB,
+       ALC255_FIXUP_DELL_HEADSET_MIC,
+-      ALC256_FIXUP_HUAWEI_MBXP_PINS,
++      ALC256_FIXUP_HUAWEI_MACH_WX9_PINS,
+       ALC295_FIXUP_HP_X360,
+       ALC221_FIXUP_HP_HEADSET_MIC,
+       ALC285_FIXUP_LENOVO_HEADPHONE_NOISE,
+@@ -5947,7 +5947,7 @@ static const struct hda_fixup alc269_fix
+               .chained = true,
+               .chain_id = ALC269_FIXUP_HEADSET_MIC
+       },
+-      [ALC256_FIXUP_HUAWEI_MBXP_PINS] = {
++      [ALC256_FIXUP_HUAWEI_MACH_WX9_PINS] = {
+               .type = HDA_FIXUP_PINS,
+               .v.pins = (const struct hda_pintbl[]) {
+                       {0x12, 0x90a60130},
+@@ -6975,7 +6975,7 @@ static const struct snd_pci_quirk alc269
+       SND_PCI_QUIRK(0x17aa, 0x511f, "Thinkpad", ALC298_FIXUP_TPT470_DOCK),
+       SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K),
+       SND_PCI_QUIRK(0x17aa, 0x9e54, "LENOVO NB", ALC269_FIXUP_LENOVO_EAPD),
+-      SND_PCI_QUIRK(0x19e5, 0x3204, "Huawei MBXP", ALC256_FIXUP_HUAWEI_MBXP_PINS),
++      SND_PCI_QUIRK(0x19e5, 0x3204, "Huawei MACH-WX9", ALC256_FIXUP_HUAWEI_MACH_WX9_PINS),
+       SND_PCI_QUIRK(0x1b7d, 0xa831, "Ordissimo EVE2 ", ALC269VB_FIXUP_ORDISSIMO_EVE2), /* Also known as Malata PC-B1303 */
+ #if 0
+@@ -7034,6 +7034,7 @@ static const struct snd_pci_quirk alc269
+       SND_PCI_QUIRK_VENDOR(0x103c, "HP", ALC269_FIXUP_HP_MUTE_LED),
+       SND_PCI_QUIRK_VENDOR(0x104d, "Sony VAIO", ALC269_FIXUP_SONY_VAIO),
+       SND_PCI_QUIRK_VENDOR(0x17aa, "Thinkpad", ALC269_FIXUP_THINKPAD_ACPI),
++      SND_PCI_QUIRK_VENDOR(0x19e5, "Huawei Matebook", ALC255_FIXUP_MIC_MUTE_LED),
+       {}
+ };
diff --git a/queue-4.19/iwlwifi-mvm-always-init-rs_fw-with-20mhz-bandwidth-rates.patch b/queue-4.19/iwlwifi-mvm-always-init-rs_fw-with-20mhz-bandwidth-rates.patch
new file mode 100644 (file)
index 0000000..612e4f9
--- /dev/null
@@ -0,0 +1,69 @@
+From 2859de7637b541dc7191f4d3fce4a1adba80fb3e Mon Sep 17 00:00:00 2001
+From: Naftali Goldstein <naftali.goldstein@intel.com>
+Date: Thu, 10 May 2018 20:32:36 +0300
+Subject: iwlwifi: mvm: always init rs_fw with 20MHz bandwidth rates
+
+From: Naftali Goldstein <naftali.goldstein@intel.com>
+
+commit 2859de7637b541dc7191f4d3fce4a1adba80fb3e upstream.
+
+As with the non-offloaded rs case, during assoc on the ap side the phy
+context is set to 20MHz until authorization of a client that supports
+wider channel-widths. Support this by sending the initial
+tlc_config_cmd with max supported channel width of 20MHz until
+authorization succeeds.
+
+Fixes: 6b7a5aea71b3 ("iwlwifi: mvm: always init rs with 20mhz bandwidth rates")
+Signed-off-by: Naftali Goldstein <naftali.goldstein@intel.com>
+Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c |    5 +++--
+ drivers/net/wireless/intel/iwlwifi/mvm/rs.c    |    2 +-
+ drivers/net/wireless/intel/iwlwifi/mvm/rs.h    |    2 +-
+ 3 files changed, 5 insertions(+), 4 deletions(-)
+
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/rs-fw.c
+@@ -315,7 +315,7 @@ out:
+ }
+ void rs_fw_rate_init(struct iwl_mvm *mvm, struct ieee80211_sta *sta,
+-                   enum nl80211_band band)
++                   enum nl80211_band band, bool update)
+ {
+       struct ieee80211_hw *hw = mvm->hw;
+       struct iwl_mvm_sta *mvmsta = iwl_mvm_sta_from_mac80211(sta);
+@@ -324,7 +324,8 @@ void rs_fw_rate_init(struct iwl_mvm *mvm
+       struct ieee80211_supported_band *sband;
+       struct iwl_tlc_config_cmd cfg_cmd = {
+               .sta_id = mvmsta->sta_id,
+-              .max_ch_width = rs_fw_bw_from_sta_bw(sta),
++              .max_ch_width = update ?
++                      rs_fw_bw_from_sta_bw(sta) : RATE_MCS_CHAN_WIDTH_20,
+               .flags = cpu_to_le16(rs_fw_set_config_flags(mvm, sta)),
+               .chains = rs_fw_set_active_chains(iwl_mvm_get_valid_tx_ant(mvm)),
+               .max_mpdu_len = cpu_to_le16(sta->max_amsdu_len),
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/rs.c
+@@ -4113,7 +4113,7 @@ void iwl_mvm_rs_rate_init(struct iwl_mvm
+                         enum nl80211_band band, bool update)
+ {
+       if (iwl_mvm_has_tlc_offload(mvm))
+-              rs_fw_rate_init(mvm, sta, band);
++              rs_fw_rate_init(mvm, sta, band, update);
+       else
+               rs_drv_rate_init(mvm, sta, band, update);
+ }
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/rs.h
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/rs.h
+@@ -461,7 +461,7 @@ void rs_remove_sta_debugfs(void *mvm, vo
+ void iwl_mvm_rs_add_sta(struct iwl_mvm *mvm, struct iwl_mvm_sta *mvmsta);
+ void rs_fw_rate_init(struct iwl_mvm *mvm, struct ieee80211_sta *sta,
+-                   enum nl80211_band band);
++                   enum nl80211_band band, bool update);
+ int rs_fw_tx_protection(struct iwl_mvm *mvm, struct iwl_mvm_sta *mvmsta,
+                       bool enable);
+ void iwl_mvm_tlc_update_notif(struct iwl_mvm *mvm,
diff --git a/queue-4.19/iwlwifi-mvm-send-bcast-management-frames-to-the-right-station.patch b/queue-4.19/iwlwifi-mvm-send-bcast-management-frames-to-the-right-station.patch
new file mode 100644 (file)
index 0000000..ada9946
--- /dev/null
@@ -0,0 +1,36 @@
+From 65c3b582ecab7a403efdf08babbf87fdbe27369c Mon Sep 17 00:00:00 2001
+From: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
+Date: Mon, 7 May 2018 16:46:35 +0300
+Subject: iwlwifi: mvm: send BCAST management frames to the right station
+
+From: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
+
+commit 65c3b582ecab7a403efdf08babbf87fdbe27369c upstream.
+
+Probe responses were sent to the multicast station while
+they should be routed to the broadcast station.
+This has no negative effect since the frame was still
+routed to the right queue, but it looked very fishy
+to send a frame to a (queue, station) tuple where
+'queue' is not mapped to 'station'.
+
+Fixes: 7c305de2b954 ("iwlwifi: mvm: Direct multicast frames to the correct station")
+Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
+Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/wireless/intel/iwlwifi/mvm/tx.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
+@@ -671,7 +671,7 @@ int iwl_mvm_tx_skb_non_sta(struct iwl_mv
+               if (info.control.vif->type == NL80211_IFTYPE_P2P_DEVICE ||
+                   info.control.vif->type == NL80211_IFTYPE_AP ||
+                   info.control.vif->type == NL80211_IFTYPE_ADHOC) {
+-                      if (info.control.vif->type == NL80211_IFTYPE_P2P_DEVICE)
++                      if (!ieee80211_is_data(hdr->frame_control))
+                               sta_id = mvmvif->bcast_sta.sta_id;
+                       else
+                               sta_id = mvmvif->mcast_sta.sta_id;
diff --git a/queue-4.19/media-tvp5150-fix-switch-exit-in-set-control-handler.patch b/queue-4.19/media-tvp5150-fix-switch-exit-in-set-control-handler.patch
new file mode 100644 (file)
index 0000000..7d20214
--- /dev/null
@@ -0,0 +1,39 @@
+From 2d29bcc8c237874795175b2930fa9a45a115175a Mon Sep 17 00:00:00 2001
+From: Marco Felsch <m.felsch@pengutronix.de>
+Date: Thu, 28 Jun 2018 12:20:34 -0400
+Subject: media: tvp5150: fix switch exit in set control handler
+
+From: Marco Felsch <m.felsch@pengutronix.de>
+
+commit 2d29bcc8c237874795175b2930fa9a45a115175a upstream.
+
+The function only consists of a single switch case block without a
+default case. Unsupported control requests are indicated by the -EINVAL
+return code trough the last return statement at the end of the function. So
+exiting just the switch case block returns the -EINVAL error code but the
+hue control is supported and a zero should be returned instead.
+
+Replace the break by a 'return 0' to fix this behaviour.
+
+Fixes: d183e4efcae8 ("[media] v4l: tvp5150: Add missing break in set
+control handler")
+
+Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
+Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/media/i2c/tvp5150.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/media/i2c/tvp5150.c
++++ b/drivers/media/i2c/tvp5150.c
+@@ -828,7 +828,7 @@ static int tvp5150_s_ctrl(struct v4l2_ct
+               return 0;
+       case V4L2_CID_HUE:
+               tvp5150_write(sd, TVP5150_HUE_CTL, ctrl->val);
+-              break;
++              return 0;
+       case V4L2_CID_TEST_PATTERN:
+               decoder->enable = ctrl->val ? false : true;
+               tvp5150_selmux(sd);
index 3d91b2c0a53874ed720e1e6391b3dbcecb591107..36e0c023d3929b8b241bbe6b8ee166c8038bcd89 100644 (file)
@@ -19,3 +19,7 @@ net-mlx5e-allow-reporting-of-checksum-unnecessary.patch
 net-mlx5e-xdp-avoid-checksum-complete-when-xdp-prog-is-loaded.patch
 net-mlx5e-rx-fixup-skb-checksum-for-packets-with-tail-padding.patch
 net-mlx5e-rx-check-ip-headers-sanity.patch
+iwlwifi-mvm-send-bcast-management-frames-to-the-right-station.patch
+iwlwifi-mvm-always-init-rs_fw-with-20mhz-bandwidth-rates.patch
+media-tvp5150-fix-switch-exit-in-set-control-handler.patch
+alsa-hda-realtek-enable-micmute-led-for-huawei-laptops.patch