qcacmn: Fix for ping failure due to intrabss fwd logic

Intrabss forwarding logic turns around bcast (ARP) pkts on the
SAP with peer source addr. So a AST lookup on AddrY results will
route the pkt to HW and not FW which is not the design. Fix is to
enable lookup only on AddrX in SAP mode.

Change-Id: Iea41c53fd818acfb8dbfd9ad1582e43ba1c4bc83
CRs-Fixed: 2029656
This commit is contained in:
Pramod Simha
2017-04-05 15:25:11 -07:00
committed by Sandeep Puligilla
parent 536064a37e
commit bc0a546d58

View File

@@ -687,10 +687,15 @@ static QDF_STATUS dp_tx_hw_enqueue(struct dp_soc *soc, struct dp_vdev *vdev,
/*
* TODO
* Fix this , this should be based on vdev opmode (AP or STA)
* Enable both AddrX and AddrY flags for now
* For AP mode, enable AddrX flag only
* For all other modes, enable both AddrX and AddrY
* flags for now
*/
hal_tx_desc_set_addr_search_flags(hal_tx_desc_cached,
if (vdev->opmode == wlan_op_mode_ap)
hal_tx_desc_set_addr_search_flags(hal_tx_desc_cached,
HAL_TX_DESC_ADDRX_EN);
else
hal_tx_desc_set_addr_search_flags(hal_tx_desc_cached,
HAL_TX_DESC_ADDRX_EN | HAL_TX_DESC_ADDRY_EN);
if ((qdf_nbuf_get_tx_cksum(tx_desc->nbuf) == QDF_NBUF_TX_CKSUM_TCP_UDP)