diff options
Diffstat (limited to 'drivers/platform/x86/eeepc-laptop.c')
-rw-r--r-- | drivers/platform/x86/eeepc-laptop.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/x86/eeepc-laptop.c index f54cfeac5221..57f21f0a5655 100644 --- a/drivers/platform/x86/eeepc-laptop.c +++ b/drivers/platform/x86/eeepc-laptop.c | |||
@@ -158,6 +158,7 @@ enum { KE_KEY, KE_END }; | |||
158 | static struct key_entry eeepc_keymap[] = { | 158 | static struct key_entry eeepc_keymap[] = { |
159 | /* Sleep already handled via generic ACPI code */ | 159 | /* Sleep already handled via generic ACPI code */ |
160 | {KE_KEY, 0x10, KEY_WLAN }, | 160 | {KE_KEY, 0x10, KEY_WLAN }, |
161 | {KE_KEY, 0x11, KEY_WLAN }, | ||
161 | {KE_KEY, 0x12, KEY_PROG1 }, | 162 | {KE_KEY, 0x12, KEY_PROG1 }, |
162 | {KE_KEY, 0x13, KEY_MUTE }, | 163 | {KE_KEY, 0x13, KEY_MUTE }, |
163 | {KE_KEY, 0x14, KEY_VOLUMEDOWN }, | 164 | {KE_KEY, 0x14, KEY_VOLUMEDOWN }, |
@@ -528,6 +529,7 @@ static int notify_brn(void) | |||
528 | 529 | ||
529 | static void eeepc_rfkill_notify(acpi_handle handle, u32 event, void *data) | 530 | static void eeepc_rfkill_notify(acpi_handle handle, u32 event, void *data) |
530 | { | 531 | { |
532 | enum rfkill_state state; | ||
531 | struct pci_dev *dev; | 533 | struct pci_dev *dev; |
532 | struct pci_bus *bus = pci_find_bus(0, 1); | 534 | struct pci_bus *bus = pci_find_bus(0, 1); |
533 | 535 | ||
@@ -539,7 +541,9 @@ static void eeepc_rfkill_notify(acpi_handle handle, u32 event, void *data) | |||
539 | return; | 541 | return; |
540 | } | 542 | } |
541 | 543 | ||
542 | if (get_acpi(CM_ASL_WLAN) == 1) { | 544 | eeepc_wlan_rfkill_state(ehotk->eeepc_wlan_rfkill, &state); |
545 | |||
546 | if (state == RFKILL_STATE_UNBLOCKED) { | ||
543 | dev = pci_get_slot(bus, 0); | 547 | dev = pci_get_slot(bus, 0); |
544 | if (dev) { | 548 | if (dev) { |
545 | /* Device already present */ | 549 | /* Device already present */ |
@@ -559,6 +563,8 @@ static void eeepc_rfkill_notify(acpi_handle handle, u32 event, void *data) | |||
559 | pci_dev_put(dev); | 563 | pci_dev_put(dev); |
560 | } | 564 | } |
561 | } | 565 | } |
566 | |||
567 | rfkill_force_state(ehotk->eeepc_wlan_rfkill, state); | ||
562 | } | 568 | } |
563 | 569 | ||
564 | static void eeepc_hotk_notify(acpi_handle handle, u32 event, void *data) | 570 | static void eeepc_hotk_notify(acpi_handle handle, u32 event, void *data) |