ACPI project progress report (final?)

2000-08-09 Thread Mitsuru IWASAKI

Hi, here is the latest (and maybe final?) report on our ACPI project's
progress.

We are ready now to merge our work on ACPI into main source tree!

Our prototype development is going to finish.  AML interpreter
development is almost completed, region access facility (SystemMemory,
SystemIO and PCI_Config) is almost completed, device major number is
officialy assigned, source code cleanup is finished.  Also some of us
are committers of freefall to work on it.
Of cause we still have a lot of things should be done to complete this
project, but we think it's good enough as a prototype and want to work
together with you, many people who are interested in ACPI
implementation.  Folks, there are a lot of exciting and cool things,
like Processor and Device Power State Control, Thermal Management,
Replacement PnP system, OS initiated hibernation and many :-)
I think now is the time to start open and development, not only in Japan,
for FreeBSD ACPI support!

At USENIX 2000, I luckily had a discussion with Mike Smith, John Baldwin, 
Doug Rabson, Peter Wemm and some people.  I very much appreciate very useful
suggestions from them (especially Mike, thanks a lot).

Once merge happened, we will stop maintaining our ACPI CVS repository
except for DSDT/ASL data collection.  Discussions in Japanese
mailing-list will be continued but it will be just for some people who
want to get information in Japanese.  Most of Japanese ACPI developers
will work based on CURRENT.

Recently we imported CURRENT sys tree as of 2000/8/4 into our ACPI
repository and prepared diffs against CURREN at;
http://people.FreeBSD.org/~iwasaki/acpi/acpi-sys-2804.diff.gz

and snapshot of userland tools is available at;
http://people.FreeBSD.org/~iwasaki/acpi/acpi-usr.sbin-2804.tar.gz

Please get and taste them, we are going to merge them into CURRENT
sometime around end of this month.

How to use:
 # cd /usr/src
 # gzip -dc < /somewhere/acpi-sys-2804.diff.gz | patch
 # tar xzpvf /somewhere/acpi-usr.sbin-2804.tar.gz
 # cp sys/sys/acpi.h /usr/include/sys/
 # cd /usr/src/usr.sbin/acpi
 # make obj depend all install
 # mknod /dev/acpi c 152 0
 # cd /usr/src/sys/i386/conf
 # echo 'device acpi' >> MYKERNEL
 # echo 'options ACPI_DEBUG' >> MYKERNEL
 # echo 'options AML_DEBUG' >> MYKERNEL
 # config -r MYKERNEL
 # cd ../../compile/MYKERNEL
 # make depend; make all install
 # shutdown -r now
 (reboot...)
 # acpiconf -s 5
 (sleeping state 5, shutdown & power off)
 or press Power button to shutdown if supported.

Directory tour:
 - kernel space side
src/sys/i386/i386/machdep.c
getmemsize() try to get ACPI related memory range from SMAP.

src/sys/i386/i386/bios.c
bios32_init() try to find RSD PTR signature (probe ACPI BIOS).

src/sys/sys/acpi.h
The acpi related structs and function declaration.  This need
to be installed in /usr/include/sys/ to compile acpi userland
tools.

src/sys/dev/acpi/acpi.c
acpi device driver.

src/sys/dev/acpi/aml/
AML interpreter code.
aml_parse.c was originally developed based on dfr's AML
disassembler program.  These files can be compiled and work in
both of kernel/userland side.

src/sys/i386/conf/NOTES
sample configration and possible options for acpi driver.

src/sys/i386/i386/acpi_machdep.c
i386 dependent implementations to be added here.

src/sys/i386/include/acpica_osd.h
ACPICA interface implementation (part of OS-dependent code).

src/sys/conf/{files|options}
src/sys/conf/files.i386
file and option configuration for ACPI.

 - userland side
src/usr.sbin/acpi/acpiconf
enabler/disabler and sleeping state transition ioctl
requests generator.

src/usr.sbin/acpi/acpidump
ASL and AML dump tool (modified dfr's tool a bit).
src/usr.sbin/acpi/amldb
The debugger for AML interpreter.

 - device file
/dev/acpi
major/minor should be 152, 0 (officially assigned).
You need to create this file like
# mknod /dev/acpi c 152 0
to use userland tools.

ACPI device driver:
This driver has
 - ACPI memory range management
 - The pmap stuff for ACPI
 - ACPI registers manipulation stuff
 - ACPI tables handlers *
 - System sleeping state stuff
 - AML interpreter callers for special control methods; _PTS and _WAK *
 - Event handler (power/sleep button for now)
 - Interrupt handler (for general purpose events maybe incomplete)
 - Event enabler (PM1 only, GPE not yet)
 - Device file manipulation stuff
 - The new-bus dependent code

*: acpi_handle_dsdt() and acpi_execute_{pts|wak}() invoke AML interpreter.

AML interpreter source files:
 - aml_amlmem.c memory manager instance for AML 

Re: ACPI project progress report (final?)

2000-08-11 Thread Mitsuru IWASAKI

> In message <[EMAIL PROTECTED]> Mitsuru IWASAKI writes:
> : Hi, here is the latest (and maybe final?) report on our ACPI project's
> : progress.
> : 
> : We are ready now to merge our work on ACPI into main source tree!
> 
> Bravo!  Wonderful work!

Thanks.  I think we need to implement power management features by ACPI
replacing APM at least before BIOS w/o APM become majority...


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-11 Thread Mitsuru IWASAKI

> >Folks, there are a lot of exciting and cool things, like Processor
> >and Device Power State Control, Thermal Management, Replacement
> >PnP system, OS initiated hibernation and many :-)  I think now is
> >the time to start open and development, not only in Japan, for
> >FreeBSD ACPI support!
> 
> This all sounds very useful!  Glad to see it's merging into the
> current branch!

