iwlwifi: pcie: add 9000 series multi queue rx DMA support
authorSara Sharon <sara.sharon@intel.com>
Wed, 23 Dec 2015 13:10:03 +0000 (15:10 +0200)
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Sun, 31 Jan 2016 10:53:43 +0000 (12:53 +0200)
commit96a6497bc3ed1c19d877e5f4f95f2cfa27448abe
treec4123179c85835a5caa1bae991f21990dd1909a3
parent7848505416be4e96af14c3387775622d26a13146
iwlwifi: pcie: add 9000 series multi queue rx DMA support

The 9000 series introduces several changes in the device
DMA operation.
As the device now supports multi-queue rx, several DMA channels
should be configured.
The flows of providing the device with the allocated RBDs now
changes as well - the device maintains a separate table of used
and free table.

The hardware may use the free table to feed RBDs to any queue.
This requires maintaing a shared table to map returned RBDs to
the original RXB - for that purpose the VID is introduced - an
internal identifier of the RB placed in the lower 12 bits and
returned by HW in the used data.

Another change is the support of 64 bit DMA address.

Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
drivers/net/wireless/intel/iwlwifi/iwl-9000.c
drivers/net/wireless/intel/iwlwifi/iwl-config.h
drivers/net/wireless/intel/iwlwifi/iwl-fh.h
drivers/net/wireless/intel/iwlwifi/pcie/internal.h
drivers/net/wireless/intel/iwlwifi/pcie/rx.c
drivers/net/wireless/intel/iwlwifi/pcie/trans.c