Commit 0ab26380 authored by Johannes Berg's avatar Johannes Berg
Browse files

wifi: mac80211: extend ieee80211_nullfunc_get() for MLO



Add a link_id parameter to ieee80211_nullfunc_get() to be
able to obtain a correctly addressed frame.

Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent e229f978
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1113,7 +1113,7 @@ ath_chanctx_send_vif_ps_frame(struct ath_softc *sc, struct ath_vif *avp,
		if (!avp->assoc)
			return false;

		skb = ieee80211_nullfunc_get(sc->hw, vif, false);
		skb = ieee80211_nullfunc_get(sc->hw, vif, -1, false);
		if (!skb)
			return false;

+2 −2
Original line number Diff line number Diff line
@@ -1082,10 +1082,10 @@ static struct sk_buff *rtw_get_rsvd_page_skb(struct ieee80211_hw *hw,
		skb_new = ieee80211_proberesp_get(hw, vif);
		break;
	case RSVD_NULL:
		skb_new = ieee80211_nullfunc_get(hw, vif, false);
		skb_new = ieee80211_nullfunc_get(hw, vif, -1, false);
		break;
	case RSVD_QOS_NULL:
		skb_new = ieee80211_nullfunc_get(hw, vif, true);
		skb_new = ieee80211_nullfunc_get(hw, vif, -1, true);
		break;
	case RSVD_LPS_PG_DPK:
		skb_new = rtw_lps_pg_dpk_get(hw);
+2 −2
Original line number Diff line number Diff line
@@ -195,7 +195,7 @@ void __cw1200_cqm_bssloss_sm(struct cw1200_common *priv,

		priv->bss_loss_state++;

		skb = ieee80211_nullfunc_get(priv->hw, priv->vif, false);
		skb = ieee80211_nullfunc_get(priv->hw, priv->vif, -1, false);
		WARN_ON(!skb);
		if (skb)
			cw1200_tx(priv->hw, NULL, skb);
@@ -2263,7 +2263,7 @@ static int cw1200_upload_null(struct cw1200_common *priv)
		.rate = 0xFF,
	};

	frame.skb = ieee80211_nullfunc_get(priv->hw, priv->vif, false);
	frame.skb = ieee80211_nullfunc_get(priv->hw, priv->vif,-1, false);
	if (!frame.skb)
		return -ENOMEM;

+1 −1
Original line number Diff line number Diff line
@@ -546,7 +546,7 @@ static int wl1251_build_null_data(struct wl1251 *wl)
		size = sizeof(struct wl12xx_null_data_template);
		ptr = NULL;
	} else {
		skb = ieee80211_nullfunc_get(wl->hw, wl->vif, false);
		skb = ieee80211_nullfunc_get(wl->hw, wl->vif, -1, false);
		if (!skb)
			goto out;
		size = skb->len;
+2 −2
Original line number Diff line number Diff line
@@ -1065,7 +1065,7 @@ int wl12xx_cmd_build_null_data(struct wl1271 *wl, struct wl12xx_vif *wlvif)
	} else {
		skb = ieee80211_nullfunc_get(wl->hw,
					     wl12xx_wlvif_to_vif(wlvif),
					     false);
					     -1, false);
		if (!skb)
			goto out;
		size = skb->len;
@@ -1092,7 +1092,7 @@ int wl12xx_cmd_build_klv_null_data(struct wl1271 *wl,
	struct sk_buff *skb = NULL;
	int ret = -ENOMEM;

	skb = ieee80211_nullfunc_get(wl->hw, vif, false);
	skb = ieee80211_nullfunc_get(wl->hw, vif,-1, false);
	if (!skb)
		goto out;

Loading