diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c index 7f47396846d19fc5ea4f01c70554fe14ec68c48d..80de0cca1dfa3040d1297f69200dcb68a0c18261 100644 --- a/drivers/platform/x86/dell-laptop.c +++ b/drivers/platform/x86/dell-laptop.c @@ -428,7 +428,10 @@ static int dell_rfkill_set(void *data, bool blocked) 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,