Hi Matthew, >From the above code, I supposehp_wmi_rfkill_setup(device) successes and hp_wmi_rfkill2_setup(device) fails. As hp_wmi_rfkill_setup(device) does not run with 997daa1bd9aca412ab97955a35b26c460c0ec7a4. >From HP, it was claimed that HP WMI 0x05 is deprecated and replaced by HP WMI 0x1B after 2009; however, this claim seems not true on on nx6325. I would say this is a BIOS bug on either HP WMI 0x0D or WMI 0x1B. The above code looks great on this bug except one problem: On newer systems, WMI 0x1B (used in hp_wmi_rfkill2_setup) is also depreciated with _OSI("Windows 2012") = TRUE, and it will return 04h (invalid command type)*. However, The Get for WMI 0x05 (used in hp_wmi_rfkill_setup) works but Set for WMI 0x05 does not. If we are using + if (hp_wmi_rfkill2_setup(device)) + hp_wmi_rfkill_setup(device); we will have hp-wifi / hp-bluetooth in rfkill but we cannot change their status on those systems. I think a better solution may need to include testing both Set and Get for HP WMI 0x05 in hp_wmi_rfkill_setup. We may be able to revert 997daa1bd9aca412ab97955a35b26c460c0ec7a4. I will verify the above theory and update accordingly. PS*: There needs no HP WMI for wireless. The wireless control is moved to "HPQ6001" that I previous sent. On Tue, Jan 21, 2014 at 11:17 PM, Matthew Garrett <mjg59@xxxxxxxxxxxxx> wrote: > Hi Alex, > > 997daa1bd9aca412ab97955a35b26c460c0ec7a4 seems to break some systems > (https://bugzilla.kernel.org/show_bug.cgi?id=69131 for example). The > simplest approach seems to be to simply do something like the following: > > @@ -883,8 +883,8 @@ static int __init hp_wmi_bios_setup(struct > platform_device *device) > gps_rfkill = NULL; > rfkill2_count = 0; > > - if (hp_wmi_bios_2009_later() || hp_wmi_rfkill_setup(device)) > - hp_wmi_rfkill2_setup(device); > + if (hp_wmi_rfkill2_setup(device)) > + hp_wmi_rfkill_setup(device); > > Do you know if there are any cases that would be broken by this? > > -- > Matthew Garrett | mjg59@xxxxxxxxxxxxx > -- > To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- Cheers, Alex Hung -- To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html