Commit 245727c1 authored by Adel Gadllah's avatar Adel Gadllah Committed by John W. Linville

iwlwifi: fix rfkill deps and remove input device usage

This patch fixes the rfkill deps for iwl4965/5000
and removes the input device usage.
Signed-off-by: default avatarAdel Gadllah <adel.gadllah@gmail.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent ae6a44e3
...@@ -8,7 +8,6 @@ config IWLCORE ...@@ -8,7 +8,6 @@ config IWLCORE
select MAC80211_LEDS if IWLWIFI_LEDS select MAC80211_LEDS if IWLWIFI_LEDS
select LEDS_CLASS if IWLWIFI_LEDS select LEDS_CLASS if IWLWIFI_LEDS
select RFKILL if IWLWIFI_RFKILL select RFKILL if IWLWIFI_RFKILL
select RFKILL_INPUT if (IWLWIFI_RFKILL && INPUT)
config IWLWIFI_LEDS config IWLWIFI_LEDS
bool bool
......
...@@ -98,36 +98,11 @@ int iwl_rfkill_init(struct iwl_priv *priv) ...@@ -98,36 +98,11 @@ int iwl_rfkill_init(struct iwl_priv *priv)
priv->rfkill_mngr.rfkill->dev.class->suspend = NULL; priv->rfkill_mngr.rfkill->dev.class->suspend = NULL;
priv->rfkill_mngr.rfkill->dev.class->resume = NULL; priv->rfkill_mngr.rfkill->dev.class->resume = NULL;
#if defined(CONFIG_RFKILL_INPUT) || defined(CONFIG_RFKILL_INPUT_MODULE)
priv->rfkill_mngr.input_dev = input_allocate_device();
if (!priv->rfkill_mngr.input_dev) {
IWL_ERROR("Unable to allocate rfkill input device.\n");
ret = -ENOMEM;
goto freed_rfkill;
}
priv->rfkill_mngr.input_dev->name = priv->cfg->name;
priv->rfkill_mngr.input_dev->phys = wiphy_name(priv->hw->wiphy);
priv->rfkill_mngr.input_dev->id.bustype = BUS_HOST;
priv->rfkill_mngr.input_dev->id.vendor = priv->pci_dev->vendor;
priv->rfkill_mngr.input_dev->dev.parent = device;
priv->rfkill_mngr.input_dev->evbit[0] = BIT(EV_KEY);
set_bit(KEY_WLAN, priv->rfkill_mngr.input_dev->keybit);
#endif
ret = rfkill_register(priv->rfkill_mngr.rfkill); ret = rfkill_register(priv->rfkill_mngr.rfkill);
if (ret) { if (ret) {
IWL_ERROR("Unable to register rfkill: %d\n", ret); IWL_ERROR("Unable to register rfkill: %d\n", ret);
goto free_input_dev;
}
#if defined(CONFIG_RFKILL_INPUT) || defined(CONFIG_RFKILL_INPUT_MODULE)
ret = input_register_device(priv->rfkill_mngr.input_dev);
if (ret) {
IWL_ERROR("Unable to register rfkill input device: %d\n", ret);
goto unregister_rfkill; goto unregister_rfkill;
} }
#endif
IWL_DEBUG_RF_KILL("RFKILL initialization complete.\n"); IWL_DEBUG_RF_KILL("RFKILL initialization complete.\n");
return ret; return ret;
...@@ -136,12 +111,6 @@ int iwl_rfkill_init(struct iwl_priv *priv) ...@@ -136,12 +111,6 @@ int iwl_rfkill_init(struct iwl_priv *priv)
rfkill_unregister(priv->rfkill_mngr.rfkill); rfkill_unregister(priv->rfkill_mngr.rfkill);
priv->rfkill_mngr.rfkill = NULL; priv->rfkill_mngr.rfkill = NULL;
free_input_dev:
#if defined(CONFIG_RFKILL_INPUT) || defined(CONFIG_RFKILL_INPUT_MODULE)
input_free_device(priv->rfkill_mngr.input_dev);
priv->rfkill_mngr.input_dev = NULL;
#endif
freed_rfkill: freed_rfkill:
if (priv->rfkill_mngr.rfkill != NULL) if (priv->rfkill_mngr.rfkill != NULL)
rfkill_free(priv->rfkill_mngr.rfkill); rfkill_free(priv->rfkill_mngr.rfkill);
...@@ -156,13 +125,6 @@ EXPORT_SYMBOL(iwl_rfkill_init); ...@@ -156,13 +125,6 @@ EXPORT_SYMBOL(iwl_rfkill_init);
void iwl_rfkill_unregister(struct iwl_priv *priv) void iwl_rfkill_unregister(struct iwl_priv *priv)
{ {
#if defined(CONFIG_RFKILL_INPUT) || defined(CONFIG_RFKILL_INPUT_MODULE)
if (priv->rfkill_mngr.input_dev)
input_unregister_device(priv->rfkill_mngr.input_dev);
input_free_device(priv->rfkill_mngr.input_dev);
priv->rfkill_mngr.input_dev = NULL;
#endif
if (priv->rfkill_mngr.rfkill) if (priv->rfkill_mngr.rfkill)
rfkill_unregister(priv->rfkill_mngr.rfkill); rfkill_unregister(priv->rfkill_mngr.rfkill);
...@@ -173,7 +135,6 @@ EXPORT_SYMBOL(iwl_rfkill_unregister); ...@@ -173,7 +135,6 @@ EXPORT_SYMBOL(iwl_rfkill_unregister);
/* set rf-kill to the right state. */ /* set rf-kill to the right state. */
void iwl_rfkill_set_hw_state(struct iwl_priv *priv) void iwl_rfkill_set_hw_state(struct iwl_priv *priv)
{ {
if (!priv->rfkill_mngr.rfkill) if (!priv->rfkill_mngr.rfkill)
return; return;
......
...@@ -31,12 +31,10 @@ ...@@ -31,12 +31,10 @@
struct iwl_priv; struct iwl_priv;
#include <linux/rfkill.h> #include <linux/rfkill.h>
#include <linux/input.h>
#ifdef CONFIG_IWLWIFI_RFKILL #ifdef CONFIG_IWLWIFI_RFKILL
struct iwl_rfkill_mngr { struct iwl_rfkill_mngr {
struct rfkill *rfkill; struct rfkill *rfkill;
struct input_dev *input_dev;
}; };
void iwl_rfkill_set_hw_state(struct iwl_priv *priv); void iwl_rfkill_set_hw_state(struct iwl_priv *priv);
......
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