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

Commit 49e1b9fa authored by Kalle Valo's avatar Kalle Valo Committed by John W. Linville
Browse files

wl1251: implement WMM



Now that necessary commands for WMM are implemented, implement queue handling
for WMM. But WMM is not enabled yet, only one queue is used.

Signed-off-by: default avatarKalle Valo <kalle.valo@nokia.com>
Reviewed-by: default avatarJanne Ylalehto <janne.ylalehto@nokia.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 27336f1c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1306,7 +1306,7 @@ static int wl1251_op_conf_tx(struct ieee80211_hw *hw, u16 queue,
		goto out_sleep;

	ret = wl1251_acx_tid_cfg(wl, wl1251_tx_get_queue(queue),
				 CHANNEL_TYPE_DCF,
				 CHANNEL_TYPE_EDCF,
				 wl1251_tx_get_queue(queue),
				 WL1251_ACX_PS_SCHEME_LEGACY,
				 WL1251_ACX_ACK_POLICY_LEGACY);
+4 −4
Original line number Diff line number Diff line
@@ -167,8 +167,7 @@ static int wl1251_tx_fill_hdr(struct wl1251 *wl, struct sk_buff *skb,
	tx_hdr->expiry_time = cpu_to_le32(1 << 16);
	tx_hdr->id = id;

	/* FIXME: how to get the correct queue id? */
	tx_hdr->xmit_queue = 0;
	tx_hdr->xmit_queue = wl1251_tx_get_queue(skb_get_queue_mapping(skb));

	wl1251_tx_control(tx_hdr, control, fc);
	wl1251_tx_frag_block_num(tx_hdr);
@@ -237,8 +236,9 @@ static int wl1251_tx_send_packet(struct wl1251 *wl, struct sk_buff *skb,

	wl1251_mem_write(wl, addr, skb->data, len);

	wl1251_debug(DEBUG_TX, "tx id %u skb 0x%p payload %u rate 0x%x",
		     tx_hdr->id, skb, tx_hdr->length, tx_hdr->rate);
	wl1251_debug(DEBUG_TX, "tx id %u skb 0x%p payload %u rate 0x%x "
		     "queue %d", tx_hdr->id, skb, tx_hdr->length,
		     tx_hdr->rate, tx_hdr->xmit_queue);

	return 0;
}