Commit 68d2413b authored by Henrique de Moraes Holschuh's avatar Henrique de Moraes Holschuh Committed by John W. Linville

rfkill: export global states to rfkill-input

Export the the global switch states to rfkill-input.  This is needed to
properly implement KEY_* handling without disregarding the initial state.
Signed-off-by: default avatarHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Cc: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent cf4b4aab
...@@ -14,5 +14,6 @@ ...@@ -14,5 +14,6 @@
void rfkill_switch_all(enum rfkill_type type, enum rfkill_state state); void rfkill_switch_all(enum rfkill_type type, enum rfkill_state state);
void rfkill_epo(void); void rfkill_epo(void);
void rfkill_restore_states(void); void rfkill_restore_states(void);
enum rfkill_state rfkill_get_global_state(const enum rfkill_type type);
#endif /* __RFKILL_INPUT_H */ #endif /* __RFKILL_INPUT_H */
...@@ -323,6 +323,19 @@ void rfkill_restore_states(void) ...@@ -323,6 +323,19 @@ void rfkill_restore_states(void)
} }
EXPORT_SYMBOL_GPL(rfkill_restore_states); EXPORT_SYMBOL_GPL(rfkill_restore_states);
/**
* rfkill_get_global_state - returns global state for a type
* @type: the type to get the global state of
*
* Returns the current global state for a given wireless
* device type.
*/
enum rfkill_state rfkill_get_global_state(const enum rfkill_type type)
{
return rfkill_global_states[type].current_state;
}
EXPORT_SYMBOL_GPL(rfkill_get_global_state);
/** /**
* rfkill_force_state - Force the internal rfkill radio state * rfkill_force_state - Force the internal rfkill radio state
* @rfkill: pointer to the rfkill class to modify. * @rfkill: pointer to the rfkill class to modify.
...@@ -834,6 +847,7 @@ int rfkill_set_default(enum rfkill_type type, enum rfkill_state state) ...@@ -834,6 +847,7 @@ int rfkill_set_default(enum rfkill_type type, enum rfkill_state state)
if (!test_and_set_bit(type, rfkill_states_lockdflt)) { if (!test_and_set_bit(type, rfkill_states_lockdflt)) {
rfkill_global_states[type].default_state = state; rfkill_global_states[type].default_state = state;
rfkill_global_states[type].current_state = state;
error = 0; error = 0;
} else } else
error = -EPERM; error = -EPERM;
......
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