diff options
author | Alan Jenkins <alan-jenkins@tuffmail.co.uk> | 2009-06-08 08:27:27 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-06-10 13:28:37 -0400 |
commit | b3fa1329eaf2a7b97124dacf5b663fd51346ac19 (patch) | |
tree | 93fd6a76af00568e8317e3e4f084135379ec6c25 /drivers/platform/x86/acer-wmi.c | |
parent | 8f77f3849cc3ae2d6df9301785a3d316ea7d7ee1 (diff) |
rfkill: remove set_global_sw_state
rfkill_set_global_sw_state() (previously rfkill_set_default()) will no
longer be exported by the rewritten rfkill core.
Instead, platform drivers which can provide persistent soft-rfkill state
across power-down/reboot should indicate their initial state by calling
rfkill_set_sw_state() before registration. Otherwise, they will be
initialized to a default value during registration by a set_block call.
We remove existing calls to rfkill_set_sw_state() which happen before
registration, since these had no effect in the old model. If these
drivers do have persistent state, the calls can be put back (subject
to testing :-). This affects hp-wmi and acer-wmi.
Drivers with persistent state will affect the global state only if
rfkill-input is enabled. This is required, otherwise booting with
wireless soft-blocked and pressing the wireless-toggle key once would
have no apparent effect. This special case will be removed in future
along with rfkill-input, in favour of a more flexible userspace daemon
(see Documentation/feature-removal-schedule.txt).
Now rfkill_global_states[n].def is only used to preserve global states
over EPO, it is renamed to ".sav".
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Acked-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/platform/x86/acer-wmi.c')
-rw-r--r-- | drivers/platform/x86/acer-wmi.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/platform/x86/acer-wmi.c b/drivers/platform/x86/acer-wmi.c index b618fa51db2d..09a503e5da6a 100644 --- a/drivers/platform/x86/acer-wmi.c +++ b/drivers/platform/x86/acer-wmi.c | |||
@@ -988,7 +988,6 @@ static struct rfkill *acer_rfkill_register(struct device *dev, | |||
988 | char *name, u32 cap) | 988 | char *name, u32 cap) |
989 | { | 989 | { |
990 | int err; | 990 | int err; |
991 | u32 state; | ||
992 | struct rfkill *rfkill_dev; | 991 | struct rfkill *rfkill_dev; |
993 | 992 | ||
994 | rfkill_dev = rfkill_alloc(name, dev, type, | 993 | rfkill_dev = rfkill_alloc(name, dev, type, |
@@ -996,8 +995,6 @@ static struct rfkill *acer_rfkill_register(struct device *dev, | |||
996 | (void *)(unsigned long)cap); | 995 | (void *)(unsigned long)cap); |
997 | if (!rfkill_dev) | 996 | if (!rfkill_dev) |
998 | return ERR_PTR(-ENOMEM); | 997 | return ERR_PTR(-ENOMEM); |
999 | get_u32(&state, cap); | ||
1000 | rfkill_set_sw_state(rfkill_dev, !state); | ||
1001 | 998 | ||
1002 | err = rfkill_register(rfkill_dev); | 999 | err = rfkill_register(rfkill_dev); |
1003 | if (err) { | 1000 | if (err) { |