summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/pcie
diff options
context:
space:
mode:
authorSara Sharon <sara.sharon@intel.com>2016-10-25 11:38:31 +0300
committerLuca Coelho <luciano.coelho@intel.com>2017-01-26 09:38:57 +0200
commiteef187a7b8a144a1a0c35c1ccccadc8fd5218504 (patch)
tree7ef771f8141098b4807fe05ed3535fc2fcc36e03 /drivers/net/wireless/intel/iwlwifi/pcie
parent850fe9af62b2ec28b4c1fc5d02924cd469452283 (diff)
downloadblackbird-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.c4
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;
/*
OpenPOWER on IntegriCloud