Commit bd8ad4a5 authored by Jes Sorensen's avatar Jes Sorensen Committed by Greg Kroah-Hartman

staging: rtl8723au: Eliminate struct qos_priv

Having struct qos_priv containing a single integer, and carrying a
dedicated header file for it, is just plain silly. Move the integer
into struct mlme_priv, which is the only place qos_priv was used
anyway, and get rid of the header file.
Signed-off-by: default avatarJes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 62dff10d
...@@ -672,7 +672,7 @@ static void start_bss_network(struct rtw_adapter *padapter, u8 *pbuf) ...@@ -672,7 +672,7 @@ static void start_bss_network(struct rtw_adapter *padapter, u8 *pbuf)
/* todo: update wmm, ht cap */ /* todo: update wmm, ht cap */
/* pmlmeinfo->WMM_enable; */ /* pmlmeinfo->WMM_enable; */
/* pmlmeinfo->HT_enable; */ /* pmlmeinfo->HT_enable; */
if (pmlmepriv->qospriv.qos_option) if (pmlmepriv->qos_option)
pmlmeinfo->WMM_enable = true; pmlmeinfo->WMM_enable = true;
if (pmlmepriv->htpriv.ht_option) { if (pmlmepriv->htpriv.ht_option) {
pmlmeinfo->WMM_enable = true; pmlmeinfo->WMM_enable = true;
...@@ -950,14 +950,14 @@ int rtw_check_beacon_data23a(struct rtw_adapter *padapter, u8 *pbuf, ...@@ -950,14 +950,14 @@ int rtw_check_beacon_data23a(struct rtw_adapter *padapter, u8 *pbuf,
/* wmm */ /* wmm */
ie_len = 0; ie_len = 0;
pmlmepriv->qospriv.qos_option = 0; pmlmepriv->qos_option = 0;
if (pregistrypriv->wmm_enable) { if (pregistrypriv->wmm_enable) {
for (p = ie + _BEACON_IE_OFFSET_; ;p += (ie_len + 2)) { for (p = ie + _BEACON_IE_OFFSET_; ;p += (ie_len + 2)) {
p = rtw_get_ie23a(p, WLAN_EID_VENDOR_SPECIFIC, &ie_len, p = rtw_get_ie23a(p, WLAN_EID_VENDOR_SPECIFIC, &ie_len,
(pbss_network->IELength - (pbss_network->IELength -
_BEACON_IE_OFFSET_ - (ie_len + 2))); _BEACON_IE_OFFSET_ - (ie_len + 2)));
if ((p) && !memcmp(p+2, WMM_PARA_IE, 6)) { if ((p) && !memcmp(p+2, WMM_PARA_IE, 6)) {
pmlmepriv->qospriv.qos_option = 1; pmlmepriv->qos_option = 1;
*(p+8) |= BIT(7);/* QoS Info, support U-APSD */ *(p+8) |= BIT(7);/* QoS Info, support U-APSD */
...@@ -1037,7 +1037,7 @@ int rtw_check_beacon_data23a(struct rtw_adapter *padapter, u8 *pbuf, ...@@ -1037,7 +1037,7 @@ int rtw_check_beacon_data23a(struct rtw_adapter *padapter, u8 *pbuf,
/* ht_cap */ /* ht_cap */
if (pregistrypriv->ht_enable && ht_cap) { if (pregistrypriv->ht_enable && ht_cap) {
pmlmepriv->htpriv.ht_option = true; pmlmepriv->htpriv.ht_option = true;
pmlmepriv->qospriv.qos_option = 1; pmlmepriv->qos_option = 1;
if (pregistrypriv->ampdu_enable == 1) if (pregistrypriv->ampdu_enable == 1)
pmlmepriv->htpriv.ampdu_enable = true; pmlmepriv->htpriv.ampdu_enable = true;
...@@ -1864,7 +1864,7 @@ void sta_info_update23a(struct rtw_adapter *padapter, struct sta_info *psta) ...@@ -1864,7 +1864,7 @@ void sta_info_update23a(struct rtw_adapter *padapter, struct sta_info *psta)
else else
psta->qos_option = 0; psta->qos_option = 0;
if (pmlmepriv->qospriv.qos_option == 0) if (pmlmepriv->qos_option == 0)
psta->qos_option = 0; psta->qos_option = 0;
/* update 802.11n ht cap. */ /* update 802.11n ht cap. */
......
...@@ -481,7 +481,6 @@ u8 rtw_joinbss_cmd23a(struct rtw_adapter *padapter, ...@@ -481,7 +481,6 @@ u8 rtw_joinbss_cmd23a(struct rtw_adapter *padapter,
struct cmd_obj *pcmd; struct cmd_obj *pcmd;
struct cmd_priv *pcmdpriv = &padapter->cmdpriv; struct cmd_priv *pcmdpriv = &padapter->cmdpriv;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct qos_priv *pqospriv = &pmlmepriv->qospriv;
struct security_priv *psecuritypriv = &padapter->securitypriv; struct security_priv *psecuritypriv = &padapter->securitypriv;
struct registry_priv *pregistrypriv = &padapter->registrypriv; struct registry_priv *pregistrypriv = &padapter->registrypriv;
struct ht_priv *phtpriv = &pmlmepriv->htpriv; struct ht_priv *phtpriv = &pmlmepriv->htpriv;
...@@ -573,7 +572,7 @@ u8 rtw_joinbss_cmd23a(struct rtw_adapter *padapter, ...@@ -573,7 +572,7 @@ u8 rtw_joinbss_cmd23a(struct rtw_adapter *padapter,
&psecnetwork->IEs[0], &psecnetwork->IEs[0],
pnetwork->network.IELength); pnetwork->network.IELength);
pqospriv->qos_option = 0; pmlmepriv->qos_option = 0;
if (pregistrypriv->wmm_enable) { if (pregistrypriv->wmm_enable) {
u32 tmp_len; u32 tmp_len;
...@@ -587,10 +586,10 @@ u8 rtw_joinbss_cmd23a(struct rtw_adapter *padapter, ...@@ -587,10 +586,10 @@ u8 rtw_joinbss_cmd23a(struct rtw_adapter *padapter,
if (psecnetwork->IELength != tmp_len) { if (psecnetwork->IELength != tmp_len) {
psecnetwork->IELength = tmp_len; psecnetwork->IELength = tmp_len;
/* There is WMM IE in this corresp. beacon */ /* There is WMM IE in this corresp. beacon */
pqospriv->qos_option = 1; pmlmepriv->qos_option = 1;
} else { } else {
/* There is no WMM IE in this corresp. beacon */ /* There is no WMM IE in this corresp. beacon */
pqospriv->qos_option = 0; pmlmepriv->qos_option = 0;
} }
} }
......
...@@ -2239,7 +2239,6 @@ unsigned int rtw_restructure_ht_ie23a(struct rtw_adapter *padapter, u8 *in_ie, ...@@ -2239,7 +2239,6 @@ unsigned int rtw_restructure_ht_ie23a(struct rtw_adapter *padapter, u8 *in_ie,
struct ieee80211_ht_cap ht_capie; struct ieee80211_ht_cap ht_capie;
unsigned char WMM_IE[] = {0x00, 0x50, 0xf2, 0x02, 0x00, 0x01, 0x00}; unsigned char WMM_IE[] = {0x00, 0x50, 0xf2, 0x02, 0x00, 0x01, 0x00};
struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct qos_priv *pqospriv = &pmlmepriv->qospriv;
struct ht_priv *phtpriv = &pmlmepriv->htpriv; struct ht_priv *phtpriv = &pmlmepriv->htpriv;
phtpriv->ht_option = false; phtpriv->ht_option = false;
...@@ -2248,13 +2247,13 @@ unsigned int rtw_restructure_ht_ie23a(struct rtw_adapter *padapter, u8 *in_ie, ...@@ -2248,13 +2247,13 @@ unsigned int rtw_restructure_ht_ie23a(struct rtw_adapter *padapter, u8 *in_ie,
if (p && p[1] > 0) { if (p && p[1] > 0) {
u32 rx_packet_offset, max_recvbuf_sz; u32 rx_packet_offset, max_recvbuf_sz;
if (pqospriv->qos_option == 0) { if (pmlmepriv->qos_option == 0) {
out_len = *pout_len; out_len = *pout_len;
pframe = rtw_set_ie23a(out_ie + out_len, pframe = rtw_set_ie23a(out_ie + out_len,
WLAN_EID_VENDOR_SPECIFIC, WLAN_EID_VENDOR_SPECIFIC,
_WMM_IE_Length_, WMM_IE, pout_len); _WMM_IE_Length_, WMM_IE, pout_len);
pqospriv->qos_option = 1; pmlmepriv->qos_option = 1;
} }
out_len = *pout_len; out_len = *pout_len;
......
...@@ -1540,7 +1540,7 @@ OnAssocReq23a(struct rtw_adapter *padapter, struct recv_frame *precv_frame) ...@@ -1540,7 +1540,7 @@ OnAssocReq23a(struct rtw_adapter *padapter, struct recv_frame *precv_frame)
pstat->uapsd_vi = 0; pstat->uapsd_vi = 0;
pstat->uapsd_be = 0; pstat->uapsd_be = 0;
pstat->uapsd_bk = 0; pstat->uapsd_bk = 0;
if (pmlmepriv->qospriv.qos_option) { if (pmlmepriv->qos_option) {
const u8 *end = pos + left; const u8 *end = pos + left;
p = pos; p = pos;
...@@ -3225,7 +3225,7 @@ void issue_asocrsp23a(struct rtw_adapter *padapter, unsigned short status, ...@@ -3225,7 +3225,7 @@ void issue_asocrsp23a(struct rtw_adapter *padapter, unsigned short status,
} }
/* FILL WMM IE */ /* FILL WMM IE */
if (pstat->flags & WLAN_STA_WME && pmlmepriv->qospriv.qos_option) { if (pstat->flags & WLAN_STA_WME && pmlmepriv->qos_option) {
unsigned char WMM_PARA_IE[] = {0x00, 0x50, 0xf2, 0x02, unsigned char WMM_PARA_IE[] = {0x00, 0x50, 0xf2, 0x02,
0x01, 0x01}; 0x01, 0x01};
int ie_len = 0; int ie_len = 0;
...@@ -5369,7 +5369,7 @@ void update_sta_info23a(struct rtw_adapter *padapter, struct sta_info *psta) ...@@ -5369,7 +5369,7 @@ void update_sta_info23a(struct rtw_adapter *padapter, struct sta_info *psta)
psta->htpriv.candidate_tid_bitmap = 0x0;/* reset */ psta->htpriv.candidate_tid_bitmap = 0x0;/* reset */
/* QoS */ /* QoS */
if (pmlmepriv->qospriv.qos_option) if (pmlmepriv->qos_option)
psta->qos_option = true; psta->qos_option = true;
psta->state = _FW_LINKED; psta->state = _FW_LINKED;
......
...@@ -506,7 +506,7 @@ int WMM_param_handler23a(struct rtw_adapter *padapter, struct ndis_802_11_var_ie ...@@ -506,7 +506,7 @@ int WMM_param_handler23a(struct rtw_adapter *padapter, struct ndis_802_11_var_ie
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv; struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info; struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
if (pmlmepriv->qospriv.qos_option == 0) { if (pmlmepriv->qos_option == 0) {
pmlmeinfo->WMM_enable = 0; pmlmeinfo->WMM_enable = 0;
return _FAIL; return _FAIL;
} }
......
...@@ -473,7 +473,6 @@ static s32 update_attrib(struct rtw_adapter *padapter, ...@@ -473,7 +473,6 @@ static s32 update_attrib(struct rtw_adapter *padapter,
struct sta_priv *pstapriv = &padapter->stapriv; struct sta_priv *pstapriv = &padapter->stapriv;
struct security_priv *psecuritypriv = &padapter->securitypriv; struct security_priv *psecuritypriv = &padapter->securitypriv;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct qos_priv *pqospriv = &pmlmepriv->qospriv;
int res = _SUCCESS; int res = _SUCCESS;
struct ethhdr *ehdr = (struct ethhdr *) skb->data; struct ethhdr *ehdr = (struct ethhdr *) skb->data;
...@@ -586,7 +585,7 @@ static s32 update_attrib(struct rtw_adapter *padapter, ...@@ -586,7 +585,7 @@ static s32 update_attrib(struct rtw_adapter *padapter,
if (psta->qos_option) if (psta->qos_option)
set_qos(skb, pattrib); set_qos(skb, pattrib);
} else { } else {
if (pqospriv->qos_option) { if (pmlmepriv->qos_option) {
set_qos(skb, pattrib); set_qos(skb, pattrib);
if (pmlmepriv->acm_mask != 0) { if (pmlmepriv->acm_mask != 0) {
...@@ -767,7 +766,7 @@ static s32 xmitframe_addmic(struct rtw_adapter *padapter, ...@@ -767,7 +766,7 @@ static s32 xmitframe_addmic(struct rtw_adapter *padapter,
&pframe[10], 6); &pframe[10], 6);
} }
/* if (pqospriv->qos_option == 1) */ /* if (pmlmepriv->qos_option == 1) */
if (pattrib->qos_en) if (pattrib->qos_en)
priority[0] = (u8)pxmitframe->attrib.priority; priority[0] = (u8)pxmitframe->attrib.priority;
...@@ -905,7 +904,6 @@ s32 rtw_make_wlanhdr23a(struct rtw_adapter *padapter, u8 *hdr, ...@@ -905,7 +904,6 @@ s32 rtw_make_wlanhdr23a(struct rtw_adapter *padapter, u8 *hdr,
struct ieee80211_hdr *pwlanhdr = (struct ieee80211_hdr *)hdr; struct ieee80211_hdr *pwlanhdr = (struct ieee80211_hdr *)hdr;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct qos_priv *pqospriv = &pmlmepriv->qospriv;
u8 qos_option = false; u8 qos_option = false;
int res = _SUCCESS; int res = _SUCCESS;
__le16 *fctrl = &pwlanhdr->frame_control; __le16 *fctrl = &pwlanhdr->frame_control;
...@@ -948,7 +946,7 @@ s32 rtw_make_wlanhdr23a(struct rtw_adapter *padapter, u8 *hdr, ...@@ -948,7 +946,7 @@ s32 rtw_make_wlanhdr23a(struct rtw_adapter *padapter, u8 *hdr,
memcpy(pwlanhdr->addr2, pattrib->src, ETH_ALEN); memcpy(pwlanhdr->addr2, pattrib->src, ETH_ALEN);
memcpy(pwlanhdr->addr3, pattrib->dst, ETH_ALEN); memcpy(pwlanhdr->addr3, pattrib->dst, ETH_ALEN);
if (pqospriv->qos_option) if (pmlmepriv->qos_option)
qos_option = true; qos_option = true;
} }
......
...@@ -43,7 +43,6 @@ enum _NIC_VERSION { ...@@ -43,7 +43,6 @@ enum _NIC_VERSION {
#include <rtw_recv.h> #include <rtw_recv.h>
#include <hal_intf.h> #include <hal_intf.h>
#include <hal_com.h> #include <hal_com.h>
#include <rtw_qos.h>
#include <rtw_security.h> #include <rtw_security.h>
#include <rtw_pwrctrl.h> #include <rtw_pwrctrl.h>
#include <rtw_io.h> #include <rtw_io.h>
......
...@@ -237,7 +237,7 @@ struct mlme_priv { ...@@ -237,7 +237,7 @@ struct mlme_priv {
struct timer_list set_scan_deny_timer; struct timer_list set_scan_deny_timer;
atomic_t set_scan_deny; /* 0: allowed, 1: deny */ atomic_t set_scan_deny; /* 0: allowed, 1: deny */
struct qos_priv qospriv; unsigned int qos_option;
/* Number of non-HT AP/stations */ /* Number of non-HT AP/stations */
int num_sta_no_ht; int num_sta_no_ht;
......
/******************************************************************************
*
* Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of version 2 of the GNU General Public License as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
******************************************************************************/
#ifndef _RTW_QOS_H_
#define _RTW_QOS_H_
#include <osdep_service.h>
struct qos_priv {
/* bit mask option: u-apsd, s-apsd, ts, block ack... */
unsigned int qos_option;
};
#endif /* _RTL871X_QOS_H_ */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment