iwlwifi: pcie: add infrastructure for multi-queue rx
authorSara Sharon <sara.sharon@intel.com>
Mon, 14 Dec 2015 15:44:11 +0000 (17:44 +0200)
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Sun, 31 Jan 2016 10:42:52 +0000 (12:42 +0200)
commit7848505416be4e96af14c3387775622d26a13146
treea27df6934345c2533a07afc47f9954777daaed41
parent3955525d5d17118ed8900e9e79753057120eb02a
iwlwifi: pcie: add infrastructure for multi-queue rx

The 9000 series devices will support multi rx queues.
Current code has one static rx queue - change it to allocate
a number of queues per the device capability (pre-9000 devices
have the number of rx queues set to one).

Subsequent generalizations are:

Change the code to access an explicit numbered rx queue only
when the queue number is known - when handling interrupt, when
accessing the default queue and when iterating the queues.
The rest of the functions will receive the rx queue as a pointer.

Generalize the warning in allocation failure to consider the
allocator status instead of a single rx queue status.

Move the rx initial pool of memory buffers to be shared among
all the queues and allocated to the default queue on init.

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