diff mbox

sony-laptop: ACPI Exception when a Fn-Key is pressed

Message ID 7a3045780904051727o3780c7d3hebb26028a1b4eba5@mail.gmail.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Rodrigo Luiz April 6, 2009, 12:27 a.m. UTC
Hi.

I have a Vaio VGN-FW235J and I tried today the latest kernel version
in git to test the latest changes in sony-laptop.

When I press any Fn-keys, i.e. brightness control, I received these
messages in syslog:

ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
(DMA1 0x0081-0x0083) [20090320]
ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
Handler for [SystemIO] [20090320]
ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
f7418c30), AE_AML_ILLEGAL_ADDRESS
ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.LPCB.EC__._Q58] (Node f741bc00), AE_AML_ILLEGAL_ADDRESS
ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
(DMA1 0x0081-0x0083) [20090320]
ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
Handler for [SystemIO] [20090320]
ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
f7418c30), AE_AML_ILLEGAL_ADDRESS
ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.LPCB.EC__._Q59] (Node f741bc18), AE_AML_ILLEGAL_ADDRESS


Some information from dmidecode:

Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
        Vendor: American Megatrends Inc.
        Version: R1090Y0
        Release Date: 07/25/2008
        Address: 0xF0000
        Runtime Size: 64 kB
        ROM Size: 2048 kB

Handle 0x0001, DMI type 1, 27 bytes
System Information
        Manufacturer: Sony Corporation
        Product Name: VGN-FW235J
        Version: C600TPE0

My dsdt is attached too.


I tried the kernel 2.6.29.1 and no errors occurs in syslog. But I need
to apply this patch to get the Fn-Keys events:



Best regards.

Comments

Mattia Dongili April 6, 2009, 11:01 a.m. UTC | #1
On Sun, Apr 05, 2009 at 09:27:06PM -0300, Rodrigo Luiz wrote:
> Hi.
> 
> I have a Vaio VGN-FW235J and I tried today the latest kernel version
> in git to test the latest changes in sony-laptop.
> 
> When I press any Fn-keys, i.e. brightness control, I received these
> messages in syslog:
> 
> ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
> (DMA1 0x0081-0x0083) [20090320]
> ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
> Handler for [SystemIO] [20090320]
> ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
> f7418c30), AE_AML_ILLEGAL_ADDRESS
> ACPI Error (psparse-0537): Method parse/execution failed
> [\_SB_.PCI0.LPCB.EC__._Q58] (Node f741bc00), AE_AML_ILLEGAL_ADDRESS
> ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
> (DMA1 0x0081-0x0083) [20090320]
> ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
> Handler for [SystemIO] [20090320]
> ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
> f7418c30), AE_AML_ILLEGAL_ADDRESS
> ACPI Error (psparse-0537): Method parse/execution failed
> [\_SB_.PCI0.LPCB.EC__._Q59] (Node f741bc18), AE_AML_ILLEGAL_ADDRESS

Interesting. This is due to a change in current git it was not present
in 2.6.29.

Does booting with acpi_osi=Linux makes things any worse? (it should fix
the above error but might make some other functionality behave
differently).
Or eventually also see if there is a bios upgrade available for your
laptop.

Len,
it looks like most of the vaios define this in global scope:

    OperationRegion (PRT0, SystemIO, 0x80, 0x04)
    Field (PRT0, DWordAcc, Lock, Preserve)
    {   
        P80H,   32
    }

which falls in the DMA1 reserved area in >WinXP.
No idea how windows copes with it if the same restrictions area really
in place.
Rodrigo Luiz April 6, 2009, 1:13 p.m. UTC | #2
On Mon, Apr 6, 2009 at 8:01 AM, Mattia Dongili <malattia@linux.it> wrote:
>
> Does booting with acpi_osi=Linux makes things any worse? (it should fix
> the above error but might make some other functionality behave
> differently).
> Or eventually also see if there is a bios upgrade available for your
> laptop.
>

Booting with acpi_osi=Linux does not make any changes. Kernel show the
same messages.

