aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/platform/x86/dell-laptop.c')
-rw-r--r--drivers/platform/x86/dell-laptop.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c
index 3433986d5220..949dbc8aab41 100644
--- a/drivers/platform/x86/dell-laptop.c
+++ b/drivers/platform/x86/dell-laptop.c
@@ -37,6 +37,7 @@
37 37
38struct quirk_entry { 38struct quirk_entry {
39 bool touchpad_led; 39 bool touchpad_led;
40 bool kbd_led_not_present;
40 bool kbd_led_levels_off_1; 41 bool kbd_led_levels_off_1;
41 bool kbd_missing_ac_tag; 42 bool kbd_missing_ac_tag;
42 43
@@ -77,6 +78,10 @@ static struct quirk_entry quirk_dell_latitude_e6410 = {
77 .kbd_led_levels_off_1 = true, 78 .kbd_led_levels_off_1 = true,
78}; 79};
79 80
81static struct quirk_entry quirk_dell_inspiron_1012 = {
82 .kbd_led_not_present = true,
83};
84
80static struct platform_driver platform_driver = { 85static struct platform_driver platform_driver = {
81 .driver = { 86 .driver = {
82 .name = "dell-laptop", 87 .name = "dell-laptop",
@@ -314,6 +319,24 @@ static const struct dmi_system_id dell_quirks[] __initconst = {
314 }, 319 },
315 .driver_data = &quirk_dell_latitude_e6410, 320 .driver_data = &quirk_dell_latitude_e6410,
316 }, 321 },
322 {
323 .callback = dmi_matched,
324 .ident = "Dell Inspiron 1012",
325 .matches = {
326 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
327 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 1012"),
328 },
329 .driver_data = &quirk_dell_inspiron_1012,
330 },
331 {
332 .callback = dmi_matched,
333 .ident = "Dell Inspiron 1018",
334 .matches = {
335 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
336 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 1018"),
337 },
338 .driver_data = &quirk_dell_inspiron_1012,
339 },
317 { } 340 { }
318}; 341};
319 342
@@ -1497,6 +1520,9 @@ static void kbd_init(void)
1497{ 1520{
1498 int ret; 1521 int ret;
1499 1522
1523 if (quirks && quirks->kbd_led_not_present)
1524 return;
1525
1500 ret = kbd_init_info(); 1526 ret = kbd_init_info();
1501 kbd_init_tokens(); 1527 kbd_init_tokens();
1502 1528