Re: MSI GX723 notebook - ACPI problem with Fn keys

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Pavel, 

æ äï2010-09-27 æ 16:17 +0200ïPavel Troller æåï
> Hi Joey,
> 
> > Hi Pavel, 
> > 
> > ??? ??????2010-09-25 ??? 14:44 +0200???Pavel Troller ?????????
> > > Hi!
> > >   I'm a fresh owner of GX723 notebook by MSI. It looks relatively
> > > linux-friendly, but I've found some ACPI-related issues.
> > >   1) Booting 2.6.35.5 kernel natively, the Fn keys (brightness control,
> > > video switching) are non-functional and even a single keypress causes,
> > > that ACPI events (like AC adapter status changes or lid switch operation) are
> > > not generated anymore. After a while (about 10 minutes), the following
> > > lines pop to the system log:
> > > Sep 25 13:53:18 beam kernel: ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.SBRG.EC__._QB7] (Node ffff88013fc1ff00), AE_AML_INFINITE_LOOP
> > > Sep 25 13:42:23 beam kernel: ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.SBRG.EC__._QB8] (Node ffff88013fc1ff20), AE_AML_INFINITE_LOOP
> > 
> > In _QB7 and _QB8 have the following infinite while loop:
> > 
> >                         If (_OSI ("Windows 2006"))
> >                         {  
> >                             If (LEqual (^^^P0P2.VGA.VVID, 0x10DE))
> >                             {  
> >                                 Store (One, ^^^P0P2.VGA.MSIB)
> >                                 Store (Zero, ^^^P0P2.VGA.MSIM)
> >                                 Store (One, ^^^P0P2.VGA.MSIE) /* defalut
> > is one */
> >                                 Sleep (0x0A)
> >                                 Notify (^^^P0P2.VGA, 0xCB)
> >                                 While (^^^P0P2.VGA.MSIE)  /* infinite */
> >                                 {
> >                                     Sleep (0x0A)
> >                                 }
> >                             }
> >                         }
> > 
> > The MSIE is just a named object declared in VGA device but it's not any
> > hardware register. So, kernel's acpi parser is right, it's a infinite
> > loop.
> 
> I've seen it, but I was not sure, whether the MSIE object could change its
> state back to zero by some external event... But in Linux, it definitely
> doesn't.
> 

There have a NVIF method in VGA device, it will set MSIE to zero. I
thought it call by Nvida vista driver, but have don't know how to verify
it.

The attached is the patch I add MSI GX723 DMI information to blacklist.
If possible, could you please test it?
I just simply check your DSDT, please make sure the following features
work fine after you applied the attached blacklist patch:

 - brightness up/down hotkey
 - switch to external monitor
 - unplug ac-power event
 - battery information


Thank's a lot!
Joey Lee

>From 580c3c8d894121e82dfbe6c2fdb7b320b4abd85d Mon Sep 17 00:00:00 2001
From: Lee, Chun-Yi <jlee@xxxxxxxxxx>
Date: Wed, 29 Sep 2010 00:30:08 +0800
Subject: [PATCH] DMI to disable Vista compatibility on MSI GX723 Notebook

The brightness control hotkey don't work with Vista compatibility
, because MSI GX723 included a infinite while loop in DSDT when
brightness control hotkey pressed.
MSI GX723 used Nvida video card, the infinite while loop must be a
workaround with Nvidia's Vista driver.

Signed-off-by: Lee, Chun-Yi <jlee@xxxxxxxxxx>
---
 drivers/acpi/blacklist.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/drivers/acpi/blacklist.c b/drivers/acpi/blacklist.c
index 2bb28b9..3e644d8 100644
--- a/drivers/acpi/blacklist.c
+++ b/drivers/acpi/blacklist.c
@@ -226,6 +226,14 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = {
 		},
 	},
 	{
+	.callback = dmi_disable_osi_vista,
+	.ident = "MSI GX723",
+	.matches = {
+		     DMI_MATCH(DMI_SYS_VENDOR, "Micro-Star International"),
+		     DMI_MATCH(DMI_PRODUCT_NAME, "GX723"),
+		},
+	},
+	{
 	.callback = dmi_disable_osi_win7,
 	.ident = "ASUS K50IJ",
 	.matches = {
-- 
1.6.0.2


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux