aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorCorentin Chary <corentincj@iksaif.net>2009-06-25 07:25:42 -0400
committerLen Brown <len.brown@intel.com>2009-06-26 00:23:41 -0400
commit3cd530b5aaffd27b231f9717730f2f6684c00bda (patch)
tree05a17a7f1bb4f2aafd9bf653979df0c0b864c990 /drivers
parentdbfa3ba90dfe353a56e107cff5bce9fb7976f06f (diff)
eeepc-laptop: add rfkill support for the 3G modem in Eee PC 901 Go
Signed-off-by: Janne Grunau <j@jannau.net> Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/platform/x86/eeepc-laptop.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/x86/eeepc-laptop.c
index f5d8473ea66f..ec560f16d720 100644
--- a/drivers/platform/x86/eeepc-laptop.c
+++ b/drivers/platform/x86/eeepc-laptop.c
@@ -141,6 +141,7 @@ struct eeepc_hotk {
141 u16 *keycode_map; 141 u16 *keycode_map;
142 struct rfkill *wlan_rfkill; 142 struct rfkill *wlan_rfkill;
143 struct rfkill *bluetooth_rfkill; 143 struct rfkill *bluetooth_rfkill;
144 struct rfkill *wwan3g_rfkill;
144 struct hotplug_slot *hotplug_slot; 145 struct hotplug_slot *hotplug_slot;
145}; 146};
146 147
@@ -1023,6 +1024,8 @@ static void eeepc_rfkill_exit(void)
1023 rfkill_unregister(ehotk->wlan_rfkill); 1024 rfkill_unregister(ehotk->wlan_rfkill);
1024 if (ehotk->bluetooth_rfkill) 1025 if (ehotk->bluetooth_rfkill)
1025 rfkill_unregister(ehotk->bluetooth_rfkill); 1026 rfkill_unregister(ehotk->bluetooth_rfkill);
1027 if (ehotk->wwan3g_rfkill)
1028 rfkill_unregister(ehotk->wwan3g_rfkill);
1026 if (ehotk->hotplug_slot) 1029 if (ehotk->hotplug_slot)
1027 pci_hp_deregister(ehotk->hotplug_slot); 1030 pci_hp_deregister(ehotk->hotplug_slot);
1028} 1031}
@@ -1107,6 +1110,13 @@ static int eeepc_rfkill_init(struct device *dev)
1107 if (result && result != -ENODEV) 1110 if (result && result != -ENODEV)
1108 goto exit; 1111 goto exit;
1109 1112
1113 result = eeepc_new_rfkill(&ehotk->wwan3g_rfkill,
1114 "eeepc-wwan3g", dev,
1115 RFKILL_TYPE_WWAN, CM_ASL_3G);
1116
1117 if (result && result != -ENODEV)
1118 goto exit;
1119
1110 result = eeepc_setup_pci_hotplug(); 1120 result = eeepc_setup_pci_hotplug();
1111 /* 1121 /*
1112 * If we get -EBUSY then something else is handling the PCI hotplug - 1122 * If we get -EBUSY then something else is handling the PCI hotplug -