diff options
-rw-r--r-- | drivers/platform/x86/dell-laptop.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c index 7f47396846d1..80de0cca1dfa 100644 --- a/drivers/platform/x86/dell-laptop.c +++ b/drivers/platform/x86/dell-laptop.c | |||
@@ -428,7 +428,10 @@ out: | |||
428 | static void dell_rfkill_update_sw_state(struct rfkill *rfkill, int radio, | 428 | static void dell_rfkill_update_sw_state(struct rfkill *rfkill, int radio, |
429 | int status) | 429 | int status) |
430 | { | 430 | { |
431 | rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16))); | 431 | if (!(status & BIT(0))) { |
432 | /* No hw-switch, sync BIOS state to sw_state */ | ||
433 | rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16))); | ||
434 | } | ||
432 | } | 435 | } |
433 | 436 | ||
434 | static void dell_rfkill_update_hw_state(struct rfkill *rfkill, int radio, | 437 | static void dell_rfkill_update_hw_state(struct rfkill *rfkill, int radio, |