qcacmn: do not process duplicate descriptor frame in RX
once in a while the HW is sending a descriptor which is already processed by host. This can be a potential HW issue, as a WAR we are not processing such duplicate descriptors instead increment a counter and continue with next descriptor. Change-Id: I6c9bc6a9fb4705b42284171a32855411aa5dd73f CRs-Fixed: 2338543
Cette révision appartient à :

révisé par
nshrivas

Parent
e88c0e8ffa
révision
eff377a1d3
@@ -846,6 +846,19 @@ static inline QDF_STATUS dp_rx_ast_set_active(struct dp_soc *soc, uint16_t sa_id
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* dp_rx_desc_dump() - dump the sw rx descriptor
|
||||
*
|
||||
* @rx_desc: sw rx descriptor
|
||||
*/
|
||||
static inline void dp_rx_desc_dump(struct dp_rx_desc *rx_desc)
|
||||
{
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_FATAL,
|
||||
"rx_desc->nbuf: %pK, rx_desc->cookie: %d, rx_desc->pool_id: %d, rx_desc->in_use: %d, rx_desc->unmapped: %d",
|
||||
rx_desc->nbuf, rx_desc->cookie, rx_desc->pool_id,
|
||||
rx_desc->in_use, rx_desc->unmapped);
|
||||
}
|
||||
|
||||
/*
|
||||
* check_qwrap_multicast_loopback() - Check if rx packet is a loopback packet.
|
||||
* In qwrap mode, packets originated from
|
||||
@@ -962,4 +975,7 @@ int dp_wds_rx_policy_check(uint8_t *rx_tlv_hdr, struct dp_vdev *vdev,
|
||||
qdf_nbuf_t
|
||||
dp_rx_nbuf_prepare(struct dp_soc *soc, struct dp_pdev *pdev);
|
||||
|
||||
void dp_rx_dump_info_and_assert(struct dp_soc *soc, void *hal_ring,
|
||||
void *ring_desc, struct dp_rx_desc *rx_desc);
|
||||
|
||||
#endif /* _DP_RX_H */
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur