iwlwifi: mvm: support a000 SCD queue configuration
authorSara Sharon <sara.sharon@intel.com>
Thu, 29 Sep 2016 11:52:40 +0000 (14:52 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Wed, 19 Apr 2017 19:20:52 +0000 (22:20 +0300)
commitbb49701b41deff0a8edd297357b23ffe833099eb
tree67b8822760b36520d6c5141826b411541b7230f4
parent6b35ff91572f7fc42ec0026f512a8d274071163b
iwlwifi: mvm: support a000 SCD queue configuration

a000 devices queue management is going to change significantly.
We will have 512 queues. Those queues will be assigned number
by the firmware and not by the driver.

In addition, due to SN offload having TX queue shared between TIDs
is impossible

Also, the ADD_STA command no longer updates queues status.
The only point of changing queue in the SCD queue config API.

From driver perspective we have here a new design:

Queue sharing and inactivity checks are disabled.

Once this is done, the only paths that call scd_queue_cfg command
are paths that alloc and release TX queues - which will make future
accommodation to queue number assignment by FW easier.
Since allocating 512 queues statically is not advisable, transport
will allocate the queue on demand, fill the command with DRAM data
and send it. This is reflected in the new transport API.

Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/fw-api-sta.h
drivers/net/wireless/intel/iwlwifi/mvm/sta.c
drivers/net/wireless/intel/iwlwifi/mvm/tx.c
drivers/net/wireless/intel/iwlwifi/mvm/utils.c