2009-07-21 01:24:23

by Howard Chu

[permalink] [raw]
Subject: ath9k rfkill behavior

I'm currently running 2.6.31-rc2 and noticed an annoying change in rfkill
behavior now; I can no longer toggle the state by echoing 0/1 into
sys/class/rfkill/rfkillX/state, it says write operation not permitted. I
haven't found any posts online related to this change in behavior, can anyone
point me to an explanation/rationale? The only way to change the state now
appears to be by using the wifi toggle switch on the laptop.

This is particularly obnoxious on recent HP Pavilion laptops, because there's
a single button/LED and it affects both the bluetooth and the wifi
transmitters. I never use bluetooth and I want that turned off, but I want to
keep the wifi enabled. I used to be able to do this by explicitly echoing 0
into the bluetooth rfkill/state but not any more. Even with the bluetooth
software disabled, powertop shows it's still eating power+cycles on my USB
controller unless I zero its rfkill state.

Also, when I press the toggle switch, the bluetooth device unregisters itself
and disappears from the rfkill directory, while the wifi entry remains, but
its state reads as "2" instead of 0 or 1. When it gets into this state,
further toggling of the button doesn't reactivate it (though it continues to
toggle the bluetooth on and off), and a reboot is required to re-enable the
wifi. What is state "2" ?
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/


2009-07-21 21:01:02

by Howard Chu

[permalink] [raw]
Subject: Re: ath9k rfkill behavior

Christian Lamparter wrote:
> On Tuesday 21 July 2009 02:56:11 Howard Chu wrote:
>> I'm currently running 2.6.31-rc2 and noticed an annoying change in rfkill
>> behavior now; I can no longer toggle the state by echoing 0/1 into
>> sys/class/rfkill/rfkillX/state, it says write operation not permitted. I
>> haven't found any posts online related to this change in behavior, can anyone
>> point me to an explanation/rationale? The only way to change the state now
>> appears to be by using the wifi toggle switch on the laptop.
>
> http://lkml.org/lkml/2009/7/10/339
>
> but no need to patch the kernel (again):
> the legacy iwconfig tool can let you do the same:
>
> iwconfig wlanX txpower off
> and if you want it back:
> iwconfig wlanX txpower auto

Ah, not quite. I want the bluetooth off and the wifi on; if I hit the toggle
switch which turns them both off, iwconfig is unable to turn the wifi back on,
and there is no other command which turns off only the bluetooth.

The above patch works fine, thanks again.

--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/

2009-07-21 11:27:07

by Christian Lamparter

[permalink] [raw]
Subject: Re: ath9k rfkill behavior

On Tuesday 21 July 2009 02:56:11 Howard Chu wrote:
> I'm currently running 2.6.31-rc2 and noticed an annoying change in rfkill
> behavior now; I can no longer toggle the state by echoing 0/1 into
> sys/class/rfkill/rfkillX/state, it says write operation not permitted. I
> haven't found any posts online related to this change in behavior, can anyone
> point me to an explanation/rationale? The only way to change the state now
> appears to be by using the wifi toggle switch on the laptop.

http://lkml.org/lkml/2009/7/10/339

but no need to patch the kernel (again):
the legacy iwconfig tool can let you do the same:

iwconfig wlanX txpower off
and if you want it back:
iwconfig wlanX txpower auto

(or there's a nice utility there: http://git.sipsolutions.net/?p=rfkill.git )

Regards,
Chr

2009-07-21 17:21:07

by Howard Chu

[permalink] [raw]
Subject: Re: ath9k rfkill behavior

Christian Lamparter wrote:
> On Tuesday 21 July 2009 02:56:11 Howard Chu wrote:
>> I'm currently running 2.6.31-rc2 and noticed an annoying change in rfkill
>> behavior now; I can no longer toggle the state by echoing 0/1 into
>> sys/class/rfkill/rfkillX/state, it says write operation not permitted. I
>> haven't found any posts online related to this change in behavior, can anyone
>> point me to an explanation/rationale? The only way to change the state now
>> appears to be by using the wifi toggle switch on the laptop.
>
> http://lkml.org/lkml/2009/7/10/339
>
> but no need to patch the kernel (again):
> the legacy iwconfig tool can let you do the same:
>
> iwconfig wlanX txpower off
> and if you want it back:
> iwconfig wlanX txpower auto
>
> (or there's a nice utility there: http://git.sipsolutions.net/?p=rfkill.git )

Thanks very much, that covers everything.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/