Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2214f62 authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge 8ab049b2 on remote branch

Change-Id: I4f32708891b8754ba4d4717b55d3e65c4e664dbd
parents 810e76a2 8ab049b2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -940,7 +940,7 @@ tgt_mc_cp_stats_prepare_n_send_raw_station_stats(struct wlan_objmgr_psoc *psoc,
	peer = wlan_objmgr_get_peer(psoc, last_req->pdev_id,
				    last_req->peer_mac_addr, WLAN_CP_STATS_ID);
	if (!peer) {
		cp_stats_err("peer object is null");
		cp_stats_debug("peer object is null");
		goto end;
	}

+3 −3
Original line number Diff line number Diff line
@@ -196,7 +196,7 @@ QDF_STATUS mlme_init_twt_context(struct wlan_objmgr_psoc *psoc,
							  WLAN_UMAC_COMP_MLME);
	if (!peer_priv) {
		wlan_objmgr_peer_release_ref(peer, WLAN_MLME_NB_ID);
		mlme_legacy_err("peer mlme component object is NULL");
		mlme_legacy_debug("peer mlme component object is NULL");
		return QDF_STATUS_E_FAILURE;
	}

@@ -464,7 +464,7 @@ void mlme_set_twt_peer_capabilities(struct wlan_objmgr_psoc *psoc,
	peer = wlan_objmgr_get_peer_by_mac(psoc, peer_mac->bytes,
					   WLAN_MLME_NB_ID);
	if (!peer) {
		mlme_legacy_err("Peer object not found");
		mlme_legacy_debug("Peer object not found");
		return;
	}

@@ -472,7 +472,7 @@ void mlme_set_twt_peer_capabilities(struct wlan_objmgr_psoc *psoc,
							  WLAN_UMAC_COMP_MLME);
	if (!peer_priv) {
		wlan_objmgr_peer_release_ref(peer, WLAN_MLME_NB_ID);
		mlme_legacy_err("peer mlme object is NULL");
		mlme_legacy_debug("peer mlme object is NULL");
		return;
	}

+5 −3
Original line number Diff line number Diff line
/*
 * Copyright (c) 2020-2021 The Linux Foundation. All rights reserved.
 * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
 * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * Permission to use, copy, modify, and/or distribute this software for
 * any purpose with or without fee is hereby granted, provided that the
@@ -299,9 +299,10 @@ pkt_capture_update_tx_status(
	pktcapture_hdr->nss = vdev_priv->tx_nss;

	/* Remove the ppdu stats from front of list and fill it in tx_status */
	qdf_spin_lock(&vdev_priv->lock_q);
	qdf_spin_lock_bh(&vdev_priv->lock_q);
	if (QDF_STATUS_SUCCESS ==
	    qdf_list_remove_front(&vdev_priv->ppdu_stats_q, &node)) {
		qdf_spin_unlock_bh(&vdev_priv->lock_q);
		q_node = qdf_container_of(
			node, struct pkt_capture_ppdu_stats_q_node, node);
		smu = (htt_ppdu_stats_for_smu_tlv *)(q_node->buf);
@@ -317,8 +318,9 @@ pkt_capture_update_tx_status(
				     2 * sizeof(uint32_t));

		qdf_mem_free(q_node);
	} else {
		qdf_spin_unlock_bh(&vdev_priv->lock_q);
	}
	qdf_spin_unlock(&vdev_priv->lock_q);

skip_ppdu_stats:
	pkt_capture_tx_get_phy_info(pktcapture_hdr, tx_status);
+5 −5
Original line number Diff line number Diff line
/*
 * Copyright (c) 2020-2021 The Linux Foundation. All rights reserved.
 * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
 * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
 *
 * Permission to use, copy, modify, and/or distribute this software for
 * any purpose with or without fee is hereby granted, provided that the
@@ -227,7 +227,7 @@ pkt_capture_process_ppdu_stats(void *log_data)
	smu = (htt_ppdu_stats_for_smu_tlv *)log_data;
	vdev_priv->tx_nss = smu->nss;

	qdf_spin_lock(&vdev_priv->lock_q);
	qdf_spin_lock_bh(&vdev_priv->lock_q);
	if (qdf_list_size(&vdev_priv->ppdu_stats_q) <
					PPDU_STATS_Q_MAX_SIZE) {
		/*
@@ -235,7 +235,7 @@ pkt_capture_process_ppdu_stats(void *log_data)
		 * we support only 256 bit ba bitmap.
		 */
		if (smu->win_size > 8) {
			qdf_spin_unlock(&vdev_priv->lock_q);
			qdf_spin_unlock_bh(&vdev_priv->lock_q);
			pkt_capture_vdev_put_ref(vdev);
			pkt_capture_err("win size %d > 8 not supported\n",
					smu->win_size);
@@ -247,7 +247,7 @@ pkt_capture_process_ppdu_stats(void *log_data)

		q_node = qdf_mem_malloc(sizeof(*q_node) + stats_len);
		if (q_node == NULL) {
			qdf_spin_unlock(&vdev_priv->lock_q);
			qdf_spin_unlock_bh(&vdev_priv->lock_q);
			pkt_capture_vdev_put_ref(vdev);
			pkt_capture_err("stats node and buf allocation fail\n");
			return;
@@ -258,7 +258,7 @@ pkt_capture_process_ppdu_stats(void *log_data)
		qdf_list_insert_back(&vdev_priv->ppdu_stats_q,
				     &q_node->node);
	}
	qdf_spin_unlock(&vdev_priv->lock_q);
	qdf_spin_unlock_bh(&vdev_priv->lock_q);
	pkt_capture_vdev_put_ref(vdev);
}

+5 −17
Original line number Diff line number Diff line
@@ -231,12 +231,12 @@ QDF_STATUS pmo_core_arp_check_offload(struct wlan_objmgr_psoc *psoc,

	vdev_ctx = pmo_vdev_get_priv(vdev);
	psoc_ctx = vdev_ctx->pmo_psoc_ctx;

	if (trigger == pmo_apps_suspend || trigger == pmo_apps_resume) {
		active_offload_cond = psoc_ctx->psoc_cfg.active_mode_offload;

	if (trigger == pmo_apps_suspend) {
		qdf_spin_lock_bh(&vdev_ctx->pmo_vdev_lock);
		is_applied_cond =
			vdev_ctx->vdev_arp_req.enable == PMO_OFFLOAD_ENABLE &&
		is_applied_cond = vdev_ctx->vdev_arp_req.enable &&
				  vdev_ctx->vdev_arp_req.is_offload_applied;
		qdf_spin_unlock_bh(&vdev_ctx->pmo_vdev_lock);

@@ -245,18 +245,6 @@ QDF_STATUS pmo_core_arp_check_offload(struct wlan_objmgr_psoc *psoc,
			wlan_objmgr_vdev_release_ref(vdev, WLAN_PMO_ID);
			return QDF_STATUS_E_INVAL;
		}
	} else if (trigger == pmo_apps_resume) {
		qdf_spin_lock_bh(&vdev_ctx->pmo_vdev_lock);
		is_applied_cond =
			vdev_ctx->vdev_arp_req.enable == PMO_OFFLOAD_DISABLE &&
			!vdev_ctx->vdev_arp_req.is_offload_applied;
		qdf_spin_unlock_bh(&vdev_ctx->pmo_vdev_lock);

		if (active_offload_cond && is_applied_cond) {
			pmo_debug("active offload is enabled and offload already disabled");
			wlan_objmgr_vdev_release_ref(vdev, WLAN_PMO_ID);
			return QDF_STATUS_E_INVAL;
		}
	}
	wlan_objmgr_vdev_release_ref(vdev, WLAN_PMO_ID);
out:
Loading