luxnote lapstore servion thinkspot
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 20 von 42

Thema: tp_smapi / Ladeschwellen auf T420(s)/X220/... - Tester gesucht

  1. #1

    Registriert seit
    01.02.2011
    Ort
    Hamburg
    Beiträge
    56
    Danke
    0
    Thanked 1 Time in 1 Post

    tp_smapi / Ladeschwellen auf T420(s)/X220/... - Tester gesucht

    Hallo zusammen,

    scheinbar funktioniert das tp_smapi-Kernelmodul zum Einstellen der Ladeschwellen nicht auf allen neuen ThinkPads (T420(s), X220, ?) auf Anhieb. Dabei gibt es zwei Probleme:
    a) Der Embedded Controller wird nicht erkannt
    b) Das Einstellen der Ladeschwellen funktioniert nicht zuverlässig

    Da ich seit kurzem selbst ein T420s besitze, dachte ich mir, ich ändere mal etwas an dieser Situation. Das Ergebnis ist ein experimentelles tp_smapi-Paket, welches ohne Source-Code-Patches auf T420(s) und X220 geladen werden kann und bei dem sich die obere Ladeschwelle einstellen lassen sollte. Rückwärtskompatibel mit älteren ThinkPads sollte das Modul ebenfalls sein.

    Was mir nun fehlt, sind Tester, bei denen das ungepatchte Modul nicht lädt oder bei denen das Einstellen der Ladeschwellen gemäß einem wie in http://thinkpad-forum.de/threads/113...=1#post1104516 vorgeschlagen gepatchten Modul keine Wirkung zeigt.

    Den Quellcode des gepatchten Moduls gibt es unter: https://github.com/ginkel/tp_smapi
    Ein fertiges .deb für Ubuntu Natty gibt es unter: https://launchpad.net/~thilo.ginkel/+archive/thinkpad

    Es wäre super, wenn sich ein paar Tester für folgendes Procedere fänden (Instruktionen für Ubuntu Natty - Nutzer anderer Distributionen können sich das Paket direkt aus den Quellen kompilieren):
    Code:
    sudo add-apt-repository ppa:thilo.ginkel/thinkpad
    sudo apt-get update
    sudo apt-get install tp-smapi-dkms
    sudo rmmod tp_smapi thinkpad_ec # falls eine alte Version des Moduls noch geladen ist
    sudo modprobe tp_smapi
    cat /sys/devices/platform/smapi/BAT0/stop_charge_thresh # sollte standardmäßig 100 ausgeben
    echo 95 | sudo tee /sys/devices/platform/smapi/BAT0/stop_charge_thresh
    cat /sys/devices/platform/smapi/BAT0/stop_charge_thresh # sollte jetzt 95 ausgeben
    Die untere Ladeschwelle lässt sich momentan leider noch nicht einstellen. Kann jemand der T420(s)/X220-Besitzer mit Dual-Boot-Umgebung bitte mal nachschauen, ob diese Einstellung unter Windows mit der Lenovo-Software konfigurierbar ist?

    Bitte gebt bei eurer Rückmeldung euer ThinkPad-Modell sowie die genutzte Distribution und Kernel-Version an. Wenn etwas nicht klappt, ladet das Modul wie folgt bitte mit Debug-Ausgaben neu, wiederholt den Test und hängt den Schluss der dmesg-Ausgabe mit smapi-Bezug mit an:
    Code:
    sudo rmmod tp_smapi thinkpad_ec
    sudo modprobe tp_smapi debug=1
    Danke & viele Grüße
    Specialist

  2. #2

    Registriert seit
    10.04.2011
    Beiträge
    37
    Danke
    0
    Thanked 0 Times in 0 Posts
    also bei mir scheint der Patch zu funktionieren!

    Habe ein X220, arch, kernel 2.6.38. Nach dem whitelisten des X220 konnte ich das tp_smapi-Modul laden, aber:

    # echo 80 > stop_charge_thresh
    # cat stop_charge_thresh
    100

    Nach deinem Patch sieht es so aus:
    # echo 80 > stop_charge_thresh
    # cat stop_charge_thresh
    80

    allerdings habe ich noch nicht getestet, ob der Akku tatsächlich nur bis 80% geladen wird, das werde ich demnächst ausprobieren.


    achso, ein Windoof habe ich meinen Denkbrettern nie angetan, auch dem X220 nicht, kann also zu der Startladeschwelle nichts sagen.
    Geändert von ipser (02.06.2011 um 00:16 Uhr)

  3. #3

    Registriert seit
    11.03.2011
    Ort
    NRW
    Beiträge
    1.032
    Danke
    9
    Thanked 1 Time in 1 Post
    @ Specialist ich hab nur windows drauf, da geht das mit der unteren Ladeschwelle natürlich, aber ich denke du willst wissen ob das in linux übernommen wird!?

    PS: Deine PN's sind abgeschaltet, sonst hätte ich's dir da geschrieben.

  4. #4

    Registriert seit
    10.04.2011
    Beiträge
    37
    Danke
    0
    Thanked 0 Times in 0 Posts
    @fabio: ich glaube, er wollte wissen, ob die Hardware das überhaupt unterstützt, bevor er versucht, das unter Linux hinzubekommen.

    Aber gut zu wissen, dass es geht, jetzt müsste nur noch jemand der Ahnung hat etwas Zeit und Lust finden ...

  5. #5

    Registriert seit
    24.03.2011
    Beiträge
    168
    Danke
    0
    Thanked 0 Times in 0 Posts
    @specialist: geht bei dir force_discharge? Ich krieg da zumindest 'nen Fehler.

  6. #6
    Ubuntuversteher Avatar von linrunner
    Registriert seit
    22.06.2007
    Beiträge
    12.740
    Danke
    17
    Thanked 358 Times in 283 Posts
    Das Paket läßt sich problemlos unter Lucid installieren (also höchstwahrscheinlich auch unter Maverick). Die Schwellen lassen sich auf dem X200 schreiben. Rest muß ich noch testen.
    Gruß, linrunner
    X1C6, T450s, X220 - Ubuntu 20.04 - TLP - Ubuntu Schnelleinstieg
    -- Fehler im Anwender sind schwer zu beheben, da es meist keine Updates gibt


  7. #7

    Registriert seit
    10.04.2011
    Beiträge
    37
    Danke
    0
    Thanked 0 Times in 0 Posts
    @ccyx: force_discharge geht bei mir auch nicht

  8. #8

    Registriert seit
    01.02.2011
    Ort
    Hamburg
    Beiträge
    56
    Danke
    0
    Thanked 1 Time in 1 Post
    Themenstarter
    Zitat Zitat von ipser Beitrag anzeigen
    @fabio: ich glaube, er wollte wissen, ob die Hardware das überhaupt unterstützt, bevor er versucht, das unter Linux hinzubekommen.

    Aber gut zu wissen, dass es geht, jetzt müsste nur noch jemand der Ahnung hat etwas Zeit und Lust finden ...
    Exakt darum ging es mir. In welchem Programm wird das konfiguriert? Könnte man sich ja mal per Reverse-Engineering anschauen.
    T470p, T440p, T420s - Arch Linux x86_64

  9. #9

    Registriert seit
    11.03.2011
    Ort
    NRW
    Beiträge
    1.032
    Danke
    9
    Thanked 1 Time in 1 Post
    Also auch wenn mich das alles sehr interessiert, versteh ich höchstens die Hälfte hier gerade wenn ihr Code postet und vom kompilieren oder in diesem Fall Reverse-Engeneering redet. Letzteres versteh ich zwar von der Übersetzung her, aber ich wüsste auch zu gerne wie man das alles macht.

    Einstellen tu ich die Ladeschwellen mit dem EnergieManager von Lenovo.
    Geändert von fabio (02.06.2011 um 14:19 Uhr)

  10. #10

    Registriert seit
    10.04.2011
    Beiträge
    37
    Danke
    0
    Thanked 0 Times in 0 Posts
    Ich kann jetzt bestätigen, dass der Akku auch tatsächlich nur bis zu der dank Specialists Patch einstellbaren Schwelle geladen wird. Vielen Dank Specialist!

    Angehängt habe ich ein entsprechend modifiziertes AUR-Paket für Archer (.txt-Endung löschen, die ist nur wegen der bescheuerten Forumssoftware da).
    Angehängte Dateien Angehängte Dateien

  11. #11

    Registriert seit
    01.02.2011
    Ort
    Hamburg
    Beiträge
    56
    Danke
    0
    Thanked 1 Time in 1 Post
    Themenstarter
    Zitat Zitat von fabio Beitrag anzeigen
    Einstellen tu ich die Ladeschwellen mit dem EnergieManager von Lenovo.
    Und du hast ein T420, T420s oder X220?
    T470p, T440p, T420s - Arch Linux x86_64

  12. #12
    Ubuntuversteher Avatar von linrunner
    Registriert seit
    22.06.2007
    Beiträge
    12.740
    Danke
    17
    Thanked 358 Times in 283 Posts
    @Specialist: das W520 könntest Du noch in die Whitelist einbauen. Das X220t müßte über den Match für das X220 mit erkannt werden. Genauso das T420s über den Match für das T420, kannst Du ja selbst testen.
    Gruß, linrunner
    X1C6, T450s, X220 - Ubuntu 20.04 - TLP - Ubuntu Schnelleinstieg
    -- Fehler im Anwender sind schwer zu beheben, da es meist keine Updates gibt


  13. #13

    Registriert seit
    11.03.2011
    Ort
    NRW
    Beiträge
    1.032
    Danke
    9
    Thanked 1 Time in 1 Post
    ich hab ein X220

  14. #14
    Ubuntuversteher Avatar von linrunner
    Registriert seit
    22.06.2007
    Beiträge
    12.740
    Danke
    17
    Thanked 358 Times in 283 Posts
    @fabio: das ist hier im Moment mehr ein Experten-Thread . Deine Info, daß Du unter Windows die untere Schwelle enstellen kannst, ist genau das was Specialist wissen wollte. Danke. Falls Du allerdings auch ein Ubuntu auf deinem ThinkPad hast, dann könntest Du das Paket aus dem PPA von Specialist testen. Zum Einstellen der Schwellen brauchst Du dann noch TLP (s. meine Signatur).
    Gruß, linrunner
    X1C6, T450s, X220 - Ubuntu 20.04 - TLP - Ubuntu Schnelleinstieg
    -- Fehler im Anwender sind schwer zu beheben, da es meist keine Updates gibt


  15. #15

    Registriert seit
    01.02.2011
    Ort
    Hamburg
    Beiträge
    56
    Danke
    0
    Thanked 1 Time in 1 Post
    Themenstarter
    Ich hab' inzwischen die Windows-DLL gefunden, die die Schnittstelle zum Durchführen der Einstellungen zur Verfügung stellt: PWMIF32V.DLL

    Dummerweise ist der disassemblierte Code derart konfus, dass ich momentan nicht wirklich weiterkomme. Was mich aber wundert, ist, dass sowohl get_threshold, als auch set_threshold dieselbe SMAPI-Funktion rufen (z.B. 2116h). Kann aber sein, dass da später bei Bedarf noch eins draufaddiert wird. Liest hier zufällig jemand mit, der sich ein wenig mehr mit Reverse-Engineering via IDA Pro auskennt?
    Geändert von Specialist (03.06.2011 um 00:02 Uhr)
    T470p, T440p, T420s - Arch Linux x86_64

  16. #16
    Ubuntuversteher Avatar von linrunner
    Registriert seit
    22.06.2007
    Beiträge
    12.740
    Danke
    17
    Thanked 358 Times in 283 Posts
    Zitat Zitat von Specialist Beitrag anzeigen
    Was mich aber wundert, ist, dass sowohl get_threshold, als auch set_threshold dieselbe SMAPI-Funktion rufen (z.B. 2116h).
    Jemand hatte sich das mal fürs Edge angeschaut, klingt so ähnlich: http://thinkpad-forum.de/threads/104...l=1#post990099
    Gruß, linrunner
    X1C6, T450s, X220 - Ubuntu 20.04 - TLP - Ubuntu Schnelleinstieg
    -- Fehler im Anwender sind schwer zu beheben, da es meist keine Updates gibt


  17. #17

    Registriert seit
    20.03.2011
    Beiträge
    5
    Danke
    0
    Thanked 0 Times in 0 Posts
    Code:
    # uname -r 
    2.6.39-1-amd64
    # dmidecode -s system-version
    ThinkPad T420
    # dmidecode -s system-product-name
    4180W1H

    Ich möchte jetzt nicht unbedingt off topic gehen.
    Allerdings kriege ich die Sourcen gar nicht erst Kompiliert. Vollständige Kernelheader + Kernelsource vorhanden.

    Code:
    # make
    Makefile:31: Building tp_smapi requires Linux kernel 2.6.19 or newer, and matching kernel headers.
    Makefile:32: You may need to override the following Make variables:
    Makefile:33: .   KVER=2.6.39-1-amd64
    Makefile:34: .   KBUILD=/lib/modules/2.6.39-1-amd64/build
    Makefile:35: .   MOD_DIR=/lib/modules/2.6.39-1-amd64/kernel
    Makefile:36: For "make patch", you may also need the full kernel sources, and may need to override:
    Makefile:37: .   KSRC=/lib/modules/2.6.39-1-amd64/source
    Makefile:38: *** Missing kernel headers.  Stop.
    Laut dem Makefile (Z. 30) müsste in /lib/modules/2.6.39-1-amd64/build/include/linux
    die Datei aio_abi.h liegen. Tut sie bei mir allerdings nicht.
    Code:
    $ pwd && ls -la
    /lib/modules/2.6.39-1-amd64/build/include/linux
    total 12
    drwxr-xr-x 2 root root 4096 May 24 19:18 .
    drwxr-xr-x 5 root root 4096 May 24 19:18 ..
    -rw-r--r-- 1 root root   97 May 19 16:12 version.h

    Leider habe ich gerade auch kein Vergleichssystem, ich habe allerdings die nicht gepatchte Version aus den Repositorys über apt-get source tp_smapi-source und dann apt-get --build mit dem Patch wie hier beschrieben Klick kompiliert bekommen. Was bei mir leider nicht wie gewünscht funktioniert.

    Jemand eine Idee wo, das Problem liegen könnte? Ich bin gerade leider etwas zu unfähig.

    Ich bin btw. Debianuser.

    Gruß,

    AAAA
    Geändert von x41414141 (03.06.2011 um 12:12 Uhr)

  18. #18
    Ubuntuversteher Avatar von linrunner
    Registriert seit
    22.06.2007
    Beiträge
    12.740
    Danke
    17
    Thanked 358 Times in 283 Posts
    Gibt es einen Grund, warum Du nicht einfach das tp-smapi-dkms-Paket aus dem PPA von Specialist verwendest?

    ps. wenn in dem Verzeichnis keine Dateien sind, dann sind die zum Kernel passenden Header eben nicht installiert. Dann wird der automatische DKMS-Build auch scheitern.
    Geändert von linrunner (03.06.2011 um 12:58 Uhr)
    Gruß, linrunner
    X1C6, T450s, X220 - Ubuntu 20.04 - TLP - Ubuntu Schnelleinstieg
    -- Fehler im Anwender sind schwer zu beheben, da es meist keine Updates gibt


  19. #19

    Registriert seit
    24.01.2007
    Beiträge
    870
    Danke
    0
    Thanked 0 Times in 0 Posts
    Wollt nur mal kurz Danke sagen hier
    Rest siehe Mail

  20. #20

    Registriert seit
    20.03.2011
    Beiträge
    5
    Danke
    0
    Thanked 0 Times in 0 Posts
    Zitat Zitat von linrunner Beitrag anzeigen
    Gibt es einen Grund, warum Du nicht einfach das tp-smapi-dkms-Paket aus dem PPA von Specialist verwendest?

    ps. wenn in dem Verzeichnis keine Dateien sind, dann sind die zum Kernel passenden Header eben nicht installiert. Dann wird der automatische DKMS-Build auch scheitern.
    Ja, ich verwende das Paket nicht weil es sich um einen i386 Build handeld ich aber ein amd64 System nutze. Da würde ich mir das schon ganz gerne selber passend bauen. Die Kernelheader habe ich inklusive des Kernels aus den Repositorys gezogen.
    • linux-headers-2.6.39-1-all-amd64
    • linux-headers-2.6.39-1-amd64
    • linux-headers-2.6.39-1-common
    • linux-image-2.6.39-1-amd64
    • linux-source-2.6.39


    Mal ganz davon abgesehen, dass ich einfach verstehen will wieso es nicht funktioniert. Vielleicht findet sich ja auch jemand der mir über PN erklären kann wieso das nicht funktioniert.

    Gruß,

    AAAA
    Geändert von x41414141 (03.06.2011 um 15:29 Uhr)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
thinkstore24.de Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen CaptainNotebook