summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/platform/x86/dell-laptop.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c
index 7f47396846d..80de0cca1df 100644
--- a/drivers/platform/x86/dell-laptop.c
+++ b/drivers/platform/x86/dell-laptop.c
@@ -428,7 +428,10 @@ out:
static void dell_rfkill_update_sw_state(struct rfkill *rfkill, int radio,
int status)
{
- rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16)));
+ if (!(status & BIT(0))) {
+ /* No hw-switch, sync BIOS state to sw_state */
+ rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16)));
+ }
}
static void dell_rfkill_update_hw_state(struct rfkill *rfkill, int radio,