Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ecdbe86e authored by Wey-Yi Guy's avatar Wey-Yi Guy
Browse files

iwlagn: Support flush queues for specified interface



Flush command can target specified interface or all interfaces

Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
parent f88e0ecc
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -1530,10 +1530,12 @@ int iwlagn_txfifo_flush(struct iwl_priv *priv, u16 flush_control)
	might_sleep();

	memset(&flush_cmd, 0, sizeof(flush_cmd));
	if (flush_control & BIT(IWL_RXON_CTX_BSS))
		flush_cmd.fifo_control = IWL_SCD_VO_MSK | IWL_SCD_VI_MSK |
				 IWL_SCD_BE_MSK | IWL_SCD_BK_MSK |
				 IWL_SCD_MGMT_MSK;
	if (priv->valid_contexts != BIT(IWL_RXON_CTX_BSS))
	if ((flush_control & BIT(IWL_RXON_CTX_PAN)) &&
	    (priv->valid_contexts != BIT(IWL_RXON_CTX_BSS)))
		flush_cmd.fifo_control |= IWL_PAN_SCD_VO_MSK |
				IWL_PAN_SCD_VI_MSK | IWL_PAN_SCD_BE_MSK |
				IWL_PAN_SCD_BK_MSK | IWL_PAN_SCD_MGMT_MSK |
+1 −2
Original line number Diff line number Diff line
@@ -991,8 +991,7 @@ struct iwl_rem_sta_cmd {
#define IWL_AGG_TX_QUEUE_MSK		cpu_to_le32(0xffc00)

#define IWL_DROP_SINGLE		0
#define IWL_DROP_SELECTED	1
#define IWL_DROP_ALL		2
#define IWL_DROP_ALL		(BIT(IWL_RXON_CTX_BSS) | BIT(IWL_RXON_CTX_PAN))

/*
 * REPLY_TXFIFO_FLUSH = 0x1e(command and response)