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

Commit 463daeb3 authored by Karthik Kantamneni's avatar Karthik Kantamneni Committed by Madan Koyyalamudi
Browse files

qcacmn: Skip updating OOR/2K jump BAR frames to H.W

Currently error BAR frames are routed to host, but host
doesn't have complete information to check whether these
frames are valid and really action need to be taken or not.
If host updates H.W without validating SSN it is causing
window movement and REO HW aging timeout happening for
next set of RX packets and delay is induced.

To avoid RX packets delay skipping BAR update to H.W

Change-Id: I92c1614993b6985218a453fe528fbd274fab254f
CRs-Fixed: 2995461
parent 3e6863fd
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -779,6 +779,16 @@ dp_rx_chain_msdus(struct dp_soc *soc, qdf_nbuf_t nbuf,
	return mpdu_done;
}

#ifdef WLAN_SKIP_BAR_UPDATE
static
void dp_rx_err_handle_bar(struct dp_soc *soc,
			  struct dp_peer *peer,
			  qdf_nbuf_t nbuf)
{
	dp_info_rl("BAR update to H.W is skipped");
	DP_STATS_INC(soc, rx.err.bar_handle_fail_count, 1);
}
#else
static
void dp_rx_err_handle_bar(struct dp_soc *soc,
			  struct dp_peer *peer,
@@ -828,6 +838,7 @@ void dp_rx_err_handle_bar(struct dp_soc *soc,
		DP_STATS_INC(soc, rx.err.ssn_update_count, 1);
	}
}
#endif

/**
 * dp_rx_bar_frame_handle() - Function to handle err BAR frames