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

Commit 9da9a3b2 authored by Yogesh Ashok Powar's avatar Yogesh Ashok Powar Committed by John W. Linville
Browse files

mwifiex: use bss_type and bss_num to retrieve priv



Current implementation, for retrieving priv from adapter,
uses bss_index. In multi interface environment supporting
different types, bss_index may not be unique.

Use bss_type along with bss_num to retrieve the priv.
bss_index is removed with this change.

Signed-off-by: default avatarYogesh Ashok Powar <yogeshp@marvell.com>
Signed-off-by: default avatarKiran Divekar <dkiran@marvell.com>
Signed-off-by: default avatarBing Zhao <bzhao@marvell.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent cebcab9e
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -182,7 +182,8 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
	skb_reserve(skb_aggr, headroom + sizeof(struct txpd));
	tx_info_aggr =  MWIFIEX_SKB_TXCB(skb_aggr);

	tx_info_aggr->bss_index = tx_info_src->bss_index;
	tx_info_aggr->bss_type = tx_info_src->bss_type;
	tx_info_aggr->bss_num = tx_info_src->bss_num;
	skb_aggr->priority = skb_src->priority;

	do {
+0 −1
Original line number Diff line number Diff line
@@ -1217,7 +1217,6 @@ struct net_device *mwifiex_add_virtual_intf(struct wiphy *wiphy,
		priv->frame_type = MWIFIEX_DATA_FRAME_TYPE_ETH_II;
		priv->bss_priority = 0;
		priv->bss_role = MWIFIEX_BSS_ROLE_STA;
		priv->bss_index = 0;
		priv->bss_num = 0;

		break;
+2 −1
Original line number Diff line number Diff line
@@ -391,7 +391,8 @@ int mwifiex_process_event(struct mwifiex_adapter *adapter)

	if (skb) {
		rx_info = MWIFIEX_SKB_RXCB(skb);
		rx_info->bss_index = priv->bss_index;
		rx_info->bss_num = priv->bss_num;
		rx_info->bss_type = priv->bss_type;
	}

	if (eventcause != EVENT_PS_SLEEP && eventcause != EVENT_PS_AWAKE) {
+4 −2
Original line number Diff line number Diff line
@@ -102,7 +102,8 @@ struct mwifiex_wait_queue {
};

struct mwifiex_rxinfo {
	u8 bss_index;
	u8 bss_num;
	u8 bss_type;
	struct sk_buff *parent;
	u8 use_count;
};
@@ -110,7 +111,8 @@ struct mwifiex_rxinfo {
struct mwifiex_txinfo {
	u32 status_code;
	u8 flags;
	u8 bss_index;
	u8 bss_num;
	u8 bss_type;
};

enum mwifiex_wmm_ac_e {
+3 −2
Original line number Diff line number Diff line
@@ -526,8 +526,9 @@ static void mwifiex_delete_bss_prio_tbl(struct mwifiex_private *priv)
		cur = &adapter->bss_prio_tbl[i].bss_prio_cur;
		lock = &adapter->bss_prio_tbl[i].bss_prio_lock;
		dev_dbg(adapter->dev, "info: delete BSS priority table,"
				" index = %d, i = %d, head = %p, cur = %p\n",
			      priv->bss_index, i, head, *cur);
				" bss_type = %d, bss_num = %d, i = %d,"
				" head = %p, cur = %p\n",
			      priv->bss_type, priv->bss_num, i, head, *cur);
		if (*cur) {
			spin_lock_irqsave(lock, flags);
			if (list_empty(head)) {
Loading