rfkill - radio frequency (RF) connector kill switch support

For details to this subsystem look at Documentation/driver-api/rfkill.rst.

For the deprecated ``/sys/class/rfkill/*/claim`` knobs of this interface look in
Documentation/ABI/removed/sysfs-class-rfkill.

What: 		/sys/class/rfkill
Date:		09-Jul-2007
KernelVersion:	v2.6.22
Contact:	linux-wireless@vger.kernel.org,
Description: 	The rfkill class subsystem folder.
		Each registered rfkill driver is represented by an rfkillX
		subfolder (X being an integer >= 0).


What:		/sys/class/rfkill/rfkill[0-9]+/name
Date:		09-Jul-2007
KernelVersion:	v2.6.22
Contact:	linux-wireless@vger.kernel.org
Description: 	Name assigned by driver to this key (interface or driver name).
Values: 	arbitrary string.


What: 		/sys/class/rfkill/rfkill[0-9]+/type
Date:		09-Jul-2007
KernelVersion:	v2.6.22
Contact:	linux-wireless@vger.kernel.org
Description: 	Driver type string ("wlan", "bluetooth", etc).
Values: 	See include/linux/rfkill.h.


What:		/sys/class/rfkill/rfkill[0-9]+/persistent
Date:		09-Jul-2007
KernelVersion:	v2.6.22
Contact:	linux-wireless@vger.kernel.org
Description: 	Whether the soft blocked state is initialised from non-volatile
		storage at startup.
Values: 	A numeric value:

		- 0: false
		- 1: true


What:		/sys/class/rfkill/rfkill[0-9]+/state
Date:		09-Jul-2007
KernelVersion:	v2.6.22
Contact:	linux-wireless@vger.kernel.org
Description: 	Current state of the transmitter.
		This file was scheduled to be removed in 2014, but due to its
		large number of users it will be sticking around for a bit
		longer. Despite it being marked as stable, the newer "hard" and
		"soft" interfaces should be preferred, since it is not possible
		to express the 'soft and hard block' state of the rfkill driver
		through this interface. There will likely be another attempt to
		remove it in the future.
Values: 	A numeric value.

		0: RFKILL_STATE_SOFT_BLOCKED
			transmitter is turned off by software
		1: RFKILL_STATE_UNBLOCKED
			transmitter is (potentially) active
		2: RFKILL_STATE_HARD_BLOCKED
			transmitter is forced off by something outside of
			the driver's control.


What:		/sys/class/rfkill/rfkill[0-9]+/hard
Date:		12-March-2010
KernelVersion:	v2.6.34
Contact:	linux-wireless@vger.kernel.org
Description: 	Current hardblock state. This file is read only.
Values: 	A numeric value.

		0: inactive
			The transmitter is (potentially) active.
		1: active
			The transmitter is forced off by something outside of
			the driver's control.


What:		/sys/class/rfkill/rfkill[0-9]+/soft
Date:		12-March-2010
KernelVersion:	v2.6.34
Contact:	linux-wireless@vger.kernel.org
Description:	Current softblock state. This file is read and write.
Values: 	A numeric value.

		0: inactive
			The transmitter is (potentially) active.

		1: active
			The transmitter is turned off by software.
