Commit 73a253ca authored by Larry Finger's avatar Larry Finger Committed by John W. Linville

rtlwifi: Change debug parameter to apply to individual drivers

The current debug parameter is applied to rtlwifi, which means that all
loaded drivers have the same level of debugging applied. In addition,
the previous method requires a two-step load process to enable debugging.
Signed-off-by: default avatarLarry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent d5294971
...@@ -28,17 +28,11 @@ ...@@ -28,17 +28,11 @@
#include "wifi.h" #include "wifi.h"
static unsigned int debug = DBG_EMERG;
module_param(debug, uint, 0);
MODULE_PARM_DESC(debug, "Set global debug level for rtlwifi (0,2-5)");
void rtl_dbgp_flag_init(struct ieee80211_hw *hw) void rtl_dbgp_flag_init(struct ieee80211_hw *hw)
{ {
struct rtl_priv *rtlpriv = rtl_priv(hw); struct rtl_priv *rtlpriv = rtl_priv(hw);
u8 i; u8 i;
rtlpriv->dbg.global_debuglevel = debug;
rtlpriv->dbg.global_debugcomponents = rtlpriv->dbg.global_debugcomponents =
COMP_ERR | COMP_FW | COMP_INIT | COMP_RECV | COMP_SEND | COMP_ERR | COMP_FW | COMP_INIT | COMP_RECV | COMP_SEND |
COMP_MLME | COMP_SCAN | COMP_INTR | COMP_LED | COMP_SEC | COMP_MLME | COMP_SCAN | COMP_INTR | COMP_LED | COMP_SEC |
......
...@@ -129,6 +129,8 @@ int rtl92c_init_sw_vars(struct ieee80211_hw *hw) ...@@ -129,6 +129,8 @@ int rtl92c_init_sw_vars(struct ieee80211_hw *hw)
rtlpci->irq_mask[1] = (u32) (IMR_CPWM | IMR_C2HCMD | 0); rtlpci->irq_mask[1] = (u32) (IMR_CPWM | IMR_C2HCMD | 0);
/* for debug level */
rtlpriv->dbg.global_debuglevel = rtlpriv->cfg->mod_params->debug;
/* for LPS & IPS */ /* for LPS & IPS */
rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps; rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps;
rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps; rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
...@@ -245,6 +247,7 @@ static struct rtl_mod_params rtl92ce_mod_params = { ...@@ -245,6 +247,7 @@ static struct rtl_mod_params rtl92ce_mod_params = {
.inactiveps = true, .inactiveps = true,
.swctrl_lps = false, .swctrl_lps = false,
.fwctrl_lps = true, .fwctrl_lps = true,
.debug = DBG_EMERG,
}; };
static struct rtl_hal_cfg rtl92ce_hal_cfg = { static struct rtl_hal_cfg rtl92ce_hal_cfg = {
...@@ -357,6 +360,7 @@ MODULE_DESCRIPTION("Realtek 8192C/8188C 802.11n PCI wireless"); ...@@ -357,6 +360,7 @@ MODULE_DESCRIPTION("Realtek 8192C/8188C 802.11n PCI wireless");
MODULE_FIRMWARE("rtlwifi/rtl8192cfw.bin"); MODULE_FIRMWARE("rtlwifi/rtl8192cfw.bin");
module_param_named(swenc, rtl92ce_mod_params.sw_crypto, bool, 0444); module_param_named(swenc, rtl92ce_mod_params.sw_crypto, bool, 0444);
module_param_named(debug, rtl92ce_mod_params.debug, int, 0444);
module_param_named(ips, rtl92ce_mod_params.inactiveps, bool, 0444); module_param_named(ips, rtl92ce_mod_params.inactiveps, bool, 0444);
module_param_named(swlps, rtl92ce_mod_params.swctrl_lps, bool, 0444); module_param_named(swlps, rtl92ce_mod_params.swctrl_lps, bool, 0444);
module_param_named(fwlps, rtl92ce_mod_params.fwctrl_lps, bool, 0444); module_param_named(fwlps, rtl92ce_mod_params.fwctrl_lps, bool, 0444);
...@@ -364,6 +368,7 @@ MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n"); ...@@ -364,6 +368,7 @@ MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n"); MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n");
MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n"); MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n");
MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n"); MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n");
MODULE_PARM_DESC(debug, "Set debug level (0-5) (default 0)");
static struct pci_driver rtl92ce_driver = { static struct pci_driver rtl92ce_driver = {
.name = KBUILD_MODNAME, .name = KBUILD_MODNAME,
......
...@@ -60,6 +60,7 @@ static int rtl92cu_init_sw_vars(struct ieee80211_hw *hw) ...@@ -60,6 +60,7 @@ static int rtl92cu_init_sw_vars(struct ieee80211_hw *hw)
rtlpriv->dm.dm_flag = 0; rtlpriv->dm.dm_flag = 0;
rtlpriv->dm.disable_framebursting = 0; rtlpriv->dm.disable_framebursting = 0;
rtlpriv->dm.thermalvalue = 0; rtlpriv->dm.thermalvalue = 0;
rtlpriv->dbg.global_debuglevel = rtlpriv->cfg->mod_params->debug;
rtlpriv->rtlhal.pfirmware = vmalloc(0x4000); rtlpriv->rtlhal.pfirmware = vmalloc(0x4000);
if (!rtlpriv->rtlhal.pfirmware) { if (!rtlpriv->rtlhal.pfirmware) {
RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG,
...@@ -149,8 +150,14 @@ static struct rtl_hal_ops rtl8192cu_hal_ops = { ...@@ -149,8 +150,14 @@ static struct rtl_hal_ops rtl8192cu_hal_ops = {
static struct rtl_mod_params rtl92cu_mod_params = { static struct rtl_mod_params rtl92cu_mod_params = {
.sw_crypto = 0, .sw_crypto = 0,
.debug = DBG_EMERG,
}; };
module_param_named(swenc, rtl92cu_mod_params.sw_crypto, bool, 0444);
module_param_named(debug, rtl92cu_mod_params.debug, int, 0444);
MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
MODULE_PARM_DESC(debug, "Set debug level (0-5) (default 0)");
static struct rtl_hal_usbint_cfg rtl92cu_interface_cfg = { static struct rtl_hal_usbint_cfg rtl92cu_interface_cfg = {
/* rx */ /* rx */
.in_ep_num = RTL92C_USB_BULK_IN_NUM, .in_ep_num = RTL92C_USB_BULK_IN_NUM,
......
...@@ -146,6 +146,8 @@ static int rtl92d_init_sw_vars(struct ieee80211_hw *hw) ...@@ -146,6 +146,8 @@ static int rtl92d_init_sw_vars(struct ieee80211_hw *hw)
rtlpci->irq_mask[1] = (u32) (IMR_CPWM | IMR_C2HCMD); rtlpci->irq_mask[1] = (u32) (IMR_CPWM | IMR_C2HCMD);
/* for debug level */
rtlpriv->dbg.global_debuglevel = rtlpriv->cfg->mod_params->debug;
/* for LPS & IPS */ /* for LPS & IPS */
rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps; rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps;
rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps; rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
...@@ -267,6 +269,7 @@ static struct rtl_mod_params rtl92de_mod_params = { ...@@ -267,6 +269,7 @@ static struct rtl_mod_params rtl92de_mod_params = {
.inactiveps = true, .inactiveps = true,
.swctrl_lps = true, .swctrl_lps = true,
.fwctrl_lps = false, .fwctrl_lps = false,
.debug = DBG_EMERG,
}; };
static struct rtl_hal_cfg rtl92de_hal_cfg = { static struct rtl_hal_cfg rtl92de_hal_cfg = {
...@@ -377,6 +380,7 @@ MODULE_DESCRIPTION("Realtek 8192DE 802.11n Dual Mac PCI wireless"); ...@@ -377,6 +380,7 @@ MODULE_DESCRIPTION("Realtek 8192DE 802.11n Dual Mac PCI wireless");
MODULE_FIRMWARE("rtlwifi/rtl8192defw.bin"); MODULE_FIRMWARE("rtlwifi/rtl8192defw.bin");
module_param_named(swenc, rtl92de_mod_params.sw_crypto, bool, 0444); module_param_named(swenc, rtl92de_mod_params.sw_crypto, bool, 0444);
module_param_named(debug, rtl92de_mod_params.debug, int, 0444);
module_param_named(ips, rtl92de_mod_params.inactiveps, bool, 0444); module_param_named(ips, rtl92de_mod_params.inactiveps, bool, 0444);
module_param_named(swlps, rtl92de_mod_params.swctrl_lps, bool, 0444); module_param_named(swlps, rtl92de_mod_params.swctrl_lps, bool, 0444);
module_param_named(fwlps, rtl92de_mod_params.fwctrl_lps, bool, 0444); module_param_named(fwlps, rtl92de_mod_params.fwctrl_lps, bool, 0444);
...@@ -384,6 +388,7 @@ MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n"); ...@@ -384,6 +388,7 @@ MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n"); MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n");
MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n"); MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n");
MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n"); MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n");
MODULE_PARM_DESC(debug, "Set debug level (0-5) (default 0)");
static struct pci_driver rtl92de_driver = { static struct pci_driver rtl92de_driver = {
.name = KBUILD_MODNAME, .name = KBUILD_MODNAME,
......
...@@ -160,6 +160,8 @@ static int rtl92s_init_sw_vars(struct ieee80211_hw *hw) ...@@ -160,6 +160,8 @@ static int rtl92s_init_sw_vars(struct ieee80211_hw *hw)
rtlpci->first_init = true; rtlpci->first_init = true;
/* for debug level */
rtlpriv->dbg.global_debuglevel = rtlpriv->cfg->mod_params->debug;
/* for LPS & IPS */ /* for LPS & IPS */
rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps; rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps;
rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps; rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
...@@ -272,6 +274,7 @@ static struct rtl_mod_params rtl92se_mod_params = { ...@@ -272,6 +274,7 @@ static struct rtl_mod_params rtl92se_mod_params = {
.inactiveps = true, .inactiveps = true,
.swctrl_lps = true, .swctrl_lps = true,
.fwctrl_lps = false, .fwctrl_lps = false,
.debug = DBG_EMERG,
}; };
/* Because memory R/W bursting will cause system hang/crash /* Because memory R/W bursting will cause system hang/crash
...@@ -388,6 +391,7 @@ MODULE_DESCRIPTION("Realtek 8192S/8191S 802.11n PCI wireless"); ...@@ -388,6 +391,7 @@ MODULE_DESCRIPTION("Realtek 8192S/8191S 802.11n PCI wireless");
MODULE_FIRMWARE("rtlwifi/rtl8192sefw.bin"); MODULE_FIRMWARE("rtlwifi/rtl8192sefw.bin");
module_param_named(swenc, rtl92se_mod_params.sw_crypto, bool, 0444); module_param_named(swenc, rtl92se_mod_params.sw_crypto, bool, 0444);
module_param_named(debug, rtl92se_mod_params.debug, int, 0444);
module_param_named(ips, rtl92se_mod_params.inactiveps, bool, 0444); module_param_named(ips, rtl92se_mod_params.inactiveps, bool, 0444);
module_param_named(swlps, rtl92se_mod_params.swctrl_lps, bool, 0444); module_param_named(swlps, rtl92se_mod_params.swctrl_lps, bool, 0444);
module_param_named(fwlps, rtl92se_mod_params.fwctrl_lps, bool, 0444); module_param_named(fwlps, rtl92se_mod_params.fwctrl_lps, bool, 0444);
...@@ -395,6 +399,7 @@ MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n"); ...@@ -395,6 +399,7 @@ MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n"); MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n");
MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n"); MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 0)\n");
MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n"); MODULE_PARM_DESC(fwlps, "Set to 1 to use FW control power save (default 1)\n");
MODULE_PARM_DESC(debug, "Set debug level (0-5) (default 0)");
static struct pci_driver rtl92se_driver = { static struct pci_driver rtl92se_driver = {
.name = KBUILD_MODNAME, .name = KBUILD_MODNAME,
......
...@@ -1485,6 +1485,9 @@ struct rtl_mod_params { ...@@ -1485,6 +1485,9 @@ struct rtl_mod_params {
/* default: 0 = using hardware encryption */ /* default: 0 = using hardware encryption */
int sw_crypto; int sw_crypto;
/* default: 0 = DBG_EMERG (0)*/
int debug;
/* default: 1 = using no linked power save */ /* default: 1 = using no linked power save */
bool inactiveps; bool inactiveps;
......
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