# ACPI auf Toshiba Laptop, unknown cpu frew driver.. hilfe ges

## bd_italy

Hallo,

so, das wird jetzt hoffentlich mein letzter Anlauf um auf meinem Laptop mit Gentoo die Batteriedauer durch ACPI zu verlängern.

Da ich ihn eh nur zum surfen,texte schreiben usw. benötige ist es ja auch überflüssig wenn er mit 2000mhz läuft wo auch 500 reichen würden.

Ich habe seit einem Monat versucht es zum laufen zu bekommen, ohnen erfolg.

In einem anderen Forum hat man mir sogar geraten gentoo runterzuschmeißen, da ACPI angeblich nur mit OpenSuse funktioniert, dabei habe ich mein Gentoo

doch so lieb.  :Embarassed:   Ich würde auch nie ein System runterschmeißen das ich in Kleinarbeit auf meine bedürftnisse eingerichtet habe...

also der aktuelle Status:

Kernel ist ein 2.6er

hatte mich zuerst an diese Anleitung gehalten: 

http://www.gentoo.org/doc/en/power-management-guide.xml

mit p4-clockmod hat die batterie aber genau gleich lange gehalten wie ohne, obwohl die CPU angeblich mit 300 MHZ lief   :Confused: 

als ich dann noch folgendes in dmesg auftauchen sah, war ich bereit etwas neues zu versuchen:

```
p4-clockmod: Warning: Pentium M detected. The speedstep_centrino module offers voltage scaling in addition of frequency scaling. You should use that instead of p4-clockmod, if possible.

p4-clockmod: P4/Xeon(TM) CPU On-Demand Clock Modulation available 
```

das problem ist nun aber dass meine cpu nicht gefunden wird:

```
[10:56:05] max@laptop:~>cpufreq-info

cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006

Report errors and bugs to linux@brodo.de, please.

analyzing CPU 0:

  no or unknown cpufreq driver is active on this CPU

[10:56:12] max@laptop:~>cat /proc/cpuinfo

processor       : 0

vendor_id       : GenuineIntel

cpu family      : 6

model           : 13

model name      : Intel(R) Pentium(R) M processor 2.00GHz

stepping        : 8

cpu MHz         : 1995.127

cache size      : 2048 KB

fdiv_bug        : no

hlt_bug         : no

f00f_bug        : no

coma_bug        : no

fpu             : yes

fpu_exception   : yes

cpuid level     : 2

wp              : yes

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe up est tm2

bogomips        : 3994.64 
```

der Kernel sollte auch richtig konfiguriert sein und ich verwendet auch den richtigen:

```
[17:06:50] max@laptop:~>gzip -d -c /proc/config.gz | grep CPU

# CONFIG_CPUSETS is not set

CONFIG_NR_CPUS=8

# CONFIG_X86_CPUID is not set

CONFIG_SPLIT_PTLOCK_CPUS=4

# CONFIG_HOTPLUG_CPU is not set

# CPU Frequency scaling

CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y

CONFIG_CPU_FREQ_DEBUG=y

CONFIG_CPU_FREQ_STAT=y

# CONFIG_CPU_FREQ_STAT_DETAILS is not set

CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y

# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set

CONFIG_CPU_FREQ_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_POWERSAVE=y

CONFIG_CPU_FREQ_GOV_USERSPACE=y

CONFIG_CPU_FREQ_GOV_ONDEMAND=y

CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

# CPUFreq processor drivers

# CONFIG_X86_ACPI_CPUFREQ is not set

# CONFIG_X86_CPUFREQ_NFORCE2 is not set

[17:04:41] max@laptop:~>grep CPU /usr/src/linux/.config

# CONFIG_CPUSETS is not set

CONFIG_NR_CPUS=8

# CONFIG_X86_CPUID is not set

CONFIG_SPLIT_PTLOCK_CPUS=4

# CONFIG_HOTPLUG_CPU is not set

# CPU Frequency scaling

CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y

CONFIG_CPU_FREQ_DEBUG=y

CONFIG_CPU_FREQ_STAT=y

# CONFIG_CPU_FREQ_STAT_DETAILS is not set

CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y

# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set

CONFIG_CPU_FREQ_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_POWERSAVE=y

CONFIG_CPU_FREQ_GOV_USERSPACE=y

CONFIG_CPU_FREQ_GOV_ONDEMAND=y

CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

# CPUFreq processor drivers

# CONFIG_X86_ACPI_CPUFREQ is not set

# CONFIG_X86_CPUFREQ_NFORCE2 is not set 
```

acpid läuft auch und ist im runlevel eingetragen

```
laptop max # /etc/init.d/acpid status

 * status:  started

```

die Hardware meines Laptops(Toshiba Satellite M70)

