[PATCH 0/1][SRU][BIONIC]Killer 802.11ac 2x2 (1550 or 1550i) [8086:2526][1a56:1550] is not supported

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[PATCH 0/1][SRU][BIONIC]Killer 802.11ac 2x2 (1550 or 1550i) [8086:2526][1a56:1550] is not supported

AceLan Kao
BugLink: https://bugs.launchpad.net/bugs/1809219

[Impact]
Killer Wireless-1550 is not supported by Bionic kernel.

[Fix]
This card can be supported by adding its structs and IDs into table by below commit.
0a5257bc6d89 iwlwifi: add more card IDs for 9000 series

[Test]
Verified wifi works after applied the commit.

[Regression Potential]
Low. It adds its own structs and IDs to support killer cards.

Emmanuel Grumbach (1):
  iwlwifi: add more card IDs for 9000 series

 drivers/net/wireless/intel/iwlwifi/cfg/9000.c | 69 +++++++++++++++++++
 .../net/wireless/intel/iwlwifi/iwl-config.h   |  5 ++
 drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 22 ++++++
 3 files changed, 96 insertions(+)

--
2.17.1


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

[PATCH 1/1][SRU][BIONIC] iwlwifi: add more card IDs for 9000 series

AceLan Kao
From: Emmanuel Grumbach <[hidden email]>

BugLink: https://bugs.launchpad.net/bugs/1809219

Add new device IDs for the 9000 series.

Cc: [hidden email] # 4.14
Signed-off-by: Emmanuel Grumbach <[hidden email]>
Signed-off-by: Kalle Valo <[hidden email]>
(backported from commit 0a5257bc6d89c2ae69b9bf955679cb4f89261874)
Signed-off-by: AceLan Kao <[hidden email]>
---
 drivers/net/wireless/intel/iwlwifi/cfg/9000.c | 69 +++++++++++++++++++
 .../net/wireless/intel/iwlwifi/iwl-config.h   |  5 ++
 drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 22 ++++++
 3 files changed, 96 insertions(+)

diff --git a/drivers/net/wireless/intel/iwlwifi/cfg/9000.c b/drivers/net/wireless/intel/iwlwifi/cfg/9000.c
index 426f9715e88e..7199f04a2ef7 100644
--- a/drivers/net/wireless/intel/iwlwifi/cfg/9000.c
+++ b/drivers/net/wireless/intel/iwlwifi/cfg/9000.c
@@ -178,6 +178,17 @@ const struct iwl_cfg iwl9260_2ac_cfg = {
  .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
 };
 
+const struct iwl_cfg iwl9260_killer_2ac_cfg = {
+ .name = "Killer (R) Wireless-AC 1550 Wireless Network Adapter (9260NGW)",
+ .fw_name_pre = IWL9260A_FW_PRE,
+ .fw_name_pre_b_or_c_step = IWL9260B_FW_PRE,
+ IWL_DEVICE_9000,
+ .ht_params = &iwl9000_ht_params,
+ .nvm_ver = IWL9000_NVM_VERSION,
+ .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
+ .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
+};
+
 const struct iwl_cfg iwl9270_2ac_cfg = {
  .name = "Intel(R) Dual Band Wireless AC 9270",
  .fw_name_pre = IWL9260A_FW_PRE,
@@ -267,6 +278,34 @@ const struct iwl_cfg iwl9560_2ac_cfg_soc = {
  .soc_latency = 5000,
 };
 
+const struct iwl_cfg iwl9560_killer_2ac_cfg_soc = {
+ .name = "Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)",
+ .fw_name_pre = IWL9000A_FW_PRE,
+ .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
+ .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
+ IWL_DEVICE_9000,
+ .ht_params = &iwl9000_ht_params,
+ .nvm_ver = IWL9000_NVM_VERSION,
+ .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
+ .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
+ .integrated = true,
+ .soc_latency = 5000,
+};
+
+const struct iwl_cfg iwl9560_killer_s_2ac_cfg_soc = {
+ .name = "Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)",
+ .fw_name_pre = IWL9000A_FW_PRE,
+ .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
+ .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
+ IWL_DEVICE_9000,
+ .ht_params = &iwl9000_ht_params,
+ .nvm_ver = IWL9000_NVM_VERSION,
+ .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
+ .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
+ .integrated = true,
+ .soc_latency = 5000,
+};
+
 const struct iwl_cfg iwl9460_2ac_cfg_shared_clk = {
  .name = "Intel(R) Dual Band Wireless AC 9460",
  .fw_name_pre = IWL9000A_FW_PRE,
@@ -327,6 +366,36 @@ const struct iwl_cfg iwl9560_2ac_cfg_shared_clk = {
  .extra_phy_cfg_flags = FW_PHY_CFG_SHARED_CLK
 };
 
+const struct iwl_cfg iwl9560_killer_2ac_cfg_shared_clk = {
+ .name = "Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)",
+ .fw_name_pre = IWL9000A_FW_PRE,
+ .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
+ .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
+ IWL_DEVICE_9000,
+ .ht_params = &iwl9000_ht_params,
+ .nvm_ver = IWL9000_NVM_VERSION,
+ .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
+ .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
+ .integrated = true,
+ .soc_latency = 5000,
+ .extra_phy_cfg_flags = FW_PHY_CFG_SHARED_CLK
+};
+
+const struct iwl_cfg iwl9560_killer_s_2ac_cfg_shared_clk = {
+ .name = "Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)",
+ .fw_name_pre = IWL9000A_FW_PRE,
+ .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
+ .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
+ IWL_DEVICE_9000,
+ .ht_params = &iwl9000_ht_params,
+ .nvm_ver = IWL9000_NVM_VERSION,
+ .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
+ .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
+ .integrated = true,
+ .soc_latency = 5000,
+ .extra_phy_cfg_flags = FW_PHY_CFG_SHARED_CLK
+};
+
 MODULE_FIRMWARE(IWL9000A_MODULE_FIRMWARE(IWL9000_UCODE_API_MAX));
 MODULE_FIRMWARE(IWL9000B_MODULE_FIRMWARE(IWL9000_UCODE_API_MAX));
 MODULE_FIRMWARE(IWL9000RFB_MODULE_FIRMWARE(IWL9000_UCODE_API_MAX));
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-config.h b/drivers/net/wireless/intel/iwlwifi/iwl-config.h
index 4f7377ad11d2..ca81b441e371 100644
--- a/drivers/net/wireless/intel/iwlwifi/iwl-config.h
+++ b/drivers/net/wireless/intel/iwlwifi/iwl-config.h
@@ -471,6 +471,7 @@ extern const struct iwl_cfg iwl8275_2ac_cfg;
 extern const struct iwl_cfg iwl4165_2ac_cfg;
 extern const struct iwl_cfg iwl9160_2ac_cfg;
 extern const struct iwl_cfg iwl9260_2ac_cfg;
+extern const struct iwl_cfg iwl9260_killer_2ac_cfg;
 extern const struct iwl_cfg iwl9270_2ac_cfg;
 extern const struct iwl_cfg iwl9460_2ac_cfg;
 extern const struct iwl_cfg iwl9560_2ac_cfg;
@@ -478,10 +479,14 @@ extern const struct iwl_cfg iwl9460_2ac_cfg_soc;
 extern const struct iwl_cfg iwl9461_2ac_cfg_soc;
 extern const struct iwl_cfg iwl9462_2ac_cfg_soc;
 extern const struct iwl_cfg iwl9560_2ac_cfg_soc;
+extern const struct iwl_cfg iwl9560_killer_2ac_cfg_soc;
+extern const struct iwl_cfg iwl9560_killer_s_2ac_cfg_soc;
 extern const struct iwl_cfg iwl9460_2ac_cfg_shared_clk;
 extern const struct iwl_cfg iwl9461_2ac_cfg_shared_clk;
 extern const struct iwl_cfg iwl9462_2ac_cfg_shared_clk;
 extern const struct iwl_cfg iwl9560_2ac_cfg_shared_clk;
+extern const struct iwl_cfg iwl9560_killer_2ac_cfg_shared_clk;
+extern const struct iwl_cfg iwl9560_killer_s_2ac_cfg_shared_clk;
 extern const struct iwl_cfg iwla000_2ac_cfg_hr;
 extern const struct iwl_cfg iwla000_2ac_cfg_hr_cdb;
 extern const struct iwl_cfg iwla000_2ac_cfg_jf;
diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index aa1917d38ec6..ce583f76b4d4 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
@@ -545,6 +545,9 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x2526, 0x1210, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x2526, 0x1410, iwl9270_2ac_cfg)},
  {IWL_PCI_DEVICE(0x2526, 0x1420, iwl9460_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x2526, 0x1550, iwl9260_killer_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x2526, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x2526, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x2526, 0x1610, iwl9270_2ac_cfg)},
  {IWL_PCI_DEVICE(0x2526, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x2526, 0x2034, iwl9560_2ac_cfg_soc)},
