diff -urN linux-5.4.104.orig/drivers/platform/x86/ideapad-laptop.c linux-5.4.104/drivers/platform/x86/ideapad-laptop.c --- linux-5.4.104.orig/drivers/platform/x86/ideapad-laptop.c 2021-03-16 19:02:12.126383099 +0100 +++ linux-5.4.104/drivers/platform/x86/ideapad-laptop.c 2021-03-16 19:07:04.380961129 +0100 @@ -616,7 +616,8 @@ if (!priv->rfk[dev]) return -ENOMEM; - if (read_ec_data(priv->adev->handle, ideapad_rfk_data[dev].opcode-1, + if (!priv->has_hw_rfkill_switch || + read_ec_data(priv->adev->handle, ideapad_rfk_data[dev].opcode-1, &sw_blocked)) { rfkill_init_sw_state(priv->rfk[dev], 0); } else {