From owner-acpi-jp@jp.freebsd.org  Tue Oct 17 17:49:46 2000
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id RAA52705;
	Tue, 17 Oct 2000 17:49:46 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from mass.osd.bsdi.com (termroom.bsdcon.org [206.55.247.2])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id RAA52700
	for <acpi-jp@jp.freebsd.org>; Tue, 17 Oct 2000 17:49:45 +0900 (JST)
	(envelope-from msmith@mass.osd.bsdi.com)
Received: from mass.osd.bsdi.com (localhost [127.0.0.1])
	by mass.osd.bsdi.com (8.11.0/8.9.3) with ESMTP id e9H8ps700438
	for <acpi-jp@jp.freebsd.org>; Tue, 17 Oct 2000 01:51:58 -0700 (PDT)
	(envelope-from msmith@mass.osd.bsdi.com)
Message-Id: <200010170851.e9H8ps700438@mass.osd.bsdi.com>
X-Mailer: exmh version 2.1.1 10/15/1999
To: acpi-jp@jp.freebsd.org
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Tue, 17 Oct 2000 01:51:54 -0700
From: Mike Smith <msmith@freebsd.org>
Reply-To: acpi-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+000315
X-Sequence: acpi-jp 874
Subject: [acpi-jp 874] ACPI code update...
Errors-To: owner-acpi-jp@jp.freebsd.org
Sender: owner-acpi-jp@jp.freebsd.org
X-Originator: msmith@freebsd.org


I thought I should post a short update, since it's been a few days and I 
was making enthusiastic promises about getting things committed this week.

I thing I've fixed the resource allocation isses for now (it's not 
entirely right, but close), and found a bug in AcpiGetObjectInfo that was 
causing my system to trap, but I'm still not getting this system all the 
way up. 8(

I think what I've run into is another one of the 'infinite While() loop' 
problems that were reported a little while back.

This _STA method:

                    Method(_STA) {
                        ENFG
                        Store(0x0, Local7)
                        If(LNot(LEqual(FDCM, 0xff))) {
                            And(CR00, 0x8, Local0)
                            And(CR20, 0xc0, Local1)
                            Store(0x5, Local7)
                            If(LAnd(Local0, Local1)) {
                                Store(0xf, Local7)
                            }
                        }
                        EXFG
                        Return(Local7)
                    }

Invokes the ENFG method:

                Method(ENFG) {
                    Acquire(MSIO, 0xffff)
                    Store(0x0370, \_SB_.PCI0.PX43.DEC1)
                    Store(0x11, \_SB_.PCI0.PX43.DEEN)
                    Store(0xd, INDX)
                    While(LNot(LEqual(DATA, 0x29))) {
                        Store(0x55, INDX)
                        Store(0xd, INDX)
                    }
                }

AcpiGetObjectInfo attempts to invoke _STA and never returns, so either 
ENFG is failing to acquire MSIO, or it's never reading 0x29 from DATA.

One thing I had wondered; does the ACPICA code correctly re-evaluate DATA 
every time, or does it cache the result?  (And is there a useful set of 
debugging flags I can turn on to watch the evaluation of this code in 
order to find out what it's really doing?)

Getting closer, but not really there yet. 8(

-- 
... every activity meets with opposition, everyone who acts has his
rivals and unfortunately opponents also.  But not because people want
to be opponents, rather because the tasks and relationships force
people to take different points of view.  [Dr. Fritz Todt]
           V I C T O R Y   N O T   V E N G E A N C E


