Merge "qcacmn: fix skb cb corruption issue"

This commit is contained in:
Linux Build Service Account
2017-06-27 11:49:03 -07:00
committed by Gerrit - the friendly Code Review server
63 changed files with 244 additions and 661 deletions

View File

@@ -120,7 +120,7 @@ const int dp_stats_mapping_table[][STATS_TYPE_MAX] = {
{TXRX_FW_STATS_INVALID, TXRX_RX_HOST_STATS},
};
/**
/*
* dp_setup_srng - Internal function to setup SRNG rings used by data path
*/
static int dp_srng_setup(struct dp_soc *soc, struct dp_srng *srng,
@@ -158,11 +158,26 @@ static int dp_srng_setup(struct dp_soc *soc, struct dp_srng *srng,
ring_params.msi_data = 0;
ring_params.msi_addr = 0;
/* TODO: Setup interrupt timer and batch counter thresholds for
/*
* Setup interrupt timer and batch counter thresholds for
* interrupt mitigation based on ring type
*/
ring_params.intr_timer_thres_us = 8;
ring_params.intr_batch_cntr_thres_entries = 1;
if (ring_type == REO_DST) {
ring_params.intr_timer_thres_us =
wlan_cfg_get_int_timer_threshold_rx(soc->wlan_cfg_ctx);
ring_params.intr_batch_cntr_thres_entries =
wlan_cfg_get_int_batch_threshold_rx(soc->wlan_cfg_ctx);
} else if (ring_type == WBM2SW_RELEASE && (ring_num < 3)) {
ring_params.intr_timer_thres_us =
wlan_cfg_get_int_timer_threshold_tx(soc->wlan_cfg_ctx);
ring_params.intr_batch_cntr_thres_entries =
wlan_cfg_get_int_batch_threshold_tx(soc->wlan_cfg_ctx);
} else {
ring_params.intr_timer_thres_us =
wlan_cfg_get_int_timer_threshold_other(soc->wlan_cfg_ctx);
ring_params.intr_batch_cntr_thres_entries =
wlan_cfg_get_int_timer_threshold_other(soc->wlan_cfg_ctx);
}
/* TODO: Currently hal layer takes care of endianness related settings.
* See if these settings need to passed from DP layer
@@ -3382,6 +3397,32 @@ dp_get_host_peer_stats(struct cdp_pdev *pdev_handle, char *mac_addr)
return;
}
/*
* dp_enable_enhanced_stats()- API to enable enhanced statistcs
* @pdev_handle: DP_PDEV handle
*
* Return: void
*/
static void
dp_enable_enhanced_stats(struct cdp_pdev *pdev_handle)
{
struct dp_pdev *pdev = (struct dp_pdev *)pdev_handle;
pdev->enhanced_stats_en = 1;
}
/*
* dp_disable_enhanced_stats()- API to disable enhanced statistcs
* @pdev_handle: DP_PDEV handle
*
* Return: void
*/
static void
dp_disable_enhanced_stats(struct cdp_pdev *pdev_handle)
{
struct dp_pdev *pdev = (struct dp_pdev *)pdev_handle;
pdev->enhanced_stats_en = 0;
}
/*
* dp_get_fw_peer_stats()- function to print peer stats
* @pdev_handle: DP_PDEV handle
@@ -3854,6 +3895,8 @@ static struct cdp_mon_ops dp_ops_mon = {
static struct cdp_host_stats_ops dp_ops_host_stats = {
.txrx_per_peer_stats = dp_get_host_peer_stats,
.get_fw_peer_stats = dp_get_fw_peer_stats,
.txrx_enable_enhanced_stats = dp_enable_enhanced_stats,
.txrx_disable_enhanced_stats = dp_disable_enhanced_stats,
/* TODO */
};

View File

@@ -350,8 +350,8 @@ dp_rx_intrabss_fwd(struct dp_soc *soc,
if (da_peer->vdev == sa_peer->vdev && !da_peer->bss_peer) {
memset(nbuf->cb, 0x0, sizeof(nbuf->cb));
len = qdf_nbuf_len(nbuf);
qdf_nbuf_set_fctx_type(nbuf, (void *)NULL,
CB_FTYPE_INTRABSS_FWD);
qdf_nbuf_set_ftype(nbuf, CB_FTYPE_INTRABSS_FWD);
if (!dp_tx_send(sa_peer->vdev, nbuf)) {
DP_STATS_INC_PKT(sa_peer, rx.intra_bss.pkts,
1, len);
@@ -378,8 +378,8 @@ dp_rx_intrabss_fwd(struct dp_soc *soc,
return false;
memset(nbuf_copy->cb, 0x0, sizeof(nbuf_copy->cb));
len = qdf_nbuf_len(nbuf_copy);
qdf_nbuf_set_fctx_type(nbuf_copy, (void *)NULL,
CB_FTYPE_INTRABSS_FWD);
qdf_nbuf_set_ftype(nbuf_copy, CB_FTYPE_INTRABSS_FWD);
if (dp_tx_send(sa_peer->vdev, nbuf_copy)) {
DP_STATS_INC_PKT(sa_peer, rx.intra_bss.fail, 1, len);
qdf_nbuf_free(nbuf_copy);
@@ -1123,6 +1123,8 @@ done:
continue;
}
pdev = vdev->pdev;
sgi = hal_rx_msdu_start_sgi_get(rx_tlv_hdr);
mcs = hal_rx_msdu_start_rate_mcs_get(rx_tlv_hdr);
tid = hal_rx_mpdu_start_tid_get(rx_tlv_hdr);
@@ -1279,10 +1281,12 @@ done:
DP_STATS_INCC_PKT(peer, rx.multicast, 1, pkt_len,
hal_rx_msdu_end_da_is_mcbc_get(
rx_tlv_hdr));
DP_STATS_INC_PKT(peer, rx.to_stack, 1,
pkt_len);
if (hal_rx_attn_first_mpdu_get(rx_tlv_hdr)) {
if ((pdev->enhanced_stats_en) &&
hal_rx_attn_first_mpdu_get(rx_tlv_hdr)) {
if (soc->cdp_soc.ol_ops->update_dp_stats) {
soc->cdp_soc.ol_ops->update_dp_stats(
vdev->pdev->osif_pdev,
@@ -1302,7 +1306,7 @@ done:
}
if (qdf_unlikely(vdev->rx_decap_type == htt_cmn_pkt_type_raw) ||
(vdev->rx_decap_type == htt_cmn_pkt_type_native_wifi))
(vdev->rx_decap_type == htt_cmn_pkt_type_native_wifi))
dp_rx_deliver_raw(vdev, deliver_list_head);
else if (qdf_likely(vdev->osif_rx) && deliver_list_head)
vdev->osif_rx(vdev->osif_vdev, deliver_list_head);

View File

@@ -1802,6 +1802,7 @@ static inline void dp_tx_comp_process_tx_status(struct dp_tx_desc_s *tx_desc,
struct dp_soc *soc = NULL;
struct dp_vdev *vdev = tx_desc->vdev;
struct dp_peer *peer = NULL;
struct dp_pdev *pdev = NULL;
uint8_t comp_status = 0;
qdf_mem_zero(&ts, sizeof(struct hal_tx_completion_status));
hal_tx_comp_get_status(&tx_desc->comp, &ts);
@@ -1931,15 +1932,19 @@ static inline void dp_tx_comp_process_tx_status(struct dp_tx_desc_s *tx_desc,
/* TODO: This call is temporary.
* Stats update has to be attached to the HTT PPDU message
*/
if (soc->cdp_soc.ol_ops->update_dp_stats)
soc->cdp_soc.ol_ops->update_dp_stats(vdev->pdev->osif_pdev,
&peer->stats, ts.peer_id, UPDATE_PEER_STATS);
out:
dp_aggregate_vdev_stats(tx_desc->vdev);
if (soc->cdp_soc.ol_ops->update_dp_stats)
pdev = vdev->pdev;
if (pdev->enhanced_stats_en && soc->cdp_soc.ol_ops->update_dp_stats) {
if (peer) {
soc->cdp_soc.ol_ops->update_dp_stats(pdev->osif_pdev,
&peer->stats, ts.peer_id,
UPDATE_PEER_STATS);
}
dp_aggregate_vdev_stats(tx_desc->vdev);
soc->cdp_soc.ol_ops->update_dp_stats(vdev->pdev->osif_pdev,
&vdev->stats, vdev->vdev_id, UPDATE_VDEV_STATS);
}
fail:
return;
}

View File

@@ -779,7 +779,7 @@ struct dp_pdev {
enum htt_pkt_type rx_decap_mode;
/* Enhanced Stats is enabled */
bool ap_stats_tx_cal_enable;
bool enhanced_stats_en;
qdf_atomic_t num_tx_outstanding;

View File

@@ -866,10 +866,17 @@ static inline void hal_srng_src_hw_init(struct hal_soc *hal,
* if level mode is required
*/
reg_val = 0;
/*
* WAR - Hawkeye v1 has a hardware bug which requires timer value to be
* programmed in terms of 1us resolution instead of 8us resolution as
* given in MLD.
*/
if (srng->intr_timer_thres_us) {
reg_val |= SRNG_SM(SRNG_SRC_FLD(CONSUMER_INT_SETUP_IX0,
INTERRUPT_TIMER_THRESHOLD),
srng->intr_timer_thres_us >> 3);
srng->intr_timer_thres_us);
/* For HK v2 this should be (srng->intr_timer_thres_us >> 3) */
}
if (srng->intr_batch_cntr_thres_entries) {

View File

@@ -38,8 +38,8 @@ static const struct nla_policy
vendor_attr_policy[QCA_WLAN_VENDOR_ATTR_NDP_PARAMS_MAX + 1] = {
[QCA_WLAN_VENDOR_ATTR_NDP_SUBCMD] = { .type = NLA_U32 },
[QCA_WLAN_VENDOR_ATTR_NDP_TRANSACTION_ID] = { .type = NLA_U16 },
[QCA_WLAN_VENDOR_ATTR_NDP_IFACE_STR] = { .type = NLA_STRING,
.len = IFNAMSIZ },
[QCA_WLAN_VENDOR_ATTR_NDP_IFACE_STR] = { .type = NLA_NUL_STRING,
.len = IFNAMSIZ - 1 },
[QCA_WLAN_VENDOR_ATTR_NDP_SERVICE_INSTANCE_ID] = { .type = NLA_U32 },
[QCA_WLAN_VENDOR_ATTR_NDP_CHANNEL] = { .type = NLA_U32 },
[QCA_WLAN_VENDOR_ATTR_NDP_PEER_DISCOVERY_MAC_ADDR] = {

View File

@@ -72,9 +72,7 @@ static void wlan_p2p_rx_callback(void *user_data,
return;
}
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
wlan_vdev_obj_unlock(vdev);
if (!osif_priv) {
cfg80211_err("osif_priv is null");
goto fail;
@@ -148,9 +146,7 @@ static void wlan_p2p_action_tx_cnf_callback(void *user_data,
return;
}
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
wlan_vdev_obj_unlock(vdev);
if (!osif_priv) {
cfg80211_err("osif_priv is null");
goto fail;
@@ -207,9 +203,7 @@ static void wlan_p2p_lo_event_callback(void *user_data,
return;
}
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
wlan_vdev_obj_unlock(vdev);
if (!osif_priv) {
cfg80211_err("osif_priv is null");
goto fail;
@@ -278,9 +272,7 @@ static void wlan_p2p_event_callback(void *user_data,
return;
}
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
wlan_vdev_obj_unlock(vdev);
if (!osif_priv) {
cfg80211_err("osif_priv is null");
goto fail;
@@ -360,10 +352,8 @@ int wlan_cfg80211_roc(struct wlan_objmgr_vdev *vdev,
return -EINVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
cfg80211_err("psoc handle is NULL");
return -EINVAL;
@@ -399,9 +389,7 @@ int wlan_cfg80211_cancel_roc(struct wlan_objmgr_vdev *vdev,
return -EINVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
cfg80211_err("psoc handle is NULL");
return -EINVAL;
@@ -431,10 +419,8 @@ int wlan_cfg80211_mgmt_tx(struct wlan_objmgr_vdev *vdev,
return -EINVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
cfg80211_err("psoc handle is NULL");
return -EINVAL;
@@ -485,9 +471,7 @@ int wlan_cfg80211_mgmt_tx_cancel(struct wlan_objmgr_vdev *vdev,
return -EINVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
cfg80211_err("psoc handle is NULL");
return -EINVAL;

View File

@@ -135,17 +135,13 @@ static void wlan_cfg80211_pno_callback(struct wlan_objmgr_vdev *vdev,
cfg80211_info("vdev id = %d", event->vdev_id);
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
if (!pdev) {
cfg80211_err("pdev is NULL");
return;
}
wlan_pdev_obj_lock(pdev);
pdev_ospriv = wlan_pdev_get_ospriv(pdev);
wlan_pdev_obj_unlock(pdev);
if (!pdev_ospriv) {
cfg80211_err("pdev_ospriv is NULL");
return;
@@ -169,11 +165,9 @@ static QDF_STATUS wlan_cfg80211_is_pno_allowed(struct wlan_objmgr_vdev *vdev)
enum tQDF_ADAPTER_MODE vdev_opmode;
uint8_t vdev_id;
wlan_vdev_obj_lock(vdev);
vdev_opmode = wlan_vdev_mlme_get_opmode(vdev);
state = wlan_vdev_mlme_get_state(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
cfg80211_notice("dev_mode=%d, state=%d vdev id %d",
vdev_opmode, state, vdev_id);
@@ -286,9 +280,7 @@ int wlan_cfg80211_sched_scan_start(struct wlan_objmgr_pdev *pdev,
wlan_pdev_obj_unlock(pdev);
req->networks_cnt = request->n_match_sets;
wlan_vdev_obj_lock(vdev);
req->vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if ((!req->networks_cnt) ||
(req->networks_cnt > SCAN_PNO_MAX_SUPP_NETWORKS)) {
@@ -420,6 +412,7 @@ int wlan_cfg80211_sched_scan_start(struct wlan_objmgr_pdev *pdev,
req->fast_scan_period, req->fast_scan_max_cycles,
req->slow_scan_period);
psoc = wlan_pdev_get_psoc(pdev);
ucfg_scan_register_pno_cb(psoc,
wlan_cfg80211_pno_callback, NULL);
ucfg_scan_get_pno_def_params(vdev, req);
@@ -863,9 +856,7 @@ QDF_STATUS wlan_cfg80211_scan_priv_init(struct wlan_objmgr_pdev *pdev)
struct wlan_objmgr_psoc *psoc;
wlan_scan_requester req_id;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
req_id = ucfg_scan_register_requester(psoc, "CFG",
wlan_cfg80211_scan_done_callback, NULL);
@@ -892,10 +883,8 @@ QDF_STATUS wlan_cfg80211_scan_priv_deinit(struct wlan_objmgr_pdev *pdev)
struct osif_scan_pdev *scan_priv;
struct wlan_objmgr_psoc *psoc;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
osif_priv = wlan_pdev_get_ospriv(pdev);
wlan_pdev_obj_unlock(pdev);
scan_priv = osif_priv->osif_scan;
osif_priv->osif_scan = NULL;
@@ -922,9 +911,7 @@ void wlan_cfg80211_cleanup_scan_queue(struct wlan_objmgr_pdev *pdev)
return;
}
wlan_pdev_obj_lock(pdev);
osif_priv = wlan_pdev_get_ospriv(pdev);
wlan_pdev_obj_unlock(pdev);
scan_priv = osif_priv->osif_scan;
qdf_mutex_acquire(&scan_priv->scan_req_q_lock);

View File

@@ -78,9 +78,7 @@ void hdd_notify_teardown_tdls_links(struct wlan_objmgr_vdev *vdev)
if (!vdev)
return;
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
wlan_vdev_obj_unlock(vdev);
tdls_priv = osif_priv->osif_tdls;
@@ -160,12 +158,9 @@ int wlan_cfg80211_tdls_add_peer(struct wlan_objmgr_pdev *pdev,
return -EINVAL;
}
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
tdls_priv = osif_priv->osif_tdls;
add_peer_req->vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
qdf_mem_copy(add_peer_req->peer_addr, mac, QDF_MAC_ADDR_SIZE);
@@ -374,12 +369,9 @@ int wlan_cfg80211_tdls_update_peer(struct wlan_objmgr_pdev *pdev,
}
wlan_cfg80211_tdls_extract_params(req_info, params);
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
tdls_priv = osif_priv->osif_tdls;
req_info->vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
qdf_mem_copy(req_info->peer_addr, mac, QDF_MAC_ADDR_SIZE);
reinit_completion(&tdls_priv->tdls_add_peer_comp);
@@ -516,10 +508,8 @@ int wlan_cfg80211_tdls_oper(struct wlan_objmgr_pdev *pdev,
}
break;
case NL80211_TDLS_DISABLE_LINK:
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
tdls_priv = osif_priv->osif_tdls;
wlan_vdev_obj_unlock(vdev);
reinit_completion(&tdls_priv->tdls_del_peer_comp);
status = ucfg_tdls_oper(vdev, peer, cmd);
if (QDF_IS_STATUS_ERROR(status)) {
@@ -573,9 +563,7 @@ void wlan_cfg80211_tdls_rx_callback(void *user_data,
return;
}
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
wlan_vdev_obj_unlock(vdev);
if (!osif_priv) {
cfg80211_err("osif_priv is null");
goto fail;
@@ -637,9 +625,7 @@ int wlan_cfg80211_tdls_mgmt(struct wlan_objmgr_pdev *pdev,
return -EIO;
}
wlan_vdev_obj_lock(vdev);
osif_priv = wlan_vdev_get_ospriv(vdev);
wlan_vdev_obj_unlock(vdev);
tdls_priv = osif_priv->osif_tdls;
@@ -742,9 +728,7 @@ wlan_cfg80211_tdls_indicate_discovery(struct tdls_osif_indication *ind)
{
struct vdev_osif_priv *osif_vdev;
wlan_vdev_obj_lock(ind->vdev);
osif_vdev = wlan_vdev_get_ospriv(ind->vdev);
wlan_vdev_obj_unlock(ind->vdev);
cfg80211_info("Implicit TDLS, request Send Discovery request");
cfg80211_tdls_oper_request(osif_vdev->wdev->netdev,
@@ -757,9 +741,7 @@ wlan_cfg80211_tdls_indicate_setup(struct tdls_osif_indication *ind)
{
struct vdev_osif_priv *osif_vdev;
wlan_vdev_obj_lock(ind->vdev);
osif_vdev = wlan_vdev_get_ospriv(ind->vdev);
wlan_vdev_obj_unlock(ind->vdev);
cfg80211_info("Indication to request TDLS setup");
cfg80211_tdls_oper_request(osif_vdev->wdev->netdev,
@@ -772,9 +754,7 @@ wlan_cfg80211_tdls_indicate_teardown(struct tdls_osif_indication *ind)
{
struct vdev_osif_priv *osif_vdev;
wlan_vdev_obj_lock(ind->vdev);
osif_vdev = wlan_vdev_get_ospriv(ind->vdev);
wlan_vdev_obj_unlock(ind->vdev);
cfg80211_info("Teardown reason %d", ind->reason);
cfg80211_tdls_oper_request(osif_vdev->wdev->netdev,
@@ -793,10 +773,8 @@ void wlan_cfg80211_tdls_event_callback(void *user_data,
cfg80211_err("ind: %p", ind);
return;
}
wlan_vdev_obj_lock(ind->vdev);
osif_vdev = wlan_vdev_get_ospriv(ind->vdev);
tdls_priv = osif_vdev->osif_tdls;
wlan_vdev_obj_unlock(ind->vdev);
switch (type) {
case TDLS_EVENT_MGMT_TX_ACK_CNF:

View File

@@ -61,9 +61,7 @@ static inline enum tQDF_ADAPTER_MODE pmo_get_vdev_opmode(
{
enum tQDF_ADAPTER_MODE opmode;
wlan_vdev_obj_lock(vdev);
opmode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
return opmode;
}
@@ -186,9 +184,7 @@ static inline enum tQDF_ADAPTER_MODE pmo_core_get_vdev_op_mode(
if (!vdev)
return op_mode;
wlan_vdev_obj_lock(vdev);
op_mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
return op_mode;
}
@@ -361,9 +357,7 @@ bool pmo_is_vdev_up(struct wlan_objmgr_vdev *vdev)
pmo_err("vdev context is invalid!");
return false;
}
wlan_vdev_obj_lock(vdev);
state = wlan_vdev_mlme_get_state(vdev);
wlan_vdev_obj_unlock(vdev);
return state == WLAN_VDEV_S_RUN;
}

View File

@@ -59,9 +59,7 @@ pmo_vdev_get_id(struct wlan_objmgr_vdev *vdev)
{
uint8_t vdev_id;
wlan_vdev_obj_lock(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
QDF_BUG(vdev_id < WLAN_UMAC_PSOC_MAX_VDEVS);
@@ -141,9 +139,7 @@ pmo_psoc_get_priv(struct wlan_objmgr_psoc *psoc)
{
struct pmo_psoc_priv_obj *psoc_priv;
wlan_psoc_obj_lock(psoc);
psoc_priv = pmo_psoc_get_priv_nolock(psoc);
wlan_psoc_obj_unlock(psoc);
QDF_BUG(psoc_priv);
@@ -157,9 +153,7 @@ pmo_pdev_get_psoc(struct wlan_objmgr_pdev *pdev)
{
struct wlan_objmgr_psoc *psoc;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
QDF_BUG(psoc);
@@ -179,9 +173,7 @@ pmo_vdev_get_priv(struct wlan_objmgr_vdev *vdev)
{
struct pmo_vdev_priv_obj *vdev_priv;
wlan_vdev_obj_lock(vdev);
vdev_priv = pmo_vdev_get_priv_nolock(vdev);
wlan_vdev_obj_unlock(vdev);
QDF_BUG(vdev_priv);
@@ -193,9 +185,7 @@ pmo_vdev_get_pdev(struct wlan_objmgr_vdev *vdev)
{
struct wlan_objmgr_pdev *pdev;
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
QDF_BUG(pdev);

View File

@@ -156,10 +156,8 @@ uint8_t pmo_core_get_vdev_dtim_period(struct wlan_objmgr_vdev *vdev)
QDF_ASSERT(0);
return 0;
}
wlan_vdev_obj_lock(vdev);
/* TODO */
/* dtim_period = wlan_vdev_mlme_get_dtim_period(vdev); */
wlan_vdev_obj_unlock(vdev);
return dtim_period;
}
@@ -180,10 +178,8 @@ uint16_t pmo_core_get_vdev_beacon_interval(struct wlan_objmgr_vdev *vdev)
QDF_ASSERT(0);
return 0;
}
wlan_vdev_obj_lock(vdev);
/* TODO */
/* beacon_interval = wlan_vdev_mlme_get_beacon_interval(vdev); */
wlan_vdev_obj_unlock(vdev);
return beacon_interval;
}

View File

@@ -85,14 +85,11 @@ QDF_STATUS pmo_get_vdev_bss_peer_mac_addr(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
if (!peer) {
wlan_vdev_obj_unlock(vdev);
pmo_err("peer is null");
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_unlock(vdev);
wlan_peer_obj_lock(peer);
qdf_mem_copy(bss_peer_mac_address->bytes, wlan_peer_get_macaddr(peer),
@@ -124,17 +121,13 @@ bool pmo_core_is_vdev_connected(struct wlan_objmgr_vdev *vdev)
struct wlan_objmgr_peer *peer;
enum wlan_peer_state peer_state;
wlan_vdev_obj_lock(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
wlan_vdev_obj_unlock(vdev);
if (!peer) {
pmo_err("peer is null");
return false;
}
wlan_peer_obj_lock(peer);
peer_state = wlan_peer_mlme_get_state(peer);
wlan_peer_obj_unlock(peer);
if (peer_state != WLAN_ASSOC_STATE) {
pmo_err("peer is not associated.peer state: %d",

View File

@@ -559,6 +559,12 @@ qdf_nbuf_set_vdev_ctx(qdf_nbuf_t buf, void *vdev_ctx)
__qdf_nbuf_set_vdev_ctx(buf, vdev_ctx);
}
static inline void
qdf_nbuf_set_ftype(qdf_nbuf_t buf, uint8_t type)
{
__qdf_nbuf_set_ftype(buf, type);
}
static inline void
qdf_nbuf_set_fctx_type(qdf_nbuf_t buf, void *ctx, uint8_t type)
{

View File

@@ -196,9 +196,9 @@ struct qdf_nbuf_cb {
} trace; /* 4 bytes */
uint32_t submit_ts;
} u;
uint8_t ftype;
void *fctx;
void *vdev_ctx;
uint8_t ftype;
} win; /* 21 bytes*/
struct {
uint32_t data_attr; /* 4 bytes */
@@ -220,7 +220,8 @@ struct qdf_nbuf_cb {
priv:31;
} ipa; /* 4 */
uint16_t desc_id; /* 2 bytes */
} mcl;/* 14 bytes*/
uint8_t ftype; /*1 byte */
} mcl;/* 15 bytes*/
} dev;
} tx; /* 40 bytes */
} u;
@@ -309,8 +310,6 @@ struct qdf_nbuf_cb {
#define QDF_NBUF_CB_TX_IPA_PRIV(skb) \
(((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.mcl.ipa.priv)
#define QDF_NBUF_CB_TX_FTYPE(skb) \
(((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.win.ftype)
#define QDF_NBUF_CB_TX_FCTX(skb) \
(((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.win.fctx)
@@ -360,6 +359,8 @@ struct qdf_nbuf_cb {
#define QDF_NBUF_CB_SET_MCAST(skb) \
(((struct qdf_nbuf_cb *) \
((skb)->cb))->u.tx.dev.mcl.trace.is_mcast = true)
#define QDF_NBUF_CB_TX_FTYPE(skb) \
(((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.mcl.ftype)
#else
@@ -416,6 +417,9 @@ struct qdf_nbuf_cb {
#define QDF_NBUF_CB_SET_MCAST(skb) \
(((struct qdf_nbuf_cb *) \
((skb)->cb))->u.tx.dev.win.u.trace.is_mcast = true)
#define QDF_NBUF_CB_TX_FTYPE(skb) \
(((struct qdf_nbuf_cb *)((skb)->cb))->u.tx.dev.win.ftype)
#endif
/* assume the OS provides a single fragment */
@@ -492,6 +496,11 @@ typedef void (*qdf_nbuf_free_t)(__qdf_nbuf_t);
#define __qdf_nbuf_get_vdev_ctx(skb) \
QDF_NBUF_CB_TX_VDEV_CTX((skb))
#define __qdf_nbuf_set_ftype(skb, type) \
do { \
QDF_NBUF_CB_TX_FTYPE((skb)) = (type); \
} while (0)
#define __qdf_nbuf_set_fctx_type(skb, ctx, type) \
do { \
QDF_NBUF_CB_TX_FCTX((skb)) = (ctx); \

View File

@@ -78,9 +78,7 @@ static int target_if_dfs_cac_complete_event_handler(
return -EINVAL;
}
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
if (!pdev) {
target_if_err("null pdev");
ret = -EINVAL;
@@ -180,9 +178,7 @@ static QDF_STATUS target_if_dfs_register_event_handler(
QDF_STATUS status = QDF_STATUS_SUCCESS;
struct wlan_objmgr_psoc *psoc = NULL;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
target_if_err("null psoc");
return QDF_STATUS_E_FAILURE;

View File

@@ -40,10 +40,8 @@ QDF_STATUS target_if_pmo_send_arp_offload_req(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -39,10 +39,8 @@ QDF_STATUS target_if_pmo_send_gtk_offload_req(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -77,10 +75,8 @@ QDF_STATUS target_if_pmo_send_gtk_response_req(struct wlan_objmgr_vdev *vdev)
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -40,10 +40,8 @@ QDF_STATUS target_if_pmo_set_mc_filter_req(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -72,10 +70,8 @@ QDF_STATUS target_if_pmo_clear_mc_filter_req(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -40,10 +40,8 @@ QDF_STATUS target_if_pmo_send_ns_offload_req(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -39,10 +39,8 @@ QDF_STATUS target_if_pmo_send_pkt_filter_req(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -80,10 +78,8 @@ QDF_STATUS target_if_pmo_clear_pkt_filter_req(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -39,10 +39,8 @@ QDF_STATUS target_if_pmo_send_ra_filter_req(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -70,10 +68,8 @@ QDF_STATUS target_if_pmo_send_action_frame_patterns(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -100,10 +96,8 @@ QDF_STATUS target_if_pmo_send_enhance_mc_offload_req(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -42,10 +42,8 @@ QDF_STATUS target_if_pmo_send_vdev_update_param_req(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -87,10 +85,8 @@ QDF_STATUS target_if_pmo_send_vdev_ps_param_req(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -39,10 +39,8 @@ QDF_STATUS target_if_pmo_enable_wow_wakeup_event(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -68,10 +66,8 @@ QDF_STATUS target_if_pmo_disable_wow_wakeup_event(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;
@@ -100,10 +96,8 @@ QDF_STATUS target_if_pmo_send_wow_patterns_to_fw(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
target_if_err("psoc handle is NULL");
return QDF_STATUS_E_INVAL;

View File

@@ -30,13 +30,9 @@ bool son_ol_is_peer_inact(struct wlan_objmgr_peer *peer)
struct wlan_objmgr_pdev *pdev = NULL;
struct wlan_objmgr_vdev *vdev = NULL;
wlan_peer_obj_lock(peer);
vdev = wlan_peer_get_vdev(peer);
wlan_peer_obj_unlock(peer);
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
return cdp_peer_is_inact(ol_if_pdev_get_soc_txhandle(pdev),
(void *)(ol_if_peer_get_txrx_handle(peer)));
@@ -91,9 +87,7 @@ QDF_STATUS son_ol_send_null(struct wlan_objmgr_pdev *pdev,
struct stats_request_params param = {0};
struct wlan_objmgr_psoc *psoc = NULL;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if( !psoc)
return QDF_STATUS_E_FAILURE;

View File

@@ -346,8 +346,9 @@ QDF_STATUS wlan_crypto_setkey(struct wlan_objmgr_vdev *vdev,
req_key->flags |= WLAN_CRYPTO_KEY_GROUP;
}
wlan_vdev_obj_lock(vdev);
vdev_mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_lock(vdev);
qdf_mem_copy(macaddr, wlan_vdev_mlme_get_macaddr(vdev), WLAN_ALEN);
psoc = wlan_vdev_get_psoc(vdev);
if (!psoc) {
@@ -384,9 +385,7 @@ QDF_STATUS wlan_crypto_setkey(struct wlan_objmgr_vdev *vdev,
key = crypto_priv->key[req_key->keyix];
}
if (vdev_mode == QDF_STA_MODE) {
wlan_vdev_obj_lock(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
wlan_vdev_obj_unlock(vdev);
if (!peer) {
qdf_print("%s[%d] peer is null\n",
__func__, __LINE__);
@@ -2135,10 +2134,8 @@ QDF_STATUS wlan_crypto_set_peer_wep_keys(struct wlan_objmgr_vdev *vdev,
if (!vdev)
return QDF_STATUS_E_NULL_VALUE;
wlan_vdev_obj_lock(vdev);
opmode = wlan_vdev_mlme_get_opmode(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
qdf_print("%s[%d] psoc NULL\n", __func__, __LINE__);

View File

@@ -27,10 +27,8 @@
static inline void *wlan_get_vdev_crypto_obj(struct wlan_objmgr_vdev *vdev)
{
void *crypto_priv;
wlan_vdev_obj_lock(vdev);
crypto_priv = wlan_objmgr_vdev_get_comp_private_obj(vdev,
WLAN_UMAC_COMP_CRYPTO);
wlan_vdev_obj_unlock(vdev);
return crypto_priv;
}
@@ -38,10 +36,8 @@ static inline void *wlan_get_vdev_crypto_obj(struct wlan_objmgr_vdev *vdev)
static inline void *wlan_get_peer_crypto_obj(struct wlan_objmgr_peer *peer)
{
void *crypto_priv;
wlan_peer_obj_lock(peer);
crypto_priv = wlan_objmgr_peer_get_comp_private_obj(peer,
WLAN_UMAC_COMP_CRYPTO);
wlan_peer_obj_unlock(peer);
return crypto_priv;
}

View File

@@ -384,8 +384,6 @@ struct wlan_objmgr_vdev *wlan_objmgr_get_vdev_by_macaddr_from_pdev_no_state(
*
* API to get component private object
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void *ptr on SUCCESS
* NULL on Failure
*/
@@ -428,15 +426,12 @@ static inline void wlan_pdev_obj_unlock(struct wlan_objmgr_pdev *pdev)
*
* API to get the psoc object from PDEV
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return:
* @psoc: PSOC object
*/
static inline struct wlan_objmgr_psoc *wlan_pdev_get_psoc(
struct wlan_objmgr_pdev *pdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return pdev->pdev_objmgr.wlan_psoc;
}
@@ -447,14 +442,11 @@ static inline struct wlan_objmgr_psoc *wlan_pdev_get_psoc(
*
* API to set the psoc object from PDEV
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void
*/
static inline void wlan_pdev_set_psoc(struct wlan_objmgr_pdev *pdev,
struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
pdev->pdev_objmgr.wlan_psoc = psoc;
}
@@ -465,14 +457,11 @@ static inline void wlan_pdev_set_psoc(struct wlan_objmgr_pdev *pdev,
*
* API to set fw caps in pdev
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void
*/
static inline void wlan_pdev_nif_fw_cap_set(struct wlan_objmgr_pdev *pdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
pdev->pdev_nif.pdev_fw_caps |= cap;
}
@@ -483,14 +472,11 @@ static inline void wlan_pdev_nif_fw_cap_set(struct wlan_objmgr_pdev *pdev,
*
* API to clear fw caps in pdev
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void
*/
static inline void wlan_pdev_nif_fw_cap_clear(struct wlan_objmgr_pdev *pdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
pdev->pdev_nif.pdev_fw_caps &= ~cap;
}
@@ -501,14 +487,11 @@ static inline void wlan_pdev_nif_fw_cap_clear(struct wlan_objmgr_pdev *pdev,
*
* API to know, whether particular fw caps flag is set in pdev
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: 1 (for set) or 0 (for not set)
*/
static inline uint8_t wlan_pdev_nif_fw_cap_get(struct wlan_objmgr_pdev *pdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (pdev->pdev_nif.pdev_fw_caps & cap) ? 1 : 0;
}
@@ -519,14 +502,11 @@ static inline uint8_t wlan_pdev_nif_fw_cap_get(struct wlan_objmgr_pdev *pdev,
*
* API to set feat caps in pdev
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void
*/
static inline void wlan_pdev_nif_feat_cap_set(struct wlan_objmgr_pdev *pdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
pdev->pdev_nif.pdev_feature_caps |= cap;
}
@@ -537,14 +517,11 @@ static inline void wlan_pdev_nif_feat_cap_set(struct wlan_objmgr_pdev *pdev,
*
* API to clear feat caps in pdev
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void
*/
static inline void wlan_pdev_nif_feat_cap_clear(struct wlan_objmgr_pdev *pdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
pdev->pdev_nif.pdev_feature_caps &= ~cap;
}
@@ -555,14 +532,11 @@ static inline void wlan_pdev_nif_feat_cap_clear(struct wlan_objmgr_pdev *pdev,
*
* API to know, whether particular feat caps flag is set in pdev
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: 1 (for set) or 0 (for not set)
*/
static inline uint8_t wlan_pdev_nif_feat_cap_get(struct wlan_objmgr_pdev *pdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (pdev->pdev_nif.pdev_feature_caps & cap) ? 1 : 0;
}
@@ -611,14 +585,11 @@ static inline void wlan_pdev_set_hw_macaddr(struct wlan_objmgr_pdev *pdev,
*
* API to get OS private pointer from PDEV
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: ospriv - private pointer
*/
static inline struct pdev_osif_priv *wlan_pdev_get_ospriv(
struct wlan_objmgr_pdev *pdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return pdev->pdev_nif.pdev_ospriv;
}
@@ -628,13 +599,10 @@ static inline struct pdev_osif_priv *wlan_pdev_get_ospriv(
*
* API to reset OS private pointer in PDEV
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void
*/
static inline void wlan_pdev_reset_ospriv(struct wlan_objmgr_pdev *pdev)
{
/* This API is invoked with lock acquired, do not add log prints */
pdev->pdev_nif.pdev_ospriv = NULL;
}
@@ -645,14 +613,11 @@ static inline void wlan_pdev_reset_ospriv(struct wlan_objmgr_pdev *pdev)
*
* API to set Max vdev count
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: void
*/
static inline void wlan_pdev_set_max_vdev_count(struct wlan_objmgr_pdev *pdev,
uint8_t max_vdev_count)
{
/* This API is invoked with lock acquired, do not add log prints */
pdev->pdev_objmgr.max_vdev_count = max_vdev_count;
}
@@ -662,14 +627,11 @@ static inline void wlan_pdev_set_max_vdev_count(struct wlan_objmgr_pdev *pdev,
*
* API to set Max vdev count
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: @vdev count: Max vdev count
*/
static inline uint8_t wlan_pdev_get_max_vdev_count(
struct wlan_objmgr_pdev *pdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return pdev->pdev_objmgr.max_vdev_count;
}
@@ -756,14 +718,11 @@ void wlan_objmgr_pdev_release_ref(struct wlan_objmgr_pdev *pdev,
*
* API to get pdev id from pdev object
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: @pdev id
*/
static inline
uint8_t wlan_objmgr_pdev_get_pdev_id(struct wlan_objmgr_pdev *pdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return pdev->pdev_objmgr.wlan_pdev_id;
}
@@ -794,13 +753,10 @@ static inline void wlan_pdev_set_tgt_if_handle(struct wlan_objmgr_pdev *pdev,
*
* API to get target interface handle from pdev object
*
* Caller need to acquire lock with wlan_pdev_obj_lock()
*
* Return: target interface handle
*/
static inline void *wlan_pdev_get_tgt_if_handle(struct wlan_objmgr_pdev *pdev)
{
/* This API is invoked with lock acquired, do not add log prints */
if (pdev == NULL)
return NULL;

View File

@@ -296,8 +296,6 @@ QDF_STATUS wlan_objmgr_trigger_peer_comp_priv_object_deletion(
*
* API to get component private object
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: void *ptr on SUCCESS
* NULL on Failure
*/
@@ -563,14 +561,11 @@ static inline void wlan_peer_set_next_peer_of_psoc(qdf_list_t *peer_list,
*
* API to set peer type
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: void
*/
static inline void wlan_peer_set_peer_type(struct wlan_objmgr_peer *peer,
enum wlan_peer_type type)
{
/* This API is invoked with lock acquired, do not add log prints */
peer->peer_mlme.peer_type = type;
}
@@ -580,15 +575,12 @@ static inline void wlan_peer_set_peer_type(struct wlan_objmgr_peer *peer,
*
* API to get peer type
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return:
* @peer_type: type of PEER
*/
static inline enum wlan_peer_type wlan_peer_get_peer_type(
struct wlan_objmgr_peer *peer)
{
/* This API is invoked with lock acquired, do not add log prints */
return peer->peer_mlme.peer_type;
}
@@ -633,15 +625,12 @@ static inline uint8_t *wlan_peer_get_macaddr(struct wlan_objmgr_peer *peer)
*
* API to get peer's vdev
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return:
* @vdev: VDEV object
*/
static inline struct wlan_objmgr_vdev *wlan_peer_get_vdev(
struct wlan_objmgr_peer *peer)
{
/* This API is invoked with lock acquired, do not add log prints */
return peer->peer_objmgr.vdev;
}
@@ -652,14 +641,11 @@ static inline struct wlan_objmgr_vdev *wlan_peer_get_vdev(
*
* API to set peer's vdev
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: void
*/
static inline void wlan_peer_set_vdev(struct wlan_objmgr_peer *peer,
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
peer->peer_objmgr.vdev = vdev;
}
@@ -670,14 +656,11 @@ static inline void wlan_peer_set_vdev(struct wlan_objmgr_peer *peer,
*
* API to set flag in peer
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: void
*/
static inline void wlan_peer_mlme_flag_set(struct wlan_objmgr_peer *peer,
uint32_t flag)
{
/* This API is invoked with lock acquired, do not add log prints */
peer->peer_mlme.peer_flags |= flag;
}
@@ -688,14 +671,11 @@ static inline void wlan_peer_mlme_flag_set(struct wlan_objmgr_peer *peer,
*
* API to clear flag in peer
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: void
*/
static inline void wlan_peer_mlme_flag_clear(struct wlan_objmgr_peer *peer,
uint32_t flag)
{
/* This API is invoked with lock acquired, do not add log prints */
peer->peer_mlme.peer_flags &= ~flag;
}
@@ -706,14 +686,11 @@ static inline void wlan_peer_mlme_flag_clear(struct wlan_objmgr_peer *peer,
*
* API to know, whether particular flag is set in peer
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: 1 (for set) or 0 (for not set)
*/
static inline uint8_t wlan_peer_mlme_flag_get(struct wlan_objmgr_peer *peer,
uint32_t flag)
{
/* This API is invoked with lock acquired, do not add log prints */
return (peer->peer_mlme.peer_flags & flag) ? 1 : 0;
}
@@ -724,15 +701,12 @@ static inline uint8_t wlan_peer_mlme_flag_get(struct wlan_objmgr_peer *peer,
*
* API to update the current peer state
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: void
*/
static inline void wlan_peer_mlme_set_state(
struct wlan_objmgr_peer *peer,
enum wlan_peer_state state)
{
/* This API is invoked with lock acquired, do not add log prints */
peer->peer_mlme.state = state;
}
@@ -743,15 +717,12 @@ static inline void wlan_peer_mlme_set_state(
*
* API to update the current peer auth state
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: void
*/
static inline void wlan_peer_mlme_set_auth_state(
struct wlan_objmgr_peer *peer,
bool is_authenticated)
{
/* This API is invoked with lock acquired, do not add log prints */
peer->peer_mlme.is_authenticated = is_authenticated;
}
@@ -761,14 +732,11 @@ static inline void wlan_peer_mlme_set_auth_state(
*
* API to get peer state
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: enum wlan_peer_state
*/
static inline enum wlan_peer_state wlan_peer_mlme_get_state(
struct wlan_objmgr_peer *peer)
{
/* This API is invoked with lock acquired, do not add log prints */
return peer->peer_mlme.state;
}
@@ -778,14 +746,11 @@ static inline enum wlan_peer_state wlan_peer_mlme_get_state(
*
* API to get peer auth state
*
* Caller need to acquire lock with wlan_peer_obj_lock()
*
* Return: auth state true/false
*/
static inline bool wlan_peer_mlme_get_auth_state(
struct wlan_objmgr_peer *peer)
{
/* This API is invoked with lock acquired, do not add log prints */
return peer->peer_mlme.is_authenticated;
}

View File

@@ -759,14 +759,11 @@ static inline void wlan_psoc_obj_unlock(struct wlan_objmgr_psoc *psoc)
*
* API to set nif phy version in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_set_nif_phy_version(struct wlan_objmgr_psoc *psoc,
uint32_t phy_ver)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.phy_version = phy_ver;
}
@@ -776,16 +773,14 @@ static inline void wlan_psoc_set_nif_phy_version(struct wlan_objmgr_psoc *psoc,
*
* API to set nif phy version in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: @phy_ver: phy version
*/
static inline uint32_t wlan_psoc_get_nif_phy_version(
struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return (uint32_t)-1;
return psoc->soc_nif.phy_version;
}
@@ -796,14 +791,11 @@ static inline uint32_t wlan_psoc_get_nif_phy_version(
*
* API to set dev type in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_set_dev_type(struct wlan_objmgr_psoc *psoc,
WLAN_DEV_TYPE phy_type)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.phy_type = phy_type;
}
@@ -813,16 +805,14 @@ static inline void wlan_psoc_set_dev_type(struct wlan_objmgr_psoc *psoc,
*
* API to get dev type in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: phy type (OL/DA)
*/
static inline WLAN_DEV_TYPE wlan_objmgr_psoc_get_dev_type(
struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return (uint32_t)-1;
return psoc->soc_nif.phy_type;
}
@@ -833,14 +823,11 @@ static inline WLAN_DEV_TYPE wlan_objmgr_psoc_get_dev_type(
*
* API to set fw caps in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_nif_fw_cap_set(struct wlan_objmgr_psoc *psoc,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.soc_fw_caps |= cap;
}
@@ -851,14 +838,11 @@ static inline void wlan_psoc_nif_fw_cap_set(struct wlan_objmgr_psoc *psoc,
*
* API to clear fw caps in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_nif_fw_cap_clear(struct wlan_objmgr_psoc *psoc,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.soc_fw_caps &= ~cap;
}
@@ -869,14 +853,11 @@ static inline void wlan_psoc_nif_fw_cap_clear(struct wlan_objmgr_psoc *psoc,
*
* API to know, whether particular fw caps flag is set in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: 1 (for set) or 0 (for not set)
*/
static inline uint8_t wlan_psoc_nif_fw_cap_get(struct wlan_objmgr_psoc *psoc,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (psoc->soc_nif.soc_fw_caps & cap) ? 1 : 0;
}
@@ -887,14 +868,11 @@ static inline uint8_t wlan_psoc_nif_fw_cap_get(struct wlan_objmgr_psoc *psoc,
*
* API to set fw ext caps in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_nif_fw_ext_cap_set(struct wlan_objmgr_psoc *psoc,
uint32_t ext_cap)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.soc_fw_ext_caps |= ext_cap;
}
@@ -905,14 +883,11 @@ static inline void wlan_psoc_nif_fw_ext_cap_set(struct wlan_objmgr_psoc *psoc,
*
* API to clear fw ext caps in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_nif_fw_ext_cap_clear(struct wlan_objmgr_psoc *psoc,
uint32_t ext_cap)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.soc_fw_ext_caps &= ~ext_cap;
}
@@ -923,14 +898,11 @@ static inline void wlan_psoc_nif_fw_ext_cap_clear(struct wlan_objmgr_psoc *psoc,
*
* API to know, whether particular fw caps flag is set in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: 1 (for set) or 0 (for not set)
*/
static inline uint8_t wlan_psoc_nif_fw_ext_cap_get(
struct wlan_objmgr_psoc *psoc, uint32_t ext_cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (psoc->soc_nif.soc_fw_ext_caps & ext_cap) ? 1 : 0;
}
@@ -941,14 +913,11 @@ static inline uint8_t wlan_psoc_nif_fw_ext_cap_get(
*
* API to set feature caps in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_nif_feat_cap_set(struct wlan_objmgr_psoc *psoc,
uint32_t feat_cap)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.soc_feature_caps |= feat_cap;
}
@@ -959,14 +928,11 @@ static inline void wlan_psoc_nif_feat_cap_set(struct wlan_objmgr_psoc *psoc,
*
* API to clear feature caps in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: void
*/
static inline void wlan_psoc_nif_feat_cap_clear(struct wlan_objmgr_psoc *psoc,
uint32_t feat_cap)
{
/* This API is invoked with lock acquired, do not add log prints */
psoc->soc_nif.soc_feature_caps &= ~feat_cap;
}
@@ -977,14 +943,11 @@ static inline void wlan_psoc_nif_feat_cap_clear(struct wlan_objmgr_psoc *psoc,
*
* API to know, whether particular feature cap flag is set in psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: 1 (for set) or 0 (for not set)
*/
static inline uint8_t wlan_psoc_nif_feat_cap_get(struct wlan_objmgr_psoc *psoc,
uint32_t feat_cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (psoc->soc_nif.soc_feature_caps & feat_cap) ? 1 : 0;
}
@@ -1013,15 +976,13 @@ static inline void wlan_psoc_set_hw_macaddr(struct wlan_objmgr_psoc *psoc,
*
* API to set hw macaddr of psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: hw macaddr
*/
static inline uint8_t *wlan_psoc_get_hw_macaddr(struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return NULL;
return psoc->soc_nif.soc_hw_macaddr;
}
@@ -1033,8 +994,6 @@ static inline uint8_t *wlan_psoc_get_hw_macaddr(struct wlan_objmgr_psoc *psoc)
* This API is used to get the component private object pointer tied to the
* corresponding psoc object
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: Component private object
*/
void *wlan_objmgr_psoc_get_comp_private_obj(struct wlan_objmgr_psoc *psoc,
@@ -1045,13 +1004,10 @@ void *wlan_objmgr_psoc_get_comp_private_obj(struct wlan_objmgr_psoc *psoc,
*
* API to get number of pdev's attached to the psoc
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: number of pdev's
*/
static inline uint8_t wlan_psoc_get_pdev_count(struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return 0;
@@ -1065,16 +1021,14 @@ static inline uint8_t wlan_psoc_get_pdev_count(struct wlan_objmgr_psoc *psoc)
*
* API to set target interface handle in psoc object
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: None
*/
static inline void wlan_psoc_set_tgt_if_handle(struct wlan_objmgr_psoc *psoc,
void *tgt_if_handle)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return;
psoc->tgt_if_handle = tgt_if_handle;
}
@@ -1084,15 +1038,13 @@ static inline void wlan_psoc_set_tgt_if_handle(struct wlan_objmgr_psoc *psoc,
*
* API to get target interface handle from psoc object
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: target interface handle
*/
static inline void *wlan_psoc_get_tgt_if_handle(struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return NULL;
return psoc->tgt_if_handle;
}
@@ -1102,14 +1054,11 @@ static inline void *wlan_psoc_get_tgt_if_handle(struct wlan_objmgr_psoc *psoc)
*
* API to get qdf device from psoc object
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: qdf_device_t
*/
static inline qdf_device_t wlan_psoc_get_qdf_dev(
struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return NULL;
@@ -1123,15 +1072,12 @@ static inline qdf_device_t wlan_psoc_get_qdf_dev(
*
* API to set qdf device from psoc object
*
* Caller need to acquire lock with wlan_psoc_obj_lock()
*
* Return: None
*/
static inline void wlan_psoc_set_qdf_dev(
struct wlan_objmgr_psoc *psoc,
qdf_device_t dev)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return;
@@ -1232,7 +1178,6 @@ QDF_STATUS wlan_objmgr_psoc_set_user_config(struct wlan_objmgr_psoc *psoc,
static inline uint32_t wlan_objmgr_psoc_get_dual_mac_disable(
struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return 0;
return psoc->soc_nif.user_config.dual_mac_feature_disable;
@@ -1248,7 +1193,6 @@ static inline uint32_t wlan_objmgr_psoc_get_dual_mac_disable(
static inline uint8_t wlan_objmgr_psoc_get_band_capability(
struct wlan_objmgr_psoc *psoc)
{
/* This API is invoked with lock acquired, do not add log prints */
if (psoc == NULL)
return 0;

View File

@@ -494,8 +494,6 @@ QDF_STATUS wlan_objmgr_trigger_vdev_comp_priv_object_deletion(
*
* API to get component private object
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void *ptr on SUCCESS
* NULL on Failure
*/
@@ -511,14 +509,11 @@ void *wlan_objmgr_vdev_get_comp_private_obj(
*
* API to get pdev object pointer from vdev
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: pdev object pointer
*/
static inline struct wlan_objmgr_pdev *wlan_vdev_get_pdev(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_objmgr.wlan_pdev;
}
@@ -603,8 +598,6 @@ static inline void wlan_vdev_set_pdev(struct wlan_objmgr_vdev *vdev,
*
* API to get pdev object pointer from vdev
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: psoc object pointer
*/
static inline struct wlan_objmgr_psoc *wlan_vdev_get_psoc(
@@ -613,7 +606,6 @@ static inline struct wlan_objmgr_psoc *wlan_vdev_get_psoc(
struct wlan_objmgr_pdev *pdev;
struct wlan_objmgr_psoc *psoc = NULL;
/* This API is invoked with lock acquired, do not add log prints */
pdev = wlan_vdev_get_pdev(vdev);
if (pdev == NULL)
return NULL;
@@ -630,14 +622,11 @@ static inline struct wlan_objmgr_psoc *wlan_vdev_get_psoc(
*
* API to set opmode in vdev object
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_opmode(struct wlan_objmgr_vdev *vdev,
enum tQDF_ADAPTER_MODE mode)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.vdev_opmode = mode;
}
@@ -647,15 +636,12 @@ static inline void wlan_vdev_mlme_set_opmode(struct wlan_objmgr_vdev *vdev,
*
* API to set opmode of vdev object
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @mode: VDEV op mode
*/
static inline enum tQDF_ADAPTER_MODE wlan_vdev_mlme_get_opmode(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.vdev_opmode;
}
@@ -735,14 +721,11 @@ static inline uint8_t *wlan_vdev_mlme_get_mataddr(struct wlan_objmgr_vdev *vdev)
*
* API to get vdev id
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @id: vdev id
*/
static inline uint8_t wlan_vdev_get_id(struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_objmgr.vdev_id;
}
@@ -861,14 +844,11 @@ static inline void wlan_vdev_obj_unlock(struct wlan_objmgr_vdev *vdev)
*
* API to set the BSS channel
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_bss_chan(struct wlan_objmgr_vdev *vdev,
struct wlan_channel *bss_chan)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.bss_chan = bss_chan;
}
@@ -878,15 +858,12 @@ static inline void wlan_vdev_mlme_set_bss_chan(struct wlan_objmgr_vdev *vdev,
*
* API to get the BSS channel
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @bss_chan: Channel
*/
static inline struct wlan_channel *wlan_vdev_mlme_get_bss_chan(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.bss_chan;
}
@@ -897,14 +874,11 @@ static inline struct wlan_channel *wlan_vdev_mlme_get_bss_chan(
*
* API to set the desired channel
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_des_chan(struct wlan_objmgr_vdev *vdev,
struct wlan_channel *des_chan)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.des_chan = des_chan;
}
@@ -914,15 +888,12 @@ static inline void wlan_vdev_mlme_set_des_chan(struct wlan_objmgr_vdev *vdev,
*
* API to get the desired channel
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @des_chan: Channel configured by user
*/
static inline struct wlan_channel *wlan_vdev_mlme_get_des_chan(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.des_chan;
}
@@ -933,14 +904,11 @@ static inline struct wlan_channel *wlan_vdev_mlme_get_des_chan(
*
* API to set the Number of Spatial streams
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_nss(struct wlan_objmgr_vdev *vdev,
uint8_t nss)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.nss = nss;
}
@@ -950,15 +918,12 @@ static inline void wlan_vdev_mlme_set_nss(struct wlan_objmgr_vdev *vdev,
*
* API to get the Number of Spatial Streams
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @nss: nss value
*/
static inline uint8_t wlan_vdev_mlme_get_nss(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.nss;
}
@@ -969,14 +934,11 @@ static inline uint8_t wlan_vdev_mlme_get_nss(
*
* API to set the Tx chainmask
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_txchainmask(struct wlan_objmgr_vdev *vdev,
uint8_t chainmask)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.tx_chainmask = chainmask;
}
@@ -986,15 +948,12 @@ static inline void wlan_vdev_mlme_set_txchainmask(struct wlan_objmgr_vdev *vdev,
*
* API to get the Tx chainmask
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @chainmask : Tx chainmask either configured by user or max supported
*/
static inline uint8_t wlan_vdev_mlme_get_txchainmask(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.tx_chainmask;
}
@@ -1005,14 +964,11 @@ static inline uint8_t wlan_vdev_mlme_get_txchainmask(
*
* API to set the Rx chainmask
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_rxchainmask(struct wlan_objmgr_vdev *vdev,
uint8_t chainmask)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.rx_chainmask = chainmask;
}
@@ -1022,8 +978,6 @@ static inline void wlan_vdev_mlme_set_rxchainmask(struct wlan_objmgr_vdev *vdev,
*
* API to get the Rx chainmask
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @chainmask : Rx chainmask either configured by user or max supported
*/
@@ -1041,14 +995,11 @@ static inline uint8_t wlan_vdev_mlme_get_rxchainmask(
*
* API to set the tx power
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_txpower(struct wlan_objmgr_vdev *vdev,
uint8_t txpow)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.tx_power = txpow;
}
@@ -1058,15 +1009,12 @@ static inline void wlan_vdev_mlme_set_txpower(struct wlan_objmgr_vdev *vdev,
*
* API to get the tx power
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @txpow: tx power either configured by used or max allowed
*/
static inline uint8_t wlan_vdev_mlme_get_txpower(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.tx_power;
}
@@ -1077,14 +1025,11 @@ static inline uint8_t wlan_vdev_mlme_get_txpower(
*
* API to set the max rate the vdev supports
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_maxrate(struct wlan_objmgr_vdev *vdev,
uint32_t maxrate)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.max_rate = maxrate;
}
@@ -1094,15 +1039,12 @@ static inline void wlan_vdev_mlme_set_maxrate(struct wlan_objmgr_vdev *vdev,
*
* API to get the max rate the vdev supports
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @maxrate: configured by used or based on configured mode
*/
static inline uint32_t wlan_vdev_mlme_get_maxrate(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.max_rate;
}
@@ -1113,14 +1055,11 @@ static inline uint32_t wlan_vdev_mlme_get_maxrate(
*
* API to set Mgmt Tx rate
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_txmgmtrate(struct wlan_objmgr_vdev *vdev,
uint32_t txmgmtrate)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.tx_mgmt_rate = txmgmtrate;
}
@@ -1130,15 +1069,12 @@ static inline void wlan_vdev_mlme_set_txmgmtrate(struct wlan_objmgr_vdev *vdev,
*
* API to get Mgmt Tx rate
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @txmgmtrate: Tx Mgmt rate
*/
static inline uint32_t wlan_vdev_mlme_get_txmgmtrate(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.tx_mgmt_rate;
}
@@ -1149,14 +1085,11 @@ static inline uint32_t wlan_vdev_mlme_get_txmgmtrate(
*
* API to set MLME feature capabilities
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_feat_cap_set(struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.vdev_feat_caps |= cap;
}
@@ -1167,14 +1100,11 @@ static inline void wlan_vdev_mlme_feat_cap_set(struct wlan_objmgr_vdev *vdev,
*
* API to clear MLME feature capabilities
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_feat_cap_clear(struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.vdev_feat_caps &= ~cap;
}
@@ -1185,15 +1115,12 @@ static inline void wlan_vdev_mlme_feat_cap_clear(struct wlan_objmgr_vdev *vdev,
*
* API to know MLME feature capability is set or not
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: 1 -- if capabilities set
* 0 -- if capabilities clear
*/
static inline uint8_t wlan_vdev_mlme_feat_cap_get(struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (vdev->vdev_mlme.vdev_feat_caps & cap) ? 1 : 0;
}
@@ -1204,15 +1131,12 @@ static inline uint8_t wlan_vdev_mlme_feat_cap_get(struct wlan_objmgr_vdev *vdev,
*
* API to set the MLME extensive feature capabilities
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_feat_ext_cap_set(
struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.vdev_feat_ext_caps |= cap;
}
@@ -1223,15 +1147,12 @@ static inline void wlan_vdev_mlme_feat_ext_cap_set(
*
* API to clear the MLME extensive feature capabilities
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_feat_ext_cap_clear(
struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.vdev_feat_ext_caps &= ~cap;
}
@@ -1242,8 +1163,6 @@ static inline void wlan_vdev_mlme_feat_ext_cap_clear(
*
* API to know MLME ext feature capability is set or not
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: 1 -- if capabilities set
* 0 -- if capabilities clear
*/
@@ -1251,7 +1170,6 @@ static inline uint8_t wlan_vdev_mlme_feat_ext_cap_get(
struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (vdev->vdev_mlme.vdev_feat_ext_caps & cap) ? 1 : 0;
}
@@ -1262,14 +1180,11 @@ static inline uint8_t wlan_vdev_mlme_feat_ext_cap_get(
*
* API to set the MLME capabilities
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_cap_set(struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.vdev_caps |= cap;
}
@@ -1280,14 +1195,11 @@ static inline void wlan_vdev_mlme_cap_set(struct wlan_objmgr_vdev *vdev,
*
* API to clear the MLME capabilities
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_cap_clear(struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_mlme.vdev_caps &= ~cap;
}
@@ -1298,15 +1210,12 @@ static inline void wlan_vdev_mlme_cap_clear(struct wlan_objmgr_vdev *vdev,
*
* API to know MLME capability is set or not
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: 1 -- if capabilities set
* 0 -- if capabilities clear
*/
static inline uint8_t wlan_vdev_mlme_cap_get(struct wlan_objmgr_vdev *vdev,
uint32_t cap)
{
/* This API is invoked with lock acquired, do not add log prints */
return (vdev->vdev_mlme.vdev_caps & cap) ? 1 : 0;
}
@@ -1316,14 +1225,11 @@ static inline uint8_t wlan_vdev_mlme_cap_get(struct wlan_objmgr_vdev *vdev,
*
* API to get MLME state
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: state of MLME
*/
static inline enum wlan_vdev_state wlan_vdev_mlme_get_state(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_mlme.mlme_state;
}
@@ -1334,14 +1240,11 @@ static inline enum wlan_vdev_state wlan_vdev_mlme_get_state(
*
* API to set MLME state
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_mlme_set_state(struct wlan_objmgr_vdev *vdev,
enum wlan_vdev_state state)
{
/* This API is invoked with lock acquired, do not add log prints */
if (state < WLAN_VDEV_S_MAX)
vdev->vdev_mlme.mlme_state = state;
}
@@ -1353,14 +1256,11 @@ static inline void wlan_vdev_mlme_set_state(struct wlan_objmgr_vdev *vdev,
*
* API to set the self peer of VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_set_selfpeer(struct wlan_objmgr_vdev *vdev,
struct wlan_objmgr_peer *peer)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_objmgr.self_peer = peer;
}
@@ -1370,15 +1270,12 @@ static inline void wlan_vdev_set_selfpeer(struct wlan_objmgr_vdev *vdev,
*
* API to get the self peer of VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @peer: peer pointer
*/
static inline struct wlan_objmgr_peer *wlan_vdev_get_selfpeer(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_objmgr.self_peer;
}
@@ -1389,14 +1286,11 @@ static inline struct wlan_objmgr_peer *wlan_vdev_get_selfpeer(
*
* API to set the BSS peer of VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_set_bsspeer(struct wlan_objmgr_vdev *vdev,
struct wlan_objmgr_peer *peer)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_objmgr.bss_peer = peer;
}
@@ -1406,15 +1300,12 @@ static inline void wlan_vdev_set_bsspeer(struct wlan_objmgr_vdev *vdev,
*
* API to get the BSS peer of VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return:
* @peer: BSS peer pointer
*/
static inline struct wlan_objmgr_peer *wlan_vdev_get_bsspeer(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_objmgr.bss_peer;
}
@@ -1424,14 +1315,11 @@ static inline struct wlan_objmgr_peer *wlan_vdev_get_bsspeer(
*
* API to get OS private pointer from VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: ospriv - private pointer
*/
static inline struct vdev_osif_priv *wlan_vdev_get_ospriv(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_nif.osdev;
}
@@ -1441,13 +1329,10 @@ static inline struct vdev_osif_priv *wlan_vdev_get_ospriv(
*
* API to reset OS private pointer in VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_reset_ospriv(struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_nif.osdev = NULL;
}
@@ -1457,13 +1342,10 @@ static inline void wlan_vdev_reset_ospriv(struct wlan_objmgr_vdev *vdev)
*
* API to get OS private pointer from VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: peer_count - vdev's peer count
*/
static inline uint16_t wlan_vdev_get_peer_count(struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_objmgr.wlan_peer_count;
}
@@ -1542,14 +1424,11 @@ void wlan_objmgr_vdev_release_ref(struct wlan_objmgr_vdev *vdev,
*
* API to set max peer count of VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: void
*/
static inline void wlan_vdev_set_max_peer_count(struct wlan_objmgr_vdev *vdev,
uint16_t count)
{
/* This API is invoked with lock acquired, do not add log prints */
vdev->vdev_objmgr.max_peer_count = count;
}
@@ -1559,14 +1438,11 @@ static inline void wlan_vdev_set_max_peer_count(struct wlan_objmgr_vdev *vdev,
*
* API to get max peer count of VDEV
*
* Caller need to acquire lock with wlan_vdev_obj_lock()
*
* Return: max peer count
*/
static inline uint16_t wlan_vdev_get_max_peer_count(
struct wlan_objmgr_vdev *vdev)
{
/* This API is invoked with lock acquired, do not add log prints */
return vdev->vdev_objmgr.max_peer_count;
}
#endif /* _WLAN_OBJMGR_VDEV_OBJ_H_*/

View File

@@ -775,8 +775,6 @@ void *wlan_objmgr_pdev_get_comp_private_obj(
{
void *comp_priv_obj;
/* This API is invoked with lock acquired, don't add any debug prints */
/* component id is invalid */
if (id >= WLAN_UMAC_MAX_COMPONENTS) {
QDF_BUG(0);

View File

@@ -537,8 +537,6 @@ void *wlan_objmgr_peer_get_comp_private_obj(
{
void *comp_priv_obj;
/* This API is invoked with lock acquired, don't add any debug prints */
/* component id is invalid */
if (id >= WLAN_UMAC_MAX_COMPONENTS) {
QDF_BUG(0);

View File

@@ -1609,8 +1609,6 @@ void *wlan_objmgr_psoc_get_comp_private_obj(struct wlan_objmgr_psoc *psoc,
{
void *comp_private_obj;
/* This API is invoked with lock acquired, don't add any debug prints */
/* component id is invalid */
if (id >= WLAN_UMAC_MAX_COMPONENTS) {
QDF_BUG(0);

View File

@@ -374,6 +374,7 @@ QDF_STATUS wlan_objmgr_vdev_component_obj_detach(
/* component id is invalid */
if (id >= WLAN_UMAC_MAX_COMPONENTS)
return QDF_STATUS_MAXCOMP_FAIL;
wlan_vdev_obj_lock(vdev);
/* If there is a valid entry, return failure */
if (vdev->vdev_comp_priv_obj[id] != comp_priv_obj) {
@@ -686,8 +687,6 @@ void *wlan_objmgr_vdev_get_comp_private_obj(
{
void *comp_priv_obj;
/* This API is invoked with lock acquired, don't add any debug prints */
/* component id is invalid */
if (id >= WLAN_UMAC_MAX_COMPONENTS) {
QDF_BUG(0);

View File

@@ -2448,9 +2448,7 @@ bool policy_mgr_is_dnsc_set(struct wlan_objmgr_vdev *vdev)
return false;
}
wlan_vdev_obj_lock(vdev);
roffchan = wlan_vdev_mlme_cap_get(vdev, WLAN_VDEV_C_RESTRICT_OFFCHAN);
wlan_vdev_obj_unlock(vdev);
policy_mgr_debug("Restrict offchannel:%s",
roffchan ? "set" : "clear");

View File

@@ -509,10 +509,8 @@ struct wlan_serialization_psoc_priv_obj *wlan_serialization_get_psoc_priv_obj(
struct wlan_objmgr_psoc *psoc)
{
struct wlan_serialization_psoc_priv_obj *ser_soc_obj;
wlan_psoc_obj_lock(psoc);
ser_soc_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_SERIALIZATION);
wlan_psoc_obj_unlock(psoc);
return ser_soc_obj;
}
@@ -521,10 +519,8 @@ struct wlan_serialization_pdev_priv_obj *wlan_serialization_get_pdev_priv_obj(
struct wlan_objmgr_pdev *pdev)
{
struct wlan_serialization_pdev_priv_obj *obj;
wlan_pdev_obj_lock(pdev);
obj = wlan_objmgr_pdev_get_comp_private_obj(pdev,
WLAN_UMAC_COMP_SERIALIZATION);
wlan_pdev_obj_unlock(pdev);
return obj;
}

View File

@@ -37,10 +37,8 @@ struct dfs_to_mlme global_dfs_to_mlme;
struct wlan_dfs *wlan_pdev_get_dfs_obj(struct wlan_objmgr_pdev *pdev)
{
struct wlan_dfs *dfs;
wlan_pdev_obj_lock(pdev);
dfs = wlan_objmgr_pdev_get_comp_private_obj(pdev,
WLAN_UMAC_COMP_DFS);
wlan_pdev_obj_unlock(pdev);
return dfs;
}
@@ -158,9 +156,7 @@ QDF_STATUS wlan_dfs_pdev_obj_create_notification(struct wlan_objmgr_pdev *pdev,
global_dfs_to_mlme.pdev_component_obj_attach(pdev,
WLAN_UMAC_COMP_DFS, (void *)dfs, QDF_STATUS_SUCCESS);
dfs->dfs_pdev_obj = pdev;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
DFS_PRINTK("%s: null psoc\n", __func__);
return QDF_STATUS_E_FAILURE;

View File

@@ -39,9 +39,7 @@ void lmac_get_caps(struct wlan_objmgr_pdev *pdev,
struct wlan_objmgr_psoc *psoc;
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -64,9 +62,7 @@ uint64_t lmac_get_tsf64(struct wlan_objmgr_pdev *pdev)
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
uint64_t tsf64 = 0;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -81,9 +77,7 @@ void lmac_dfs_disable(struct wlan_objmgr_pdev *pdev, int no_cac)
struct wlan_objmgr_psoc *psoc;
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -96,9 +90,7 @@ int lmac_get_dfsdomain(struct wlan_objmgr_pdev *pdev)
struct wlan_objmgr_psoc *psoc;
enum dfs_reg dfsdomain;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
wlan_reg_get_dfs_region(psoc, &dfsdomain);
@@ -120,9 +112,7 @@ void lmac_dfs_enable(struct wlan_objmgr_pdev *pdev,
struct wlan_objmgr_psoc *psoc;
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -153,9 +143,7 @@ void lmac_dfs_get_thresholds(struct wlan_objmgr_pdev *pdev,
struct wlan_objmgr_psoc *psoc;
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -177,9 +165,7 @@ bool lmac_is_mode_offload(struct wlan_objmgr_pdev *pdev)
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
bool is_offload = false;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -195,9 +181,7 @@ uint16_t lmac_get_ah_devid(struct wlan_objmgr_pdev *pdev)
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
uint16_t devid = 0;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -213,9 +197,7 @@ uint32_t lmac_get_ext_busy(struct wlan_objmgr_pdev *pdev)
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
uint32_t ext_chan_busy = 0;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -231,9 +213,7 @@ bool lmac_is_countryCode_KOREA_ROC3(struct wlan_objmgr_pdev *pdev)
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
bool ctry_korea = false;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -250,9 +230,7 @@ void lmac_set_use_cac_prssi(struct wlan_objmgr_pdev *pdev)
struct wlan_objmgr_psoc *psoc;
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -266,9 +244,7 @@ uint32_t lmac_get_target_type(struct wlan_objmgr_pdev *pdev)
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
uint32_t target_type = 0;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -284,9 +260,7 @@ bool lmac_is_countryCode_CHINA(struct wlan_objmgr_pdev *pdev)
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
bool country_china = false;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;
@@ -303,9 +277,7 @@ uint32_t lmac_get_phymode_info(struct wlan_objmgr_pdev *pdev,
struct wlan_lmac_if_dfs_tx_ops *dfs_tx_ops;
uint32_t mode_info = 0;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
dfs_tx_ops = &psoc->soc_cb.tx_ops.dfs_tx_ops;

View File

@@ -437,9 +437,7 @@ static void utils_dfs_get_chan_list(struct wlan_objmgr_pdev *pdev,
struct wlan_objmgr_psoc *psoc;
uint32_t conn_count = 0;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
*num_chan = 0;
DFS_PRINTK("%s: null psoc\n", __func__);
@@ -491,9 +489,7 @@ QDF_STATUS dfs_get_random_channel(
QDF_STATUS status = QDF_STATUS_E_FAILURE;
*target_chan = 0;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
DFS_PRINTK("%s: null psoc\n", __func__);
goto random_chan_error;
@@ -564,9 +560,7 @@ void dfs_init_nol(struct wlan_objmgr_pdev *pdev)
int len;
dfs = global_dfs_to_mlme.pdev_get_comp_private_obj(pdev);
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!dfs || !psoc) {
DFS_PRINTK("%s: dfs %p, psoc %p\n", __func__, dfs, psoc);
return;
@@ -611,9 +605,7 @@ void dfs_save_nol(struct wlan_objmgr_pdev *pdev)
return;
}
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
DFS_PRINTK("%s: null psoc\n", __func__);
return;

View File

@@ -41,9 +41,7 @@ struct nan_vdev_priv_obj *nan_get_vdev_priv_obj(
nan_err("vdev is null");
return NULL;
}
wlan_vdev_obj_lock(vdev);
obj = wlan_objmgr_vdev_get_comp_private_obj(vdev, WLAN_UMAC_COMP_NAN);
wlan_vdev_obj_unlock(vdev);
return obj;
}
@@ -57,9 +55,7 @@ struct nan_psoc_priv_obj *nan_get_psoc_priv_obj(
nan_err("psoc is null");
return NULL;
}
wlan_psoc_obj_lock(psoc);
obj = wlan_objmgr_psoc_get_comp_private_obj(psoc, WLAN_UMAC_COMP_NAN);
wlan_psoc_obj_unlock(psoc);
return obj;
}

View File

@@ -194,9 +194,7 @@ static QDF_STATUS p2p_vdev_obj_create_notification(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
p2p_debug("vdev mode:%d", mode);
if (mode != QDF_P2P_GO_MODE) {
p2p_debug("won't create p2p vdev private object if it is not GO");
@@ -251,9 +249,7 @@ static QDF_STATUS p2p_vdev_obj_destroy_notification(
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
p2p_debug("vdev mode:%d", mode);
if (mode != QDF_P2P_GO_MODE) {
p2p_debug("no p2p vdev private object if it is not GO");
@@ -310,19 +306,13 @@ static QDF_STATUS p2p_peer_obj_create_notification(
return QDF_STATUS_E_INVAL;
}
wlan_peer_obj_lock(peer);
vdev = wlan_peer_get_vdev(peer);
wlan_peer_obj_unlock(peer);
p2p_vdev_obj = wlan_objmgr_vdev_get_comp_private_obj(vdev,
WLAN_UMAC_COMP_P2P);
wlan_peer_obj_lock(peer);
peer_type = wlan_peer_get_peer_type(peer);
wlan_peer_obj_unlock(peer);
if ((peer_type == WLAN_PEER_STA) && p2p_vdev_obj) {
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
if (mode == QDF_P2P_GO_MODE) {
p2p_vdev_obj->non_p2p_peer_count++;
p2p_debug("Non P2P peer count: %d",
@@ -359,26 +349,18 @@ static QDF_STATUS p2p_peer_obj_destroy_notification(
return QDF_STATUS_E_INVAL;
}
wlan_peer_obj_lock(peer);
vdev = wlan_peer_get_vdev(peer);
wlan_peer_obj_unlock(peer);
p2p_vdev_obj = wlan_objmgr_vdev_get_comp_private_obj(vdev,
WLAN_UMAC_COMP_P2P);
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
if (!p2p_vdev_obj || !psoc) {
p2p_err("p2p_vdev_obj:%p psoc:%p", p2p_vdev_obj, psoc);
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
wlan_peer_obj_lock(peer);
peer_type = wlan_peer_get_peer_type(peer);
wlan_peer_obj_unlock(peer);
if ((peer_type == WLAN_PEER_STA) && (mode == QDF_P2P_GO_MODE)) {
@@ -387,9 +369,7 @@ static QDF_STATUS p2p_peer_obj_destroy_notification(
if (!p2p_vdev_obj->non_p2p_peer_count &&
(p2p_vdev_obj->noa_status == false)) {
wlan_vdev_obj_lock(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (ucfg_p2p_set_noa(psoc, vdev_id,
false) == QDF_STATUS_SUCCESS)
@@ -502,13 +482,9 @@ static QDF_STATUS process_peer_for_noa(struct wlan_objmgr_vdev *vdev,
p2p_err("p2p_vdev_obj:%p", p2p_vdev_obj);
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
wlan_peer_obj_lock(peer);
peer_type = wlan_peer_get_peer_type(peer);
wlan_peer_obj_unlock(peer);
disable_noa = ((mode == QDF_P2P_GO_MODE)
&& p2p_vdev_obj->non_p2p_peer_count
@@ -516,9 +492,7 @@ static QDF_STATUS process_peer_for_noa(struct wlan_objmgr_vdev *vdev,
if (disable_noa && (peer_type == WLAN_PEER_STA)) {
wlan_vdev_obj_lock(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (ucfg_p2p_set_noa(psoc, vdev_id,
true) == QDF_STATUS_SUCCESS) {
@@ -987,9 +961,7 @@ QDF_STATUS p2p_process_noa(struct p2p_noa_event *noa_event)
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
p2p_debug("vdev mode:%d", mode);
if (mode != QDF_P2P_GO_MODE) {
p2p_err("invalid p2p vdev mode:%d", mode);
@@ -1030,9 +1002,7 @@ void p2p_peer_authorized(struct wlan_objmgr_vdev *vdev, uint8_t *mac_addr)
p2p_err("vdev:%p", vdev);
return;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
p2p_err("psoc:%p", psoc);
return;

View File

@@ -95,9 +95,7 @@ static QDF_STATUS p2p_vdev_check_valid(struct tx_action_context *tx_ctx)
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
p2p_debug("vdev mode:%d", mode);
/* drop probe response for sta, go, sap */
@@ -272,9 +270,7 @@ static struct p2p_noa_info *p2p_get_vdev_noa_info(
return NULL;
}
wlan_vdev_obj_lock(vdev);
mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
p2p_debug("vdev mode:%d", mode);
if (mode != QDF_P2P_GO_MODE) {
p2p_debug("invalid p2p vdev mode:%d", mode);

View File

@@ -207,16 +207,12 @@ QDF_STATUS tgt_p2p_mgmt_frame_rx_cb(struct wlan_objmgr_psoc *psoc,
vdev_id = roc_ctx->vdev_id;
}
} else {
wlan_peer_obj_lock(peer);
vdev = wlan_peer_get_vdev(peer);
wlan_peer_obj_unlock(peer);
if (!vdev) {
p2p_err("vdev is NULL in peer, drop this frame");
return QDF_STATUS_E_FAILURE;
}
wlan_vdev_obj_lock(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
}
rx_mgmt_event = qdf_mem_malloc(sizeof(*rx_mgmt_event));

View File

@@ -203,10 +203,8 @@ QDF_STATUS ucfg_p2p_cleanup_roc(struct wlan_objmgr_vdev *vdev)
return QDF_STATUS_E_INVAL;
}
wlan_vdev_obj_lock(vdev);
vdev_id = (uint32_t)wlan_vdev_get_id(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
p2p_err("null psoc");
return QDF_STATUS_E_INVAL;

View File

@@ -1784,11 +1784,9 @@ static void reg_propagate_mas_chan_list_to_pdev(struct wlan_objmgr_psoc *psoc,
enum direction *dir = arg;
struct wlan_lmac_if_reg_tx_ops *reg_tx_ops;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = (struct wlan_regulatory_psoc_priv_obj *)
wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("psoc priv obj is NULL");
@@ -2059,10 +2057,8 @@ QDF_STATUS wlan_regulatory_psoc_obj_destroyed_notification(
QDF_STATUS status;
struct wlan_regulatory_psoc_priv_obj *soc_reg;
wlan_psoc_obj_lock(psoc);
soc_reg = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == soc_reg) {
reg_err("reg psoc private obj is NULL");
@@ -2252,11 +2248,9 @@ QDF_STATUS wlan_regulatory_pdev_obj_created_notification(
parent_psoc = wlan_pdev_get_psoc(pdev);
pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
wlan_psoc_obj_lock(parent_psoc);
psoc_priv_obj = (struct wlan_regulatory_psoc_priv_obj *)
wlan_objmgr_psoc_get_comp_private_obj(parent_psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(parent_psoc);
if (NULL == psoc_priv_obj) {
reg_err("reg psoc private obj is NULL");
@@ -2371,9 +2365,7 @@ QDF_STATUS reg_11d_vdev_created_update(struct wlan_objmgr_vdev *vdev)
enum tQDF_ADAPTER_MODE op_mode;
uint8_t i;
wlan_vdev_obj_lock(vdev);
op_mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
parent_pdev = wlan_vdev_get_pdev(vdev);
parent_psoc = wlan_pdev_get_psoc(parent_pdev);
@@ -2433,9 +2425,7 @@ QDF_STATUS reg_11d_vdev_delete_update(struct wlan_objmgr_vdev *vdev)
uint32_t vdev_id;
uint8_t i;
wlan_vdev_obj_lock(vdev);
op_mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
parent_pdev = wlan_vdev_get_pdev(vdev);
parent_psoc = wlan_pdev_get_psoc(parent_pdev);
@@ -2539,10 +2529,8 @@ void reg_update_nol_ch(struct wlan_objmgr_pdev *pdev,
psoc = wlan_pdev_get_psoc(pdev);
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("reg psoc private obj is NULL");
@@ -2580,11 +2568,9 @@ static void reg_change_pdev_for_config(struct wlan_objmgr_psoc *psoc,
struct wlan_regulatory_psoc_priv_obj *psoc_priv_obj;
struct wlan_regulatory_pdev_priv_obj *pdev_priv_obj;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = (struct wlan_regulatory_psoc_priv_obj *)
wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("psoc priv obj is NULL");
@@ -2618,11 +2604,9 @@ QDF_STATUS reg_set_config_vars(struct wlan_objmgr_psoc *psoc,
struct wlan_regulatory_psoc_priv_obj *psoc_priv_obj;
QDF_STATUS status;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = (struct wlan_regulatory_psoc_priv_obj *)
wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("psoc priv obj is NULL");
@@ -2665,10 +2649,8 @@ bool reg_is_regdb_offloaded(struct wlan_objmgr_psoc *psoc)
{
struct wlan_regulatory_psoc_priv_obj *psoc_priv_obj;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("reg psoc private obj is NULL");
@@ -2689,10 +2671,8 @@ void reg_program_mas_chan_list(struct wlan_objmgr_psoc *psoc,
uint32_t count;
enum direction dir;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("reg psoc private obj is NULL");
@@ -2736,10 +2716,8 @@ void reg_register_chan_change_callback(struct wlan_objmgr_psoc *psoc,
uint32_t count;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("reg psoc private obj is NULL");
@@ -2766,10 +2744,8 @@ void reg_unregister_chan_change_callback(struct wlan_objmgr_psoc *psoc,
struct wlan_regulatory_psoc_priv_obj *psoc_priv_obj;
uint32_t count;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("reg psoc private obj is NULL");
@@ -2794,10 +2770,8 @@ enum country_src reg_get_cc_and_src(struct wlan_objmgr_psoc *psoc,
{
struct wlan_regulatory_psoc_priv_obj *psoc_priv_obj;
wlan_psoc_obj_lock(psoc);
psoc_priv_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_REGULATORY);
wlan_psoc_obj_unlock(psoc);
if (NULL == psoc_priv_obj) {
reg_err("reg psoc private obj is NULL");

View File

@@ -790,9 +790,7 @@ qdf_list_t *scm_get_scan_result(struct wlan_objmgr_pdev *pdev,
return NULL;
}
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
scm_err("psoc is NULL");
return NULL;
@@ -875,9 +873,7 @@ scm_iterate_scan_db(struct wlan_objmgr_pdev *pdev,
return QDF_STATUS_E_INVAL;
}
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
scm_err("psoc is NULL");
return QDF_STATUS_E_INVAL;
@@ -968,9 +964,7 @@ QDF_STATUS scm_flush_results(struct wlan_objmgr_pdev *pdev,
return QDF_STATUS_E_INVAL;
}
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
scm_err("psoc is NULL");
return QDF_STATUS_E_INVAL;
@@ -1032,9 +1026,7 @@ void scm_filter_valid_channel(struct wlan_objmgr_pdev *pdev,
return;
}
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
if (!psoc) {
scm_err("psoc is NULL");
return;

View File

@@ -162,9 +162,7 @@ wlan_pdev_get_scan_db(struct wlan_objmgr_psoc *psoc,
scm_err("pdev is NULL");
return NULL;
}
wlan_pdev_obj_lock(pdev);
pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
wlan_pdev_obj_unlock(pdev);
return wlan_pdevid_get_scan_db(psoc, pdev_id);
}

View File

@@ -54,10 +54,8 @@ QDF_STATUS wlan_scan_psoc_destroyed_notification(
void *scan_obj = NULL;
QDF_STATUS status = QDF_STATUS_SUCCESS;
wlan_psoc_obj_lock(psoc);
scan_obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_SCAN);
wlan_psoc_obj_unlock(psoc);
if (!scan_obj) {
scm_err("Failed to detach scan in psoc ctx");
@@ -107,10 +105,8 @@ QDF_STATUS wlan_scan_vdev_destroyed_notification(
void *scan_vdev_obj = NULL;
QDF_STATUS status = QDF_STATUS_SUCCESS;
wlan_vdev_obj_lock(vdev);
scan_vdev_obj = wlan_objmgr_vdev_get_comp_private_obj(vdev,
WLAN_UMAC_COMP_SCAN);
wlan_vdev_obj_unlock(vdev);
if (!scan_vdev_obj) {
scm_err("Failed to detach scan in vdev ctx");

View File

@@ -374,11 +374,9 @@ wlan_psoc_get_scan_obj(struct wlan_objmgr_psoc *psoc)
{
struct wlan_scan_obj *scan_obj;
wlan_psoc_obj_lock(psoc);
scan_obj = (struct wlan_scan_obj *)
wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_SCAN);
wlan_psoc_obj_unlock(psoc);
return scan_obj;
}
@@ -394,9 +392,7 @@ wlan_pdev_get_scan_obj(struct wlan_objmgr_pdev *pdev)
{
struct wlan_objmgr_psoc *psoc;
wlan_pdev_obj_lock(pdev);
psoc = wlan_pdev_get_psoc(pdev);
wlan_pdev_obj_unlock(pdev);
return wlan_psoc_get_scan_obj(psoc);
}
@@ -412,9 +408,7 @@ wlan_vdev_get_scan_obj(struct wlan_objmgr_vdev *vdev)
{
struct wlan_objmgr_pdev *pdev;
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
return wlan_pdev_get_scan_obj(pdev);
}
@@ -430,11 +424,9 @@ wlan_get_vdev_scan_obj(struct wlan_objmgr_vdev *vdev)
{
struct scan_vdev_obj *scan_vdev_obj;
wlan_vdev_obj_lock(vdev);
scan_vdev_obj = (struct scan_vdev_obj *)
wlan_objmgr_vdev_get_comp_private_obj(vdev,
WLAN_UMAC_COMP_SCAN);
wlan_vdev_obj_unlock(vdev);
return scan_vdev_obj;
}
@@ -450,9 +442,7 @@ wlan_scan_vdev_get_pdev_id(struct wlan_objmgr_vdev *vdev)
{
struct wlan_objmgr_pdev *pdev;
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
return wlan_objmgr_pdev_get_pdev_id(pdev);
}
@@ -471,9 +461,7 @@ wlan_pdev_get_pdev_scan_ev_handlers(struct wlan_objmgr_pdev *pdev)
struct wlan_scan_obj *scan;
struct pdev_scan_ev_handler *pdev_ev_handler;
wlan_pdev_obj_lock(pdev);
pdevid = wlan_objmgr_pdev_get_pdev_id(pdev);
wlan_pdev_obj_unlock(pdev);
scan = wlan_pdev_get_scan_obj(pdev);
@@ -495,9 +483,7 @@ wlan_vdev_get_pdev_scan_ev_handlers(struct wlan_objmgr_vdev *vdev)
{
struct wlan_objmgr_pdev *pdev;
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
return wlan_pdev_get_pdev_scan_ev_handlers(pdev);
}
@@ -540,9 +526,7 @@ wlan_vdev_get_def_scan_params(struct wlan_objmgr_vdev *vdev)
scm_err("null vdev");
return NULL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
return wlan_scan_psoc_get_def_params(psoc);
}

View File

@@ -364,9 +364,7 @@ scm_scan_start_req(struct scheduler_msg *msg)
SCAN_TIMEOUT_GRACE_PERIOD;
cmd.vdev = req->vdev;
wlan_vdev_obj_lock(cmd.vdev);
psoc = wlan_vdev_get_psoc(cmd.vdev);
wlan_vdev_obj_unlock(cmd.vdev);
/*
* Temp Hack to disable Serialization Timer
* Modified Serialization module to ignore timeout of 0 value

View File

@@ -44,9 +44,7 @@ wlan_vdev_get_scan_txops(struct wlan_objmgr_vdev *vdev)
{
struct wlan_objmgr_psoc *psoc = NULL;
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
return wlan_psoc_get_scan_txops(psoc);
}
@@ -56,9 +54,7 @@ wlan_vdev_get_scan_rxops(struct wlan_objmgr_vdev *vdev)
{
struct wlan_objmgr_psoc *psoc = NULL;
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
return &((psoc->soc_cb.rx_ops.scan));
}
@@ -71,9 +67,7 @@ QDF_STATUS tgt_scan_pno_start(struct wlan_objmgr_vdev *vdev,
struct wlan_lmac_if_scan_tx_ops *scan_ops;
struct wlan_objmgr_psoc *psoc;
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
scan_ops = wlan_psoc_get_scan_txops(psoc);
/* invoke wmi_unified_pno_start_cmd() */
@@ -90,9 +84,7 @@ QDF_STATUS tgt_scan_pno_stop(struct wlan_objmgr_vdev *vdev,
struct wlan_lmac_if_scan_tx_ops *scan_ops;
struct wlan_objmgr_psoc *psoc;
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
scan_ops = wlan_psoc_get_scan_txops(psoc);
/* invoke wmi_unified_pno_stop_cmd() */
@@ -111,9 +103,7 @@ tgt_scan_start(struct scan_start_request *req)
struct wlan_objmgr_psoc *psoc;
struct wlan_objmgr_vdev *vdev = req->vdev;
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
scan_ops = wlan_psoc_get_scan_txops(psoc);
/* invoke wmi_unified_scan_start_cmd_send() */
@@ -132,9 +122,7 @@ tgt_scan_cancel(struct scan_cancel_request *req)
struct wlan_objmgr_psoc *psoc;
struct wlan_objmgr_vdev *vdev = req->vdev;
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
scan_ops = wlan_psoc_get_scan_txops(psoc);
/* invoke wmi_unified_scan_stop_cmd_send() */

View File

@@ -445,9 +445,7 @@ ucfg_scan_cancel_sync(struct scan_cancel_request *req)
qdf_event_reset(&cancel_scan_event);
if (cancel_pdev) {
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
while ((ucfg_scan_get_pdev_status(pdev) !=
SCAN_NOT_IN_PROGRESS) && max_wait_iterations) {
scm_debug("wait for all pdev scan to get complete");
@@ -1097,9 +1095,7 @@ ucfg_scan_cancel_pdev_scan(struct wlan_objmgr_pdev *pdev)
}
req->vdev = vdev;
req->cancel_req.scan_id = INVAL_SCAN_ID;
wlan_pdev_obj_lock(pdev);
req->cancel_req.pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
wlan_pdev_obj_unlock(pdev);
req->cancel_req.vdev_id = INVAL_VDEV_ID;
req->cancel_req.req_type = WLAN_SCAN_CANCEL_PDEV_ALL;
status = ucfg_scan_cancel_sync(req);

View File

@@ -142,16 +142,13 @@ static QDF_STATUS tdls_pe_add_peer(struct tdls_add_peer_request *req)
addstareq->tdls_oper = TDLS_OPER_ADD;
addstareq->transaction_id = 0;
wlan_vdev_obj_lock(vdev);
addstareq->session_id = wlan_vdev_get_id(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
if (!peer) {
wlan_vdev_obj_unlock(vdev);
tdls_err("bss peer is NULL");
status = QDF_STATUS_E_INVAL;
goto error;
}
wlan_vdev_obj_unlock(vdev);
status = wlan_objmgr_peer_try_get_ref(peer, WLAN_TDLS_NB_ID);
if (QDF_IS_STATUS_ERROR(status)) {
tdls_err("can't get bss peer");
@@ -210,16 +207,13 @@ QDF_STATUS tdls_pe_del_peer(struct tdls_del_peer_request *req)
delstareq->transaction_id = 0;
wlan_vdev_obj_lock(vdev);
delstareq->session_id = wlan_vdev_get_id(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
if (!peer) {
wlan_vdev_obj_unlock(vdev);
tdls_err("bss peer is NULL");
status = QDF_STATUS_E_INVAL;
goto error;
}
wlan_vdev_obj_unlock(vdev);
status = wlan_objmgr_peer_try_get_ref(peer, WLAN_TDLS_NB_ID);
if (QDF_IS_STATUS_ERROR(status)) {
tdls_err("can't get bss peer");
@@ -281,16 +275,13 @@ static QDF_STATUS tdls_pe_update_peer(struct tdls_update_peer_request *req)
addstareq->tdls_oper = TDLS_OPER_UPDATE;
addstareq->transaction_id = 0;
wlan_vdev_obj_lock(vdev);
addstareq->session_id = wlan_vdev_get_id(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
if (!peer) {
wlan_vdev_obj_unlock(vdev);
tdls_err("bss peer is NULL");
status = QDF_STATUS_E_INVAL;
goto error;
}
wlan_vdev_obj_unlock(vdev);
status = wlan_objmgr_peer_try_get_ref(peer, WLAN_TDLS_NB_ID);
if (QDF_IS_STATUS_ERROR(status)) {
tdls_err("can't get bss peer");
@@ -1477,9 +1468,7 @@ QDF_STATUS tdls_process_del_peer_rsp(struct tdls_del_sta_rsp *rsp)
QDF_MAC_ADDR_ARRAY(macaddr),
curr_peer->link_status);
wlan_vdev_obj_lock(vdev);
id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
if (TDLS_IS_LINK_CONNECTED(curr_peer)) {
soc_obj->tdls_dereg_tl_peer(
@@ -1573,14 +1562,13 @@ tdls_update_uapsd(struct wlan_objmgr_psoc *psoc, struct wlan_objmgr_vdev *vdev,
tdls_debug("No need to configure auto trigger:psb is 0");
return QDF_STATUS_SUCCESS;
}
wlan_vdev_obj_lock(vdev);
vdev_id = wlan_vdev_get_id(vdev);
bsspeer = wlan_vdev_get_bsspeer(vdev);
if (!bsspeer) {
wlan_vdev_obj_unlock(vdev);
tdls_err("bss peer is NULL");
return QDF_STATUS_E_FAILURE;
}
wlan_vdev_obj_lock(vdev);
qdf_mem_copy(macaddr,
wlan_peer_get_macaddr(bsspeer), QDF_MAC_ADDR_SIZE);
wlan_vdev_obj_unlock(vdev);
@@ -1663,9 +1651,7 @@ QDF_STATUS tdls_process_enable_link(struct tdls_oper_request *req)
tdls_set_peer_link_status(peer, TDLS_LINK_CONNECTED,
TDLS_LINK_SUCCESS);
wlan_vdev_obj_lock(vdev);
id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
status = soc_obj->tdls_reg_tl_peer(soc_obj->tdls_tl_peer_data,
id, mac, peer->sta_id,
peer->signature, peer->qos);
@@ -1744,9 +1730,7 @@ static QDF_STATUS tdls_config_force_peer(
QDF_MAC_ADDR_ARRAY(macaddr));
vdev = req->vdev;
wlan_vdev_obj_lock(vdev);
pdev = wlan_vdev_get_pdev(vdev);
wlan_vdev_obj_unlock(vdev);
vdev_obj = wlan_vdev_get_tdls_vdev_obj(vdev);
soc_obj = wlan_vdev_get_tdls_soc_obj(vdev);
if (!pdev || !vdev_obj || !soc_obj) {
@@ -1784,9 +1768,7 @@ static QDF_STATUS tdls_config_force_peer(
/* Update the peer mac to firmware, so firmware could update the
* connection table
*/
wlan_vdev_obj_lock(vdev);
peer_update_param->vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
qdf_mem_copy(peer_update_param->peer_macaddr,
macaddr, QDF_MAC_ADDR_SIZE);
peer_update_param->peer_state = TDLS_PEER_ADD_MAC_ADDR;
@@ -1951,9 +1933,7 @@ QDF_STATUS tdls_process_remove_force_peer(struct tdls_oper_request *req)
goto error;
}
wlan_vdev_obj_lock(vdev);
peer_update_param->vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
qdf_mem_copy(peer_update_param->peer_macaddr,
macaddr, QDF_MAC_ADDR_SIZE);
peer_update_param->peer_state = TDLS_PEER_REMOVE_MAC_ADDR;

View File

@@ -32,18 +32,14 @@ bool tdls_is_vdev_connected(struct wlan_objmgr_vdev *vdev)
struct wlan_objmgr_peer *peer;
enum wlan_peer_state peer_state;
wlan_vdev_obj_lock(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
wlan_vdev_obj_unlock(vdev);
if (!peer) {
tdls_err("peer is null");
return false;
}
wlan_peer_obj_lock(peer);
peer_state = wlan_peer_mlme_get_state(peer);
wlan_peer_obj_unlock(peer);
if (peer_state != WLAN_ASSOC_STATE) {
tdls_err("peer state: %d", peer_state);
@@ -58,18 +54,14 @@ bool tdls_is_vdev_authenticated(struct wlan_objmgr_vdev *vdev)
struct wlan_objmgr_peer *peer;
bool is_authenticated = false;
wlan_vdev_obj_lock(vdev);
peer = wlan_vdev_get_bsspeer(vdev);
wlan_vdev_obj_unlock(vdev);
if (!peer) {
tdls_err("peer is null");
return false;
}
wlan_peer_obj_lock(peer);
is_authenticated = wlan_peer_mlme_get_auth_state(peer);
wlan_peer_obj_unlock(peer);
return is_authenticated;
}

View File

@@ -430,9 +430,7 @@ QDF_STATUS tdls_get_vdev_objects(struct wlan_objmgr_vdev *vdev,
if (NULL == (*tdls_soc_obj))
return QDF_STATUS_E_FAILURE;
wlan_vdev_obj_lock(vdev);
device_mode = wlan_vdev_mlme_get_opmode(vdev);
wlan_vdev_obj_unlock(vdev);
if (device_mode != QDF_STA_MODE &&
device_mode != QDF_P2P_CLIENT_MODE)

View File

@@ -375,19 +375,15 @@ wlan_vdev_get_tdls_soc_obj(struct wlan_objmgr_vdev *vdev)
return NULL;
}
wlan_vdev_obj_lock(vdev);
psoc = wlan_vdev_get_psoc(vdev);
wlan_vdev_obj_unlock(vdev);
if (!psoc) {
tdls_err("can't get psoc");
return NULL;
}
wlan_psoc_obj_lock(psoc);
soc_obj = (struct tdls_soc_priv_obj *)
wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_TDLS);
wlan_psoc_obj_unlock(psoc);
return soc_obj;
}
@@ -406,11 +402,9 @@ wlan_psoc_get_tdls_soc_obj(struct wlan_objmgr_psoc *psoc)
tdls_err("NULL psoc");
return NULL;
}
wlan_psoc_obj_lock(psoc);
soc_obj = (struct tdls_soc_priv_obj *)
wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_TDLS);
wlan_psoc_obj_unlock(psoc);
return soc_obj;
}
@@ -431,11 +425,9 @@ wlan_vdev_get_tdls_vdev_obj(struct wlan_objmgr_vdev *vdev)
return NULL;
}
wlan_vdev_obj_lock(vdev);
vdev_obj = (struct tdls_vdev_priv_obj *)
wlan_objmgr_vdev_get_comp_private_obj(vdev,
WLAN_UMAC_COMP_TDLS);
wlan_vdev_obj_unlock(vdev);
return vdev_obj;
}

View File

@@ -315,9 +315,7 @@ struct tdls_peer *tdls_is_progress(struct tdls_vdev_priv_obj *vdev_obj,
return NULL;
}
wlan_vdev_obj_lock(vdev_obj->vdev);
psoc = wlan_vdev_get_psoc(vdev_obj->vdev);
wlan_vdev_obj_unlock(vdev_obj->vdev);
if (!psoc) {
tdls_err("invalid psoc");
return NULL;
@@ -395,10 +393,8 @@ static void tdls_determine_channel_opclass(struct tdls_soc_priv_obj *soc_obj,
if (!(TDLS_IS_OFF_CHANNEL_ENABLED(
soc_obj->tdls_configs.tdls_feature_flags)) ||
soc_obj->tdls_fw_off_chan_mode != ENABLE_CHANSWITCH) {
wlan_vdev_obj_lock(vdev_obj->vdev);
vdev_id = wlan_vdev_get_id(vdev_obj->vdev);
opmode = wlan_vdev_mlme_get_opmode(vdev_obj->vdev);
wlan_vdev_obj_unlock(vdev_obj->vdev);
*channel = policy_mgr_get_channel(soc_obj->soc,
opmode, &vdev_id);
@@ -482,9 +478,7 @@ void tdls_extract_peer_state_param(struct tdls_peer_update_state *peer_param,
}
qdf_mem_zero(peer_param, sizeof(*peer_param));
wlan_vdev_obj_lock(vdev_obj->vdev);
peer_param->vdev_id = wlan_vdev_get_id(vdev_obj->vdev);
wlan_vdev_obj_unlock(vdev_obj->vdev);
qdf_mem_copy(peer_param->peer_macaddr,
peer->peer_mac.bytes, QDF_MAC_ADDR_SIZE);

View File

@@ -244,21 +244,15 @@ QDF_STATUS tgt_tdls_mgmt_frame_process_rx_cb(
tdls_err("current tdls vdev is null, can't get vdev id");
return QDF_STATUS_E_FAILURE;
}
wlan_vdev_obj_lock(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
wlan_objmgr_vdev_release_ref(vdev, WLAN_TDLS_SB_ID);
} else {
wlan_peer_obj_lock(peer);
vdev = wlan_peer_get_vdev(peer);
wlan_peer_obj_unlock(peer);
if (!vdev) {
tdls_err("vdev is NULL in peer, drop this frame");
return QDF_STATUS_E_FAILURE;
}
wlan_vdev_obj_lock(vdev);
vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
}
rx_mgmt_event = qdf_mem_malloc(sizeof(*rx_mgmt_event));

View File

@@ -256,10 +256,8 @@ static void wifi_pos_populate_vdev_info(struct wlan_objmgr_psoc *psoc,
{
struct app_reg_rsp_vdev_info *vdev_info = arg;
wlan_vdev_obj_lock(vdev);
vdev_info[vdev_idx].dev_mode = wlan_vdev_mlme_get_opmode(vdev);
vdev_info[vdev_idx].vdev_id = wlan_vdev_get_id(vdev);
wlan_vdev_obj_unlock(vdev);
vdev_idx++;
}

View File

@@ -67,10 +67,8 @@ struct wifi_pos_psoc_priv_obj *wifi_pos_get_psoc_priv_obj(
{
struct wifi_pos_psoc_priv_obj *obj;
wlan_psoc_obj_lock(psoc);
obj = wlan_objmgr_psoc_get_comp_private_obj(psoc,
WLAN_UMAC_COMP_WIFI_POS);
wlan_psoc_obj_unlock(psoc);
return obj;
}

View File

@@ -31,6 +31,48 @@
* For now, all these configuration parameters are hardcoded.
* Many of these should actually be coming from dts file/ini file
*/
#ifdef CONFIG_MCL
#define WLAN_CFG_PER_PDEV_RX_RING 0
#define NUM_RXDMA_RINGS_PER_PDEV 2
#define WLAN_LRO_ENABLE 1
/* Tx Descriptor and Tx Extension Descriptor pool sizes */
#define WLAN_CFG_NUM_TX_DESC 1024
#define WLAN_CFG_NUM_TX_EXT_DESC 1024
/* Interrupt Mitigation - Batch threshold in terms of number of frames */
#define WLAN_CFG_INT_BATCH_THRESHOLD_TX 1
#define WLAN_CFG_INT_BATCH_THRESHOLD_RX 1
#define WLAN_CFG_INT_BATCH_THRESHOLD_OTHER 1
/* Interrupt Mitigation - Timer threshold in us */
#define WLAN_CFG_INT_TIMER_THRESHOLD_TX 8
#define WLAN_CFG_INT_TIMER_THRESHOLD_RX 8
#define WLAN_CFG_INT_TIMER_THRESHOLD_OTHER 8
#endif
#ifdef CONFIG_WIN
#define WLAN_CFG_PER_PDEV_RX_RING 1
#define NUM_RXDMA_RINGS_PER_PDEV 1
#define WLAN_LRO_ENABLE 0
/* Tx Descriptor and Tx Extension Descriptor pool sizes */
#define WLAN_CFG_NUM_TX_DESC (16 << 10)
#define WLAN_CFG_NUM_TX_EXT_DESC (8 << 10)
/* Interrupt Mitigation - Batch threshold in terms of number of frames */
#define WLAN_CFG_INT_BATCH_THRESHOLD_TX 256
#define WLAN_CFG_INT_BATCH_THRESHOLD_RX 128
#define WLAN_CFG_INT_BATCH_THRESHOLD_OTHER 1
/* Interrupt Mitigation - Timer threshold in us */
#define WLAN_CFG_INT_TIMER_THRESHOLD_TX 1000
#define WLAN_CFG_INT_TIMER_THRESHOLD_RX 500
#define WLAN_CFG_INT_TIMER_THRESHOLD_OTHER 8
#endif
#define WLAN_CFG_INT_NUM_CONTEXTS 4
#define RXDMA_BUF_RING_SIZE 2048
@@ -38,7 +80,6 @@
#define RXDMA_MONITOR_DEST_RING_SIZE 2048
#define RXDMA_MONITOR_STATUS_RING_SIZE 2048
#ifdef TX_PER_PDEV_DESC_POOL
#define WLAN_CFG_NUM_TX_DESC_POOL MAX_PDEV_CNT
#define WLAN_CFG_NUM_TXEXT_DESC_POOL MAX_PDEV_CNT
@@ -47,7 +88,6 @@
#define WLAN_CFG_NUM_TXEXT_DESC_POOL 3
#endif /* TX_PER_PDEV_DESC_POOL */
#define WLAN_CFG_TX_RING_MASK_0 0x1
#define WLAN_CFG_TX_RING_MASK_1 0x2
#define WLAN_CFG_TX_RING_MASK_2 0x4
@@ -91,20 +131,6 @@
#define WLAN_CFG_HTT_PKT_TYPE 2
#define WLAN_CFG_MAX_PEER_ID 64
#ifdef CONFIG_MCL
#define WLAN_CFG_PER_PDEV_RX_RING 0
#define NUM_RXDMA_RINGS_PER_PDEV 2
#define WLAN_LRO_ENABLE 1
#define WLAN_CFG_NUM_TX_DESC 1024
#define WLAN_CFG_NUM_TX_EXT_DESC 1024
#else
#define WLAN_CFG_PER_PDEV_RX_RING 1
#define NUM_RXDMA_RINGS_PER_PDEV 1
#define WLAN_LRO_ENABLE 0
#define WLAN_CFG_NUM_TX_DESC (16 << 10)
#define WLAN_CFG_NUM_TX_EXT_DESC (8 << 10)
#endif
#ifdef WLAN_RX_HASH
#define WLAN_RX_HASH_ENABLE 1
#else
@@ -187,6 +213,12 @@ struct wlan_cfg_dp_soc_ctxt {
int num_tx_ext_desc;
int max_peer_id;
int htt_packet_type;
int int_batch_threshold_tx;
int int_timer_threshold_tx;
int int_batch_threshold_rx;
int int_timer_threshold_rx;
int int_batch_threshold_other;
int int_timer_threshold_other;
int int_tx_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
int int_rx_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
int int_rx_mon_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
@@ -244,6 +276,15 @@ struct wlan_cfg_dp_soc_ctxt *wlan_cfg_soc_attach()
wlan_cfg_ctx->htt_packet_type = WLAN_CFG_HTT_PKT_TYPE;
wlan_cfg_ctx->max_peer_id = WLAN_CFG_MAX_PEER_ID;
wlan_cfg_ctx->int_batch_threshold_tx = WLAN_CFG_INT_BATCH_THRESHOLD_TX;
wlan_cfg_ctx->int_timer_threshold_tx = WLAN_CFG_INT_TIMER_THRESHOLD_TX;
wlan_cfg_ctx->int_batch_threshold_rx = WLAN_CFG_INT_BATCH_THRESHOLD_RX;
wlan_cfg_ctx->int_timer_threshold_rx = WLAN_CFG_INT_TIMER_THRESHOLD_RX;
wlan_cfg_ctx->int_batch_threshold_other =
WLAN_CFG_INT_BATCH_THRESHOLD_OTHER;
wlan_cfg_ctx->int_timer_threshold_other =
WLAN_CFG_INT_TIMER_THRESHOLD_OTHER;
for (i = 0; i < WLAN_CFG_INT_NUM_CONTEXTS; i++) {
wlan_cfg_ctx->int_tx_ring_mask[i] = tx_ring_mask[i];
wlan_cfg_ctx->int_rx_ring_mask[i] = rx_ring_mask[i];
@@ -504,3 +545,33 @@ void wlan_cfg_set_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt *cfg, int nss_cfg)
{
cfg->nss_cfg = nss_cfg;
}
int wlan_cfg_get_int_batch_threshold_tx(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->int_batch_threshold_tx;
}
int wlan_cfg_get_int_timer_threshold_tx(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->int_timer_threshold_tx;
}
int wlan_cfg_get_int_batch_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->int_batch_threshold_rx;
}
int wlan_cfg_get_int_timer_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->int_timer_threshold_rx;
}
int wlan_cfg_get_int_batch_threshold_other(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->int_batch_threshold_other;
}
int wlan_cfg_get_int_timer_threshold_other(struct wlan_cfg_dp_soc_ctxt *cfg)
{
return cfg->int_timer_threshold_other;
}

View File

@@ -371,4 +371,53 @@ int wlan_cfg_get_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt *cfg);
*
*/
void wlan_cfg_set_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt *cfg, int nss_cfg);
/*
* wlan_cfg_get_int_batch_threshold_tx - Get interrupt mitigation cfg for Tx
* @wlan_cfg_soc_ctx
*
* Return: Batch threshold
*/
int wlan_cfg_get_int_batch_threshold_tx(struct wlan_cfg_dp_soc_ctxt *cfg);
/*
* wlan_cfg_get_int_timer_threshold_tx - Get interrupt mitigation cfg for Tx
* @wlan_cfg_soc_ctx
*
* Return: Timer threshold
*/
int wlan_cfg_get_int_timer_threshold_tx(struct wlan_cfg_dp_soc_ctxt *cfg);
/*
* wlan_cfg_get_int_batch_threshold_rx - Get interrupt mitigation cfg for Rx
* @wlan_cfg_soc_ctx
*
* Return: Batch threshold
*/
int wlan_cfg_get_int_batch_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg);
/*
* wlan_cfg_get_int_batch_threshold_rx - Get interrupt mitigation cfg for Rx
* @wlan_cfg_soc_ctx
*
* Return: Timer threshold
*/
int wlan_cfg_get_int_timer_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg);
/*
* wlan_cfg_get_int_batch_threshold_tx - Get interrupt mitigation cfg for other srngs
* @wlan_cfg_soc_ctx
*
* Return: Batch threshold
*/
int wlan_cfg_get_int_batch_threshold_other(struct wlan_cfg_dp_soc_ctxt *cfg);
/*
* wlan_cfg_get_int_batch_threshold_tx - Get interrupt mitigation cfg for other srngs
* @wlan_cfg_soc_ctx
*
* Return: Timer threshold
*/
int wlan_cfg_get_int_timer_threshold_other(struct wlan_cfg_dp_soc_ctxt *cfg);
#endif