forked from Minki/linux
Revert: "dell-laptop: Toggle the unsupported hardware killswitch"
This reverts commit a3d77411e8
,
as it causes a mess in the wireless rfkill status on some models.
It is probably a bad idea to toggle the rfkill for all dell models
without the respect to the claim that it is hardware-controlled.
Cc: stable@kernel.org
Signed-off-by: Keng-Yu Lin <kengyu@canonical.com>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
This commit is contained in:
parent
60cfa098dc
commit
be65dde82a
@ -292,12 +292,9 @@ static int dell_rfkill_set(void *data, bool blocked)
|
||||
dell_send_request(buffer, 17, 11);
|
||||
|
||||
/* If the hardware switch controls this radio, and the hardware
|
||||
switch is disabled, don't allow changing the software state.
|
||||
If the hardware switch is reported as not supported, always
|
||||
fire the SMI to toggle the killswitch. */
|
||||
switch is disabled, don't allow changing the software state */
|
||||
if ((hwswitch_state & BIT(hwswitch_bit)) &&
|
||||
!(buffer->output[1] & BIT(16)) &&
|
||||
(buffer->output[1] & BIT(0))) {
|
||||
!(buffer->output[1] & BIT(16))) {
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
@ -403,23 +400,6 @@ static const struct file_operations dell_debugfs_fops = {
|
||||
|
||||
static void dell_update_rfkill(struct work_struct *ignored)
|
||||
{
|
||||
int status;
|
||||
|
||||
get_buffer();
|
||||
dell_send_request(buffer, 17, 11);
|
||||
status = buffer->output[1];
|
||||
release_buffer();
|
||||
|
||||
/* if hardware rfkill is not supported, set it explicitly */
|
||||
if (!(status & BIT(0))) {
|
||||
if (wifi_rfkill)
|
||||
dell_rfkill_set((void *)1, !((status & BIT(17)) >> 17));
|
||||
if (bluetooth_rfkill)
|
||||
dell_rfkill_set((void *)2, !((status & BIT(18)) >> 18));
|
||||
if (wwan_rfkill)
|
||||
dell_rfkill_set((void *)3, !((status & BIT(19)) >> 19));
|
||||
}
|
||||
|
||||
if (wifi_rfkill)
|
||||
dell_rfkill_query(wifi_rfkill, (void *)1);
|
||||
if (bluetooth_rfkill)
|
||||
|
Loading…
Reference in New Issue
Block a user