From: Luca Coelho <luciano.coe...@intel.com>

[ Upstream commit 551d793f65364c904921ac168d4b4028bb51be69 ]

When reading the PPAG table from ACPI, we should store everything in
our fwrt structure, so it can be accessed later.  But we had a local
ppag_table variable in the function and were erroneously storing the
enabled/disabled flag in it instead of storing it in the fwrt.  Fix
this by removing the local variable and storing everything directly in
fwrt.

Signed-off-by: Luca Coelho <luciano.coe...@intel.com>
Fixes: f2134f66f40e ("iwlwifi: acpi: support ppag table command v2")
Signed-off-by: Luca Coelho <luciano.coe...@intel.com>
Link: 
https://lore.kernel.org/r/iwlwifi.20210210135352.889862e6d393.I8b894c1b2b3fe0ad2fb39bf438273ea47eb5afa4@changeid
Signed-off-by: Luca Coelho <luciano.coe...@intel.com>
Signed-off-by: Sasha Levin <sas...@kernel.org>
---
 drivers/net/wireless/intel/iwlwifi/mvm/fw.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/fw.c 
b/drivers/net/wireless/intel/iwlwifi/mvm/fw.c
index c351c91a9ec96..2d2fe45603c8b 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/fw.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/fw.c
@@ -929,7 +929,6 @@ static int iwl_mvm_sar_geo_init(struct iwl_mvm *mvm)
 static int iwl_mvm_get_ppag_table(struct iwl_mvm *mvm)
 {
        union acpi_object *wifi_pkg, *data, *enabled;
-       union iwl_ppag_table_cmd ppag_table;
        int i, j, ret, tbl_rev, num_sub_bands;
        int idx = 2;
        s8 *gain;
@@ -983,8 +982,8 @@ read_table:
                goto out_free;
        }
 
-       ppag_table.v1.enabled = cpu_to_le32(enabled->integer.value);
-       if (!ppag_table.v1.enabled) {
+       mvm->fwrt.ppag_table.v1.enabled = cpu_to_le32(enabled->integer.value);
+       if (!mvm->fwrt.ppag_table.v1.enabled) {
                ret = 0;
                goto out_free;
        }
@@ -1012,7 +1011,7 @@ read_table:
                            (j != 0 &&
                             (gain[i * num_sub_bands + j] > ACPI_PPAG_MAX_HB ||
                              gain[i * num_sub_bands + j] < ACPI_PPAG_MIN_HB))) 
{
-                               ppag_table.v1.enabled = cpu_to_le32(0);
+                               mvm->fwrt.ppag_table.v1.enabled = 
cpu_to_le32(0);
                                ret = -EINVAL;
                                goto out_free;
                        }
-- 
2.27.0



Reply via email to