]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/input/serio/i8042-x86ia64io.h
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / drivers / input / serio / i8042-x86ia64io.h
index a5475b5770863298609f7ab40850e03286529046..bb9f5d31f0d0616463609f4b20c940ee0ec2d451 100644 (file)
@@ -424,6 +424,13 @@ static const struct dmi_system_id __initconst i8042_dmi_nomux_table[] = {
                        DMI_MATCH(DMI_PRODUCT_VERSION, "0100"),
                },
        },
+       {
+               /* Dell Vostro V13 */
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "Vostro V13"),
+               },
+       },
        { }
 };
 
@@ -545,6 +552,17 @@ static const struct dmi_system_id __initconst i8042_dmi_laptop_table[] = {
 };
 #endif
 
+static const struct dmi_system_id __initconst i8042_dmi_notimeout_table[] = {
+       {
+               /* Dell Vostro V13 */
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "Vostro V13"),
+               },
+       },
+       { }
+};
+
 /*
  * Some Wistron based laptops need us to explicitly enable the 'Dritek
  * keyboard extension' to make their extra keys start generating scancodes.
@@ -552,6 +570,13 @@ static const struct dmi_system_id __initconst i8042_dmi_laptop_table[] = {
  * have turned up in 2007 that also need this again.
  */
 static const struct dmi_system_id __initconst i8042_dmi_dritek_table[] = {
+       {
+               /* Acer Aspire 5100 */
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5100"),
+               },
+       },
        {
                /* Acer Aspire 5610 */
                .matches = {
@@ -752,7 +777,7 @@ static int __init i8042_pnp_init(void)
 #endif
 
        if (i8042_nopnp) {
-               printk(KERN_INFO "i8042: PNP detection disabled\n");
+               pr_info("PNP detection disabled\n");
                return 0;
        }
 
@@ -769,7 +794,7 @@ static int __init i8042_pnp_init(void)
 #if defined(__ia64__)
                return -ENODEV;
 #else
-               printk(KERN_INFO "PNP: No PS/2 controller found. Probing ports directly.\n");
+               pr_info("PNP: No PS/2 controller found. Probing ports directly.\n");
                return 0;
 #endif
        }
@@ -781,7 +806,7 @@ static int __init i8042_pnp_init(void)
                snprintf(aux_irq_str, sizeof(aux_irq_str),
                        "%d", i8042_pnp_aux_irq);
 
-       printk(KERN_INFO "PNP: PS/2 Controller [%s%s%s] at %#x,%#x irq %s%s%s\n",
+       pr_info("PNP: PS/2 Controller [%s%s%s] at %#x,%#x irq %s%s%s\n",
                i8042_pnp_kbd_name, (i8042_pnp_kbd_devices && i8042_pnp_aux_devices) ? "," : "",
                i8042_pnp_aux_name,
                i8042_pnp_data_reg, i8042_pnp_command_reg,
@@ -798,9 +823,7 @@ static int __init i8042_pnp_init(void)
        if (((i8042_pnp_data_reg & ~0xf) == (i8042_data_reg & ~0xf) &&
              i8042_pnp_data_reg != i8042_data_reg) ||
            !i8042_pnp_data_reg) {
-               printk(KERN_WARNING
-                       "PNP: PS/2 controller has invalid data port %#x; "
-                       "using default %#x\n",
+               pr_warn("PNP: PS/2 controller has invalid data port %#x; using default %#x\n",
                        i8042_pnp_data_reg, i8042_data_reg);
                i8042_pnp_data_reg = i8042_data_reg;
                pnp_data_busted = true;
@@ -809,33 +832,27 @@ static int __init i8042_pnp_init(void)
        if (((i8042_pnp_command_reg & ~0xf) == (i8042_command_reg & ~0xf) &&
              i8042_pnp_command_reg != i8042_command_reg) ||
            !i8042_pnp_command_reg) {
-               printk(KERN_WARNING
-                       "PNP: PS/2 controller has invalid command port %#x; "
-                       "using default %#x\n",
+               pr_warn("PNP: PS/2 controller has invalid command port %#x; using default %#x\n",
                        i8042_pnp_command_reg, i8042_command_reg);
                i8042_pnp_command_reg = i8042_command_reg;
                pnp_data_busted = true;
        }
 
        if (!i8042_nokbd && !i8042_pnp_kbd_irq) {
-               printk(KERN_WARNING
-                       "PNP: PS/2 controller doesn't have KBD irq; "
-                       "using default %d\n", i8042_kbd_irq);
+               pr_warn("PNP: PS/2 controller doesn't have KBD irq; using default %d\n",
+                       i8042_kbd_irq);
                i8042_pnp_kbd_irq = i8042_kbd_irq;
                pnp_data_busted = true;
        }
 
        if (!i8042_noaux && !i8042_pnp_aux_irq) {
                if (!pnp_data_busted && i8042_pnp_kbd_irq) {
-                       printk(KERN_WARNING
-                               "PNP: PS/2 appears to have AUX port disabled, "
-                               "if this is incorrect please boot with "
-                               "i8042.nopnp\n");
+                       pr_warn("PNP: PS/2 appears to have AUX port disabled, "
+                               "if this is incorrect please boot with i8042.nopnp\n");
                        i8042_noaux = true;
                } else {
-                       printk(KERN_WARNING
-                               "PNP: PS/2 controller doesn't have AUX irq; "
-                               "using default %d\n", i8042_aux_irq);
+                       pr_warn("PNP: PS/2 controller doesn't have AUX irq; using default %d\n",
+                               i8042_aux_irq);
                        i8042_pnp_aux_irq = i8042_aux_irq;
                }
        }
@@ -897,6 +914,9 @@ static int __init i8042_platform_init(void)
        if (dmi_check_system(i8042_dmi_nomux_table))
                i8042_nomux = true;
 
+       if (dmi_check_system(i8042_dmi_notimeout_table))
+               i8042_notimeout = true;
+
        if (dmi_check_system(i8042_dmi_dritek_table))
                i8042_dritek = true;
 #endif /* CONFIG_X86 */