qcacmn: removal of cp handles and changes for ol_if_ops
Remove pdev and vdev control path handles from data path. Instead send pdev_id and vdev_id along with opaque soc handle in ol_if_ops. Change-Id: I6ee083f07e464f283da0d70ada70a4e10e18e1b2
Esse commit está contido em:

commit de
nshrivas

pai
7c7089627e
commit
4c7b81b540
@@ -274,8 +274,8 @@ cdp_pdev_attach_target(ol_txrx_soc_handle soc, struct cdp_pdev *pdev)
|
||||
}
|
||||
|
||||
static inline struct cdp_pdev *cdp_pdev_attach
|
||||
(ol_txrx_soc_handle soc, struct cdp_ctrl_objmgr_pdev *ctrl_pdev,
|
||||
HTC_HANDLE htc_pdev, qdf_device_t osdev, uint8_t pdev_id)
|
||||
(ol_txrx_soc_handle soc, HTC_HANDLE htc_pdev, qdf_device_t osdev,
|
||||
uint8_t pdev_id)
|
||||
{
|
||||
if (!soc || !soc->ops) {
|
||||
QDF_TRACE(QDF_MODULE_ID_CDP, QDF_TRACE_LEVEL_DEBUG,
|
||||
@@ -288,8 +288,8 @@ static inline struct cdp_pdev *cdp_pdev_attach
|
||||
!soc->ops->cmn_drv_ops->txrx_pdev_attach)
|
||||
return NULL;
|
||||
|
||||
return soc->ops->cmn_drv_ops->txrx_pdev_attach(soc, ctrl_pdev,
|
||||
htc_pdev, osdev, pdev_id);
|
||||
return soc->ops->cmn_drv_ops->txrx_pdev_attach(soc, htc_pdev, osdev,
|
||||
pdev_id);
|
||||
}
|
||||
|
||||
static inline int cdp_pdev_post_attach(ol_txrx_soc_handle soc,
|
||||
@@ -814,7 +814,7 @@ cdp_set_monitor_filter(ol_txrx_soc_handle soc, struct cdp_pdev *pdev,
|
||||
*****************************************************************************/
|
||||
static inline void
|
||||
cdp_vdev_register(ol_txrx_soc_handle soc, struct cdp_vdev *vdev,
|
||||
void *osif_vdev, struct cdp_ctrl_objmgr_vdev *ctrl_vdev,
|
||||
void *osif_vdev,
|
||||
struct ol_txrx_ops *txrx_ops)
|
||||
{
|
||||
if (!soc || !soc->ops) {
|
||||
@@ -829,7 +829,7 @@ cdp_vdev_register(ol_txrx_soc_handle soc, struct cdp_vdev *vdev,
|
||||
return;
|
||||
|
||||
soc->ops->cmn_drv_ops->txrx_vdev_register(vdev,
|
||||
osif_vdev, ctrl_vdev, txrx_ops);
|
||||
osif_vdev, txrx_ops);
|
||||
}
|
||||
|
||||
static inline int
|
||||
@@ -2308,25 +2308,6 @@ cdp_peer_map_attach(ol_txrx_soc_handle soc, uint32_t max_peers,
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
* cdp_pdev_set_ctrl_pdev() - set UMAC ctrl pdev to dp pdev
|
||||
* @soc: opaque soc handle
|
||||
* @pdev: opaque dp pdev handle
|
||||
* @ctrl_pdev: opaque ctrl pdev handle
|
||||
*
|
||||
* Return: void
|
||||
*/
|
||||
static inline void
|
||||
cdp_pdev_set_ctrl_pdev(ol_txrx_soc_handle soc, struct cdp_pdev *dp_pdev,
|
||||
struct cdp_ctrl_objmgr_pdev *ctrl_pdev)
|
||||
{
|
||||
if (soc && soc->ops && soc->ops->cmn_drv_ops &&
|
||||
soc->ops->cmn_drv_ops->txrx_pdev_set_ctrl_pdev)
|
||||
soc->ops->cmn_drv_ops->txrx_pdev_set_ctrl_pdev(dp_pdev,
|
||||
ctrl_pdev);
|
||||
}
|
||||
|
||||
/* cdp_txrx_classify_and_update() - To classify the packet and update stats
|
||||
* @soc: opaque soc handle
|
||||
* @vdev: opaque dp vdev handle
|
||||
|
@@ -1910,13 +1910,14 @@ enum cdp_dp_cfg {
|
||||
/**
|
||||
* struct cdp_peer_cookie - cookie used when creating peer
|
||||
* @peer_id: peer id
|
||||
* @pdev_id: pdev_id
|
||||
* @mac_addr: MAC address of peer
|
||||
* @cookie: cookie to be used by consumer
|
||||
* @ctx: context passed to be used by consumer
|
||||
*/
|
||||
struct cdp_peer_cookie {
|
||||
uint8_t peer_id;
|
||||
uint8_t mac_addr[QDF_MAC_ADDR_SIZE];
|
||||
uint8_t peer_id;
|
||||
uint8_t cookie;
|
||||
struct cdp_stats_cookie *ctx;
|
||||
};
|
||||
|
@@ -638,7 +638,8 @@ static inline void cdp_deregister_packetdump_cb(ol_txrx_soc_handle soc,
|
||||
return soc->ops->misc_ops->unregister_pktdump_cb(soc, pdev_id);
|
||||
}
|
||||
|
||||
typedef void (*rx_mic_error_callback)(void *scn_handle,
|
||||
typedef void (*rx_mic_error_callback)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t pdev_id,
|
||||
struct cdp_rx_mic_err_info *info);
|
||||
|
||||
/**
|
||||
|
@@ -77,8 +77,8 @@ struct cdp_cmn_ops {
|
||||
void *cb_context);
|
||||
|
||||
struct cdp_pdev *(*txrx_pdev_attach)
|
||||
(ol_txrx_soc_handle soc, struct cdp_ctrl_objmgr_pdev *ctrl_pdev,
|
||||
HTC_HANDLE htc_pdev, qdf_device_t osdev, uint8_t pdev_id);
|
||||
(ol_txrx_soc_handle soc, HTC_HANDLE htc_pdev,
|
||||
qdf_device_t osdev, uint8_t pdev_id);
|
||||
|
||||
int (*txrx_pdev_post_attach)(struct cdp_pdev *pdev);
|
||||
|
||||
@@ -204,7 +204,7 @@ struct cdp_cmn_ops {
|
||||
********************************************************************/
|
||||
|
||||
void (*txrx_vdev_register)(struct cdp_vdev *vdev,
|
||||
void *osif_vdev, struct cdp_ctrl_objmgr_vdev *ctrl_vdev,
|
||||
void *osif_vdev,
|
||||
struct ol_txrx_ops *txrx_ops);
|
||||
|
||||
int (*txrx_mgmt_send)(struct cdp_vdev *vdev,
|
||||
@@ -433,9 +433,6 @@ struct cdp_cmn_ops {
|
||||
uint32_t max_ast_index,
|
||||
bool peer_map_unmap_v2);
|
||||
|
||||
void (*txrx_pdev_set_ctrl_pdev)(struct cdp_pdev *pdev_hdl,
|
||||
struct cdp_ctrl_objmgr_pdev *ctrl_pdev);
|
||||
|
||||
ol_txrx_tx_fp tx_send;
|
||||
/**
|
||||
* txrx_get_os_rx_handles_from_vdev() - Return function, osif vdev
|
||||
@@ -479,6 +476,7 @@ struct cdp_ctrl_ops {
|
||||
|
||||
int
|
||||
(*txrx_mempools_attach)(void *ctrl_pdev);
|
||||
|
||||
int
|
||||
(*txrx_set_filter_neighbour_peers)(
|
||||
struct cdp_pdev *pdev,
|
||||
@@ -919,75 +917,95 @@ struct cdp_lro_hash_config {
|
||||
|
||||
struct ol_if_ops {
|
||||
void
|
||||
(*peer_set_default_routing)(struct cdp_ctrl_objmgr_pdev *ctrl_pdev,
|
||||
uint8_t *peer_macaddr, uint8_t vdev_id,
|
||||
(*peer_set_default_routing)(struct cdp_ctrl_objmgr_psoc *ctrl_psoc,
|
||||
uint8_t pdev_id, uint8_t *peer_macaddr,
|
||||
uint8_t vdev_id,
|
||||
bool hash_based, uint8_t ring_num);
|
||||
QDF_STATUS
|
||||
(*peer_rx_reorder_queue_setup)(struct cdp_ctrl_objmgr_pdev *ctrl_pdev,
|
||||
(*peer_rx_reorder_queue_setup)(struct cdp_ctrl_objmgr_psoc *ctrl_psoc,
|
||||
uint8_t pdev_id,
|
||||
uint8_t vdev_id, uint8_t *peer_mac,
|
||||
qdf_dma_addr_t hw_qdesc, int tid,
|
||||
uint16_t queue_num,
|
||||
uint8_t ba_window_size_valid,
|
||||
uint16_t ba_window_size);
|
||||
QDF_STATUS
|
||||
(*peer_rx_reorder_queue_remove)(struct cdp_ctrl_objmgr_pdev *ctrl_pdev,
|
||||
(*peer_rx_reorder_queue_remove)(struct cdp_ctrl_objmgr_psoc *ctrl_psoc,
|
||||
uint8_t pdev_id,
|
||||
uint8_t vdev_id, uint8_t *peer_macaddr,
|
||||
uint32_t tid_mask);
|
||||
int (*peer_unref_delete)(void *scn_handle, uint8_t *peer_mac,
|
||||
int (*peer_unref_delete)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t pdev_id,
|
||||
uint8_t *peer_mac,
|
||||
uint8_t *vdev_mac, enum wlan_op_mode opmode);
|
||||
bool (*is_hw_dbs_2x2_capable)(struct wlan_objmgr_psoc *psoc);
|
||||
int (*peer_add_wds_entry)(void *vdev_handle,
|
||||
struct cdp_peer *peer_handle,
|
||||
int (*peer_add_wds_entry)(struct cdp_ctrl_objmgr_psoc *soc,
|
||||
uint8_t vdev_id,
|
||||
uint8_t *peer_macaddr,
|
||||
const uint8_t *dest_macaddr,
|
||||
uint8_t *next_node_mac,
|
||||
uint32_t flags);
|
||||
int (*peer_update_wds_entry)(void *ol_soc_handle,
|
||||
uint8_t *dest_macaddr, uint8_t *peer_macaddr,
|
||||
int (*peer_update_wds_entry)(struct cdp_ctrl_objmgr_psoc *soc,
|
||||
uint8_t vdev_id,
|
||||
uint8_t *dest_macaddr,
|
||||
uint8_t *peer_macaddr,
|
||||
uint32_t flags);
|
||||
void (*peer_del_wds_entry)(void *ol_soc_handle,
|
||||
void (*peer_del_wds_entry)(struct cdp_ctrl_objmgr_psoc *soc,
|
||||
uint8_t vdev_id,
|
||||
uint8_t *wds_macaddr,
|
||||
uint8_t type);
|
||||
QDF_STATUS
|
||||
(*lro_hash_config)(struct cdp_ctrl_objmgr_pdev *ctrl_pdev,
|
||||
(*lro_hash_config)(struct cdp_ctrl_objmgr_psoc *psoc, uint8_t pdev_id,
|
||||
struct cdp_lro_hash_config *rx_offld_hash);
|
||||
|
||||
void (*update_dp_stats)(void *soc, void *stats, uint16_t id,
|
||||
uint8_t type);
|
||||
#ifdef FEATURE_NAC_RSSI
|
||||
uint8_t (*rx_invalid_peer)(void *ctrl_pdev, void *msg);
|
||||
uint8_t (*rx_invalid_peer)(struct cdp_ctrl_objmgr_psoc *soc,
|
||||
uint8_t pdev_id, void *msg);
|
||||
#else
|
||||
uint8_t (*rx_invalid_peer)(uint8_t vdev_id, void *wh);
|
||||
#endif
|
||||
int (*peer_map_event)(struct cdp_ctrl_objmgr_psoc *ol_soc_handle,
|
||||
|
||||
int (*peer_map_event)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint16_t peer_id, uint16_t hw_peer_id,
|
||||
uint8_t vdev_id, uint8_t *peer_mac_addr,
|
||||
enum cdp_txrx_ast_entry_type peer_type,
|
||||
uint32_t tx_ast_hashidx);
|
||||
int (*peer_unmap_event)(struct cdp_ctrl_objmgr_psoc *ol_soc_handle,
|
||||
int (*peer_unmap_event)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint16_t peer_id,
|
||||
uint8_t vdev_id);
|
||||
|
||||
int (*get_dp_cfg_param)(struct cdp_ctrl_objmgr_psoc *ol_soc_handle,
|
||||
int (*get_dp_cfg_param)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
enum cdp_cfg_param_type param_num);
|
||||
|
||||
void (*rx_mic_error)(void *ol_soc_handle,
|
||||
void (*rx_mic_error)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t pdev_id,
|
||||
struct cdp_rx_mic_err_info *info);
|
||||
bool (*rx_frag_tkip_demic)(struct wlan_objmgr_peer *ctrl_peer,
|
||||
|
||||
bool (*rx_frag_tkip_demic)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id, uint8_t *peer_mac_addr,
|
||||
qdf_nbuf_t nbuf,
|
||||
uint16_t hdr_space);
|
||||
uint8_t (*freq_to_channel)(void *ol_soc_handle, uint16_t vdev_id);
|
||||
|
||||
void (*record_act_change)(struct wlan_objmgr_pdev *pdev,
|
||||
u_int8_t *dstmac, bool active);
|
||||
uint8_t (*freq_to_channel)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id, uint16_t freq);
|
||||
|
||||
#ifdef ATH_SUPPORT_NAC_RSSI
|
||||
int (*config_fw_for_nac_rssi)(struct wlan_objmgr_pdev *pdev,
|
||||
u_int8_t vdev_id, enum cdp_nac_param_cmd cmd, char *bssid,
|
||||
char *client_macaddr, uint8_t chan_num);
|
||||
int (*config_bssid_in_fw_for_nac_rssi)(struct wlan_objmgr_pdev *pdev,
|
||||
int (*config_fw_for_nac_rssi)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t pdev_id,
|
||||
u_int8_t vdev_id,
|
||||
enum cdp_nac_param_cmd cmd, char *bssid,
|
||||
char *client_macaddr, uint8_t chan_num);
|
||||
|
||||
int
|
||||
(*config_bssid_in_fw_for_nac_rssi)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t pdev_id, u_int8_t vdev_id,
|
||||
enum cdp_nac_param_cmd cmd,
|
||||
char *bssid, char *client_mac);
|
||||
#endif
|
||||
int (*peer_sta_kickout)(void *ctrl_pdev, uint8_t *peer_macaddr);
|
||||
int (*peer_sta_kickout)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint16_t pdev_id, uint8_t *peer_macaddr);
|
||||
|
||||
/**
|
||||
* send_delba() - Send delba to peer
|
||||
@@ -998,10 +1016,13 @@ struct ol_if_ops {
|
||||
*
|
||||
* Return: 0 for success, non-zero for failure
|
||||
*/
|
||||
int (*send_delba)(struct wlan_objmgr_psoc *psoc, uint8_t vdev_id,
|
||||
int (*send_delba)(struct cdp_ctrl_objmgr_psoc *psoc, uint8_t vdev_id,
|
||||
uint8_t *peer_macaddr, uint8_t tid,
|
||||
uint8_t reason_code);
|
||||
int (*peer_delete_multiple_wds_entries)(void *vdev_handle,
|
||||
|
||||
int
|
||||
(*peer_delete_multiple_wds_entries)(struct cdp_ctrl_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id,
|
||||
uint8_t *dest_macaddr,
|
||||
uint8_t *peer_macaddr,
|
||||
uint32_t flags);
|
||||
|
@@ -24,9 +24,7 @@
|
||||
#ifndef _CDP_TXRX_STATS_STRUCT_H_
|
||||
#define _CDP_TXRX_STATS_STRUCT_H_
|
||||
|
||||
#ifdef FEATURE_TSO_STATS
|
||||
#include <qdf_types.h>
|
||||
#endif /* FEATURE_TSO_STATS */
|
||||
|
||||
#define TXRX_STATS_LEVEL_OFF 0
|
||||
#define TXRX_STATS_LEVEL_BASIC 1
|
||||
|
@@ -2077,7 +2077,8 @@ static void dp_process_ppdu_stats_common_tlv(struct dp_pdev *pdev,
|
||||
ppdu_desc->channel = freq;
|
||||
if (soc && soc->cdp_soc.ol_ops->freq_to_channel)
|
||||
pdev->operating_channel =
|
||||
soc->cdp_soc.ol_ops->freq_to_channel(pdev->ctrl_pdev, freq);
|
||||
soc->cdp_soc.ol_ops->freq_to_channel(soc->ctrl_psoc,
|
||||
pdev->pdev_id, freq);
|
||||
}
|
||||
|
||||
ppdu_desc->phy_mode = HTT_PPDU_STATS_COMMON_TLV_PHY_MODE_GET(*tag_buf);
|
||||
|
@@ -3098,7 +3098,8 @@ static QDF_STATUS dp_lro_hash_setup(struct dp_soc *soc, struct dp_pdev *pdev)
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
status = soc->cdp_soc.ol_ops->lro_hash_config(pdev->ctrl_pdev,
|
||||
status = soc->cdp_soc.ol_ops->lro_hash_config(soc->ctrl_psoc,
|
||||
pdev->pdev_id,
|
||||
&lro_hash);
|
||||
if (!QDF_IS_STATUS_SUCCESS(status)) {
|
||||
dp_err("failed to send lro_hash_config to FW %u", status);
|
||||
@@ -3409,7 +3410,6 @@ static QDF_STATUS dp_htt_ppdu_stats_attach(struct dp_pdev *pdev)
|
||||
|
||||
/*
|
||||
* dp_pdev_attach_wifi3() - attach txrx pdev
|
||||
* @ctrl_pdev: Opaque PDEV object
|
||||
* @txrx_soc: Datapath SOC handle
|
||||
* @htc_handle: HTC handle for host-target interface
|
||||
* @qdf_osdev: QDF OS device
|
||||
@@ -3418,7 +3418,6 @@ static QDF_STATUS dp_htt_ppdu_stats_attach(struct dp_pdev *pdev)
|
||||
* Return: DP PDEV handle on success, NULL on failure
|
||||
*/
|
||||
static struct cdp_pdev *dp_pdev_attach_wifi3(struct cdp_soc_t *txrx_soc,
|
||||
struct cdp_ctrl_objmgr_pdev *ctrl_pdev,
|
||||
HTC_HANDLE htc_handle, qdf_device_t qdf_osdev, uint8_t pdev_id)
|
||||
{
|
||||
int ring_size;
|
||||
@@ -3476,7 +3475,6 @@ static struct cdp_pdev *dp_pdev_attach_wifi3(struct cdp_soc_t *txrx_soc,
|
||||
(nss_cfg & (1 << pdev_id)));
|
||||
|
||||
pdev->soc = soc;
|
||||
pdev->ctrl_pdev = ctrl_pdev;
|
||||
pdev->pdev_id = pdev_id;
|
||||
soc->pdev_list[pdev_id] = pdev;
|
||||
|
||||
@@ -4868,12 +4866,10 @@ fail0:
|
||||
* Return: DP VDEV handle on success, NULL on failure
|
||||
*/
|
||||
static void dp_vdev_register_wifi3(struct cdp_vdev *vdev_handle,
|
||||
void *osif_vdev, struct cdp_ctrl_objmgr_vdev *ctrl_vdev,
|
||||
struct ol_txrx_ops *txrx_ops)
|
||||
void *osif_vdev, struct ol_txrx_ops *txrx_ops)
|
||||
{
|
||||
struct dp_vdev *vdev = (struct dp_vdev *)vdev_handle;
|
||||
vdev->osif_vdev = osif_vdev;
|
||||
vdev->ctrl_vdev = ctrl_vdev;
|
||||
vdev->osif_rx = txrx_ops->rx.rx;
|
||||
vdev->osif_rx_stack = txrx_ops->rx.rx_stack;
|
||||
vdev->osif_rx_flush = txrx_ops->rx.rx_flush;
|
||||
@@ -5258,7 +5254,9 @@ static void *dp_peer_create_wifi3(struct cdp_vdev *vdev_handle,
|
||||
* increment the count back.
|
||||
*/
|
||||
if (soc->cdp_soc.ol_ops->peer_unref_delete) {
|
||||
soc->cdp_soc.ol_ops->peer_unref_delete(pdev->ctrl_pdev,
|
||||
soc->cdp_soc.ol_ops->peer_unref_delete(
|
||||
soc->ctrl_psoc,
|
||||
pdev->pdev_id,
|
||||
peer->mac_addr.raw, vdev->mac_addr.raw,
|
||||
vdev->opmode);
|
||||
}
|
||||
@@ -5548,7 +5546,9 @@ static void dp_peer_setup_wifi3(struct cdp_vdev *vdev_hdl, void *peer_hdl)
|
||||
if (soc->cdp_soc.ol_ops->peer_set_default_routing) {
|
||||
/* TODO: Check the destination ring number to be passed to FW */
|
||||
soc->cdp_soc.ol_ops->peer_set_default_routing(
|
||||
pdev->ctrl_pdev, peer->mac_addr.raw,
|
||||
soc->ctrl_psoc,
|
||||
peer->vdev->pdev->pdev_id,
|
||||
peer->mac_addr.raw,
|
||||
peer->vdev->vdev_id, hash_based, reo_dest);
|
||||
}
|
||||
|
||||
@@ -8787,7 +8787,7 @@ static QDF_STATUS dp_config_for_nac_rssi(struct cdp_vdev *vdev_handle,
|
||||
|
||||
if (soc->cdp_soc.ol_ops->config_bssid_in_fw_for_nac_rssi)
|
||||
soc->cdp_soc.ol_ops->config_bssid_in_fw_for_nac_rssi
|
||||
((void *)vdev->pdev->ctrl_pdev,
|
||||
(soc->ctrl_psoc, pdev->pdev_id,
|
||||
vdev->vdev_id, cmd, bssid, client_macaddr);
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
@@ -8916,21 +8916,6 @@ static QDF_STATUS dp_peer_map_attach_wifi3(struct cdp_soc_t *soc_hdl,
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* dp_pdev_set_ctrl_pdev() - set ctrl pdev handle in dp pdev
|
||||
* @dp_pdev: dp pdev handle
|
||||
* @ctrl_pdev: UMAC ctrl pdev handle
|
||||
*
|
||||
* Return: void
|
||||
*/
|
||||
static void dp_pdev_set_ctrl_pdev(struct cdp_pdev *dp_pdev,
|
||||
struct cdp_ctrl_objmgr_pdev *ctrl_pdev)
|
||||
{
|
||||
struct dp_pdev *pdev = (struct dp_pdev *)dp_pdev;
|
||||
|
||||
pdev->ctrl_pdev = ctrl_pdev;
|
||||
}
|
||||
|
||||
static void dp_set_rate_stats_cap(struct cdp_soc_t *soc_hdl,
|
||||
uint8_t val)
|
||||
{
|
||||
@@ -9295,7 +9280,6 @@ static struct cdp_cmn_ops dp_ops_cmn = {
|
||||
.txrx_peer_reset_ast_table = dp_wds_reset_ast_table_wifi3,
|
||||
.txrx_peer_flush_ast_table = dp_wds_flush_ast_table_wifi3,
|
||||
.txrx_peer_map_attach = dp_peer_map_attach_wifi3,
|
||||
.txrx_pdev_set_ctrl_pdev = dp_pdev_set_ctrl_pdev,
|
||||
.txrx_get_os_rx_handles_from_vdev =
|
||||
dp_get_os_rx_handles_from_vdev_wifi3,
|
||||
.delba_tx_completion = dp_delba_tx_completion_wifi3,
|
||||
|
@@ -821,8 +821,9 @@ add_ast_entry:
|
||||
(ast_entry->type != CDP_TXRX_AST_TYPE_WDS_HM_SEC)) {
|
||||
if (QDF_STATUS_SUCCESS ==
|
||||
soc->cdp_soc.ol_ops->peer_add_wds_entry(
|
||||
peer->vdev->osif_vdev,
|
||||
(struct cdp_peer *)peer,
|
||||
soc->ctrl_psoc,
|
||||
peer->vdev->vdev_id,
|
||||
peer->mac_addr.raw,
|
||||
mac_addr,
|
||||
next_node_mac,
|
||||
flags)) {
|
||||
@@ -954,7 +955,8 @@ int dp_peer_update_ast(struct dp_soc *soc, struct dp_peer *peer,
|
||||
TAILQ_INSERT_TAIL(&peer->ast_entry_list, ast_entry, ase_list_elem);
|
||||
|
||||
ret = soc->cdp_soc.ol_ops->peer_update_wds_entry(
|
||||
peer->vdev->osif_vdev,
|
||||
soc->ctrl_psoc,
|
||||
peer->vdev->vdev_id,
|
||||
ast_entry->mac_addr.raw,
|
||||
peer->mac_addr.raw,
|
||||
flags);
|
||||
@@ -1097,7 +1099,8 @@ void dp_peer_ast_send_wds_del(struct dp_soc *soc,
|
||||
ast_entry->next_hop, ast_entry->peer->mac_addr.raw);
|
||||
|
||||
if (ast_entry->next_hop) {
|
||||
cdp_soc->ol_ops->peer_del_wds_entry(peer->vdev->osif_vdev,
|
||||
cdp_soc->ol_ops->peer_del_wds_entry(soc->ctrl_psoc,
|
||||
peer->vdev->vdev_id,
|
||||
ast_entry->mac_addr.raw,
|
||||
ast_entry->type);
|
||||
}
|
||||
@@ -1766,7 +1769,7 @@ static QDF_STATUS dp_rx_tid_update_wifi3(struct dp_peer *peer, int tid, uint32_t
|
||||
|
||||
if (soc->cdp_soc.ol_ops->peer_rx_reorder_queue_setup)
|
||||
soc->cdp_soc.ol_ops->peer_rx_reorder_queue_setup(
|
||||
peer->vdev->pdev->ctrl_pdev,
|
||||
soc->ctrl_psoc, peer->vdev->pdev->pdev_id,
|
||||
peer->vdev->vdev_id, peer->mac_addr.raw,
|
||||
rx_tid->hw_qdesc_paddr, tid, tid, 1, ba_window_size);
|
||||
|
||||
@@ -1981,7 +1984,9 @@ try_desc_alloc:
|
||||
|
||||
if (soc->cdp_soc.ol_ops->peer_rx_reorder_queue_setup) {
|
||||
if (soc->cdp_soc.ol_ops->peer_rx_reorder_queue_setup(
|
||||
vdev->pdev->ctrl_pdev, peer->vdev->vdev_id,
|
||||
soc->ctrl_psoc,
|
||||
peer->vdev->pdev->pdev_id,
|
||||
peer->vdev->vdev_id,
|
||||
peer->mac_addr.raw, rx_tid->hw_qdesc_paddr, tid, tid,
|
||||
1, ba_window_size)) {
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR,
|
||||
@@ -2415,7 +2420,8 @@ void dp_peer_rx_cleanup(struct dp_vdev *vdev, struct dp_peer *peer, bool reuse)
|
||||
}
|
||||
#ifdef notyet /* See if FW can remove queues as part of peer cleanup */
|
||||
if (soc->ol_ops->peer_rx_reorder_queue_remove) {
|
||||
soc->ol_ops->peer_rx_reorder_queue_remove(vdev->pdev->ctrl_pdev,
|
||||
soc->ol_ops->peer_rx_reorder_queue_remove(soc->ctrl_psoc,
|
||||
peer->vdev->pdev->pdev_id,
|
||||
peer->vdev->vdev_id, peer->mac_addr.raw,
|
||||
tid_delete_mask);
|
||||
}
|
||||
|
@@ -803,8 +803,9 @@ out:
|
||||
msg.nbuf = mpdu;
|
||||
msg.vdev_id = vdev->vdev_id;
|
||||
if (pdev->soc->cdp_soc.ol_ops->rx_invalid_peer)
|
||||
pdev->soc->cdp_soc.ol_ops->rx_invalid_peer(pdev->ctrl_pdev,
|
||||
&msg);
|
||||
pdev->soc->cdp_soc.ol_ops->rx_invalid_peer(
|
||||
(struct cdp_ctrl_objmgr_psoc *)soc->ctrl_psoc,
|
||||
pdev->pdev_id, &msg);
|
||||
|
||||
free:
|
||||
/* Drop and free packet */
|
||||
|
@@ -891,7 +891,8 @@ static void dp_rx_defrag_err(struct dp_vdev *vdev, qdf_nbuf_t nbuf)
|
||||
|
||||
tops = pdev->soc->cdp_soc.ol_ops;
|
||||
if (tops->rx_mic_error)
|
||||
tops->rx_mic_error(pdev->ctrl_pdev, &mic_failure_info);
|
||||
tops->rx_mic_error(pdev->soc->ctrl_psoc, pdev->pdev_id,
|
||||
&mic_failure_info);
|
||||
}
|
||||
|
||||
|
||||
|
@@ -1115,7 +1115,8 @@ void dp_rx_process_mic_error(struct dp_soc *soc, qdf_nbuf_t nbuf,
|
||||
|
||||
tops = pdev->soc->cdp_soc.ol_ops;
|
||||
if (tops->rx_mic_error)
|
||||
tops->rx_mic_error(pdev->ctrl_pdev, &mic_failure_info);
|
||||
tops->rx_mic_error(soc->ctrl_psoc, pdev->pdev_id,
|
||||
&mic_failure_info);
|
||||
|
||||
fail:
|
||||
qdf_nbuf_free(nbuf);
|
||||
|
@@ -1381,8 +1381,6 @@ struct dp_pdev {
|
||||
/**
|
||||
* Re-use Memory Section Starts
|
||||
*/
|
||||
/* PDEV handle from OSIF layer TBD: see if we really need osif_pdev */
|
||||
struct cdp_ctrl_objmgr_pdev *ctrl_pdev;
|
||||
|
||||
/* PDEV Id */
|
||||
int pdev_id;
|
||||
@@ -1760,8 +1758,6 @@ struct dp_vdev {
|
||||
/* Handle to the OS shim SW's virtual device */
|
||||
ol_osif_vdev_handle osif_vdev;
|
||||
|
||||
/* Handle to the UMAC handle */
|
||||
struct cdp_ctrl_objmgr_vdev *ctrl_vdev;
|
||||
/* vdev_id - ID used to specify a particular vdev to the target */
|
||||
uint8_t vdev_id;
|
||||
|
||||
|
Referência em uma nova issue
Block a user