lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Tue, 13 Jul 2010 15:54:45 +0800
From:	"Lee, Chun-Yi" <joeyli.kernel@...il.com>
To:	platform-driver-x86@...r.kernel.org
Cc:	mjg@...hat.com, gregkh@...e.de, jlee@...ell.com,
	Dennis.Jansen@....de, linux-kernel@...r.kernel.org
Subject: [PATCH] Support MSI Poulsbo netbook U110/U115

The MSI U110/U115's DSDT have opregion declare, but i915 drm driver
does not support Poulsbo ship. It causes the acpi backlight control
interface not generate by i915 drm driver.
But, we are sure the MSI Poulsbo netbook U110/U115 have workable
_BCM,_BQC implementation in DSDT and it control brightness by using
EC but not opregion.

So, put a dmi detection in msi-laptop driver and also add wlan/bluetooth
rfkill support on U110/U115.

Signed-off-by: Lee, Chun-Yi <jlee@...ell.com>
---
 drivers/platform/x86/msi-laptop.c |   41 +++++++++++++++++++++++++++++++++++++
 1 files changed, 41 insertions(+), 0 deletions(-)

diff --git a/drivers/platform/x86/msi-laptop.c b/drivers/platform/x86/msi-laptop.c
index afd762b..5f62ad8 100644
--- a/drivers/platform/x86/msi-laptop.c
+++ b/drivers/platform/x86/msi-laptop.c
@@ -60,6 +60,7 @@
 #include <linux/platform_device.h>
 #include <linux/rfkill.h>
 #include <linux/i8042.h>
+#include <acpi/video.h>
 
 #define MSI_DRIVER_VERSION "0.5"
 
@@ -524,6 +525,42 @@ static struct dmi_system_id __initdata msi_load_scm_models_dmi_table[] = {
 		},
 		.callback = dmi_check_cb
 	},
+	{
+		.ident = "MSI U110",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Micro-Star International"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "U110"),
+		},
+		.callback = dmi_check_cb
+	},
+	{
+		.ident = "MSI U115",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Micro-Star International"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "U115"),
+		},
+		.callback = dmi_check_cb
+	},
+	{ }
+};
+
+static struct dmi_system_id __initdata msi_poulsbo_dmi_table[] = {
+	{
+		.ident = "MSI U110",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Micro-Star International"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "U110"),
+		},
+		.callback = dmi_check_cb
+	},
+	{
+		.ident = "MSI U115",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Micro-Star International"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "U115"),
+		},
+		.callback = dmi_check_cb
+	},
 	{ }
 };
 
@@ -801,6 +838,8 @@ static int __init msi_init(void)
 	if (acpi_video_backlight_support()) {
 		printk(KERN_INFO "MSI: Brightness ignored, must be controlled "
 		       "by ACPI video driver\n");
+		if (dmi_check_system(msi_poulsbo_dmi_table))
+			acpi_video_register();
 	} else {
 		struct backlight_properties props;
 		memset(&props, 0, sizeof(struct backlight_properties));
@@ -919,3 +958,5 @@ MODULE_ALIAS("dmi:*:svnMICRO-STARINTERNATIONAL*:pnMS-N034:*");
 MODULE_ALIAS("dmi:*:svnMICRO-STARINTERNATIONAL*:pnMS-N051:*");
 MODULE_ALIAS("dmi:*:svnMICRO-STARINTERNATIONAL*:pnMS-N014:*");
 MODULE_ALIAS("dmi:*:svnMicro-StarInternational*:pnCR620:*");
+MODULE_ALIAS("dmi:*:svnMicro-StarInternational*:pnU110:*");
+MODULE_ALIAS("dmi:*:svnMicro-StarInternational*:pnU115:*");
-- 
1.6.0.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