On Mon, Mar 19, 2012 at 7:33 AM, AceLan Kao <acelan.kao@xxxxxxxxxxxxx> wrote: > Some models work better with different values of wapf, so move the > variable into quriks_entry to make it more easy to give a specific > value to different models. > > Signed-off-by: AceLan Kao <acelan.kao@xxxxxxxxxxxxx> > --- > drivers/platform/x86/asus-nb-wmi.c | 2 +- > drivers/platform/x86/asus-wmi.c | 4 ++-- > drivers/platform/x86/asus-wmi.h | 2 +- > drivers/platform/x86/eeepc-wmi.c | 2 +- > 4 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c > index 396dafc..9dd7b93 100644 > --- a/drivers/platform/x86/asus-nb-wmi.c > +++ b/drivers/platform/x86/asus-nb-wmi.c > @@ -53,7 +53,7 @@ MODULE_PARM_DESC(wapf, "WAPF value"); > > static void asus_nb_wmi_quirks(struct asus_wmi_driver *driver) > { Missing "driver->quirks = asus_unknown_quriks" (or similar). quirks is NULL here, and the module will segfault (unfortunatly I tried without reading the code and it did :p). > - driver->wapf = wapf; > + driver->quirks->wapf = wapf; > } > > static const struct key_entry asus_nb_wmi_keymap[] = { > diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > index 9cd459a..1d2047d 100644 > --- a/drivers/platform/x86/asus-wmi.c > +++ b/drivers/platform/x86/asus-wmi.c > @@ -1471,9 +1471,9 @@ static int asus_wmi_platform_init(struct asus_wmi *asus) > > /* CWAP allow to define the behavior of the Fn+F2 key, > * this method doesn't seems to be present on Eee PCs */ > - if (asus->driver->wapf >= 0) > + if (asus->driver->quirks->wapf >= 0) > asus_wmi_set_devstate(ASUS_WMI_DEVID_CWAP, > - asus->driver->wapf, NULL); > + asus->driver->quirks->wapf, NULL); > > return asus_wmi_sysfs_init(asus->platform_device); > } > diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/x86/asus-wmi.h > index 35003e4..d43b667 100644 > --- a/drivers/platform/x86/asus-wmi.h > +++ b/drivers/platform/x86/asus-wmi.h > @@ -39,10 +39,10 @@ struct quirk_entry { > bool hotplug_wireless; > bool scalar_panel_brightness; > bool store_backlight_power; > + int wapf; > }; > > struct asus_wmi_driver { > - int wapf; > int brightness; > int panel_power; > > diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/x86/eeepc-wmi.c > index c1a0ac0..7e15d54 100644 > --- a/drivers/platform/x86/eeepc-wmi.c > +++ b/drivers/platform/x86/eeepc-wmi.c > @@ -207,10 +207,10 @@ static int eeepc_wmi_probe(struct platform_device *pdev) > static void eeepc_wmi_quirks(struct asus_wmi_driver *driver) > { > quirks = driver->quirks; > - driver->wapf = -1; > driver->panel_power = FB_BLANK_UNBLANK; > driver->quirks = &quirk_asus_unknown; > driver->quirks->hotplug_wireless = hotplug_wireless; > + driver->quirks->wapf = -1; > dmi_check_system(asus_quirks); > } > > -- > 1.7.9.1 > -- Corentin Chary http://xf.iksaif.net -- 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