Commit 4c077893 authored by João Paulo Rechi Vita's avatar João Paulo Rechi Vita Committed by Johannes Berg

rfkill: Copy "all" global state to other types

When switching the state of all RFKill switches of type all we need to
replicate the RFKILL_TYPE_ALL global state to all the other types global
state, so it is used to initialize persistent RFKill switches on
register.
Signed-off-by: default avatarJoão Paulo Rechi Vita <jprvita@endlessm.com>
Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 22f66895
...@@ -341,7 +341,15 @@ static void __rfkill_switch_all(const enum rfkill_type type, bool blocked) ...@@ -341,7 +341,15 @@ static void __rfkill_switch_all(const enum rfkill_type type, bool blocked)
{ {
struct rfkill *rfkill; struct rfkill *rfkill;
rfkill_global_states[type].cur = blocked; if (type == RFKILL_TYPE_ALL) {
int i;
for (i = 0; i < NUM_RFKILL_TYPES; i++)
rfkill_global_states[i].cur = blocked;
} else {
rfkill_global_states[type].cur = blocked;
}
list_for_each_entry(rfkill, &rfkill_list, node) { list_for_each_entry(rfkill, &rfkill_list, node) {
if (rfkill->type != type && type != RFKILL_TYPE_ALL) if (rfkill->type != type && type != RFKILL_TYPE_ALL)
continue; continue;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment