Signed-off-by: Mike McCormack <[email protected]>
---
 drivers/staging/rtl8192e/ieee80211/ieee80211.h |    3 ---
 drivers/staging/rtl8192e/r8192E.h              |   13 +++++++++++++
 drivers/staging/rtl8192e/r8192E_core.c         |    2 +-
 drivers/staging/rtl8192e/r8192E_dm.c           |    2 +-
 4 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/rtl8192e/ieee80211/ieee80211.h 
b/drivers/staging/rtl8192e/ieee80211/ieee80211.h
index 6bae711..66b897a 100644
--- a/drivers/staging/rtl8192e/ieee80211/ieee80211.h
+++ b/drivers/staging/rtl8192e/ieee80211/ieee80211.h
@@ -213,9 +213,6 @@ enum        _ReasonCode{
 };
 
 
-
-#define aSifsTime       (((priv->ieee80211->current_network.mode == 
IEEE_A)||(priv->ieee80211->current_network.mode == 
IEEE_N_24G)||(priv->ieee80211->current_network.mode == IEEE_N_5G))? 16 : 10)
-
 #define MGMT_QUEUE_NUM 5
 
 #define IEEE_CMD_SET_WPA_PARAM                 1
diff --git a/drivers/staging/rtl8192e/r8192E.h 
b/drivers/staging/rtl8192e/r8192E.h
index 30a0b8a..9ec1fc4 100644
--- a/drivers/staging/rtl8192e/r8192E.h
+++ b/drivers/staging/rtl8192e/r8192E.h
@@ -1083,6 +1083,19 @@ typedef struct r8192_priv
        struct workqueue_struct *priv_wq;
 }r8192_priv;
 
+static inline u8 rtl8192e_get_sifs_time(struct r8192_priv *priv)
+{
+       switch (priv->ieee80211->current_network.mode)
+       {
+       case IEEE_A:
+       case IEEE_N_24G:
+       case IEEE_N_5G:
+               return 16;
+       default:
+               return 10;
+       }
+}
+
 bool init_firmware(struct r8192_priv *priv);
 u32 read_cam(struct r8192_priv *priv, u8 addr);
 void write_cam(struct r8192_priv *priv, u8 addr, u32 data);
diff --git a/drivers/staging/rtl8192e/r8192E_core.c 
b/drivers/staging/rtl8192e/r8192E_core.c
index 6942cb2..ad1c3c4 100644
--- a/drivers/staging/rtl8192e/r8192E_core.c
+++ b/drivers/staging/rtl8192e/r8192E_core.c
@@ -1547,7 +1547,7 @@ static void rtl8192_qos_activate(struct work_struct * 
work)
        /* update the ac parameter to related registers */
        for(i = 0; i <  QOS_QUEUE_NUM; i++) {
                //Mode G/A: slotTimeTimer = 9; Mode B: 20
-               u1bAIFS = qos_parameters->aifs[i] * ((mode&(IEEE_G|IEEE_N_24G)) 
?9:20) + aSifsTime;
+               u1bAIFS = qos_parameters->aifs[i] * ((mode&(IEEE_G|IEEE_N_24G)) 
?9:20) + rtl8192e_get_sifs_time(priv);
                u4bAcParam = ((((u32)(qos_parameters->tx_op_limit[i]))<< 
AC_PARAM_TXOP_LIMIT_OFFSET)|
                                (((u32)(qos_parameters->cw_max[i]))<< 
AC_PARAM_ECW_MAX_OFFSET)|
                                (((u32)(qos_parameters->cw_min[i]))<< 
AC_PARAM_ECW_MIN_OFFSET)|
diff --git a/drivers/staging/rtl8192e/r8192E_dm.c 
b/drivers/staging/rtl8192e/r8192E_dm.c
index 688d29b..fec1a02 100644
--- a/drivers/staging/rtl8192e/r8192E_dm.c
+++ b/drivers/staging/rtl8192e/r8192E_dm.c
@@ -1665,7 +1665,7 @@ static void dm_check_edca_turbo(struct r8192_priv *priv)
 
                        // For Each time updating EDCA parameter, reset EDCA 
turbo mode status.
                                dm_init_edca_turbo(priv);
-                               u1bAIFS = qos_parameters->aifs[0] * 
((mode&(IEEE_G|IEEE_N_24G)) ?9:20) + aSifsTime;
+                               u1bAIFS = qos_parameters->aifs[0] * 
((mode&(IEEE_G|IEEE_N_24G)) ?9:20) + rtl8192e_get_sifs_time(priv);
                                u4bAcParam = 
((((u32)(qos_parameters->tx_op_limit[0]))<< AC_PARAM_TXOP_LIMIT_OFFSET)|
                                        (((u32)(qos_parameters->cw_max[0]))<< 
AC_PARAM_ECW_MAX_OFFSET)|
                                        (((u32)(qos_parameters->cw_min[0]))<< 
AC_PARAM_ECW_MIN_OFFSET)|
-- 
1.7.0.4


_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to