@@ -554,6 +557,7 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x2526, 0x40A4, iwl9460_2ac_cfg)},
  {IWL_PCI_DEVICE(0x2526, 0x4234, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x2526, 0x42A4, iwl9462_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x2526, 0x8014, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x2526, 0xA014, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x271B, 0x0010, iwl9160_2ac_cfg)},
  {IWL_PCI_DEVICE(0x271B, 0x0014, iwl9160_2ac_cfg)},
@@ -578,6 +582,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x2720, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x2720, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x2720, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x2720, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x2720, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x2720, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x2720, 0x2034, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x2720, 0x4030, iwl9560_2ac_cfg)},
@@ -604,6 +610,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x30DC, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x30DC, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x30DC, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x30DC, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x30DC, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x30DC, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x30DC, 0x2034, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x30DC, 0x4030, iwl9560_2ac_cfg_soc)},
@@ -630,6 +638,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x31DC, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x31DC, 0x1030, iwl9560_2ac_cfg_shared_clk)},
  {IWL_PCI_DEVICE(0x31DC, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x31DC, 0x1551, iwl9560_killer_s_2ac_cfg_shared_clk)},
+ {IWL_PCI_DEVICE(0x31DC, 0x1552, iwl9560_killer_2ac_cfg_shared_clk)},
  {IWL_PCI_DEVICE(0x31DC, 0x2030, iwl9560_2ac_cfg_shared_clk)},
  {IWL_PCI_DEVICE(0x31DC, 0x2034, iwl9560_2ac_cfg_shared_clk)},
  {IWL_PCI_DEVICE(0x31DC, 0x4030, iwl9560_2ac_cfg_shared_clk)},
@@ -656,6 +666,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x34F0, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x34F0, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x34F0, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x34F0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x34F0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x34F0, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x34F0, 0x2034, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x34F0, 0x4030, iwl9560_2ac_cfg_soc)},
@@ -682,6 +694,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x3DF0, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x3DF0, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x3DF0, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x3DF0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x3DF0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x3DF0, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x3DF0, 0x2034, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x3DF0, 0x4030, iwl9560_2ac_cfg_soc)},
@@ -708,6 +722,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x43F0, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x43F0, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x43F0, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x43F0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x43F0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x43F0, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x43F0, 0x2034, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x43F0, 0x4030, iwl9560_2ac_cfg_soc)},
@@ -743,6 +759,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0x9DF0, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0x9DF0, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x9DF0, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0x9DF0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0x9DF0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x9DF0, 0x2010, iwl9460_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x9DF0, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0x9DF0, 0x2034, iwl9560_2ac_cfg_soc)},
@@ -771,6 +789,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0xA0F0, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0xA0F0, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA0F0, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0xA0F0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0xA0F0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA0F0, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA0F0, 0x2034, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA0F0, 0x4030, iwl9560_2ac_cfg_soc)},
@@ -797,6 +817,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
  {IWL_PCI_DEVICE(0xA370, 0x1010, iwl9260_2ac_cfg)},
  {IWL_PCI_DEVICE(0xA370, 0x1030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA370, 0x1210, iwl9260_2ac_cfg)},
