|
@@ -251,14 +251,16 @@ void rtl_init_rfkill(struct ieee80211_hw *hw)
|
|
|
bool blocked;
|
|
|
u8 valid = 0;
|
|
|
|
|
|
- radio_state = rtlpriv->cfg->ops->radio_onoff_checking(hw, &valid);
|
|
|
+ /*set init state to on */
|
|
|
+ rtlpriv->rfkill.rfkill_state = 1;
|
|
|
+ wiphy_rfkill_set_hw_state(hw->wiphy, 0);
|
|
|
|
|
|
- /*set init state to that of switch */
|
|
|
- rtlpriv->rfkill.rfkill_state = radio_state;
|
|
|
- printk(KERN_INFO "rtlwifi: wireless switch is %s\n",
|
|
|
- rtlpriv->rfkill.rfkill_state ? "on" : "off");
|
|
|
+ radio_state = rtlpriv->cfg->ops->radio_onoff_checking(hw, &valid);
|
|
|
|
|
|
if (valid) {
|
|
|
+ printk(KERN_INFO "rtlwifi: wireless switch is %s\n",
|
|
|
+ rtlpriv->rfkill.rfkill_state ? "on" : "off");
|
|
|
+
|
|
|
rtlpriv->rfkill.rfkill_state = radio_state;
|
|
|
|
|
|
blocked = (rtlpriv->rfkill.rfkill_state == 1) ? 0 : 1;
|