From 1aeb46a740060d5f85c695054445137140e98b19 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Fri, 3 Apr 2020 13:47:19 +0300 Subject: Update to 5.5.15 --- ...-send-GEO_TX_POWER_LIMIT-if-no-wgds-table.patch | 152 --------------------- 1 file changed, 152 deletions(-) delete mode 100644 0011-iwlwifi-dont-send-GEO_TX_POWER_LIMIT-if-no-wgds-table.patch (limited to '0011-iwlwifi-dont-send-GEO_TX_POWER_LIMIT-if-no-wgds-table.patch') diff --git a/0011-iwlwifi-dont-send-GEO_TX_POWER_LIMIT-if-no-wgds-table.patch b/0011-iwlwifi-dont-send-GEO_TX_POWER_LIMIT-if-no-wgds-table.patch deleted file mode 100644 index af462ee..0000000 --- a/0011-iwlwifi-dont-send-GEO_TX_POWER_LIMIT-if-no-wgds-table.patch +++ /dev/null @@ -1,152 +0,0 @@ -From ec701fa986108fae10bee7cfe269e12210521c5f Mon Sep 17 00:00:00 2001 -From: Golan Ben Ami -Date: Wed, 18 Mar 2020 08:12:54 +0200 -Subject: iwlwifi: don't send GEO_TX_POWER_LIMIT if no wgds table - -The GEO_TX_POWER_LIMIT command was sent although -there is no wgds table, so the fw got wrong SAR values -from the driver. - -Fix this by avoiding sending the command if no wgds -tables are available. - -Signed-off-by: Golan Ben Ami -Fixes: 39c1a9728f93 ("iwlwifi: refactor the SAR tables from mvm to acpi") -Signed-off-by: Luca Coelho -Tested-By: Jonathan McDowell -Tested-by: Len Brown ---- - drivers/net/wireless/intel/iwlwifi/fw/acpi.c | 14 ++++++++------ - drivers/net/wireless/intel/iwlwifi/fw/acpi.h | 14 ++++++++------ - drivers/net/wireless/intel/iwlwifi/mvm/fw.c | 9 ++++++++- - 3 files changed, 24 insertions(+), 13 deletions(-) - -diff --git a/drivers/net/wireless/intel/iwlwifi/fw/acpi.c b/drivers/net/wireless/intel/iwlwifi/fw/acpi.c -index 48d375a86d86..ba2aff3af0fe 100644 ---- a/drivers/net/wireless/intel/iwlwifi/fw/acpi.c -+++ b/drivers/net/wireless/intel/iwlwifi/fw/acpi.c -@@ -6,7 +6,7 @@ - * GPL LICENSE SUMMARY - * - * Copyright(c) 2017 Intel Deutschland GmbH -- * Copyright (C) 2019 Intel Corporation -+ * Copyright (C) 2019 - 2020 Intel Corporation - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of version 2 of the GNU General Public License as -@@ -27,7 +27,7 @@ - * BSD LICENSE - * - * Copyright(c) 2017 Intel Deutschland GmbH -- * Copyright (C) 2019 Intel Corporation -+ * Copyright (C) 2019 - 2020 Intel Corporation - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without -@@ -491,13 +491,13 @@ int iwl_validate_sar_geo_profile(struct iwl_fw_runtime *fwrt, - } - IWL_EXPORT_SYMBOL(iwl_validate_sar_geo_profile); - --void iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, -- struct iwl_per_chain_offset_group *table) -+int iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, -+ struct iwl_per_chain_offset_group *table) - { - int ret, i, j; - - if (!iwl_sar_geo_support(fwrt)) -- return; -+ return -EOPNOTSUPP; - - ret = iwl_sar_get_wgds_table(fwrt); - if (ret < 0) { -@@ -505,7 +505,7 @@ void iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, - "Geo SAR BIOS table invalid or unavailable. (%d)\n", - ret); - /* we don't fail if the table is not available */ -- return; -+ return -ENOENT; - } - - BUILD_BUG_ON(ACPI_NUM_GEO_PROFILES * ACPI_WGDS_NUM_BANDS * -@@ -530,5 +530,7 @@ void iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, - i, j, value[1], value[2], value[0]); - } - } -+ -+ return 0; - } - IWL_EXPORT_SYMBOL(iwl_sar_geo_init); -diff --git a/drivers/net/wireless/intel/iwlwifi/fw/acpi.h b/drivers/net/wireless/intel/iwlwifi/fw/acpi.h -index 4a6e8262974b..5590e5cc8fbb 100644 ---- a/drivers/net/wireless/intel/iwlwifi/fw/acpi.h -+++ b/drivers/net/wireless/intel/iwlwifi/fw/acpi.h -@@ -6,7 +6,7 @@ - * GPL LICENSE SUMMARY - * - * Copyright(c) 2017 Intel Deutschland GmbH -- * Copyright(c) 2018 - 2019 Intel Corporation -+ * Copyright(c) 2018 - 2020 Intel Corporation - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of version 2 of the GNU General Public License as -@@ -27,7 +27,7 @@ - * BSD LICENSE - * - * Copyright(c) 2017 Intel Deutschland GmbH -- * Copyright(c) 2018 - 2019 Intel Corporation -+ * Copyright(c) 2018 - 2020 Intel Corporation - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without -@@ -171,8 +171,9 @@ bool iwl_sar_geo_support(struct iwl_fw_runtime *fwrt); - int iwl_validate_sar_geo_profile(struct iwl_fw_runtime *fwrt, - struct iwl_host_cmd *cmd); - --void iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, -- struct iwl_per_chain_offset_group *table); -+int iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, -+ struct iwl_per_chain_offset_group *table); -+ - #else /* CONFIG_ACPI */ - - static inline void *iwl_acpi_get_object(struct device *dev, acpi_string method) -@@ -243,9 +244,10 @@ static inline int iwl_validate_sar_geo_profile(struct iwl_fw_runtime *fwrt, - return -ENOENT; - } - --static inline void iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, -- struct iwl_per_chain_offset_group *table) -+static inline int iwl_sar_geo_init(struct iwl_fw_runtime *fwrt, -+ struct iwl_per_chain_offset_group *table) - { -+ return -ENOENT; - } - - #endif /* CONFIG_ACPI */ -diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/fw.c b/drivers/net/wireless/intel/iwlwifi/mvm/fw.c -index c09624d8d7ee..81b7da5815eb 100644 ---- a/drivers/net/wireless/intel/iwlwifi/mvm/fw.c -+++ b/drivers/net/wireless/intel/iwlwifi/mvm/fw.c -@@ -749,10 +749,17 @@ static int iwl_mvm_sar_geo_init(struct iwl_mvm *mvm) - u16 cmd_wide_id = WIDE_ID(PHY_OPS_GROUP, GEO_TX_POWER_LIMIT); - union geo_tx_power_profiles_cmd cmd; - u16 len; -+ int ret; - - cmd.geo_cmd.ops = cpu_to_le32(IWL_PER_CHAIN_OFFSET_SET_TABLES); - -- iwl_sar_geo_init(&mvm->fwrt, cmd.geo_cmd.table); -+ ret = iwl_sar_geo_init(&mvm->fwrt, cmd.geo_cmd.table); -+ /* -+ * It is a valid scenario to not support SAR, or miss wgds table, -+ * but in that case there is no need to send the command. -+ */ -+ if (ret) -+ return 0; - - cmd.geo_cmd.table_revision = cpu_to_le32(mvm->fwrt.geo_rev); - --- -cgit v1.2.2-1-gc45e - -- cgit v1.2.1