summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/pcie
Commit message (Collapse)AuthorAgeFilesLines
...
* iwlwifi: pcie: make ctxt-info free idempotentJohannes Berg2017-06-291-0/+2
| | | | | | | | By setting the pointers to NULL at the end, these functions are made idempotent. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: unify external & internal modparam namesJohannes Berg2017-06-291-1/+1
| | | | | | | | | Where possible (all except for "11n_disable", which isn't valid in C) rename the internal names for module parameters to be the same as the externally visible names, to aid finding their use etc. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: improve debug in iwl_pcie_rx_handle_rb()Johannes Berg2017-06-291-3/+7
| | | | | | | | Print the queue for the existing debug message and add a new debug message indicating where the RB ended. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: improve "invalid queue" warningJohannes Berg2017-06-291-2/+6
| | | | | | | Print out both queue IDs to be able to see what went wrong. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: add twelve new 9560 series PCI IDsTzipi Peres2017-06-291-1/+14
| | | | | | | Add twelve new PCI IDs for the 9560 series. Signed-off-by: Tzipi Peres <tzipi.peres@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: add the new a000_2ax seriesTzipi Peres2017-06-291-0/+5
| | | | | | | | Add a new config struct for the new a000 2ax series and add the five PCI ID for it. Signed-off-by: Tzipi Peres <tzipi.peres@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: fix 9000-series RF-kill interrupt propagationJohannes Berg2017-06-291-0/+10
| | | | | | | | | | A hardware issue on 9000 series devices sometimes causes RF-kill interrupts to not be propagated to the host properly if ASPM is enabled. Work around this by setting the right hardware bit to allow it to interrupt the host for this reason (rfkill). Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: only apply retention workaround on 9000-series A-stepJohannes Berg2017-06-291-6/+13
| | | | | | | | | Due to a hardware issue, certain power saving had to be disabled. However, this issue was fixed in B-step, so the workaround only needs to apply to A-step. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* Merge tag 'iwlwifi-next-for-kalle-2017-06-28' of ↵Kalle Valo2017-06-287-174/+225
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next More iwlwifi patches for 4.13 * Some changes in suspend/resume handling to support new FWs; * A bunch of RF-kill related fixes; * Continued work towards the A000 family; * Support for a new version of the TX flush FW API; * Some fixes in monitor interfaces; * A few fixes in the recovery flows; * Johannes' documentation fixes and FW API struct cleanups continue; * Remove some noise from the kernel logs; * Some other small improvements, fixes and cleanups;
| * iwlwifi: pcie: work around suspend/resume issueJohannes Berg2017-06-231-0/+11
| | | | | | | | | | | | | | | | | | | | | | In some platforms, having the device enabled with certain radio frontends causes the platform to not be able to resume properly from suspend, regardless of the wakeup cause. This was traced to a hardware issue with the integrated 9000-series A-step variant. Set the right hardware bit to disable the problematic state. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: delete the Tx queue timer earlier upon firmware crashEmmanuel Grumbach2017-06-231-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | When the firmware crashes, the transmit queues can't make any progress. This is why we stop the counter that monitor the transmit queues' activity. The call that notifies the error to the op_mode may take a bit of time, so stop the timer of the transmit queues earlier. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: reduce unwanted noise in the logsLuca Coelho2017-06-231-3/+3
| | | | | | | | | | | | | | | | | | The driver prints "L1 Enabled - LTR Enabled" all the time as dev_info, which is just useless noise in most cases. Convert this to IWL_DEBUG_POWER() so we don't pollute the log unnecessarily but still can get this info on demand. Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: make iwl_pcie_apm_stop_master() return voidJohannes Berg2017-06-232-5/+3
| | | | | | | | | | | | | | | | Nothing ever checks the return value of iwl_pcie_apm_stop_master(), so there's no point in it having one - make it return void. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: add a W/A for a scheduler hardware bugEmmanuel Grumbach2017-06-232-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case we need to move the scheduler write pointer by steps of 0x40, 0x80 or 0xc0, the scheduler gets stuck. This leads to hardware error interrupts with status: 0x5A5A5A5A or alike. In order to work around this, detect in the transport layer that we are going to hit this case and tell iwlmvm to increment the sequence number of the packets. This allows to keep the requirement that the WiFi sequence number is in sync with the index in the scheduler Tx queue and it also allows to avoid the problematic sequence. This means that from time to time, we will start a queue from ssn + 1, but that shouldn't be a problem since we don't switch to new queues for AMPDU now that we have DQA which allows to keep the same queue while toggling the AMPDU state. This bug has been fixed on 9000 devices and up. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: don't disable bh when handling FW errorsLuca Coelho2017-06-231-2/+0
| | | | | | | | | | | | | | | | | | When we started using threaded irqs, all the opmode calls were changed to be called with local_bh disabled. The reason for this was it was that mac80211 needs that. When we are handling FW errors, mac80211 is not involved, so we don't need it. Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: fix command completion name debugJohannes Berg2017-06-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | When the command name is printed on command completion, the wrong group is used, leading to the wrong name being printed. Fix this by using the group ID without inappropriately mangling it through iwl_cmd_groupid() - it's already a u8. Also, while at it, use it from the same place as the command ID, everything else is just confusing. Fixes: ab02165ccec4 ("iwlwifi: add wide firmware command infrastructure for TX") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: fix TX tracing for non-linear SKBsJohannes Berg2017-06-232-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When sending non-linear SKBs that should be included in the regular TX tracing completely (and not be pushed into the tx_data tracing), the (tracing) code didn't correctly take the fact that they were non-linear into account and added only the skb head portion. This probably never really triggered, since those frames we want traced fully are most likely linear anyway, but the code gets easier to understand and we lose an argument to the tracing function, so overall fixing this is better. Fixes: 206eea783385 ("iwlwifi: pcie: support frag SKBs") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: simplify data tracepointJohannes Berg2017-06-232-4/+2
| | | | | | | | | | | | | | | | | | There's no need to calculate the data_len outside of the tracepoint, since it's always skb->len - hdr_len, which are both available inside. Simplify the callers and move the calculation in. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: use kstrtou32_from_user()Johannes Berg2017-06-231-9/+4
| | | | | | | | | | | | | | Use kstrtou32_from_user() in debugfs instead of open-coding it. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: remove pointless debugfs parsing for csr fileJohannes Berg2017-06-231-10/+0
| | | | | | | | | | | | | | | | | | We don't actually care about the value at all, just making sure that we can successfully parse a single integer value, but that's entirely pointless - remove it. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: don't report RF-kill enabled while shutting downJohannes Berg2017-06-237-71/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When toggling the RF-kill pin quickly in succession, the driver can get rather confused because it might be in the process of shutting down, expecting all commands to go through quickly due to rfkill, but the transport already thinks the device is accessible again, even though it previously shut it down. This leads to bugs, and I even observed a kernel panic. Avoid this by making the PCIe code only report that the radio is enabled again after the higher layers actually decided to shut it off. This also pulls out this common RF-kill checking code into a common function called by both transport generations and also moves it to the direct method - in the internal helper we don't really care about the RF-kill status anymore since we won't report it up until the stop anyway. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: add fake RF-kill to debugfsJohannes Berg2017-06-233-2/+50
| | | | | | | | | | | | | | | | In order to debug "hardware" RF-kill flows, add a low-level hook to allow changing the "hardware" RF-kill from debugfs. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: pull out common rfkill IRQ handling codeJohannes Berg2017-06-231-49/+33
| | | | | | | | | | | | | | | | | | There's no point in duplicating exactly the same code here for legacy and MSI-X interrupts, so pull it out into a new function to call in both places. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: use bitfield.h for some registersJohannes Berg2017-06-232-11/+9
| | | | | | | | | | | | | | | | Letting the preprocessor/compiler generate the shift/mask by itself is a win for readability, so use bitfield.h for some registers. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| * iwlwifi: pcie: fix TVQM queue ID range checkJohannes Berg2017-06-231-1/+1
| | | | | | | | | | | | | | | | | | The queue ID should never be 512 either, so correct the check to be >= instead of just >. Fixes: 310181ec34e2 ("iwlwifi: move to TVQM mode") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* | Merge tag 'wireless-drivers-next-for-davem-2017-06-25' of ↵David S. Miller2017-06-255-52/+275
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next Kalle Valo says: ==================== wireless-drivers-next patches for 4.13 New features and bug fixes to quite a few different drivers, but nothing really special standing out. What makes me happy that we have now more vendors actively contributing to upstream drivers. In this pull request we have patches from Broadcom, Intel, Qualcomm, Realtek and Redpine Signals, and I still have patches from Marvell and Quantenna pending in patchwork. Now that's something comparing to how things looked 11 years ago in Jeff Garzik's "State of the Union: Wireless" email: https://lkml.org/lkml/2006/1/5/671 Major changes: wil6210 * add low level RF sector interface via nl80211 vendor commands * add module parameter ftm_mode to load separate firmware for factory testing * support devices with different PCIe bar size * add support for PCIe D3hot in system suspend * remove ioctl interface which should not be in a wireless driver ath10k * go back to using dma_alloc_coherent() for firmware scratch memory * add per chain RSSI reporting brcmfmac * add support multi-scheduled scan * add scheduled scan support for specified BSSIDs * add support for brcm43430 revision 0 wlcore * add wil1285 compatible rsi * add RS9113 USB support iwlwifi * FW API documentation improvements (for tools and htmldoc) * continuing work for the new A000 family * bump the maximum supported FW API to 31 * improve the differentiation between 8000, 9000 and A000 families ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * Merge tag 'iwlwifi-next-for-kalle-2017-06-06' of ↵Kalle Valo2017-06-125-52/+275
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next First batch of iwlwifi driver patches 4.13 * Loads of FW API documentation improvements (for tools and htmldoc); * Continued work for the new A000 family; * Bumped the maximum supported FW API to 31; * Improve the differentiation between 8000, 9000 and A000 families; * A lot of fixes and cleanups here and there; kvalo: There were conflicts iwl_mvm_stop_device() and iwl_mvm_tcool_set_cur_state(). The former was easy but latter needed more thought. Apparently the mutex was taken too late, so I fixed so that the mutex is taken first and then check for iwl_mvm_firmware_running().
| | * iwlwifi: pcie: support dumping FH in a000 hwLiad Kaufman2017-06-051-3/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | FH in A000 HW are placed in a different location, and need to be read as prph, rather than direct. Support A000 dumping as well as legacy. Signed-off-by: Liad Kaufman <liad.kaufman@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| | * iwlwifi: add 9000 and A000 device familiesSara Sharon2017-06-052-9/+9
| | | | | | | | | | | | | | | | | | | | | Add two new device families to differentiate them from 8000. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| | * iwlwifi: pcie: add AMSDU to gen2Sara Sharon2017-06-053-6/+172
| | | | | | | | | | | | | | | | | | | | | | | | This is essentially the same code as gen1, except that it uses gen2 functions and SW checksum is not included. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| | * iwlwifi: add wait for tx queue emptySara Sharon2017-06-021-29/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that we have 512 queues, add a wait for single TX queue to gen2. This replaces gen1 wait_tx_queues_empty, which was limited to 32 queues. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| | * iwlwifi: pcie: support page dumping in wrt in gen2Liad Kaufman2017-06-021-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | In gen2, page dumping needs to be done in the trans layer, as it is the one with access to the paging pointers. Signed-off-by: Liad Kaufman <liad.kaufman@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| | * iwlwifi: update device ID for a000 familySara Sharon2017-06-021-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | Three configurations will share device ID 2720, and will be differentiated by RF ID. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
| | * iwlwifi: mvm: support getting nvm data from firmwareSara Sharon2017-06-021-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | This API replaces the complex NVM parsing of the iwlwifi module. Instead, we get all needed data from firmware. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* | | networking: introduce and use skb_put_data()Johannes Berg2017-06-161-3/+2
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A common pattern with skb_put() is to just want to memcpy() some data into the new space, introduce skb_put_data() for this. An spatch similar to the one for skb_put_zero() converts many of the places using it: @@ identifier p, p2; expression len, skb, data; type t, t2; @@ ( -p = skb_put(skb, len); +p = skb_put_data(skb, data, len); | -p = (t)skb_put(skb, len); +p = skb_put_data(skb, data, len); ) ( p2 = (t2)p; -memcpy(p2, data, len); | -memcpy(p, data, len); ) @@ type t, t2; identifier p, p2; expression skb, data; @@ t *p; ... ( -p = skb_put(skb, sizeof(t)); +p = skb_put_data(skb, data, sizeof(t)); | -p = (t *)skb_put(skb, sizeof(t)); +p = skb_put_data(skb, data, sizeof(t)); ) ( p2 = (t2)p; -memcpy(p2, data, sizeof(*p)); | -memcpy(p, data, sizeof(*p)); ) @@ expression skb, len, data; @@ -memcpy(skb_put(skb, len), data, len); +skb_put_data(skb, data, len); (again, manually post-processed to retain some comments) Reviewed-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | iwlwifi: fix host command memory leaksShahar S Matityahu2017-06-051-3/+6
| | | | | | | | | | | | | | | | | | Sending host command with CMD_WANT_SKB flag demands the release of the response buffer with iwl_free_resp function. The patch adds the memory release in all the relevant places Signed-off-by: Shahar S Matityahu <shahar.s.matityahu@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* | iwlwifi: pcie: only use d0i3 in suspend/resume if system_pm is set to d0i3Luca Coelho2017-06-051-2/+4
|/ | | | | | | | | | We only need to handle d0i3 entry and exit during suspend resume if system_pm is set to IWL_PLAT_PM_MODE_D0I3, otherwise d0i3 entry failures will cause suspend to fail. This fixes https://bugzilla.kernel.org/show_bug.cgi?id=194791 Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: apply no-reclaim logic only to group 0Johannes Berg2017-04-251-1/+1
| | | | | | | | | | | | | When applying no-reclaim logic to commands other than the group zero for legacy commands, commands such as 0x1c (TX_CMD in group 0) can't be used in any other group. Fix that by applying this logic only for group 0 - it's not and should never be needed for any other groups. Reported-by: Sharon Dvir <sharon.dvir@intel.com> Reported-by: Shaul Triebitz <shaul.triebitz@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: rename wait_for_tx_queues_emptySara Sharon2017-04-251-1/+1
| | | | | | | | | | Rename current wait_tx_queue_empty to wait_tx_queues_empty since it waits for multiple queues (up to 32). Next patch will add a wait for single TX queue which is needed for gen2 to be scalable for 512. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: move to 512 queuesSara Sharon2017-04-251-3/+3
| | | | | | | | Avoid using the old define since it will enlarge necessary structs for previous HW. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: remove superfluous trans->dev assignmentJohannes Berg2017-04-251-1/+0
| | | | | | | | | This struct member is already assigned in the previous call to iwl_trans_alloc(), so assigning the same value again is superfluous - remove it. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: support debug applying on a000 hwLiad Kaufman2017-04-253-1/+6
| | | | | | | Allow configuring debug destination on a000 HW. Signed-off-by: Liad Kaufman <liad.kaufman@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: free context info in case of failuresJohannes Berg2017-04-201-1/+4
| | | | | | | | | | If iwl_pcie_ctxt_info_init_fw_sec() fails, the previous allocated DMA memory needs to be freed (it even goes out of scope immediately.) Do that to prevent the leak. Fixes: eda50cde58de ("iwlwifi: pcie: add context information support") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: fix mutex leak in gen2 startJohannes Berg2017-04-201-2/+3
| | | | | | | | | If the context info fails to be allocated, the mutex isn't unlocked properly, fix that. Fixes: eda50cde58de ("iwlwifi: pcie: add context information support") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: remove RSA race workaroundLuca Coelho2017-04-191-46/+0
| | | | | | This workaround is not needed anymore. Remove it. Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: support a000 CDB productSara Sharon2017-04-191-3/+4
| | | | | | | Identify and load FW for a000 CDB product. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: add four new 8265 and 8275 series PCI IDsTzipi Peres2017-04-191-0/+4
| | | | | | | | Add one new PCI ID for the 8265 series. Add three new PCI ID for the 8275 series. Signed-off-by: Tzipi Peres <tzipi.peres@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: move to TVQM modeSara Sharon2017-04-191-28/+42
| | | | | | | | | | | | In TVQM firmware returns the value of the queue ID and code should accept it. The TX queue config API was changed. Move to new API. This has to be done in parallel in mvm and pcie. Do not move yet to 512 queues since there are some opens with enabling it. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: get rid of txq id assignmentSara Sharon2017-04-193-40/+47
| | | | | | | | | In TVQM mode the queue ID is assigned after enablement. Get rid of assuming pre-defined TX queue ID in functions that will be used by TVQM allocation path. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
* iwlwifi: pcie: alloc queues dynamicallySara Sharon2017-04-196-73/+199
| | | | | | | | | | | | | | Change queue allocation to be dynamic. On transport init only the command queue is being allocated. Other queues are allocated on demand. This is due to the huge amount of queues we will soon enable (512) and as a preparation for TX Virtual Queue Manager feature (TVQM), where firmware will assign the actual queue number on demand. This includes also allocation of the byte count table per queue and not as a contiguous chunk of memory. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
OpenPOWER on IntegriCloud