staging: r8712u: Add module parameter to disable turbo mode
Signed-off-by: Albert Wang <albert_wang@realtek.com.tw>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
diff --git a/drivers/staging/rtl8712/drv_types.h b/drivers/staging/rtl8712/drv_types.h
index 6147786..3bb66dc 100644
--- a/drivers/staging/rtl8712/drv_types.h
+++ b/drivers/staging/rtl8712/drv_types.h
@@ -96,8 +96,9 @@
u8 ht_enable;
u8 cbw40_enable;
u8 ampdu_enable;/*for tx*/
- u8 rf_config ;
- u8 low_power ;
+ u8 rf_config;
+ u8 low_power;
+ u8 wifi_test;
};
/* For registry parameters */
diff --git a/drivers/staging/rtl8712/hal_init.c b/drivers/staging/rtl8712/hal_init.c
index a51850c..32088a6 100644
--- a/drivers/staging/rtl8712/hal_init.c
+++ b/drivers/staging/rtl8712/hal_init.c
@@ -71,7 +71,8 @@
pfwpriv->mp_mode = (pregpriv->mp_mode == 1) ? 1 : 0;
pfwpriv->vcsType = pregpriv->vrtl_carrier_sense; /* 0:off 1:on 2:auto */
pfwpriv->vcsMode = pregpriv->vcs_type; /* 1:RTS/CTS 2:CTS to self */
- pfwpriv->turboMode = 1; /* default enable it */
+ /* default enable turboMode */
+ pfwpriv->turboMode = ((pregpriv->wifi_test == 1) ? 0 : 1);
pfwpriv->lowPowerMode = pregpriv->low_power;
}
diff --git a/drivers/staging/rtl8712/os_intfs.c b/drivers/staging/rtl8712/os_intfs.c
index aaf7de0..3f38e8e 100644
--- a/drivers/staging/rtl8712/os_intfs.c
+++ b/drivers/staging/rtl8712/os_intfs.c
@@ -92,8 +92,13 @@
/* mac address to use instead of the one stored in Efuse */
char *r8712_initmac;
static char *initmac;
+/* if wifi_test = 1, driver will disable the turbo mode and pass it to
+ * firmware private.
+ */
+static int wifi_test = 0;
module_param_string(ifname, ifname, sizeof(ifname), S_IRUGO|S_IWUSR);
+module_param(wifi_test, int, 0644);
module_param(initmac, charp, 0644);
module_param(video_mode, int, 0644);
module_param(chip_version, int, 0644);
@@ -165,6 +170,7 @@
registry_par->ampdu_enable = (u8)ampdu_enable;
registry_par->rf_config = (u8)rf_config;
registry_par->low_power = (u8)low_power;
+ registry_par->wifi_test = (u8) wifi_test;
r8712_initmac = initmac;
return status;
}