APM.ADD driver FAQ
March 31, 2009
This README contains frequently-asked questions
related to APM.ADD driver for eComStation
CONTENTS
________
New/updated questions are marked with "*"
Q1: I have old notebook. Can I use suspend/resume with APM.ADD?
Q2: What is the purpose of ACPI deamon?
Q3: Can I use APM.ADD without ACPI driver?
* Q4: How to prolong the time of work on battery? How to save battery?
Q5: Are you going support Hybernate?
Q6: Cooler on CPU is very loud, how can you help me?
Q7: Does 8233cool APM driver coexist with ACPI driver?
Q8: Which Sleep states exist?
Q9: Basic ACPI APM.ADD is working bad. Battery widget hangs, etc.
Q10: How to start ACPIDAEMON?
Q11: What is the purpose of acpidaemon
Q12: How the suspend-resume is performed in eComStation?
Q13: Is it safe to use eComStation without ACPI daemon?
Q14: Why is it so difficult to implement Suspend/resume?
Q1: I have old notebook. Can I use suspend/resume with APM.ADD?
A1: If your computer supports ACPI standard then it should work.
The success of Sleep/resume depends on device drivers and video drivers.
Q2: What is the purpose of ACPI deamon?
A2: Operations should be performed in separate thread,
The daemon gives a thread for acpica$ driver.
Q3: Can I use APM.ADD without ACPI driver?
A3: If ACPI driver is not loaded, then (by default) we assume that
no batteries and AC (cable) is always connected. The APM.ADD driver
should work fine but it will be unusable.
Q4: How to prolong the time of work on battery? How to save battery?
A4:
1) Use UNI kernel or
Install ACPI kernel (SMP Kernel patched for ACPI) + acpidaemon
(aka Patched kernel aka Kernel with ExtraHLT)
URL: http://ecomstation.ru/projects/acpitools/?action=down
The kernel with ExtraHLT prolongs battery 2 hours -> 3 hours for
some notebooks.
* ExtraKernelHLT = Yes
* Check AcpiD.cfg -> IdleState = HLT
Try change C1 to C2 or C3
C3 is better.
IdleState = HLT is for old computers.
Restrictions of pathched kernel:
* pipes are working slower (?)
2) CONFIG.SYS -> CLOCKSCALE=1
gives additional +1% for battery (tested different notebooks)
3) Read Q6: Cooler on CPU is very loud, how can you help me?
More recommendations how to save battery:
* Quit applications not in use
* Turn off WiFi if you're not using it
* Eject compact-disks not in use
* Disconnect peripherals not in use
Q5: Are you going support Hybernate?
A5: Hybernate is broken in eCS kernel.
Nevertheless we are planning research this feature later.
Q6: Cooler on CPU is very loud, how can you help me?
A6: First of all:
* Use Panorama VESA video driver instead of GENGRAD or SDDGRAD
URL: http://ecomstation.ru/panorama
Moreover, We are working on:
a) new eCS SMP kernel *will* use HLT => CPU will be not so hot
b) Central Remote Control + PoPa (quick switch of power consumption,
i.e. throttling and brightness) should help
URL: http://ecomstation.ru/crc
c) and somebody should create tools to control fans.
we can't because this is economically not possible
Usually this happens with Intel P4 + cooler.
Please try replace Intel cooler with silent expensive cooler.
Q7: Does 8233cool APM driver coexist with ACPI driver?
A7: No. We recommend use standard ACPI driver.
Q8: Which Sleep states exist?
A8: ACPI has 5 states:
S1 - computer is stopped
S2 - computer is stopped, part of devices are powered off
S3 - all devices are powered off, except memory
S4 - all devices are powered (not supported by APM.ADD now)
S5 - power off
Q9: Basic ACPI APM.ADD is working bad. Battery widget hangs, etc.
A9: APM.ADD works fine. The problems may occur because
you are using bad device drivers or ACPI is not initialized correctly.
Disable APM.ADD and test ACPI.PSD first.
Q10: How to start ACPIDAEMON?
A10: Run ACPIDAEMON from x:\startup.cmd
add to x:\startup.cmd
start /min ACPIDAEMON.EXE
or StartUp folder (?? bad method)
Q11: What is the purpose of acpidaemon
A11: Purpose:
* to process poweroff
* temperature, batteries, suspend/resume.
* etc.
AcpiDaemon for desktop:
1. Open thread for acpi.psd (instead kernel thread)
2. Open thread for apm.add (for wait command from apm)
3. Open thread for wait Power Button
4. Open thread for wait AcpiD.cfg change
for notebook (maximum)
1. Open thread for acpi.psd (instead kernel thread)
2. Open thread for apm.add (for wait command from apm)
3. Open thread for wait Power Button
4. Open thread for wait AcpiD.cfg change
5. Open thread for wait LID (notebook cover)
Q12: How the suspend-resume is performed in eComStation?
A12: Short description of the processes:
Going to suspend S3:
1. Process going from end wait apm command (p.2 AcpiDaemon)
2. Flush all disk buffer (if has netwksta.200 - fail,
very old bug in kernel)
3. Attach full screen
4. Save video state and flush keyboard
5. Freeze all thread
6. Call acpi.psd for enter to ACPI STATE S3
Going from wakeup S3:
1. Return from call acpi.psd (p.6 going to suspend)
2. Call apm for send event "Wakeup" to device
3. Unfreeze all thread
4. Flush keyboard and restore video state
5. Detach full sreen
6. Call APM for send event "Wakeup" to semaphore
7. Going to wait next APM command
Q13: Is it safe to use eComStation without ACPI daemon?
A13: If you don't load the daemon, this means that ACPI events
are ignored. Some computers may go crazy because of this.
So.. better load ACPI daemon.
Q14: Why is it so difficult to implement Suspend/resume?
A14: The problem is in the interaction of ACPI and eComStation kernel.
|