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

Commit ab81f74e authored by Florian Schilhabel's avatar Florian Schilhabel Committed by Greg Kroah-Hartman
Browse files

staging: rtl819su: merge changes in softmac_ps_mgmt_xmit()

parent e2e86493
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -316,16 +316,24 @@ inline void softmac_ps_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *i
	short single = ieee->softmac_features & IEEE_SOFTMAC_SINGLE_QUEUE;
	struct ieee80211_hdr_3addr  *header =
		(struct ieee80211_hdr_3addr  *) skb->data;
	u16 fc,type,stype;
        cb_desc *tcb_desc = (cb_desc *)(skb->cb + 8);

	fc = header->frame_control;
	type = WLAN_FC_GET_TYPE(fc);
	stype = WLAN_FC_GET_STYPE(fc);


	if(stype != IEEE80211_STYPE_PSPOLL)
	tcb_desc->queue_index = MGNT_QUEUE;
	else
		tcb_desc->queue_index = HIGH_QUEUE;
	tcb_desc->data_rate = MgntQuery_MgntFrameTxRate(ieee);
	tcb_desc->RATRIndex = 7;
	tcb_desc->bTxDisableRateFallBack = 1;
	tcb_desc->bTxUseDriverAssingedRate = 1;
	//printk("=============>%s()\n", __FUNCTION__);
	if(single){

		if(!(type == IEEE80211_FTYPE_CTL)) {
		header->seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0] << 4);

		if (ieee->seq_ctrl[0] == 0xFFF)
@@ -333,12 +341,13 @@ inline void softmac_ps_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *i
		else
			ieee->seq_ctrl[0]++;

		}
		/* avoid watchdog triggers */
	//	ieee->dev->trans_start = jiffies;
		ieee->softmac_data_hard_start_xmit(skb,ieee->dev,ieee->basic_rate);

	}else{

		if(!(type == IEEE80211_FTYPE_CTL)) {
		header->seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0] << 4);

		if (ieee->seq_ctrl[0] == 0xFFF)
@@ -346,6 +355,7 @@ inline void softmac_ps_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *i
		else
			ieee->seq_ctrl[0]++;

		}
		ieee->softmac_hard_start_xmit(skb,ieee->dev);

	}