On Wed, 2008-12-10 at 17:51 +0000, Matthew Garrett wrote: > They may not be physical buttons, but we can often control this anyway. > For instance, my HP has a button that will perform a hardware disable of > the wifi card. However, I can control that button's state through > software with the hp-wmi driver. That's indeed a complication I wasn't aware of. > The way we currently handle that (and, > I think, the only way we *can* handle that) is to provide two separate > rfkill interfaces - one tied to the wireless device, one tied to the > platform device. Yes, but how do we currently do this? Does the wireless driver get the notification about this from the hardware, like it would if this was a real physical switch? Then it's probably pretty simple: provide a rfkill struct from the driver that updates hard-kill and provide a second rfkill struct for the platform device that doesn't get hard-killed, but also provide a soft-kill input form the platform device. That way, you can toggle that button, but you can also software-enable the platform rfkill device and that in turn re-enables the wifi-rfkill "hw" switch device. If we need to tie them together in software it gets more complicated though. johannes
Attachment:
signature.asc
Description: This is a digitally signed message part