diff options
author | Corentin Chary <corentin.chary@gmail.com> | 2012-03-20 09:53:12 +0100 |
---|---|---|
committer | Matthew Garrett <mjg@redhat.com> | 2012-03-26 15:05:47 -0400 |
commit | c55d995dd3cebffdeb2b7eff8acc813c56d62c97 (patch) | |
tree | 78e48933e25189cb1dab9126df933682c61e4876 | |
parent | fb05b9f53fa9131ae86eb8cc4fda20e943a86e36 (diff) |
eeepc-wmi: refine quirks handling
Signed-off-by: Corentin Chary <corentin.chary@gmail.com>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
-rw-r--r-- | drivers/platform/x86/eeepc-wmi.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/x86/eeepc-wmi.c index 389ff888cb6c..0bb0aaf43aba 100644 --- a/drivers/platform/x86/eeepc-wmi.c +++ b/drivers/platform/x86/eeepc-wmi.c @@ -49,7 +49,6 @@ MODULE_LICENSE("GPL"); MODULE_ALIAS("wmi:"EEEPC_WMI_EVENT_GUID); -static struct quirk_entry *quirks; static bool hotplug_wireless; module_param(hotplug_wireless, bool, 0444); @@ -108,6 +107,8 @@ static struct quirk_entry quirk_asus_et2012_type3 = { .store_backlight_power = true, }; +static struct quirk_entry *quirks; + static int dmi_matched(const struct dmi_system_id *dmi) { char *model; @@ -209,12 +210,14 @@ static int eeepc_wmi_probe(struct platform_device *pdev) static void eeepc_wmi_quirks(struct asus_wmi_driver *driver) { - driver->panel_power = FB_BLANK_UNBLANK; - driver->quirks = &quirk_asus_unknown; - driver->quirks->hotplug_wireless = hotplug_wireless; - driver->quirks->wapf = -1; + quirks = &quirk_asus_unknown; + quirks->hotplug_wireless = hotplug_wireless; + dmi_check_system(asus_quirks); + driver->quirks = quirks; + driver->quirks->wapf = -1; + driver->panel_power = FB_BLANK_UNBLANK; } static struct asus_wmi_driver asus_wmi_driver = { |