diff options
author | Sara Sharon <sara.sharon@intel.com> | 2016-10-25 11:38:31 +0300 |
---|---|---|
committer | Luca Coelho <luciano.coelho@intel.com> | 2017-01-26 09:38:57 +0200 |
commit | eef187a7b8a144a1a0c35c1ccccadc8fd5218504 (patch) | |
tree | 7ef771f8141098b4807fe05ed3535fc2fcc36e03 /drivers/net/wireless/intel/iwlwifi/pcie | |
parent | 850fe9af62b2ec28b4c1fc5d02924cd469452283 (diff) | |
download | blackbird-op-linux-eef187a7b8a144a1a0c35c1ccccadc8fd5218504.tar.gz blackbird-op-linux-eef187a7b8a144a1a0c35c1ccccadc8fd5218504.zip |
iwlwifi: enlarge number of ucode sections
The maximum number of firmware sections is now 32 instead of 16 for
a000 devices. Set the appropriate define. Avoid out of bounds access
in case there are more sections than the maximum set by driver.
Make the driver extensible to FW size changes by allocating the
section memory dynamically.
Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/pcie')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/pcie/trans.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c index b10e3633df1a..bf0ecdcf7402 100644 --- a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c +++ b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c @@ -805,7 +805,7 @@ static int iwl_pcie_load_cpu_sections_8000(struct iwl_trans *trans, (*first_ucode_section)++; } - for (i = *first_ucode_section; i < IWL_UCODE_SECTION_MAX; i++) { + for (i = *first_ucode_section; i < image->num_sec; i++) { last_read_idx = i; /* @@ -880,7 +880,7 @@ static int iwl_pcie_load_cpu_sections(struct iwl_trans *trans, (*first_ucode_section)++; } - for (i = *first_ucode_section; i < IWL_UCODE_SECTION_MAX; i++) { + for (i = *first_ucode_section; i < image->num_sec; i++) { last_read_idx = i; /* |