summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/mvm/fw.c
diff options
context:
space:
mode:
authorLilach Edelstein <lilach.edelstein@intel.com>2013-10-06 13:03:32 +0200
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2013-12-17 19:39:37 +0200
commit1f3b0ff8eccefb0a22398bb044fa12f7e3f6f058 (patch)
tree2b2515e28295c3f5d61b5b74236505b440b2a402 /drivers/net/wireless/iwlwifi/mvm/fw.c
parent710e4d08f2ab6eed7950884ab30e684704e325ca (diff)
downloadop-kernel-dev-1f3b0ff8eccefb0a22398bb044fa12f7e3f6f058.zip
op-kernel-dev-1f3b0ff8eccefb0a22398bb044fa12f7e3f6f058.tar.gz
iwlwifi: mvm: Add Smart FIFO support
Send firmware a Smart FIFO Configuration host command to allow interrupt coalescing. The smart FIFO is enabled when there is only one bound interface (other than p2p devices which are ignored) and it is of type station, and activated while the station is associated. Smart Fifo allows aggragations of DMA transactions and by that causes processor and memory controller to stay for a longer time on lower c-states, thus saving platform power. Firmware relies on driver to activate and disable it. Signed-off-by: Lilach Edelstein <lilach.edelstein@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/fw.c')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/fw.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/fw.c b/drivers/net/wireless/iwlwifi/mvm/fw.c
index 70e5297..b2bfa73 100644
--- a/drivers/net/wireless/iwlwifi/mvm/fw.c
+++ b/drivers/net/wireless/iwlwifi/mvm/fw.c
@@ -386,6 +386,10 @@ int iwl_mvm_up(struct iwl_mvm *mvm)
goto error;
}
+ ret = iwl_mvm_sf_update(mvm, NULL, false);
+ if (ret)
+ IWL_ERR(mvm, "Failed to initialize Smart Fifo\n");
+
ret = iwl_send_tx_ant_cfg(mvm, iwl_fw_valid_tx_ant(mvm->fw));
if (ret)
goto error;
OpenPOWER on IntegriCloud