qcacmn: FR-64492 WDS Extended support

- Added data structure for wds ext peer
- Enhanced DP peer structure to maintain
  wds ext peer data structure, which inturn
  maintain pointer to osif device.
- Enhanced DP vdev structure to maintain feature
  configuration, which will be updated during vdev
  creation when feature is flag is set at control
  psoc.
- Enhanced cdp_vdev_param_type and cdp_config_param_t
  to set wds ext configuration into DP vdev
- Enhanced cdp_cmn_ops structure and corresponding
  call back definitons to get peer id, which will
  be saved in osif private structure and to set
  wds ext peer rx.
- Enhanced cdp_ctrl_ops to send event to control
  path when 1st 4 address frame is received from
  backhaul.

Change-Id: Ide0ea54e7b2d480ad646fb84b6e4e3108930f986
CRs-Fixed: 2773492
This commit is contained in:
Naga
2020-09-11 17:25:30 +05:30
committed by snandini
parent aae959eec4
commit c4cd90a9c4
6 changed files with 204 additions and 1 deletions

View File

@@ -556,6 +556,15 @@ struct cdp_cmn_ops {
(ol_txrx_soc_handle soc, uint8_t vdev_id,
u_int8_t newmac[][QDF_MAC_ADDR_SIZE], uint16_t mac_cnt,
bool limit);
#ifdef QCA_SUPPORT_WDS_EXTENDED
uint16_t (*get_wds_ext_peer_id)(ol_txrx_soc_handle soc,
uint8_t vdev_id,
uint8_t *mac);
QDF_STATUS (*set_wds_ext_peer_rx)(ol_txrx_soc_handle soc,
uint8_t vdev_id,
uint8_t *mac,
ol_txrx_rx_fp rx);
#endif /* QCA_SUPPORT_WDS_EXTENDED */
};
struct cdp_ctrl_ops {
@@ -1130,6 +1139,11 @@ struct ol_if_ops {
uint8_t vdev_id);
int (*dp_rx_get_pending)(ol_txrx_soc_handle soc);
/* TODO: Add any other control path calls required to OL_IF/WMA layer */
#ifdef QCA_SUPPORT_WDS_EXTENDED
void (*rx_wds_ext_peer_learn)(struct cdp_ctrl_objmgr_psoc *ctrl_psoc,
uint16_t peer_id, uint8_t vdev_id,
uint8_t *peer_macaddr);
#endif /* QCA_SUPPORT_WDS_EXTENDED */
};
#ifdef DP_PEER_EXTENDED_API