diff options
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn-rs.c | 10 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-commands.h | 6 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-core.h | 2 |
3 files changed, 16 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c index 23e5c42e7d7e..7c4deee4c527 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c | |||
@@ -2694,8 +2694,18 @@ static void rs_fill_link_cmd(struct iwl_priv *priv, | |||
2694 | 2694 | ||
2695 | lq_cmd->agg_params.agg_frame_cnt_limit = LINK_QUAL_AGG_FRAME_LIMIT_DEF; | 2695 | lq_cmd->agg_params.agg_frame_cnt_limit = LINK_QUAL_AGG_FRAME_LIMIT_DEF; |
2696 | lq_cmd->agg_params.agg_dis_start_th = LINK_QUAL_AGG_DISABLE_START_DEF; | 2696 | lq_cmd->agg_params.agg_dis_start_th = LINK_QUAL_AGG_DISABLE_START_DEF; |
2697 | |||
2697 | lq_cmd->agg_params.agg_time_limit = | 2698 | lq_cmd->agg_params.agg_time_limit = |
2698 | cpu_to_le16(LINK_QUAL_AGG_TIME_LIMIT_DEF); | 2699 | cpu_to_le16(LINK_QUAL_AGG_TIME_LIMIT_DEF); |
2700 | /* | ||
2701 | * overwrite if needed, pass aggregation time limit | ||
2702 | * to uCode in uSec | ||
2703 | */ | ||
2704 | if (priv && priv->cfg->agg_time_limit && | ||
2705 | priv->cfg->agg_time_limit >= LINK_QUAL_AGG_TIME_LIMIT_MIN && | ||
2706 | priv->cfg->agg_time_limit <= LINK_QUAL_AGG_TIME_LIMIT_MAX) | ||
2707 | lq_cmd->agg_params.agg_time_limit = | ||
2708 | cpu_to_le16(priv->cfg->agg_time_limit); | ||
2699 | } | 2709 | } |
2700 | 2710 | ||
2701 | static void *rs_alloc(struct ieee80211_hw *hw, struct dentry *debugfsdir) | 2711 | static void *rs_alloc(struct ieee80211_hw *hw, struct dentry *debugfsdir) |
diff --git a/drivers/net/wireless/iwlwifi/iwl-commands.h b/drivers/net/wireless/iwlwifi/iwl-commands.h index c6a0470b2f50..14a7a8c0711a 100644 --- a/drivers/net/wireless/iwlwifi/iwl-commands.h +++ b/drivers/net/wireless/iwlwifi/iwl-commands.h | |||
@@ -2110,8 +2110,10 @@ struct iwl_link_qual_general_params { | |||
2110 | */ | 2110 | */ |
2111 | struct iwl_link_qual_agg_params { | 2111 | struct iwl_link_qual_agg_params { |
2112 | 2112 | ||
2113 | /* Maximum number of uSec in aggregation. | 2113 | /* |
2114 | * Driver should set this to 4000 (4 milliseconds). */ | 2114 | *Maximum number of uSec in aggregation. |
2115 | * default set to 4000 (4 milliseconds) if not configured in .cfg | ||
2116 | */ | ||
2115 | __le16 agg_time_limit; | 2117 | __le16 agg_time_limit; |
2116 | 2118 | ||
2117 | /* | 2119 | /* |
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.h b/drivers/net/wireless/iwlwifi/iwl-core.h index 702d62bf4ee4..f5586b5e0496 100644 --- a/drivers/net/wireless/iwlwifi/iwl-core.h +++ b/drivers/net/wireless/iwlwifi/iwl-core.h | |||
@@ -280,6 +280,7 @@ struct iwl_mod_params { | |||
280 | * @scan_antennas: available antenna for scan operation | 280 | * @scan_antennas: available antenna for scan operation |
281 | * @need_dc_calib: need to perform init dc calibration | 281 | * @need_dc_calib: need to perform init dc calibration |
282 | * @bt_statistics: use BT version of statistics notification | 282 | * @bt_statistics: use BT version of statistics notification |
283 | * @agg_time_limit: maximum number of uSec in aggregation | ||
283 | * | 284 | * |
284 | * We enable the driver to be backward compatible wrt API version. The | 285 | * We enable the driver to be backward compatible wrt API version. The |
285 | * driver specifies which APIs it supports (with @ucode_api_max being the | 286 | * driver specifies which APIs it supports (with @ucode_api_max being the |
@@ -350,6 +351,7 @@ struct iwl_cfg { | |||
350 | u8 scan_tx_antennas[IEEE80211_NUM_BANDS]; | 351 | u8 scan_tx_antennas[IEEE80211_NUM_BANDS]; |
351 | const bool need_dc_calib; | 352 | const bool need_dc_calib; |
352 | const bool bt_statistics; | 353 | const bool bt_statistics; |
354 | u16 agg_time_limit; | ||
353 | }; | 355 | }; |
354 | 356 | ||
355 | /*************************** | 357 | /*************************** |