And there is no bios upgrade for my notebook :(

I forgot to say two things:

When I loaded the module, a new message appeared (booting with and
without acpi_osi=Linux):

sony-laptop: Sony Notebook Control Driver v0.6.
input: Sony Vaio Keys as /class/input/input9
input: Sony Vaio Jogdial as /class/input/input10
--> [Firmware Bug]: ACPI: ACPI brightness control misses _BQC function
sony-laptop: brightness ignored, must be controlled by ACPI video driver


And these errors show in any ACPI events (lid open/close, press power
button ...), not just in Fn-Keys.
Zhao, Yakui April 7, 2009, 2:13 a.m. UTC | #3
On Mon, 2009-04-06 at 21:13 +0800, Rodrigo Luiz wrote:
> On Mon, Apr 6, 2009 at 8:01 AM, Mattia Dongili <malattia@linux.it> wrote:
> >
> > Does booting with acpi_osi=Linux makes things any worse? (it should fix
> > the above error but might make some other functionality behave
> > differently).
> > Or eventually also see if there is a bios upgrade available for your
> > laptop.
> >
> 
Does the warning message exist when booting the previous kernel? For
example: 2.6.28 kernel.

Will you please try the following commit patch and see whether this issue still exists?
   >commit 7b46ecd5fcebf381a7bde966db352d8fb1b8e944
   >Author: Len Brown <len.brown@intel.com>
   >Date:   Wed Feb 25 18:00:18 2009 -0500
     >Revert "ACPI: make some IO ports off-limits to AML"

thanks.
> Booting with acpi_osi=Linux does not make any changes. Kernel show the
> same messages.
> 
> And there is no bios upgrade for my notebook :(
> 
> I forgot to say two things:
> 
> When I loaded the module, a new message appeared (booting with and
> without acpi_osi=Linux):
> 
> sony-laptop: Sony Notebook Control Driver v0.6.
> input: Sony Vaio Keys as /class/input/input9
> input: Sony Vaio Jogdial as /class/input/input10
> --> [Firmware Bug]: ACPI: ACPI brightness control misses _BQC function
> sony-laptop: brightness ignored, must be controlled by ACPI video driver
> 
> 
> And these errors show in any ACPI events (lid open/close, press power
> button ...), not just in Fn-Keys.
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Len Brown April 7, 2009, 4:54 a.m. UTC | #4
On Tue, 7 Apr 2009, yakui_zhao wrote:

> On Mon, 2009-04-06 at 21:13 +0800, Rodrigo Luiz wrote:
> > On Mon, Apr 6, 2009 at 8:01 AM, Mattia Dongili <malattia@linux.it> wrote:
> > >
> > > Does booting with acpi_osi=Linux makes things any worse? (it should fix
> > > the above error but might make some other functionality behave
> > > differently).
> > > Or eventually also see if there is a bios upgrade available for your
> > > laptop.
> > >
> > 
> Does the warning message exist when booting the previous kernel? For
> example: 2.6.28 kernel.
> 
> Will you please try the following commit patch and see whether this issue still exists?
>    >commit 7b46ecd5fcebf381a7bde966db352d8fb1b8e944
>    >Author: Len Brown <len.brown@intel.com>
>    >Date:   Wed Feb 25 18:00:18 2009 -0500
>      >Revert "ACPI: make some IO ports off-limits to AML"

That commit shipped in 2.6.29, so Rodrigo should already have it.

ie. 2.6.29 should behave just like 2.6.28.

by "latest git", i assume Rodrigo means 2.6.29-git*, ie 2.6.30 merge 
window.

thanks,
Len Brown, Intel Open Source Technology Center

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Len Brown April 7, 2009, 5 a.m. UTC | #5
> Does booting with acpi_osi=Linux makes things any worse?

acpi_osi=Linux will make Linux answer YES if/when a BIOS asks OSI(Linux).

However, it does not change if/when the BIOS asks if we are XP,
nor would it change our (YES) answer if asked.

Unlike all previous uses of OSI where what matters is what Linux ANSWERs,
this port blocking feature depends on what the BIOS ASKS.

Len Brown, Intel Open Source Technology Center



--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Len Brown April 7, 2009, 5:12 a.m. UTC | #6
On Mon, 6 Apr 2009, Mattia Dongili wrote:

> On Sun, Apr 05, 2009 at 09:27:06PM -0300, Rodrigo Luiz wrote:
> > Hi.
> > 
> > I have a Vaio VGN-FW235J and I tried today the latest kernel version
> > in git to test the latest changes in sony-laptop.
> > 
> > When I press any Fn-keys, i.e. brightness control, I received these
> > messages in syslog:
> > 
> > ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
> > (DMA1 0x0081-0x0083) [20090320]

this looks like a write to port 80 -- the debug port -- which is valid.

however, it looks like the size is 4, which overlaps with protected ports?


> > ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
> > Handler for [SystemIO] [20090320]
> > ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
> > f7418c30), AE_AML_ILLEGAL_ADDRESS
> > ACPI Error (psparse-0537): Method parse/execution failed
> > [\_SB_.PCI0.LPCB.EC__._Q58] (Node f741bc00), AE_AML_ILLEGAL_ADDRESS
> > ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
> > (DMA1 0x0081-0x0083) [20090320]
> > ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
> > Handler for [SystemIO] [20090320]
> > ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
> > f7418c30), AE_AML_ILLEGAL_ADDRESS
> > ACPI Error (psparse-0537): Method parse/execution failed
> > [\_SB_.PCI0.LPCB.EC__._Q59] (Node f741bc18), AE_AML_ILLEGAL_ADDRESS
> 
> Interesting. This is due to a change in current git it was not present
> in 2.6.29.
> 
> Does booting with acpi_osi=Linux makes things any worse? (it should fix
> the above error but might make some other functionality behave
> differently).
> Or eventually also see if there is a bios upgrade available for your
> laptop.
> 
> Len,
> it looks like most of the vaios define this in global scope:
> 
>     OperationRegion (PRT0, SystemIO, 0x80, 0x04)
>     Field (PRT0, DWordAcc, Lock, Preserve)
>     {   
>         P80H,   32
>     }
> 
> which falls in the DMA1 reserved area in >WinXP.
> No idea how windows copes with it if the same restrictions area really
> in place.

