Эх сурвалжийг харах

iwlcore: Set rb_timeout to 0x10 for devices with ICT

rb value should be 0x10 for devices using ICT.
 RX interrupt was not performing well with
 0 value

Signed-off-by: Mohamed Abbas <mohamed.abbas@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Mohamed Abbas 16 жил өмнө
parent
commit
0324c14b6f

+ 4 - 1
drivers/net/wireless/iwlwifi/iwl-rx.c

@@ -412,7 +412,10 @@ int iwl_rx_init(struct iwl_priv *priv, struct iwl_rx_queue *rxq)
 {
 {
 	u32 rb_size;
 	u32 rb_size;
 	const u32 rfdnlog = RX_QUEUE_SIZE_LOG; /* 256 RBDs */
 	const u32 rfdnlog = RX_QUEUE_SIZE_LOG; /* 256 RBDs */
-	const u32 rb_timeout = 0; /* FIXME: RX_RB_TIMEOUT why this stalls RX */
+	u32 rb_timeout = 0; /* FIXME: RX_RB_TIMEOUT for all devices? */
+
+	if (!priv->cfg->use_isr_legacy)
+		rb_timeout = RX_RB_TIMEOUT;
 
 
 	if (priv->cfg->mod_params->amsdu_size_8K)
 	if (priv->cfg->mod_params->amsdu_size_8K)
 		rb_size = FH_RCSR_RX_CONFIG_REG_VAL_RB_SIZE_8K;
 		rb_size = FH_RCSR_RX_CONFIG_REG_VAL_RB_SIZE_8K;