forked from Minki/linux
c64fb01627
The new code added by this patch will make rfkill create a misc character device /dev/rfkill that userspace can use to control rfkill soft blocks and get status of devices as well as events when the status changes. Using it is very simple -- when you open it you can read a number of times to get the initial state, and every further read blocks (you can poll) on getting the next event from the kernel. The same structure you read is also used when writing to it to change the soft block of a given device, all devices of a given type, or all devices. This also makes CONFIG_RFKILL_INPUT selectable again in order to be able to test without it present since its functionality can now be replaced by userspace entirely and distros and users may not want the input part of rfkill interfering with their userspace code. We will also write a userspace daemon to handle all that and consequently add the input code to the feature removal schedule. In order to have rfkilld support both kernels with and without CONFIG_RFKILL_INPUT (or new kernels after its eventual removal) we also add an ioctl (that only exists if rfkill-input is present) to disable rfkill-input. It is not very efficient, but at least gives the correct behaviour in all cases. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
25 lines
568 B
Plaintext
25 lines
568 B
Plaintext
#
|
|
# RF switch subsystem configuration
|
|
#
|
|
menuconfig RFKILL
|
|
tristate "RF switch subsystem support"
|
|
help
|
|
Say Y here if you want to have control over RF switches
|
|
found on many WiFi and Bluetooth cards.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called rfkill.
|
|
|
|
# LED trigger support
|
|
config RFKILL_LEDS
|
|
bool
|
|
depends on RFKILL
|
|
depends on LEDS_TRIGGERS = y || RFKILL = LEDS_TRIGGERS
|
|
default y
|
|
|
|
config RFKILL_INPUT
|
|
bool "RF switch input support"
|
|
depends on RFKILL
|
|
depends on INPUT = y || RFKILL = INPUT
|
|
default y if !EMBEDDED
|