```
laptop max # lspci

00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)

00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03)

00:1c.1 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 03)

00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)

00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)

00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)

00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)

00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)

00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)

00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03)

00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)

00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03)

00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03)

00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)

06:01.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

06:02.0 Network controller: Intel Corporation PRO/Wireless 2200BG Network Connection (rev 05)

06:04.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller

06:04.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller

06:04.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller

06:04.4 Class 0805: Texas Instruments PCI6411/6421/6611/6621/7411/7421/7611/7621 Secure Digital Controller

```

Ich weiss dass ACPI unter Linux noch nicht ganz ausgereift ist, ich erwarte mir auch nicht dass Suspend to RAM, Hibernate etc. bei mir läuft.

Ich wäre schon zufrieden wenn sich die CPU runtertaktet, Displayheligkeit kann ich auch manuell runterregeln.

irgendwelche ideen, Lösungsvorschläge etc. die ich versuchen könnte?

Grüße aus Italien

bd_italy

----------

## bd_italy

Hmmmm...

irgendwie will ich nicht recht daran glauben dass noch keiner Gentoo auf einem Laptop am Laufen hat und mir ein paar

Tipps geben kann.   :Wink: 

Ich habe mich jetzt mal ein wenig weiter in ACPI unter Linux eingelesen und die Ursache fürs nicht funktionieren

scheint bei den meisten ein "schlechtes" BIOS zu sein.

Wenn ich zu Hause bin werde ich meines mal updaten und dann weiter probieren.

Aber cpufreq müsste doch trotzdem meine CPU erkennen, oder?

Und ich weiß leider nicht ob ich in richtung Kernel oder Software weiter nach Fehlern suchen soll.

Hat wirklich keiner eine Idee?

Grüße bd_italy

----------

## firefly

hast du mal das speed-step modul ausprobiert?

----------

## Hilefoks

Moin,

Ich denke du hast nicht den passenden CPUFreq-Treiber im Kernel aktiviert. Da du einen Pentium M besitzt brauchst du folgende Einstellungen in der Kernel-Config:

```

Power management options (ACPI, APM)  --->  

  CPU Frequency scaling  --->    

       [*] CPU Frequency scaling

       <*>   CPU frequency translation statistics

       <*>   'userspace' governor for userspace frequency scaling (und nach belieben andere)

       <*>   Intel Enhanced SpeedStep

```

Kernel neu bauen, bzImage kopieren, .... , neu starten. Dann cpufreq, powernowd oder ähnlichen Daemon installieren und dann sollte es auch gehen. 

MfG,

Hilefoks

----------

## wols

 *bd_italy wrote:*   

> irgendwie will ich nicht recht daran glauben dass noch keiner Gentoo auf einem Laptop am Laufen hat und mir ein paar
> 
> Tipps geben kann. 

 

Hier: JVC MP-XP7210DE

 *Quote:*   

> In einem anderen Forum hat man mir sogar geraten gentoo runterzuschmeißen, da ACPI angeblich nur mit OpenSuse funktioniert

 

So ein pauschaler Unsinn, ich bin vor über einem Jahr endlich und entgültig von SuSE zu Gentoo gewechselt  :Smile: 

Bei mir klappt ALLES was geht rund um ACPI. Z. B. sehr gut SuspendToDisk per Hibernate (durch ein Script sogar automatisch kurz vor Batterieende).

Mein Pentium III M kann 400/800 MHz und 8 Throttle-Stufen.

