From 210c962c63ff0797228fb61f33cf675845dfa6c2 Mon Sep 17 00:00:00 2001 From: jc_gargma Date: Thu, 2 Jan 2020 12:57:26 -0800 Subject: Updated to 5.4.7 Added support for localmodcfg --- ...irectly-to-iwl_trans-cfg-in-QuZ-detection.patch | 60 ++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 0007-Revert-iwlwifi-assign-directly-to-iwl_trans-cfg-in-QuZ-detection.patch (limited to '0007-Revert-iwlwifi-assign-directly-to-iwl_trans-cfg-in-QuZ-detection.patch') diff --git a/0007-Revert-iwlwifi-assign-directly-to-iwl_trans-cfg-in-QuZ-detection.patch b/0007-Revert-iwlwifi-assign-directly-to-iwl_trans-cfg-in-QuZ-detection.patch new file mode 100644 index 0000000..5278317 --- /dev/null +++ b/0007-Revert-iwlwifi-assign-directly-to-iwl_trans-cfg-in-QuZ-detection.patch @@ -0,0 +1,60 @@ +From 5cedf4aa8f59ed7c8fa1cf129731fbe86205cbea Mon Sep 17 00:00:00 2001 +From: Anders Kaseorg +Date: Mon, 2 Dec 2019 17:09:20 -0500 +Subject: Revert "iwlwifi: assign directly to iwl_trans->cfg in QuZ detection" + +This reverts commit 968dcfb4905245dc64d65312c0d17692fa087b99. + +Both that commit and commit 809805a820c6445f7a701ded24fdc6bbc841d1e4 +attempted to fix the same bug (dead assignments to the local variable +cfg), but they did so in incompatible ways. When they were both merged, +independently of each other, the combination actually caused the bug to +reappear, leading to a firmware crash on boot for some cards. + +https://bugzilla.kernel.org/show_bug.cgi?id=205719 + +Signed-off-by: Anders Kaseorg +Acked-by: Luca Coelho +Signed-off-by: Kalle Valo +--- + drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c +index 040cec17d3ad..b0b7eca1754e 100644 +--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c ++++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c +@@ -1111,18 +1111,18 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) + + /* same thing for QuZ... */ + if (iwl_trans->hw_rev == CSR_HW_REV_TYPE_QUZ) { +- if (iwl_trans->cfg == &iwl_ax101_cfg_qu_hr) +- iwl_trans->cfg = &iwl_ax101_cfg_quz_hr; +- else if (iwl_trans->cfg == &iwl_ax201_cfg_qu_hr) +- iwl_trans->cfg = &iwl_ax201_cfg_quz_hr; +- else if (iwl_trans->cfg == &iwl9461_2ac_cfg_qu_b0_jf_b0) +- iwl_trans->cfg = &iwl9461_2ac_cfg_quz_a0_jf_b0_soc; +- else if (iwl_trans->cfg == &iwl9462_2ac_cfg_qu_b0_jf_b0) +- iwl_trans->cfg = &iwl9462_2ac_cfg_quz_a0_jf_b0_soc; +- else if (iwl_trans->cfg == &iwl9560_2ac_cfg_qu_b0_jf_b0) +- iwl_trans->cfg = &iwl9560_2ac_cfg_quz_a0_jf_b0_soc; +- else if (iwl_trans->cfg == &iwl9560_2ac_160_cfg_qu_b0_jf_b0) +- iwl_trans->cfg = &iwl9560_2ac_160_cfg_quz_a0_jf_b0_soc; ++ if (cfg == &iwl_ax101_cfg_qu_hr) ++ cfg = &iwl_ax101_cfg_quz_hr; ++ else if (cfg == &iwl_ax201_cfg_qu_hr) ++ cfg = &iwl_ax201_cfg_quz_hr; ++ else if (cfg == &iwl9461_2ac_cfg_qu_b0_jf_b0) ++ cfg = &iwl9461_2ac_cfg_quz_a0_jf_b0_soc; ++ else if (cfg == &iwl9462_2ac_cfg_qu_b0_jf_b0) ++ cfg = &iwl9462_2ac_cfg_quz_a0_jf_b0_soc; ++ else if (cfg == &iwl9560_2ac_cfg_qu_b0_jf_b0) ++ cfg = &iwl9560_2ac_cfg_quz_a0_jf_b0_soc; ++ else if (cfg == &iwl9560_2ac_160_cfg_qu_b0_jf_b0) ++ cfg = &iwl9560_2ac_160_cfg_quz_a0_jf_b0_soc; + } + + #endif +-- +cgit v1.2.1-1-g437b + -- cgit v1.2.1