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

Commit 1e0708a9 authored by Arik Nemtsov's avatar Arik Nemtsov Committed by Luciano Coelho
Browse files

wlcore: track wlvif inside per-link structure



This allows us to pass only the link as a parameter to various functions
and deduce the wlvif. Note that this member will be NULL for global
links.

Signed-off-by: default avatarArik Nemtsov <arik@wizery.com>
Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
parent b50a62bb
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -326,6 +326,7 @@ int wl12xx_allocate_link(struct wl1271 *wl, struct wl12xx_vif *wlvif, u8 *hlid)
	/* take the last "freed packets" value from the current FW status */
	wl->links[link].prev_freed_pkts =
			wl->fw_status_2->counters.tx_lnk_free_pkts[link];
	wl->links[link].wlvif = wlvif;
	*hlid = link;
	return 0;
}
@@ -353,6 +354,7 @@ void wl12xx_free_link(struct wl1271 *wl, struct wl12xx_vif *wlvif, u8 *hlid)
	 * can purge them.
	 */
	wl1271_tx_reset_link_queues(wl, *hlid);
	wl->links[*hlid].wlvif = NULL;

	*hlid = WL12XX_INVALID_LINK_ID;
}
+5 −0
Original line number Diff line number Diff line
@@ -249,6 +249,8 @@ enum wl12xx_vif_flags {
	WLVIF_FLAG_IN_USE,
};

struct wl12xx_vif;

struct wl1271_link {
	/* AP-mode - TX queue per AC in link */
	struct sk_buff_head tx_queue[NUM_TX_QUEUES];
@@ -261,6 +263,9 @@ struct wl1271_link {

	/* bitmap of TIDs where RX BA sessions are active for this link */
	u8 ba_bitmap;

	/* The wlvif this link belongs to. Might be null for global links */
	struct wl12xx_vif *wlvif;
};

#define WL1271_MAX_RX_FILTERS 5