last update 04-04-2002 9:12

ACPI & Powermanagement

APM

Contrary to what is said on the Toshiba webstite APM does not work with this laptop.

ACPI

...which leaves us with ACPI as the one and only method for power managment. ACPI is the future but right now the ACPI implementation is in development for linux. In one respect we are lucky because we have a normal BIOS. But and this is the bad part - the DSDT Table in the BIOS is buggy.

This means that we can only use ACPI if we use a work around and patch the ACPI sources. Sounds worse than it is. Check out this link to developer.intel.com. It is quite easy.

If you don't want to get your hand dirty: I put up my tbget.c and dsdt.h (which was supplied to me by other users- thanks!!) See below how to make it work.

Solutions with ACPI (NEWS!)

"NEWER" Release acpi patch 20020504 and 20020404

The newest kernel patches for ACPI present no problems with the Satellite 3000. The 20020404 patch can even be used without replacing the DSDT. You will have to use the tosh3k kernel module to compensate the loss of the thermal zone however. But I would recommend this anyway - as it will give you SpeedStep for the laptop - a much requested feature.

"oldie but goody" Release acpi patch 20020214

All of the Problems we are having are due to a buggy DSDT table in the BIOS. A bug fix was submitted to toshiba by the linux-acpi developers but up until now it has been ignored. So write toshiba - if enough of us complain they will have to include this in the next BIOS update!

stuff that works (20020214 patch for 2.4.17)

  • battery check (not all info though)
  • ac_apapter: online/offline
  • acpi irqrouting
  • detects power button, lid switch, battery sockets
  • cpu throtteling (speed step): I didn't test this - still very early stage of development

Instructions for getting ACPI to work with the Satellite 3000 series

What you need: (I am assuming you are not very familiar with all this so I am going to include the commands)

2.4.17 kernel >> download link
20020214acpi patch >> download link
tbget.c >> download link
dsdt.h >> download link
2.4.17.config (optional) >> download link
  1. cd /usr/src
  2. unpack the 2.4.17 kernel. (gzip -cd linux-2.4.17 | tar -xv)
  3. copy acpi-20020214-2.4.17.diff.gz into /usr/src/linux
  4. gzip -cd acpi-20020214-2.4.17.diff.gz | patch -p1
  5. copy tbget.c into /usr/src/linux/drivers/acpi/tables/ and replace the tbget.c there
  6. copy dsdt.h into /usr/src/linux/drivers/acpi/tables/
  7. (optional) cp 2.4.17.config to /usr/src/linux/.config (skip make menuconfig)
  8. (optional) do you own kernel configuration
  9. make clean && make menuconfig && make bzImage && make modules && make modules_install && make install
  10. boot your kernel

In /proc/acpi/batteries/... you can call the battery values with cat status and cat info.

Until the /proc/acpi directory structure is frozen I am not going to adapt a battery applet to show this information. It may take some time for the cat status to change.

Again I want to remind you that this is a hack and a workaround - the acpi code is changing rapedly so check for new updates (especially for your BIOS) frequently. I will try to keep this site up to date as much as I can. Once it is stabized I will post a diff for the latest stable kernel.

Newest Patch without replacing DSDT

The newest relase acpi20020329 with the IRQpatch (see download section) with a vanilla 2.4.18 patched to 2.4.19-pre4 works without having to change any code. The drawback is that this prevents the thermal zone from working. It is important to patch in this oder: acpi20020329 patch first - then IRQbugfix patch THEN 2.4.19-pre4 patch. The problem with the plain 2.4.18 kernel ist that the 8139too module (Ethernet card) is broken. Thus the upgrade to 2.4.19. Be sure to select acpi debugging because of a flaw in this patch. With it enabled it will work fine. Then simply compile and these are the things which will work:

  • battery 1 and 2 with all information
  • processor throtteling
  • processor limit (to a certain extent)
  • no thermal zone
  • lid / power button
  • ac adapter on/ offline
  • IRQ routing (sometimes buggy)

SpeedStep(TM)

YES!! Finally there is speedstep available for this laptop. Download the tosh3k kernel module and away you go! Check out this site for more information!

Battery Checker Tools (new)

WMacpi1.34-0

This is the standard battery tool for windowmaker - which I am using. I modified some of the code. The downside: It only checks battery NR 1. I am planning to change that once I find a little time. But for now it does a pretty good job.