diff options
author | Stanislaw Gruszka <sgruszka@redhat.com> | 2014-02-19 03:15:10 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-02-24 15:21:55 -0500 |
commit | 8e67427aca2f0dda148181af930732734f6e2e42 (patch) | |
tree | 600d875b2c0f3e93db7ceda4fb99908fcb472959 /drivers/net/wireless/iwlegacy/common.h | |
parent | 59f01183a7846c1621a23dd88182f5a890f38717 (diff) |
iwlegacy: merge reclaim check
Merge reclaim check for 3945 & 4965. This add some more checks for
3945, most importantly N_RX notify.
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlegacy/common.h')
-rw-r--r-- | drivers/net/wireless/iwlegacy/common.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlegacy/common.h b/drivers/net/wireless/iwlegacy/common.h index ad123d66ab6c..21964d2cad83 100644 --- a/drivers/net/wireless/iwlegacy/common.h +++ b/drivers/net/wireless/iwlegacy/common.h | |||
@@ -1978,6 +1978,20 @@ void il_wr_prph(struct il_priv *il, u32 addr, u32 val); | |||
1978 | u32 il_read_targ_mem(struct il_priv *il, u32 addr); | 1978 | u32 il_read_targ_mem(struct il_priv *il, u32 addr); |
1979 | void il_write_targ_mem(struct il_priv *il, u32 addr, u32 val); | 1979 | void il_write_targ_mem(struct il_priv *il, u32 addr, u32 val); |
1980 | 1980 | ||
1981 | static inline bool il_need_reclaim(struct il_priv *il, struct il_rx_pkt *pkt) | ||
1982 | { | ||
1983 | /* Reclaim a command buffer only if this packet is a response | ||
1984 | * to a (driver-originated) command. If the packet (e.g. Rx frame) | ||
1985 | * originated from uCode, there is no command buffer to reclaim. | ||
1986 | * Ucode should set SEQ_RX_FRAME bit if ucode-originated, but | ||
1987 | * apparently a few don't get set; catch them here. | ||
1988 | */ | ||
1989 | return !(pkt->hdr.sequence & SEQ_RX_FRAME) && | ||
1990 | pkt->hdr.cmd != N_STATS && pkt->hdr.cmd != C_TX && | ||
1991 | pkt->hdr.cmd != N_RX_PHY && pkt->hdr.cmd != N_RX && | ||
1992 | pkt->hdr.cmd != N_RX_MPDU && pkt->hdr.cmd != N_COMPRESSED_BA; | ||
1993 | } | ||
1994 | |||
1981 | static inline void | 1995 | static inline void |
1982 | _il_write8(struct il_priv *il, u32 ofs, u8 val) | 1996 | _il_write8(struct il_priv *il, u32 ofs, u8 val) |
1983 | { | 1997 | { |