Search Linux Wireless

Re: [ath5k-devel] ath5k: initial RFKILL support for Atheros 5xxx cards

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tobias Doerffel wrote:
> Hi,
>
> as announced here's a reworked patch for RFKILL support. It now features
> actually reading RFKILL state from according GPIO. Furthermore it's not
> a polled input device anymore (and thus does not depend on polled input device
> support in kernel anymore) and handles interrupts instead. Everything for this
> is in place, however it probably still needs some tweaking by someone else as
> I don't have a physical rfkill switch with my netbook.
>
> The same applies for GPIO configuration (pin/polarity) which is read from
> EEPROM. It at least works for me reliably but might not work on other machines.
>
> The LED patches are not included anymore as the radio LED seems to be controlled
> automatically when changing RFKILL state in hardware.
>
> One note on behaviour: rfkill is enabled (i.e. radio disabled) in 3 cases
> - interface is not up
> - "0" is written to /sys/class/rfkill/rfkillX/state
> - physical rf-switch switched off 
>
> As mentioned above, I can't guarantee the third case to actually work.
>
> When rfkill is enabled my netbook consumes about 0.8 watts less compared to
> being up, associated and idle.
>   

How can I check if the ath5k device on my netbook will be able to
support this?  I worry that if this works on my netbook, it is going to
interact badly with the eeepc-laptop platform driver, which also has
rfkill support. 


eeepc-laptop uses a somewhat unique mechanism.  It's a sort of
platform-specific pci hotplug.  Here is my concern:

- When an rfkill device is created, the rfkill core forces it into the
default state (for that type of rfkill switch, e.g. WLAN).

- eeepc-laptop calls rfkill_set_default() on startup.  This effectively
allows the global rfkill state to be preserved while the system is
turned off, and restored on startup.

Consider the case where the system starts up with rkfill enabled (i.e.
radio disabled).  The ath5k PCI device will not exist.  The default
rfkill state will be set to "radio disabled".

As a user of rfkill-input, I press the wireless toggle hotkey.  The
global rfkill state changes to disabled (radio enabled).  All *existing*
rfkill devices are switched to disabled (radio enabled).  The only
rfkill device is eeepc-laptop; so this is disabled, and the PCI device
appears...

When ath5k binds to the PCI device and creates it's rfkill device, it
will inherit the *default* rfkill state, which was set on startup - to
enabled (radio disabled).

Thanks
Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux