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

Commit 1737eb29 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ath10k: Add phyerr event changes for HL1.0"

parents 2e0f7b0f 926a0425
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -923,6 +923,11 @@ static int ath10k_wmi_tlv_op_pull_phyerr_ev_hdr(struct ath10k *ar,
	arg->buf_len = __le32_to_cpu(ev->buf_len);
	arg->phyerrs = phyerrs;

	if (QCA_REV_WCN3990(ar)) {
		arg->phy_err_mask0 = __le32_to_cpu(ev->rs_phy_err_mask0);
		arg->phy_err_mask1 = __le32_to_cpu(ev->rs_phy_err_mask1);
	}

	kfree(tb);
	return 0;
}
+4 −0
Original line number Diff line number Diff line
@@ -1399,6 +1399,10 @@ struct wmi_tlv_phyerr_ev {
	__le32 tsf_l32;
	__le32 tsf_u32;
	__le32 buf_len;
	__le32 pdev_id;
	__le32 rs_phy_err_mask0;
	__le32 rs_phy_err_mask1;
	__le32 rs_phy_err_mask2;
} __packed;

enum wmi_tlv_dbglog_param {
+10 −9
Original line number Diff line number Diff line
@@ -4076,19 +4076,20 @@ void ath10k_wmi_event_phyerr(struct ath10k *ar, struct sk_buff *skb)

		left_len -= buf_len;

		switch (phy_err_code) {
		case PHY_ERROR_RADAR:
		if ((phy_err_code == PHY_ERROR_RADAR) ||
		    (hdr_arg.phy_err_mask0 &
				WMI_PHY_ERROR_MASK0_RADAR)) {
			ath10k_wmi_event_dfs(ar, &phyerr_arg, tsf);
			break;
		case PHY_ERROR_SPECTRAL_SCAN:
		} else if ((phy_err_code ==
				WMI_PHY_ERROR_MASK0_SPECTRAL_SCAN) ||
			   (hdr_arg.phy_err_mask0 &
				WMI_PHY_ERROR_MASK0_SPECTRAL_SCAN)) {
			ath10k_wmi_event_spectral_scan(ar, &phyerr_arg, tsf);
			break;
		case PHY_ERROR_FALSE_RADAR_EXT:
		} else if ((phy_err_code == PHY_ERROR_FALSE_RADAR_EXT) ||
			   (hdr_arg.phy_err_mask0 &
				WMI_PHY_ERROR_MASK0_FALSE_RADAR_EXT)) {
			ath10k_wmi_event_dfs(ar, &phyerr_arg, tsf);
			ath10k_wmi_event_spectral_scan(ar, &phyerr_arg, tsf);
			break;
		default:
			break;
		}

		phyerr = phyerr + phyerr_arg.hdr_len + buf_len;
+6 −0
Original line number Diff line number Diff line
@@ -3165,6 +3165,10 @@ struct wmi_mgmt_rx_ext_info {
#define PHY_ERROR_10_4_RADAR_MASK               0x4
#define PHY_ERROR_10_4_SPECTRAL_SCAN_MASK       0x4000000

#define WMI_PHY_ERROR_MASK0_RADAR		BIT(2)
#define WMI_PHY_ERROR_MASK0_FALSE_RADAR_EXT	BIT(24)
#define WMI_PHY_ERROR_MASK0_SPECTRAL_SCAN	BIT(26)

enum phy_err_type {
	PHY_ERROR_UNKNOWN,
	PHY_ERROR_SPECTRAL_SCAN,
@@ -6352,6 +6356,8 @@ struct wmi_phyerr_hdr_arg {
	u32 tsf_u32;
	u32 buf_len;
	const void *phyerrs;
	u32 phy_err_mask0;
	u32 phy_err_mask1;
};

struct wmi_svc_rdy_ev_arg {