qcacmn: Add fix to support proxy arp function call
a call to osif_proxy_arp need to be invoked inside UMAC_SUPPORT_PROXY_ARP as it was protected under build macro UMAC_SUPPORT_PROXY_ARP. Change-Id: I6e165a328ac65fb659cb9fbc3a0ce39fcbb6744b
This commit is contained in:
@@ -3268,6 +3268,47 @@ qdf_nbuf_t dp_tx_send_vdev_id_check(struct cdp_soc_t *soc_hdl,
|
||||
return dp_tx_send(soc_hdl, vdev_id, nbuf);
|
||||
}
|
||||
|
||||
#ifdef UMAC_SUPPORT_PROXY_ARP
|
||||
/**
|
||||
* dp_tx_proxy_arp() - Tx proxy arp handler
|
||||
* @vdev: datapath vdev handle
|
||||
* @buf: sk buffer
|
||||
*
|
||||
* Return: status
|
||||
*/
|
||||
static inline
|
||||
int dp_tx_proxy_arp(struct dp_vdev *vdev, qdf_nbuf_t nbuf)
|
||||
{
|
||||
if (vdev->osif_proxy_arp)
|
||||
return vdev->osif_proxy_arp(vdev->osif_vdev, nbuf);
|
||||
|
||||
/*
|
||||
* when UMAC_SUPPORT_PROXY_ARP is defined, we expect
|
||||
* osif_proxy_arp has a valid function pointer assigned
|
||||
* to it
|
||||
*/
|
||||
dp_tx_err("valid function pointer for osif_proxy_arp is expected!!\n");
|
||||
|
||||
return QDF_STATUS_NOT_INITIALIZED;
|
||||
}
|
||||
#else
|
||||
/**
|
||||
* dp_tx_proxy_arp() - Tx proxy arp handler
|
||||
* @vdev: datapath vdev handle
|
||||
* @buf: sk buffer
|
||||
*
|
||||
* This function always return 0 when UMAC_SUPPORT_PROXY_ARP
|
||||
* is not defined.
|
||||
*
|
||||
* Return: status
|
||||
*/
|
||||
static inline
|
||||
int dp_tx_proxy_arp(struct dp_vdev *vdev, qdf_nbuf_t nbuf)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* dp_tx_reinject_handler() - Tx Reinject Handler
|
||||
* @soc: datapath soc handle
|
||||
@@ -3355,8 +3396,8 @@ void dp_tx_reinject_handler(struct dp_soc *soc,
|
||||
((is_mcast && peer->wds_ecm.wds_tx_mcast_4addr) ||
|
||||
(is_ucast && peer->wds_ecm.wds_tx_ucast_4addr))))) {
|
||||
#else
|
||||
((peer->bss_peer && vdev->osif_proxy_arp &&
|
||||
!(vdev->osif_proxy_arp(vdev->osif_vdev, nbuf))))) {
|
||||
(peer->bss_peer &&
|
||||
(dp_tx_proxy_arp(vdev, nbuf) == QDF_STATUS_SUCCESS))) {
|
||||
#endif
|
||||
peer_id = DP_INVALID_PEER;
|
||||
|
||||
|
Reference in New Issue
Block a user