Ersteres wird erfolgreich per 'sys-power/powernowd' geschaltet, zweites steuere ich zusätzlich(!) unter X u. WindowManager wahlweise automatisch oder manuell mit 'wmthrottle' (http://dockapps.org/file.php/id/170).

----------

## bd_italy

 *Hilefoks wrote:*   

> Moin,
> 
> Ich denke du hast nicht den passenden CPUFreq-Treiber im Kernel aktiviert. Da du einen Pentium M besitzt brauchst du folgende Einstellungen in der Kernel-Config:
> 
> ```
> ...

 

Hi, danke für deine Hilfe

habe den Kernel noch mal gebaut, bekomme aber immer noch so ein komisches verhalten:

cpufreqd sagt er benötigt CONFIG_CPU_FREQ im Kernel, das habe ich aber ja....   :Rolling Eyes: 

```
laptop max # /etc/init.d/cpufreqd start

 * cpufreqd requires the kernel to be configured with CONFIG_CPU_FREQ

laptop max # gzip -d -c /proc/config.gz | grep CPU

# CONFIG_CPUSETS is not set

CONFIG_NR_CPUS=8

# CONFIG_X86_CPUID is not set

CONFIG_SPLIT_PTLOCK_CPUS=4

# CONFIG_HOTPLUG_CPU is not set

# CPU Frequency scaling

CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y

CONFIG_CPU_FREQ_DEBUG=y

CONFIG_CPU_FREQ_STAT=y

# CONFIG_CPU_FREQ_STAT_DETAILS is not set

CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y

# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set

CONFIG_CPU_FREQ_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_POWERSAVE=y

CONFIG_CPU_FREQ_GOV_USERSPACE=y

CONFIG_CPU_FREQ_GOV_ONDEMAND=y

CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

# CPUFreq processor drivers

# CONFIG_X86_ACPI_CPUFREQ is not set

# CONFIG_X86_CPUFREQ_NFORCE2 is not set

laptop max # cpufreq-info

cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006

Report errors and bugs to linux@brodo.de, please.

analyzing CPU 0:

  no or unknown cpufreq driver is active on this CPU

laptop max #           
```

@ wols:

danke für die infos, powernowd werde ich mir anschauen wenn ich an cpufreq scheitere...

binn mir aber nicht sicher obd er die cpu erkennt, einen versuch wärs auf jeden fall wert.

bd_italy

----------

## bd_italy

Hallo,

so ich habs jetzt zum laufen bekommen dass die CPU runtergetaktet wird.

Der Kernel war richtig, habe es aber sicherheitshalber mal als modul versucht.

wie bekomme ich aber das modul speedtsep_centrino bei jedem start geladen?

so sieht es jetzt aus:

```
[08:12:52] max@laptop:~>cpufreq-info

cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006

Report errors and bugs to linux@brodo.de, please.

analyzing CPU 0:

  driver: centrino

  CPUs which need to switch frequency at the same time: 0

  hardware limits: 800 MHz - 2.00 GHz

  available frequency steps: 2.00 GHz, 1.60 GHz, 1.33 GHz, 1.07 GHz, 800 MHz

  available cpufreq governors: conservative, ondemand, powersave, userspace, performance

  current policy: frequency should be within 800 MHz and 800 MHz.

                  The governor "powersave" may decide which speed to use

                  within this range.

  current CPU frequency is 800 MHz.

[08:13:07] max@laptop:~>cat /proc/cpuinfo

processor       : 0

vendor_id       : GenuineIntel

cpu family      : 6

model           : 13

model name      : Intel(R) Pentium(R) M processor 2.00GHz

stepping        : 8

cpu MHz         : 800.000

cache size      : 2048 KB

fdiv_bug        : no

hlt_bug         : no

f00f_bug        : no

coma_bug        : no

fpu             : yes

fpu_exception   : yes

cpuid level     : 2

wp              : yes

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe up est tm2

bogomips        : 1597.86

[08:13:30] max@laptop:~>                
```

und gibt es für KDE eine zuverlässige Batterierestdaueranzeige? 

denn dieses KLaptop zeigt mir bei 15% Akku einmal eine restdauer von 1,14 Stunden an, 2 Sekunden später nur mehr 10 minuten und 

öffters auch negative Werte   :Rolling Eyes:  .

so , jetzt muss ich mal testen wie lange die batterie nun hält.

ibt es auser die cpu runterzutakten noch andere möglichkeiten?? (LCD helligkeit ist schon ganz unten...)

grüße bd_italy

----------

## samsonus

autmatisch laden kannst du das modul, indem du es in

/etc/modules.autoload.d/kernel-2.6

einträgst.

gruss samsonus

----------

## bd_italy

 *samsonus wrote:*   

> autmatisch laden kannst du das modul, indem du es in
> 
> /etc/modules.autoload.d/kernel-2.6
> 
> einträgst.
> ...

 

hallo,

danke das habe ich jetzt durch try&error (meine beliebteste methode   :Wink:  ) bereits herausgefunden, wollte dafür aber keinen doppelpost machen.

aber ein programm das mir zuberlässig die restakkudauer anzeigt kennst du auch nicht?das bei kde dabei war funktioniert wie in meinem vorigen post...

mir würde es auch schon genügen wenn es ein shell script wäre oder so...

also ohne gui

grüße aus italien

bd_italy

----------

## firefly

probier das hier mal aus:

```
CURCAP=`grep remaining /proc/acpi/battery/BAT0/state  |cut -f8 -d " "`

CURRATE=`grep "present rate" /proc/acpi/battery/BAT0/state  |cut -f14 -d " "`

REMAINING=$((CURCAP*60))

REMAINING=$((REMAINING/${CURRATE}))

echo "$REMAINING min"
```

aber viel anders als das kde-programm macht dieses script bstimmt auch nicht.

----------

## bd_italy

 *firefly wrote:*   

> probier das hier mal aus:
> 
> ```
> CURCAP=`grep remaining /proc/acpi/battery/BAT0/state  |cut -f8 -d " "`
> 
> ...

 

hi, danke...

funktioniert leider nicht da ich immer einen division by 0 error bekomme da mein state wie folgt aussieht:

```
[13:51:39] max@laptop:~>cat /proc/acpi/battery/BAT1/state

present:                 yes

capacity state:          ok

charging state:          discharging

present rate:            0 mA

remaining capacity:      903 mAh

present voltage:         11100 mV

[13:51:50] max@laptop:~>

```

(kann sein dass da noch was im kernel fehlt das die present rate anzeigt oder hängt das von was anderem ab(evtl. bios?)

grüße

bd_italy

----------