+ {IWL_PCI_DEVICE(0xA370, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
+ {IWL_PCI_DEVICE(0xA370, 0x1552, iwl9560_killer_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA370, 0x2030, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA370, 0x2034, iwl9560_2ac_cfg_soc)},
  {IWL_PCI_DEVICE(0xA370, 0x4030, iwl9560_2ac_cfg_soc)},
--
2.17.1


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

ACK: [PATCH 0/1][SRU][BIONIC]Killer 802.11ac 2x2 (1550 or 1550i) [8086:2526][1a56:1550] is not supported

Kai-Heng Feng
In reply to this post by AceLan Kao


> On Jan 3, 2019, at 15:53, AceLan Kao <[hidden email]> wrote:
>
> BugLink: https://bugs.launchpad.net/bugs/1809219
>
> [Impact]
> Killer Wireless-1550 is not supported by Bionic kernel.
>
> [Fix]
> This card can be supported by adding its structs and IDs into table by below commit.
> 0a5257bc6d89 iwlwifi: add more card IDs for 9000 series
>
> [Test]
> Verified wifi works after applied the commit.
>
> [Regression Potential]
> Low. It adds its own structs and IDs to support killer cards.

It’s in stable, no functional change.

Acked-by: Kai-Heng Feng <[hidden email]>

>
> Emmanuel Grumbach (1):
>  iwlwifi: add more card IDs for 9000 series
>
> drivers/net/wireless/intel/iwlwifi/cfg/9000.c | 69 +++++++++++++++++++
> .../net/wireless/intel/iwlwifi/iwl-config.h   |  5 ++
> drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 22 ++++++
> 3 files changed, 96 insertions(+)
>
> --
> 2.17.1
>
>
> --
> kernel-team mailing list
> [hidden email]
> https://lists.ubuntu.com/mailman/listinfo/kernel-team


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

ACK: [PATCH 1/1][SRU][BIONIC] iwlwifi: add more card IDs for 9000 series

Kleber Souza
In reply to this post by AceLan Kao
On 1/3/19 8:53 AM, AceLan Kao wrote:

> From: Emmanuel Grumbach <[hidden email]>
>
> BugLink: https://bugs.launchpad.net/bugs/1809219
>
> Add new device IDs for the 9000 series.
>
> Cc: [hidden email] # 4.14
> Signed-off-by: Emmanuel Grumbach <[hidden email]>
> Signed-off-by: Kalle Valo <[hidden email]>
> (backported from commit 0a5257bc6d89c2ae69b9bf955679cb4f89261874)
> Signed-off-by: AceLan Kao <[hidden email]>


Acked-by: Kleber Sacilotto de Souza <[hidden email]>

> ---
>  drivers/net/wireless/intel/iwlwifi/cfg/9000.c | 69 +++++++++++++++++++
>  .../net/wireless/intel/iwlwifi/iwl-config.h   |  5 ++
>  drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 22 ++++++
>  3 files changed, 96 insertions(+)
>
> diff --git a/drivers/net/wireless/intel/iwlwifi/cfg/9000.c b/drivers/net/wireless/intel/iwlwifi/cfg/9000.c
> index 426f9715e88e..7199f04a2ef7 100644
> --- a/drivers/net/wireless/intel/iwlwifi/cfg/9000.c
> +++ b/drivers/net/wireless/intel/iwlwifi/cfg/9000.c
> @@ -178,6 +178,17 @@ const struct iwl_cfg iwl9260_2ac_cfg = {
>   .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
>  };
>  
> +const struct iwl_cfg iwl9260_killer_2ac_cfg = {
> + .name = "Killer (R) Wireless-AC 1550 Wireless Network Adapter (9260NGW)",
> + .fw_name_pre = IWL9260A_FW_PRE,
> + .fw_name_pre_b_or_c_step = IWL9260B_FW_PRE,
> + IWL_DEVICE_9000,
> + .ht_params = &iwl9000_ht_params,
> + .nvm_ver = IWL9000_NVM_VERSION,
> + .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
> + .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
> +};
> +
>  const struct iwl_cfg iwl9270_2ac_cfg = {
>   .name = "Intel(R) Dual Band Wireless AC 9270",
>   .fw_name_pre = IWL9260A_FW_PRE,
> @@ -267,6 +278,34 @@ const struct iwl_cfg iwl9560_2ac_cfg_soc = {
>   .soc_latency = 5000,
>  };
>  
> +const struct iwl_cfg iwl9560_killer_2ac_cfg_soc = {
> + .name = "Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)",
> + .fw_name_pre = IWL9000A_FW_PRE,
> + .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
> + .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
> + IWL_DEVICE_9000,
> + .ht_params = &iwl9000_ht_params,
> + .nvm_ver = IWL9000_NVM_VERSION,
> + .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
> + .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
> + .integrated = true,
> + .soc_latency = 5000,
> +};
> +
> +const struct iwl_cfg iwl9560_killer_s_2ac_cfg_soc = {
> + .name = "Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)",
> + .fw_name_pre = IWL9000A_FW_PRE,
> + .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
> + .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
> + IWL_DEVICE_9000,
> + .ht_params = &iwl9000_ht_params,
> + .nvm_ver = IWL9000_NVM_VERSION,
> + .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
> + .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
> + .integrated = true,
> + .soc_latency = 5000,
> +};
> +
>  const struct iwl_cfg iwl9460_2ac_cfg_shared_clk = {
>   .name = "Intel(R) Dual Band Wireless AC 9460",
>   .fw_name_pre = IWL9000A_FW_PRE,
> @@ -327,6 +366,36 @@ const struct iwl_cfg iwl9560_2ac_cfg_shared_clk = {
>   .extra_phy_cfg_flags = FW_PHY_CFG_SHARED_CLK
>  };
>  
> +const struct iwl_cfg iwl9560_killer_2ac_cfg_shared_clk = {
> + .name = "Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)",
> + .fw_name_pre = IWL9000A_FW_PRE,
> + .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
> + .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
> + IWL_DEVICE_9000,
> + .ht_params = &iwl9000_ht_params,
> + .nvm_ver = IWL9000_NVM_VERSION,
> + .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
> + .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
> + .integrated = true,
> + .soc_latency = 5000,
> + .extra_phy_cfg_flags = FW_PHY_CFG_SHARED_CLK
> +};
> +
> +const struct iwl_cfg iwl9560_killer_s_2ac_cfg_shared_clk = {
> + .name = "Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)",
> + .fw_name_pre = IWL9000A_FW_PRE,
> + .fw_name_pre_b_or_c_step = IWL9000B_FW_PRE,
> + .fw_name_pre_rf_next_step = IWL9000RFB_FW_PRE,
> + IWL_DEVICE_9000,
> + .ht_params = &iwl9000_ht_params,
> + .nvm_ver = IWL9000_NVM_VERSION,
> + .nvm_calib_ver = IWL9000_TX_POWER_VERSION,
> + .max_ht_ampdu_exponent = IEEE80211_HT_MAX_AMPDU_64K,
> + .integrated = true,
> + .soc_latency = 5000,
> + .extra_phy_cfg_flags = FW_PHY_CFG_SHARED_CLK
> +};
> +
>  MODULE_FIRMWARE(IWL9000A_MODULE_FIRMWARE(IWL9000_UCODE_API_MAX));
>  MODULE_FIRMWARE(IWL9000B_MODULE_FIRMWARE(IWL9000_UCODE_API_MAX));
>  MODULE_FIRMWARE(IWL9000RFB_MODULE_FIRMWARE(IWL9000_UCODE_API_MAX));
> diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-config.h b/drivers/net/wireless/intel/iwlwifi/iwl-config.h
> index 4f7377ad11d2..ca81b441e371 100644
> --- a/drivers/net/wireless/intel/iwlwifi/iwl-config.h
> +++ b/drivers/net/wireless/intel/iwlwifi/iwl-config.h
> @@ -471,6 +471,7 @@ extern const struct iwl_cfg iwl8275_2ac_cfg;
>  extern const struct iwl_cfg iwl4165_2ac_cfg;
>  extern const struct iwl_cfg iwl9160_2ac_cfg;
>  extern const struct iwl_cfg iwl9260_2ac_cfg;
> +extern const struct iwl_cfg iwl9260_killer_2ac_cfg;
>  extern const struct iwl_cfg iwl9270_2ac_cfg;
>  extern const struct iwl_cfg iwl9460_2ac_cfg;
>  extern const struct iwl_cfg iwl9560_2ac_cfg;
> @@ -478,10 +479,14 @@ extern const struct iwl_cfg iwl9460_2ac_cfg_soc;
>  extern const struct iwl_cfg iwl9461_2ac_cfg_soc;
>  extern const struct iwl_cfg iwl9462_2ac_cfg_soc;
>  extern const struct iwl_cfg iwl9560_2ac_cfg_soc;
> +extern const struct iwl_cfg iwl9560_killer_2ac_cfg_soc;
> +extern const struct iwl_cfg iwl9560_killer_s_2ac_cfg_soc;
>  extern const struct iwl_cfg iwl9460_2ac_cfg_shared_clk;
>  extern const struct iwl_cfg iwl9461_2ac_cfg_shared_clk;
>  extern const struct iwl_cfg iwl9462_2ac_cfg_shared_clk;
>  extern const struct iwl_cfg iwl9560_2ac_cfg_shared_clk;
> +extern const struct iwl_cfg iwl9560_killer_2ac_cfg_shared_clk;
> +extern const struct iwl_cfg iwl9560_killer_s_2ac_cfg_shared_clk;
>  extern const struct iwl_cfg iwla000_2ac_cfg_hr;
>  extern const struct iwl_cfg iwla000_2ac_cfg_hr_cdb;
>  extern const struct iwl_cfg iwla000_2ac_cfg_jf;
> diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> index aa1917d38ec6..ce583f76b4d4 100644
> --- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> +++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> @@ -545,6 +545,9 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x2526, 0x1210, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x2526, 0x1410, iwl9270_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x2526, 0x1420, iwl9460_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x2526, 0x1550, iwl9260_killer_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x2526, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x2526, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x2526, 0x1610, iwl9270_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x2526, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x2526, 0x2034, iwl9560_2ac_cfg_soc)},
> @@ -554,6 +557,7 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x2526, 0x40A4, iwl9460_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x2526, 0x4234, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x2526, 0x42A4, iwl9462_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x2526, 0x8014, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x2526, 0xA014, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x271B, 0x0010, iwl9160_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x271B, 0x0014, iwl9160_2ac_cfg)},
> @@ -578,6 +582,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x2720, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x2720, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x2720, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x2720, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x2720, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x2720, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x2720, 0x2034, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x2720, 0x4030, iwl9560_2ac_cfg)},
> @@ -604,6 +610,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x30DC, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x30DC, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x30DC, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x30DC, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x30DC, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x30DC, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x30DC, 0x2034, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x30DC, 0x4030, iwl9560_2ac_cfg_soc)},
> @@ -630,6 +638,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x31DC, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x31DC, 0x1030, iwl9560_2ac_cfg_shared_clk)},
>   {IWL_PCI_DEVICE(0x31DC, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x31DC, 0x1551, iwl9560_killer_s_2ac_cfg_shared_clk)},
> + {IWL_PCI_DEVICE(0x31DC, 0x1552, iwl9560_killer_2ac_cfg_shared_clk)},
>   {IWL_PCI_DEVICE(0x31DC, 0x2030, iwl9560_2ac_cfg_shared_clk)},
>   {IWL_PCI_DEVICE(0x31DC, 0x2034, iwl9560_2ac_cfg_shared_clk)},
>   {IWL_PCI_DEVICE(0x31DC, 0x4030, iwl9560_2ac_cfg_shared_clk)},
> @@ -656,6 +666,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x34F0, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x34F0, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x34F0, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x34F0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x34F0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x34F0, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x34F0, 0x2034, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x34F0, 0x4030, iwl9560_2ac_cfg_soc)},
> @@ -682,6 +694,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x3DF0, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x3DF0, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x3DF0, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x3DF0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x3DF0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x3DF0, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x3DF0, 0x2034, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x3DF0, 0x4030, iwl9560_2ac_cfg_soc)},
> @@ -708,6 +722,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x43F0, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x43F0, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x43F0, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x43F0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x43F0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x43F0, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x43F0, 0x2034, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x43F0, 0x4030, iwl9560_2ac_cfg_soc)},
> @@ -743,6 +759,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0x9DF0, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0x9DF0, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x9DF0, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0x9DF0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0x9DF0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x9DF0, 0x2010, iwl9460_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x9DF0, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0x9DF0, 0x2034, iwl9560_2ac_cfg_soc)},
> @@ -771,6 +789,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0xA0F0, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0xA0F0, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA0F0, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0xA0F0, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0xA0F0, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA0F0, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA0F0, 0x2034, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA0F0, 0x4030, iwl9560_2ac_cfg_soc)},
> @@ -797,6 +817,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
>   {IWL_PCI_DEVICE(0xA370, 0x1010, iwl9260_2ac_cfg)},
>   {IWL_PCI_DEVICE(0xA370, 0x1030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA370, 0x1210, iwl9260_2ac_cfg)},
> + {IWL_PCI_DEVICE(0xA370, 0x1551, iwl9560_killer_s_2ac_cfg_soc)},
> + {IWL_PCI_DEVICE(0xA370, 0x1552, iwl9560_killer_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA370, 0x2030, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA370, 0x2034, iwl9560_2ac_cfg_soc)},
>   {IWL_PCI_DEVICE(0xA370, 0x4030, iwl9560_2ac_cfg_soc)},