just defining the opregion is okay.

in 2.6.29 we checked at opregion definition time -- but had some false
hits on regions that were defined and never used.

so in 2.6.30 we have run-time checks only.

-Len Brown, Intel Open Source Technology Center




--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Rodrigo Luiz April 7, 2009, 7:46 p.m. UTC | #7
On Sun, Apr 5, 2009 at 21:27, Rodrigo Luiz <rodrigo@gus-mg.org> wrote:
>
> ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
> (DMA1 0x0081-0x0083) [20090320]
> ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
> Handler for [SystemIO] [20090320]
> ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
> f7418c30), AE_AML_ILLEGAL_ADDRESS
> ACPI Error (psparse-0537): Method parse/execution failed
> [\_SB_.PCI0.LPCB.EC__._Q58] (Node f741bc00), AE_AML_ILLEGAL_ADDRESS
> ACPI Error (hwvalid-0186): Denied AML access to port 0x00000080/4
> (DMA1 0x0081-0x0083) [20090320]
> ACPI Exception (evregion-0422): AE_AML_ILLEGAL_ADDRESS, Returned by
> Handler for [SystemIO] [20090320]
> ACPI Error (psparse-0537): Method parse/execution failed [\P8XH] (Node
> f7418c30), AE_AML_ILLEGAL_ADDRESS
> ACPI Error (psparse-0537): Method parse/execution failed
> [\_SB_.PCI0.LPCB.EC__._Q59] (Node f741bc18), AE_AML_ILLEGAL_ADDRESS
>
>

Using git bisect, I found the first bad commit:

7f0719039085cc40114abce84cf29fe57da226f4 is first bad commit
commit 7f0719039085cc40114abce84cf29fe57da226f4
Author: Bob Moore <robert.moore@intel.com>
Date:   Thu Mar 19 09:37:47 2009 +0800

    ACPICA: New: I/O port protection

    Protect certain I/O ports from reads/writes. Provides MS
    compatibility. New module, hwvalid.c

    Signed-off-by: Bob Moore <robert.moore@intel.com>
    Signed-off-by: Lin Ming <ming.m.lin@intel.com>
    Signed-off-by: Len Brown <len.brown@intel.com>


My mistake. The issue is with acpi, not with sony-laptop.

I did more tests, now with not loading sony-laptop. When I close/open
lid or when I press the power button, I see these same exceptions.

I tried to revert the patch, without success.
Len Brown April 7, 2009, 9:27 p.m. UTC | #8
Rodrigo Luiz,
Please attach the full acpidump output here:
http://bugzilla.kernel.org/show_bug.cgi?id=13036

thanks,
Len Brown, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/platform/x86/sony-laptop.c
b/drivers/platform/x86/sony-laptop.c
index 537959d..167f8ef 100644
--- a/drivers/platform/x86/sony-laptop.c
+++ b/drivers/platform/x86/sony-laptop.c
@@ -863,6 +863,15 @@  static const struct dmi_system_id sony_nc_ids[] = {
                        },
                },
                {
+                       .ident = "Sony Vaio FW Series",
+                       .callback = sony_nc_C_enable,
+                       .driver_data = sony_C_events,
+                       .matches = {
+                               DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
+                               DMI_MATCH(DMI_PRODUCT_NAME, "VGN-FW"),
+                       },
+               },
+               {
                        .ident = "Sony Vaio FZ Series",
                        .callback = sony_nc_C_enable,
                        .driver_data = sony_C_events,