Date: Fri, 6 Jan 2006 20:44:31 +0100 From: Bruno Ducrot <ducrot@poupinou.org> To: Gnu_Raiz <gnu.raiz@gmail.com> Cc: freebsd-acpi@freebsd.org Subject: Re: Z00Q Problem Tyan MB! Message-ID: <20060106194431.GA24124@poupinou.org> In-Reply-To: <c740cf110601051955ma2fb5e1m109a6af6d151e65b@mail.gmail.com> References: <c740cf110512211223s4b7d7c59n387b1dfedd62567b@mail.gmail.com> <20051222020349.GA16607@poupinou.org> <43AC2E52.8000304@root.org> <20060103151938.GD13887@poupinou.org> <c740cf110601051955ma2fb5e1m109a6af6d151e65b@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jan 05, 2006 at 09:55:19PM -0600, Gnu_Raiz wrote: > On 1/3/06, Bruno Ducrot <ducrot@poupinou.org> wrote: > > > > On Fri, Dec 23, 2005 at 09:05:22AM -0800, Nate Lawson wrote: > > > You can work around this problem with info from PR kern/89879 > > > > > > http://people.freebsd.org/~ariff/acer_ferrari/ > > > > > > A future acpica import may address this problem. The aml is accessing a > > > field before it's defined. The newest acpica adds support for lazy > > > evaluation (even though this is out of spec). > > > > No, it won't. There are the following devices: > > > > > > Device (SIO) > > { > > ... > > ... > > > > Method (STA, 1, NotSerialized) > > { > > ... > > ... > > } > > > > Device (COM1) > > { > > ... > > Method (_STA, 0, NotSerialized) > > { > > Store (Z00Q, Local0) > > And (Local0, 0x01, Local0) > > If (LEqual (Local0, 0x01)) > > { > > Return (0x00) > > } > > Else > > { > > Return (STA(0x02)) > > } > > } > > > > Device (COM2) > > { > > ... > > Method (_STA, 0, NotSerialized) > > { > > /* same _STA, but > > * And (Local0, 0x02, Local0) > > */ > > ... > > } > > > > > > Device (LPT) > > { > > > > ... > > Method (_STA, ...) > > { > > /* same _STA, but different bits checked > > */ > > > > } > > } > > > > Since all of those _STA methods call SIO.STA() (and since this method > > is used to touch a part of a SuperIO chip (io port 0x2E, etc) in order > > to initialize some devices), it's very likely that the 3 devices will not > > function even if acpica does lazy evaluations for > > non-existing object. If I were the acpi maintainer of the intel acpica, > > package, I would add a flag turned off per default. > > > > For the OP. I would suggest trying to add a Z00Q manually. > > > > --- rcall-TyanMP2460.asl 2006/01/03 14:47:05 1.1 > > +++ rcall-TyanMP2460.asl 2006/01/03 15:10:58 > > @@ -1256,6 +1256,7 @@ DefinitionBlock ("DSDT.aml", "DSDT", 1, > > Device (SIO) > > { > > Name (_HID, EisaId ("PNP0A05")) > > + Name (Z00Q, 1) // bit 1: COM1, bit 2: COM2, bit 3: > > LPT > > OperationRegion (Z00M, SystemIO, 0x80, 0x01) > > Field (Z00M, ByteAcc, NoLock, Preserve) > > { > > @@ -2394,6 +2395,8 @@ DefinitionBlock ("DSDT.aml", "DSDT", 1, > > } > > > > Notify (\_SB.PWRB, 0x02) > > + > > + Return(Package(2){0,0}) > > } > > } > > > > > > > > > > > > and to change the value for Z00Q according to your needs (if you need > > both serial ports, then it should be 3, etc). > > > > Cheers, > > > > -- > > Bruno Ducrot > > > > -- Which is worse: ignorance or apathy? > > -- Don't know. Don't care. > > > > Ok I am now confused, so I should not use Z00C to fix Z00Q, Where should I > add this proper code. I am willing to learn, but I am not an expert when it > comes to this type of thing, after looking at asl file their seems to be > many sections that relates to Z00Q. > > I would hate to put it into the wrong section, and not know after I compile > it because the syntax was correct. So maybe someone can give me some > pointers, as to what the proper way is to fix the file. > I think replacing Z00Q by any other Z00? is totally wrong in your case. -- Bruno Ducrot -- Which is worse: ignorance or apathy? -- Don't know. Don't care.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060106194431.GA24124>