--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

APPLIED: [PATCH 0/1][SRU][BIONIC]Killer 802.11ac 2x2 (1550 or 1550i) [8086:2526][1a56:1550] is not supported

Khaled Elmously
In reply to this post by AceLan Kao
On 2019-01-03 15:53:26 , AceLan Kao wrote:

> BugLink: https://bugs.launchpad.net/bugs/1809219
>
> [Impact]
> Killer Wireless-1550 is not supported by Bionic kernel.
>
> [Fix]
> This card can be supported by adding its structs and IDs into table by below commit.
> 0a5257bc6d89 iwlwifi: add more card IDs for 9000 series
>
> [Test]
> Verified wifi works after applied the commit.
>
> [Regression Potential]
> Low. It adds its own structs and IDs to support killer cards.
>
> Emmanuel Grumbach (1):
>   iwlwifi: add more card IDs for 9000 series
>
>  drivers/net/wireless/intel/iwlwifi/cfg/9000.c | 69 +++++++++++++++++++
>  .../net/wireless/intel/iwlwifi/iwl-config.h   |  5 ++
>  drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 22 ++++++
>  3 files changed, 96 insertions(+)
>
> --
> 2.17.1
>
>
> --
> kernel-team mailing list
> [hidden email]
> https://lists.ubuntu.com/mailman/listinfo/kernel-team

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team