Commit d1ec9c3d authored by Corentin Chary's avatar Corentin Chary Committed by Len Brown

eeepc-laptop: add rfkill support for the Wimax in ASUS Eee PC 1000HG

Signed-off-by: default avatarCorentin Chary <corentincj@iksaif.net>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent c200da5d
...@@ -142,6 +142,7 @@ struct eeepc_hotk { ...@@ -142,6 +142,7 @@ struct eeepc_hotk {
struct rfkill *wlan_rfkill; struct rfkill *wlan_rfkill;
struct rfkill *bluetooth_rfkill; struct rfkill *bluetooth_rfkill;
struct rfkill *wwan3g_rfkill; struct rfkill *wwan3g_rfkill;
struct rfkill *wimax_rfkill;
struct hotplug_slot *hotplug_slot; struct hotplug_slot *hotplug_slot;
struct mutex hotplug_lock; struct mutex hotplug_lock;
}; };
...@@ -857,6 +858,9 @@ static int eeepc_hotk_restore(struct device *device) ...@@ -857,6 +858,9 @@ static int eeepc_hotk_restore(struct device *device)
if (ehotk->wwan3g_rfkill) if (ehotk->wwan3g_rfkill)
rfkill_set_sw_state(ehotk->wwan3g_rfkill, rfkill_set_sw_state(ehotk->wwan3g_rfkill,
get_acpi(CM_ASL_3G) != 1); get_acpi(CM_ASL_3G) != 1);
if (ehotk->wimax_rfkill)
rfkill_set_sw_state(ehotk->wimax_rfkill,
get_acpi(CM_ASL_WIMAX) != 1);
return 0; return 0;
} }
...@@ -995,6 +999,8 @@ static void eeepc_rfkill_exit(void) ...@@ -995,6 +999,8 @@ static void eeepc_rfkill_exit(void)
rfkill_unregister(ehotk->bluetooth_rfkill); rfkill_unregister(ehotk->bluetooth_rfkill);
if (ehotk->wwan3g_rfkill) if (ehotk->wwan3g_rfkill)
rfkill_unregister(ehotk->wwan3g_rfkill); rfkill_unregister(ehotk->wwan3g_rfkill);
if (ehotk->wimax_rfkill)
rfkill_unregister(ehotk->wimax_rfkill);
} }
static void eeepc_input_exit(void) static void eeepc_input_exit(void)
...@@ -1070,6 +1076,13 @@ static int eeepc_rfkill_init(struct device *dev) ...@@ -1070,6 +1076,13 @@ static int eeepc_rfkill_init(struct device *dev)
if (result && result != -ENODEV) if (result && result != -ENODEV)
goto exit; goto exit;
result = eeepc_new_rfkill(&ehotk->wimax_rfkill,
"eeepc-wimax", dev,
RFKILL_TYPE_WIMAX, CM_ASL_WIMAX);
if (result && result != -ENODEV)
goto exit;
result = eeepc_setup_pci_hotplug(); result = eeepc_setup_pci_hotplug();
/* /*
* If we get -EBUSY then something else is handling the PCI hotplug - * If we get -EBUSY then something else is handling the PCI hotplug -
......
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