From: Alex Williamson <alex.williamson-VXdhtT5mjnY@public.gmane.org>
To: "Moore, Robert" <robert.moore-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: acpi-devel
<acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: RE: lost thermal zones on 20040715 nc6000
Date: Tue, 24 Aug 2004 15:24:25 -0600 [thread overview]
Message-ID: <1093382665.5299.16.camel@tdi> (raw)
In-Reply-To: <37F890616C995246BE76B3E6B2DBE05501A8B206-sBd4vmA9Se5Qxe9IK+vIArfspsVTdybXVpNB7YpNyf8@public.gmane.org>
I've nearly gotten to the bottom of this problem. It's not an
interpreter bug, nor is it a BIOS bug. The address we were trying to
read in AML is a SMBus controller address. This address sits on the
hidden SMBus function in the Intel chipset. Unfortunately, the PCI
quirks routine un-hides the devices. So far this is all the same as the
way it behaved prior to the 20040715 code drop.
The new piece is the motherboard driver. Now this driver comes in an
claims the I/O port region that the SMBus controller is using. We've
un-hidden the PCI function, so PCI wants that resource range. It can't
get it so it moves the SMBus BAR to a different address. The AML is now
hosed cause it's hard-coded to use the address it programmed in (why
shouldn't it, the device is hidden). Why are we un-hiding the SMBus
function? The AML sets up an OpRegion for the address space it uses, so
should have exclusive access to that range. Suggestions? Thanks,
Alex
On Wed, 2004-08-11 at 09:42 -0700, Moore, Robert wrote:
>
> Alex,
>
> This is an interesting problem, and I do not think it is a problem with
> the AML interpreter. The machine's AML code seems to be either ignoring
> an error case or accidentally generating an improper value used during a
> package comparison (Match).
>
> 1) For TZ1._TMP, C201 is called with an arg of 0. For TZ2._TMP, C201 is
> called with an arg of 1. For TZ3._TMP, C201 is called with an arg of 2.
>
> 2) When C201 is called with an arg < 2, a different code path is
> followed. This code path invokes another method, C08F, which is
> returning a value of 0x1C00 (in what appears to be the "normal" code
> path)
>
> 3) This return value (in Local1) in turn gets compared to elements of
> the package C1EE as follows:
>
> Store (Match (DerefOf (Index (DerefOf (Index (C1EE, C200 (Arg0))),
> 0x01)), MGT, Local1, MTR, 0x00, 0x00), Local0)
>
> 4) None of the elements of C1EE are greater than 0x1C00, so the Match()
> operator returns 0xFFFFFFFF (indicating failure). This is stored in
> Local0.
>
> 5) Local0 is then passed to C202 as follows:
>
> C202 (Local0, Arg0)
>
> 6) In C202, the zeroth argument is used as an index into package C1EE.
>
> 7) Since this argument is 0xFFFFFFFF, the Index() operation fails.
>
> It's hard to guess what the original code is attempting, but I do not
> see any errors in the interpretation of the code.
>
> Did this actually work at some time in the past?
>
> Bob
>
>
> > -----Original Message-----
> > From: acpi-devel-admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org [mailto:acpi-devel-
> > admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org] On Behalf Of Alex Williamson
> > Sent: Tuesday, August 10, 2004 8:51 AM
> > To: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> > Subject: [ACPI] lost thermal zones on 20040715 nc6000
> >
> >
> > FYI, running 2.6.8-rc4-mm1 on a HP nc6000 laptop, I now get these:
> >
> > exoparg2-0462 [70] ex_opcode_2A_1T_1R : Index value (FFFFFFFF)
> beyond
> > package end (6)
> > psparse-1133: *** Error: Method execution failed [\_TZ_.C202] (Node
> > c21adc28), AE_AML_PACKAGE_LIMIT
> > psparse-1133: *** Error: Method execution failed [\_TZ_.C201] (Node
> > c21add28), AE_AML_PACKAGE_LIMIT
> > psparse-1133: *** Error: Method execution failed [\_TZ_.TZ1_._TMP]
> (Node
> > c21b3728), AE_AML_PACKAGE_LIMIT
> > exoparg2-0462 [71] ex_opcode_2A_1T_1R : Index value (FFFFFFFF)
> beyond
> > package end (2)
> > psparse-1133: *** Error: Method execution failed [\_TZ_.C202] (Node
> > c21adc28), AE_AML_PACKAGE_LIMIT
> > psparse-1133: *** Error: Method execution failed [\_TZ_.C201] (Node
> > c21add28), AE_AML_PACKAGE_LIMIT
> > psparse-1133: *** Error: Method execution failed [\_TZ_.TZ2_._TMP]
> (Node
> > c21b3a28), AE_AML_PACKAGE_LIMIT
> >
> > Unfortunately TZ1 is the CPU thermal zone, so I have to manually turn
> on
> > the fans to feel comfortable running with these errors (acpi -V
> reports
> > only 1 of the expected 3 thermal zones). Looking at the code, I
> assume
> > this is an AML bug as the index value appears to be -1. Should ACPI
> be
> > a bit more graceful w/ this? This works just fine w/ the ACPI in
> 2.6.8-
> > rc4. Thanks,
> >
> > Alex
> >
> >
> >
> > -------------------------------------------------------
> > SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
> > 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
> > Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
> > http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
> > _______________________________________________
> > Acpi-devel mailing list
> > Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> > https://lists.sourceforge.net/lists/listinfo/acpi-devel
>
--
Alex Williamson HP Linux & Open Source Lab
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
next prev parent reply other threads:[~2004-08-24 21:24 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-11 16:42 lost thermal zones on 20040715 nc6000 Moore, Robert
[not found] ` <37F890616C995246BE76B3E6B2DBE05501A8B206-sBd4vmA9Se5Qxe9IK+vIArfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-08-11 16:55 ` Alex Williamson
2004-08-24 21:24 ` Alex Williamson [this message]
2004-08-24 21:51 ` Karol Kozimor
-- strict thread matches above, loose matches on Subject: below --
2004-08-25 1:59 Li, Shaohua
2004-08-25 1:27 Li, Shaohua
[not found] ` <B44D37711ED29844BEA67908EAF36F03A38375-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-08-25 1:51 ` Alex Williamson
2004-08-24 21:40 Moore, Robert
2004-08-10 15:50 Alex Williamson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1093382665.5299.16.camel@tdi \
--to=alex.williamson-vxdhtt5mjny@public.gmane.org \
--cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=robert.moore-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox