From: "João Paulo Rechi Vita" <jprvita@gmail.com> Date: 2016-02-08 15:41:45
This series implements an airplane-mode indicator LED trigger, which can be
used by platform drivers. The default policy have have airplane-mode set when
all the radios known by RFKill are OFF, and unset otherwise. This policy can be
overwritten by userspace using the new operations _AIRPLANE_MODE_ACQUIRE,
_AIRPLANE_MODE_RELEASE, and _AIRPLANE_MODE_CHANGE. When the airplane-mode
indicator state changes, userspace gets notifications through the RFKill
control misc device (/dev/rfkill).
The series also contains a few general fixes and improvements to the subsystem.
João Paulo Rechi Vita (9):
rfkill: Improve documentation language
rfkill: Remove extra blank line
rfkill: Point to the correct deprecated doc location
rfkill: Move "state" sysfs file back to stable
rfkill: Factor rfkill_global_states[].cur assignments
rfkill: Add documentation about LED triggers
rfkill: Create "rfkill-airplane_mode" LED trigger
rfkill: Userspace control for airplane mode
rfkill: Notify userspace of airplane-mode state changes
Documentation/ABI/obsolete/sysfs-class-rfkill | 20 ----
Documentation/ABI/stable/sysfs-class-rfkill | 27 ++++-
Documentation/rfkill.txt | 17 +++
include/uapi/linux/rfkill.h | 3 +
net/rfkill/core.c | 144 +++++++++++++++++++++-----
5 files changed, 164 insertions(+), 47 deletions(-)
delete mode 100644 Documentation/ABI/obsolete/sysfs-class-rfkill
--
2.5.0
2.5.0
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
2.5.0
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
@@ -133,5 +133,8 @@ it available for other applications to take control. Changes to the airplane-mode indicator state can be made using RFKILL_OP_AIRPLANE_MODE_CHANGE, passing the new value in the 'soft' field of 'struct rfkill_event'.+This same API is also used to provide userspace with notifications of changes+to airplane-mode indicator state.+ For further details consult Documentation/ABI/stable/sysfs-class-rfkill.
From: "João Paulo Rechi Vita" <jprvita@gmail.com> Date: 2016-02-08 15:42:41
Provide an interface for the airplane-mode indicator be controlled from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft". If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
Signed-off-by: João Paulo Rechi Vita <jprvita-6IF/jdPJHihWk0Htik3J/w@public.gmane.org>
---
Documentation/rfkill.txt | 10 ++++++++++
include/uapi/linux/rfkill.h | 3 +++
net/rfkill/core.c | 47 ++++++++++++++++++++++++++++++++++++++++++---
3 files changed, 57 insertions(+), 3 deletions(-)
@@ -87,6 +87,7 @@ RFKill provides per-switch LED triggers, which can be used to drive LEDs according to the switch state (LED_FULL when blocked, LED_OFF otherwise). An airplane-mode indicator LED trigger is also available, which triggers LED_FULL when all radios known by RFKill are blocked, and LED_OFF otherwise.+The airplane-mode indicator LED trigger policy can be overridden by userspace. 5. Userspace support
@@ -123,5 +124,14 @@ RFKILL_TYPE The contents of these variables corresponds to the "name", "state" and "type" sysfs files explained above.+Userspace can also override the default airplane-mode indicator policy through+/dev/rfkill. Control of the airplane mode indicator has to be acquired first,+using RFKILL_OP_AIRPLANE_MODE_ACQUIRE, and is only available for one userspace+application at a time. Closing the fd or using RFKILL_OP_AIRPLANE_MODE_RELEASE+reverts the airplane-mode indicator back to the default kernel policy and makes+it available for other applications to take control. Changes to the+airplane-mode indicator state can be made using RFKILL_OP_AIRPLANE_MODE_CHANGE,+passing the new value in the 'soft' field of 'struct rfkill_event'.+ For further details consult Documentation/ABI/stable/sysfs-class-rfkill.
--
2.5.0
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Dan Williams <hidden> Date: 2016-02-08 16:11:32
On Mon, 2016-02-08 at 10:41 -0500, João Paulo Rechi Vita wrote:
Provide an interface for the airplane-mode indicator be controlled
from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole
time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft".
If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
I'd like to clarify a bit, so tell me if I'm correct or not. Using
RFKILL_OP_AIRPLANE_MODE_CHANGE does not actually change any device
state. It's just an indicator with no relationship to any of the
registered rfkill switches, right?
I wonder if setting RFKILL_OP_AIRPLANE_MODE_CHANGE(true) shouldn't also
softblock all switches, otherwise you can set airplane mode all day
long with RFKILL_OP_AIRPLANE_MODE_CHANGE and it doesn't actually enable
airplane mode at all?
Dan
quoted hunk
Signed-off-by: João Paulo Rechi Vita <redacted>
---
Documentation/rfkill.txt | 10 ++++++++++
include/uapi/linux/rfkill.h | 3 +++
net/rfkill/core.c | 47
++++++++++++++++++++++++++++++++++++++++++---
3 files changed, 57 insertions(+), 3 deletions(-)
@@ -87,6 +87,7 @@ RFKill provides per-switch LED triggers, which can
be used to drive LEDs
according to the switch state (LED_FULL when blocked, LED_OFF
otherwise).
An airplane-mode indicator LED trigger is also available, which
triggers
LED_FULL when all radios known by RFKill are blocked, and LED_OFF
otherwise.
+The airplane-mode indicator LED trigger policy can be overridden by
userspace.
5. Userspace support
@@ -123,5 +124,14 @@ RFKILL_TYPE The contents of these variables corresponds to the "name", "state"
and
"type" sysfs files explained above.
+Userspace can also override the default airplane-mode indicator
policy through
+/dev/rfkill. Control of the airplane mode indicator has to be
acquired first,
+using RFKILL_OP_AIRPLANE_MODE_ACQUIRE, and is only available for one
userspace
+application at a time. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE
+reverts the airplane-mode indicator back to the default kernel
policy and makes
+it available for other applications to take control. Changes to the
+airplane-mode indicator state can be made using
RFKILL_OP_AIRPLANE_MODE_CHANGE,
+passing the new value in the 'soft' field of 'struct rfkill_event'.
+
For further details consult Documentation/ABI/stable/sysfs-class
-rfkill.
diff --git a/include/uapi/linux/rfkill.h
b/include/uapi/linux/rfkill.h
index 2e00dce..9cb999b 100644
From: João Paulo Rechi Vita <jprvita@gmail.com> Date: 2016-02-08 17:38:24
On 8 February 2016 at 11:11, Dan Williams [off-list ref] wrote:
On Mon, 2016-02-08 at 10:41 -0500, João Paulo Rechi Vita wrote:
quoted
Provide an interface for the airplane-mode indicator be controlled
from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole
time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft".
If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
I'd like to clarify a bit, so tell me if I'm correct or not. Using
RFKILL_OP_AIRPLANE_MODE_CHANGE does not actually change any device
state. It's just an indicator with no relationship to any of the
registered rfkill switches, right?
Yes, that's correct, and it is the intended behavior.
I wonder if setting RFKILL_OP_AIRPLANE_MODE_CHANGE(true) shouldn't also
softblock all switches, otherwise you can set airplane mode all day
long with RFKILL_OP_AIRPLANE_MODE_CHANGE and it doesn't actually enable
airplane mode at all?
The idea behind it is to just provide the mechanism for userspace to
decide what exactly being in airplane mode means, so it would
set/unset the indicator in the right moment.
--
João Paulo Rechi Vita
http://about.me/jprvita
From: Johannes Berg <johannes@sipsolutions.net> Date: 2016-02-10 16:07:41
On Mon, 2016-02-08 at 10:11 -0600, Dan Williams wrote:
I'd like to clarify a bit, so tell me if I'm correct or not. Using
RFKILL_OP_AIRPLANE_MODE_CHANGE does not actually change any device
state. It's just an indicator with no relationship to any of the
registered rfkill switches, right?
Yes. I'm not sure I'm totally happy with this userspace API.
I wonder if setting RFKILL_OP_AIRPLANE_MODE_CHANGE(true) shouldn't
also
softblock all switches, otherwise you can set airplane mode all day
long with RFKILL_OP_AIRPLANE_MODE_CHANGE and it doesn't actually
enable
airplane mode at all?
No, this is kinda the point that you could implement your policy in
userspace now.
johannes
From: Dan Williams <hidden> Date: 2016-02-10 16:53:34
On Wed, 2016-02-10 at 17:07 +0100, Johannes Berg wrote:
On Mon, 2016-02-08 at 10:11 -0600, Dan Williams wrote:
quoted
I'd like to clarify a bit, so tell me if I'm correct or not. Using
RFKILL_OP_AIRPLANE_MODE_CHANGE does not actually change any device
state. It's just an indicator with no relationship to any of the
registered rfkill switches, right?
Yes. I'm not sure I'm totally happy with this userspace API.
quoted
I wonder if setting RFKILL_OP_AIRPLANE_MODE_CHANGE(true) shouldn't
also
softblock all switches, otherwise you can set airplane mode all day
long with RFKILL_OP_AIRPLANE_MODE_CHANGE and it doesn't actually
enable
airplane mode at all?
No, this is kinda the point that you could implement your policy in
userspace now.
Yeah, I get that now. It's just that to me, something called
"AIRPLANE_MODE_CHANGE" seems like it should actually change airplane
mode on/off, which implies killing radios. I wouldn't have had the
problem if it was named AIRPLANE_MODE_INDICATOR_CHANGE, which makes it
clear this is simply an indicator and has no actual effect on anything
other than a LED.
Dan
From: Johannes Berg <johannes@sipsolutions.net> Date: 2016-02-10 17:12:50
On 2016-02-10 17:53, Dan Williams wrote:
Yeah, I get that now. It's just that to me, something called
"AIRPLANE_MODE_CHANGE" seems like it should actually change airplane
mode on/off, which implies killing radios. I wouldn't have had the
problem if it was named AIRPLANE_MODE_INDICATOR_CHANGE, which makes it
clear this is simply an indicator and has no actual effect on anything
other than a LED.
Yeah, I agree. I'm not even sure that it's a good idea to subsume this
into the regular operations in the API, although that's obviously the
easiest extension. I'll need to think about that a bit more with the
code at hand though.
johannes
From: João Paulo Rechi Vita <jprvita@gmail.com> Date: 2016-02-16 15:13:29
On 10 February 2016 at 12:12, Johannes Berg [off-list ref] wrote:
On 2016-02-10 17:53, Dan Williams wrote:
quoted
Yeah, I get that now. It's just that to me, something called
"AIRPLANE_MODE_CHANGE" seems like it should actually change airplane
mode on/off, which implies killing radios. I wouldn't have had the
problem if it was named AIRPLANE_MODE_INDICATOR_CHANGE, which makes it
clear this is simply an indicator and has no actual effect on anything
other than a LED.
I also agree the AIRPLANE_MODE_INDICATOR_* prefix makes things more
clear here. Thanks for the feedback, Dan!
Yeah, I agree. I'm not even sure that it's a good idea to subsume this into
the regular operations in the API, although that's obviously the easiest
extension. I'll need to think about that a bit more with the code at hand
though.
Initially I have thought about creating and additional RFKill switch
for that, but I think it would be a bit hackish since we would have to
treat it specially in sysfs attributes and probably other places, and
userspace would also need a special case when going through the list
of RFKill switches in the system. The proposed solution has equivalent
semantics to an RFKill switch, is backward-compatible (users would
only ignore the unknown operations and evens -- although gsd has a
"default:" case to abort execution on an unknown event) and does not
extend the RFKill event struct.
One alternative would be to move the control point to a separate
device, like /dev/rfkill-airplane-mode, but I'm not sure this is a
very elegant approach. Anyway, I'm open to work on changes to the API,
but it would be great if you could at least pick or reject the
non-polemical patches of the series, so I don't need to carry them
anymore.
--
João Paulo Rechi Vita
http://about.me/jprvita
Provide an interface for the airplane-mode indicator be controlled from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft". If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
as explained in an earlier response, the concept Airplane Mode seems to be imposing policy into the kernel. Do we really want have this as a kernel exposed API.
Regards
Marcel
From: Johannes Berg <johannes@sipsolutions.net> Date: 2016-02-08 17:18:50
On 2016-02-08 17:20, Marcel Holtmann wrote:
as explained in an earlier response, the concept Airplane Mode seems
to be imposing policy into the kernel. Do we really want have this as
a kernel exposed API.
This patch is the one that *solves* that problem ... please read it more
carefully?
johannes
From: João Paulo Rechi Vita <jprvita@gmail.com> Date: 2016-02-08 17:29:51
Hello Marcel,
On 8 February 2016 at 11:20, Marcel Holtmann [off-list ref] wrote:
Hi Joa Paulo,
quoted
Provide an interface for the airplane-mode indicator be controlled from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft". If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
as explained in an earlier response, the concept Airplane Mode seems to be imposing policy into the kernel. Do we really want have this as a kernel exposed API.
On that very same thread we decided to keep using the "airplane mode"
name both for when having the default policy of "set it when all
radios are off" or when allowing userspace to override the default.
Please see the following message from Johannes
http://www.spinics.net/lists/linux-wireless/msg146069.html and let me
know if that covers your concern.
Thanks!
--
João Paulo Rechi Vita
http://about.me/jprvita
Hi João,
On Tue, Feb 9, 2016 at 2:41 AM, João Paulo Rechi Vita [off-list ref] wrote:
quoted hunk
Provide an interface for the airplane-mode indicator be controlled from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft". If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
Signed-off-by: João Paulo Rechi Vita <redacted>
---
Documentation/rfkill.txt | 10 ++++++++++
include/uapi/linux/rfkill.h | 3 +++
net/rfkill/core.c | 47 ++++++++++++++++++++++++++++++++++++++++++---
3 files changed, 57 insertions(+), 3 deletions(-)
Are you sure this is correct?
In the case that airplane mode isn't owned, the
rfkill_apm_led_trigger_event() call will be a noop, so we should
arguably not be calling it.
Also, should we just fail silently if we're not the owner? I.e. what
does userspace learn from this op failing and is that useful?
From: João Paulo Rechi Vita <jprvita@gmail.com> Date: 2016-02-09 21:36:04
On 8 February 2016 at 17:53, Julian Calaby [off-list ref] wrote:
quoted
+ if (ev.op == RFKILL_OP_AIRPLANE_MODE_RELEASE) {
+ if (rfkill_apm_owned && !data->is_apm_owner) {
Are you sure this is correct?
In the case that airplane mode isn't owned, the
rfkill_apm_led_trigger_event() call will be a noop, so we should
arguably not be calling it.
Ok, I'm changing the check to be consistent with _CHANGE, so the call
only succeeds if (rfkill_apm_owned && data->is_apm_owner), and return
an error otherwise.
Also, should we just fail silently if we're not the owner? I.e. what
does userspace learn from this op failing and is that useful?
I think it is better to return an error every time userspace is trying
to call an operation that it was not supposed to call at a certain
state (without acquiring control of the airplane-mode indicator). If a
program has a logic error that makes it call _RELEASE without calling
_ACQUIRE first, it's easier for the programmer to spot the problem if
we return an error here.
From: "João Paulo Rechi Vita" <jprvita@gmail.com> Date: 2016-02-09 21:37:01
Provide an interface for the airplane-mode indicator be controlled from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft". If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
Signed-off-by: João Paulo Rechi Vita <redacted>
---
Documentation/rfkill.txt | 10 ++++++++++
include/uapi/linux/rfkill.h | 3 +++
net/rfkill/core.c | 45 +++++++++++++++++++++++++++++++++++++++++----
3 files changed, 54 insertions(+), 4 deletions(-)
@@ -87,6 +87,7 @@ RFKill provides per-switch LED triggers, which can be used to drive LEDs according to the switch state (LED_FULL when blocked, LED_OFF otherwise). An airplane-mode indicator LED trigger is also available, which triggers LED_FULL when all radios known by RFKill are blocked, and LED_OFF otherwise.+The airplane-mode indicator LED trigger policy can be overridden by userspace. 5. Userspace support
@@ -123,5 +124,14 @@ RFKILL_TYPE The contents of these variables corresponds to the "name", "state" and "type" sysfs files explained above.+Userspace can also override the default airplane-mode indicator policy through+/dev/rfkill. Control of the airplane mode indicator has to be acquired first,+using RFKILL_OP_AIRPLANE_MODE_ACQUIRE, and is only available for one userspace+application at a time. Closing the fd or using RFKILL_OP_AIRPLANE_MODE_RELEASE+reverts the airplane-mode indicator back to the default kernel policy and makes+it available for other applications to take control. Changes to the+airplane-mode indicator state can be made using RFKILL_OP_AIRPLANE_MODE_CHANGE,+passing the new value in the 'soft' field of 'struct rfkill_event'.+ For further details consult Documentation/ABI/stable/sysfs-class-rfkill.
@@ -1180,11 +1182,26 @@ static ssize_t rfkill_fop_read(struct file *file, char __user *buf,returnret;}+staticintrfkill_airplane_mode_release(structrfkill_data*data)+{+boolstate=rfkill_global_states[RFKILL_TYPE_ALL].cur;++if(rfkill_apm_owned&&data->is_apm_owner){+rfkill_apm_owned=false;+data->is_apm_owner=false;+rfkill_apm_led_trigger_event(state);+return0;+}+return-EACCES;+}+staticssize_trfkill_fop_write(structfile*file,constchar__user*buf,size_tcount,loff_t*pos){+structrfkill_data*data=file->private_data;structrfkill*rfkill;structrfkill_eventev;+intret=0;/* we don't need the 'hard' variable but accept it */if(count<RFKILL_EVENT_SIZE_V1-1)
Hi All,
On Wed, Feb 10, 2016 at 8:36 AM, João Paulo Rechi Vita
[off-list ref] wrote:
Provide an interface for the airplane-mode indicator be controlled from
userspace. User has to first acquire the control through
RFKILL_OP_AIRPLANE_MODE_ACQUIRE and keep the fd open for the whole time
it wants to be in control of the indicator. Closing the fd or using
RFKILL_OP_AIRPLANE_MODE_RELEASE restores the default policy.
To change state of the indicator, the RFKILL_OP_AIRPLANE_MODE_CHANGE
operation is used, passing the value on "struct rfkill_event.soft". If
the caller has not acquired the airplane-mode control beforehand, the
operation fails.
Signed-off-by: João Paulo Rechi Vita <redacted>
From: "João Paulo Rechi Vita" <jprvita@gmail.com> Date: 2016-02-08 15:43:13
This creates a new LED trigger to be used by platform drivers as a
default trigger for airplane-mode indicator LEDs.
By default this trigger will fire when RFKILL_OP_CHANGE_ALL is called
for all types (RFKILL_TYPE_ALL), setting the LED brightness to LED_FULL
when the changing the state to blocked, and to LED_OFF when the changing
the state to unblocked. In the future there will be a mechanism for
userspace to override the default policy, so it can implement its own.
This trigger will be used by the asus-wireless x86 platform driver.
Signed-off-by: João Paulo Rechi Vita <redacted>
---
Documentation/rfkill.txt | 2 ++
net/rfkill/core.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++-
2 files changed, 50 insertions(+), 1 deletion(-)
@@ -85,6 +85,8 @@ device). Don't do this unless you cannot get the event in any other way. RFKill provides per-switch LED triggers, which can be used to drive LEDs according to the switch state (LED_FULL when blocked, LED_OFF otherwise).+An airplane-mode indicator LED trigger is also available, which triggers+LED_FULL when all radios known by RFKill are blocked, and LED_OFF otherwise. 5. Userspace support
@@ -83,6 +83,8 @@ rfkill drivers that control devices that can be hard-blocked unless they also assign the poll_hw_block() callback (then the rfkill core will poll the device). Don't do this unless you cannot get the event in any other way.+RFKill provides per-switch LED triggers, which can be used to drive LEDs+according to the switch state (LED_FULL when blocked, LED_OFF otherwise). 5. Userspace support
From: "João Paulo Rechi Vita" <jprvita@gmail.com> Date: 2016-02-08 15:44:28
Factor all assignments to rfkill_global_states[].cur into a single
function rfkill_update_global_state().
Signed-off-by: João Paulo Rechi Vita <redacted>
---
net/rfkill/core.c | 38 +++++++++++++++++---------------------
1 file changed, 17 insertions(+), 21 deletions(-)
Hi João,
On Tue, Feb 9, 2016 at 2:41 AM, João Paulo Rechi Vita [off-list ref] wrote:
Factor all assignments to rfkill_global_states[].cur into a single
function rfkill_update_global_state().
Signed-off-by: João Paulo Rechi Vita <jprvita-6IF/jdPJHihWk0Htik3J/w@public.gmane.org>
Looks sane to me.
Reviewed-by: Julian Calaby <redacted>
2.5.0
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
From: "João Paulo Rechi Vita" <jprvita@gmail.com> Date: 2016-02-08 15:44:32
There is still quite a bit of code using this interface, so we can't
just remove it. Hopefully it will be possible in the future, but since
its scheduled removal date is past 2 years already, we are better having
the documentation reflecting the current state of things.
Signed-off-by: João Paulo Rechi Vita <redacted>
---
Documentation/ABI/obsolete/sysfs-class-rfkill | 20 --------------------
Documentation/ABI/stable/sysfs-class-rfkill | 25 ++++++++++++++++++++++---
2 files changed, 22 insertions(+), 23 deletions(-)
delete mode 100644 Documentation/ABI/obsolete/sysfs-class-rfkill
@@ -1,20 +0,0 @@-rfkill - radio frequency (RF) connector kill switch support--For details to this subsystem look at Documentation/rfkill.txt.--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 is deprecated and scheduled to be removed in 2014,- because its not possible to express the 'soft and hard block'- state of the rfkill driver.-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.
@@ -5,9 +5,6 @@ For details to this subsystem look at Documentation/rfkill.txt. For the deprecated /sys/class/rfkill/*/claim knobs of this interface look in Documentation/ABI/removed/sysfs-class-rfkill.-For the deprecated /sys/class/rfkill/*/state knobs of this interface look in-Documentation/ABI/obsolete/sysfs-class-rfkill.- What: /sys/class/rfkill Date: 09-Jul-2007 KernelVersion: v2.6.22
@@ -44,6 +41,28 @@ Values: A numeric value. 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 stabe, the newer "hard" and+ "soft" interfaces should be preffered, 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
From: "João Paulo Rechi Vita" <jprvita@gmail.com> Date: 2016-02-08 15:47:57
The "claim" sysfs interface has been removed, so its documentation now
lives in the "removed" folder.
Signed-off-by: João Paulo Rechi Vita <redacted>
---
Documentation/ABI/stable/sysfs-class-rfkill | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
@@ -2,8 +2,10 @@ rfkill - radio frequency (RF) connector kill switch support For details to this subsystem look at Documentation/rfkill.txt.-For the deprecated /sys/class/rfkill/*/state and-/sys/class/rfkill/*/claim knobs of this interface look in+For the deprecated /sys/class/rfkill/*/claim knobs of this interface look in+Documentation/ABI/removed/sysfs-class-rfkill.++For the deprecated /sys/class/rfkill/*/state knobs of this interface look in Documentation/ABI/obsolete/sysfs-class-rfkill. What: /sys/class/rfkill
@@ -2,8 +2,10 @@ rfkill - radio frequency (RF) connector kill switch support For details to this subsystem look at Documentation/rfkill.txt.-For the deprecated /sys/class/rfkill/*/state and-/sys/class/rfkill/*/claim knobs of this interface look in+For the deprecated /sys/class/rfkill/*/claim knobs of this interface look in+Documentation/ABI/removed/sysfs-class-rfkill.++For the deprecated /sys/class/rfkill/*/state knobs of this interface look in Documentation/ABI/obsolete/sysfs-class-rfkill. What: /sys/class/rfkill--
2.5.0
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html