Thanks!  I know that we need to have a lot of developers to implement
these things :-)
# We are a very small team in Japan and capabilities is also limited...

Now we got very fundamental facility of ACPI here, I hope that
many people will have fun hacking them and be involved in the projects.

Thanks.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-11 Thread Mitsuru IWASAKI

> > It is related with quite wide areas, not only for power management.
> > # I'm interested in power management part personally for the first step
> > # though.
> 
> Do I understand correctly that things like monitoring cooling fans etc is
> also possible? I guess the people running (lots of) servers will be
> interested in those features too.

Yes, of course :-)  ACPI covers the thermal management also.
I could imagine that there are quite big needs in this area for server computing.

I think this is what you are interested in, from ACPI 1.0b spec. contents;
12. THERMAL MANAGEMENT
12.1 Thermal Control
12.1.1 Active, Passive, and Critical Policies
12.1.2 Dynamically Changing Cooling Temperatures
12.1.3 Hardware Thermal Events
12.1.4 Active Cooling Strength
12.1.5 Passive Cooling Equation
12.1.6 Critical Shutdown

You can get ACPI spec. documents from
http://www.teleport.com/~acpi/spec.htm

# I haven't checked ACPI spec 2.0 yet though :-)

Thanks


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-11 Thread Warner Losh

In message <[EMAIL PROTECTED]> Mitsuru IWASAKI writes:
: # I haven't checked ACPI spec 2.0 yet though :-)

Wouldn't you know it.  I printed the 1.0, and then the errata for it.
Now I have to kill another couple of trees to print the 2.0 spec.

Warner


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-11 Thread Wilko Bulte

On Sat, Aug 12, 2000 at 12:35:27AM +0900, Mitsuru IWASAKI wrote:
> > I'm not quite sure what it does, but it seems to work fine here on my
> > ASUS CUSL2, at least the shutdown part.
> 
> Thank you for your report.  It would be helpful to check
> http://www.teleport.com/~acpi/whatis1.htm
> and it's links.

Interesting information, thanks for the pointer.

> It is related with quite wide areas, not only for power management.
> # I'm interested in power management part personally for the first step
> # though.

Do I understand correctly that things like monitoring cooling fans etc is
also possible? I guess the people running (lots of) servers will be
interested in those features too.

-- 
Wilko Bulte [EMAIL PROTECTED]
Arnhem, the Netherlands


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-11 Thread Mitsuru IWASAKI

> I'm not quite sure what it does, but it seems to work fine here on my
> ASUS CUSL2, at least the shutdown part.

Thank you for your report.  It would be helpful to check
http://www.teleport.com/~acpi/whatis1.htm
and it's links.

It is related with quite wide areas, not only for power management.
# I'm interested in power management part personally for the first step
# though.

Thanks


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-09 Thread Garance A Drosihn

At 12:30 AM +0900 8/10/00, Mitsuru IWASAKI wrote:
>Hi, here is the latest (and maybe final?) report on our ACPI
>project's progress.
>
>We are ready now to merge our work on ACPI into main source tree!
>
>[...skipping...]
>Folks, there are a lot of exciting and cool things, like Processor
>and Device Power State Control, Thermal Management, Replacement
>PnP system, OS initiated hibernation and many :-)  I think now is
>the time to start open and development, not only in Japan, for
>FreeBSD ACPI support!

This all sounds very useful!  Glad to see it's merging into the
current branch!


---
Garance Alistair Drosehn   =   [EMAIL PROTECTED]
Senior Systems Programmer  or  [EMAIL PROTECTED]
Rensselaer Polytechnic Institute


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-09 Thread Michael Harnois

I'm not quite sure what it does, but it seems to work fine here on my
ASUS CUSL2, at least the shutdown part.

-- 
Michael D. Harnois, Redeemer Lutheran Church, Washburn, IA 
[EMAIL PROTECTED]  [EMAIL PROTECTED] 
 When the stomach is satisfied, and lust is spent, 
 man spares a little time for God. -- Will Durant


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: ACPI project progress report (final?)

2000-08-09 Thread Warner Losh

In message <[EMAIL PROTECTED]> Mitsuru IWASAKI writes:
: Hi, here is the latest (and maybe final?) report on our ACPI project's
: progress.
: 
: We are ready now to merge our work on ACPI into main source tree!

Bravo!  Wonderful work!

Warner


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message