aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/rfkill.h
diff options
context:
space:
mode:
authorAlan Jenkins <alan-jenkins@tuffmail.co.uk>2009-06-08 08:27:27 -0400
committerJohn W. Linville <linville@tuxdriver.com>2009-06-10 13:28:37 -0400
commitb3fa1329eaf2a7b97124dacf5b663fd51346ac19 (patch)
tree93fd6a76af00568e8317e3e4f084135379ec6c25 /include/linux/rfkill.h
parent8f77f3849cc3ae2d6df9301785a3d316ea7d7ee1 (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 'include/linux/rfkill.h')
-rw-r--r--include/linux/rfkill.h28
1 files changed, 8 insertions, 20 deletions
diff --git a/include/linux/rfkill.h b/include/linux/rfkill.h
index d7e818ad0bc..c1dca0b8138 100644
--- a/include/linux/rfkill.h
+++ b/include/linux/rfkill.h
@@ -157,8 +157,14 @@ struct rfkill * __must_check rfkill_alloc(const char *name,
157 * @rfkill: rfkill structure to be registered 157 * @rfkill: rfkill structure to be registered
158 * 158 *
159 * This function should be called by the transmitter driver to register 159 * This function should be called by the transmitter driver to register
160 * the rfkill structure needs to be registered. Before calling this function 160 * the rfkill structure. Before calling this function the driver needs
161 * the driver needs to be ready to service method calls from rfkill. 161 * to be ready to service method calls from rfkill.
162 *
163 * If the software blocked state is not set before registration,
164 * set_block will be called to initialize it to a default value.
165 *
166 * If the hardware blocked state is not set before registration,
167 * it is assumed to be unblocked.
162 */ 168 */
163int __must_check rfkill_register(struct rfkill *rfkill); 169int __must_check rfkill_register(struct rfkill *rfkill);
164 170
@@ -251,19 +257,6 @@ bool rfkill_set_sw_state(struct rfkill *rfkill, bool blocked);
251void rfkill_set_states(struct rfkill *rfkill, bool sw, bool hw); 257void rfkill_set_states(struct rfkill *rfkill, bool sw, bool hw);
252 258
253/** 259/**
254 * rfkill_set_global_sw_state - set global sw block default
255 * @type: rfkill type to set default for
256 * @blocked: default to set
257 *
258 * This function sets the global default -- use at boot if your platform has
259 * an rfkill switch. If not early enough this call may be ignored.
260 *
261 * XXX: instead of ignoring -- how about just updating all currently
262 * registered drivers?
263 */
264void rfkill_set_global_sw_state(const enum rfkill_type type, bool blocked);
265
266/**
267 * rfkill_blocked - query rfkill block 260 * rfkill_blocked - query rfkill block
268 * 261 *
269 * @rfkill: rfkill struct to query 262 * @rfkill: rfkill struct to query
@@ -317,11 +310,6 @@ static inline void rfkill_set_states(struct rfkill *rfkill, bool sw, bool hw)
317{ 310{
318} 311}
319 312
320static inline void rfkill_set_global_sw_state(const enum rfkill_type type,
321 bool blocked)
322{
323}
324
325static inline bool rfkill_blocked(struct rfkill *rfkill) 313static inline bool rfkill_blocked(struct rfkill *rfkill)
326{ 314{
327 return false; 315 return false;