diff options
author | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2011-08-26 08:11:23 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-08-29 21:30:32 +0200 |
commit | dfa2bdbab70901ddda3ec41f2e55f8396af9095f (patch) | |
tree | 0e547a9e6dc42189f6b0c40a1a72934f0fb6d51c /drivers/net/wireless/iwlwifi/iwl-agn-ucode.c | |
parent | iwlagn: set tx_fifo for ampdu in transport layer (diff) | |
download | linux-dfa2bdbab70901ddda3ec41f2e55f8396af9095f.tar.xz linux-dfa2bdbab70901ddda3ec41f2e55f8396af9095f.zip |
iwlagn: upper layer uses slabs to allocate tx cmds
In a near future, the upper layer won't be aware of the tx queues.
This allows to remove one place where the upper layer needed to
provide the tx queue index to the transport layer.
This also saves around 1.5MB.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-agn-ucode.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn-ucode.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-ucode.c b/drivers/net/wireless/iwlwifi/iwl-agn-ucode.c index 02b00d177323..ddb255a575df 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn-ucode.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn-ucode.c @@ -351,6 +351,15 @@ static int iwlagn_alive_notify(struct iwl_priv *priv) { int ret; + if (!priv->tx_cmd_pool) + priv->tx_cmd_pool = + kmem_cache_create("iwlagn_dev_cmd", + sizeof(struct iwl_device_cmd), + sizeof(void *), 0, NULL); + + if (!priv->tx_cmd_pool) + return -ENOMEM; + iwl_trans_tx_start(trans(priv)); ret = iwlagn_send_wimax_coex(priv); |