[HOWTO] AMD Geode NX 1750 auf PC-Chips M811 als stromsparender VDR - Patch für 2.6.33 online

  • warum willst du denn genau den kernel ersetzen , probs mitm mainboard ??? powernowd lief bei mir mit dem geode direkt nach der (k)ubuntu installation !?!?! hier im ubuntuwiki http://wiki.ubuntuusers.de/pow…highlight=%28powernowd%29

    yaVDR 0.3.2 VIA-Epia MII-10000, 512MB ram, Rebach DT-HiFi-01 ,TT rev.1.6, Samsung Spinpoint SV1604N 160GB, NEC ND-2500A, 2TB FreeNAS
    -Registered VDR-User #1273
    -Registered Linux-User #420228


    yaVDR 0.5.0a auf M2NPV-VM,GT9500,4GB RAM,32GB OCZ SSD

  • @lola:


    Das könnte er versuchen. Ich sollte nicht meine Maßstäbe ansetzen. ;) Wenn ich schon die
    Kernel Sourcen aufspiele, dann bau' ich das Ding auch maßgeschneidert. Anyway.
    Aber ob das allein gebaute Modul dann zum fertigen Kernel paßt? Da habe ich bei Distri
    Kernels meist wenig Erfolg gehabt. Wenn ich eh schon einen selbst übersetzten Kernel habe,
    ist es natürlich kein Problem.


    Ein Hinweis noch. Für Ubuntu 5.04 muß CONFIG_CPU_FREQ_DEBUG in der Kernel config
    nachträglich gesetzt werden.

  • bei meinem Rechner scheint Powernow nicht zu funktionieren.


    Bei

    Code
    cat /proc/cpuinfo

    kommt


    bei

    Code
    dmesg | grep powernow

    gibt er aus

    Code
    [4294727.780000] powernow: PowerNOW! Technology present. Can scale: frequency and voltage.
    [4294727.792000] powernow: Trying ACPI perflib
    [4294727.792000] powernow: ACPI perflib can not be used in this platform
    [4294727.792000] powernow: ACPI and legacy methods failed
    [4294727.792000] powernow: See http://www.codemonkey.org.uk/projects/cpufreq/powernow-k7.shtml


    und bei

    Code
    sudo powernowd -v

    kommt folgende Meldung:

  • ok jetzt peill ich die ganze sache auch ! hab mich mal etwas reingelesen , lag bei mir wohl dran das mein mainboard die geschichte besser unterstützt !

    yaVDR 0.3.2 VIA-Epia MII-10000, 512MB ram, Rebach DT-HiFi-01 ,TT rev.1.6, Samsung Spinpoint SV1604N 160GB, NEC ND-2500A, 2TB FreeNAS
    -Registered VDR-User #1273
    -Registered Linux-User #420228


    yaVDR 0.5.0a auf M2NPV-VM,GT9500,4GB RAM,32GB OCZ SSD

  • wäre mir auch lieber wenn das einfacher gehen würde, aber es gibt noch keine Lösung für dieses Problem:


    Code
    [4294727.780000] powernow: PowerNOW! Technology present. Can scale: frequency and voltage.
    [4294727.792000] powernow: Trying ACPI perflib
    [4294727.792000] powernow: ACPI perflib can not be used in this platform
    [4294727.792000] powernow: ACPI and legacy methods failed
    [4294727.792000] powernow: See http://www.codemonkey.org.uk/projects/cpufreq/powernow-k7.shtml


    Andere Lösungen außer Kernel kompilieren sind willkommen.


    Beim Kompilieren bin ich schon ziemlich weit gekommen, habe jedoch vorerst von der Kernel Installation abgesehen, da am Ende des Kompiliervorgangs folgendes kommt:


    Keine Ahnung, wo da der Fehler steckt...die entsprechenden .deb-Dateien hat er jedenfalls erstellt, aber Kernel installieren, der beim Kompilieren schon Fehler angezeigt hat? Ich bin da a bisserl skeptisch...

  • Den Fehler beseitigst Du durch:

    Zitat

    Ein Hinweis noch. Für Ubuntu 5.04 muß CONFIG_CPU_FREQ_DEBUG in der Kernel config
    nachträglich gesetzt werden.


    Ersetze in der Datei .config in /usr/src/linux den Eintrag:

    Code
    # CONFIG_CPU_FREQ_DEBUG is not set

    durch

    Code
    CONFIG_CPU_FREQ_DEBUG=y

    Dann komipliert er durch. Das Kompilieren geht folgendermaßen:

    Code
    root@kilroy:/usr/src/linux# make
    root@kilroy:/usr/src/linux# make install
    root@kilroy:/usr/src/linux# make modules
    root@kilroy:/usr/src/linux# make modules_install

    Das läßt sich ggf. auch alles in eine Zeile schreiben. Danach noch update-grub aufrufen.

  • Zitat

    Original von kilroy
    @lola:


    Das könnte er versuchen.


    wenn die Kernel Quellen installiert sind, würde ich daraus mal ./././cpufreq > woanders hinkopieren , patchen ( dann verhunzt man sich nicht die Quelle) dort das Makefile reinpacken:


    Code
    obj-m += powernow-k7.o
    
    
    all:
    	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
    
    
    clean:
    	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean



    dann sollte make:


    test@test:/download/cpufreq# make
    make -C /lib/modules/2.6.15.6/build M=/download/cpufreq modules
    make[1]: Entering directory `/usr/src/linux-2.6.15.6'
    CC [M] /download/cpufreq/powernow-k7.o
    Building modules, stage 2.
    MODPOST
    CC /download/cpufreq/powernow-k7.mod.o
    LD [M] /download/cpufreq/powernow-k7.ko
    make[1]: Leaving directory `/usr/src/linux-2.6.15.6'
    test@test:/download/cpufreq#


    dann rüber kopieren , depmod -a usw.


    powernow-k7 mit option starten, wichtig wären in der Ausgabe bsw. vergleichbare msr infos


    Apr 3 17:45:28 test kernel: powernow: Building frequency table from MSR info.
    Apr 3 17:45:28 test kernel: powernow: Minimum speed 667 MHz. Maximum speed 1000 MHz.


    Gruß Fr@nk

  • Boss666:


    Versuche es mal mit der Datei aus dem Anhang. "gunzip"e und kopiere diese nach

    Code
    /lib/modules/2.6.12-10-k7/kernel/arch/i386/kernel/cpu/cpufreq/

    und führe ein

    Code
    depmod -a

    aus. Dann lädst Du das Modul mit

    Code
    modprobe powernow_k7 msr_force=1

    und guckst Dir die Ausgabe bzw. das syslog an.


    Ich benutze folgenden Kernel: linux-image-2.6.12-10-k7

  • ...komme vor lauter Ideen und Lösungsmöglichkeiten kaum noch hinterher :D


    Ich werde mich allerdings erst heute nach der Arbeit ans Testen wagen, da die Zeit jetzt doch schon etwas fortgeschritten ist....


    Ich werde mich mit den Ergebnissen dann rühren...

  • der Ansatz aus Deinem letztem Post ist schon nicht schlecht


    bei

    Code
    dmesg | grep powernow


    gibt er mir aus

    Code
    [4294797.933000] powernow_k7: disagrees about version of symbol struct_module


    => es scheint auf jeden Fall die "sanftere" Variante zu sein (wenns denn bloß endlich funzen würde... :wand)

  • so, ganz große Klasse => mit selbstgebautem Kernel funzt Powernow jetzt


    Der Stromverbrauch ist gleich noch einmal um fast 10 Watt nach unten gegangen.


    Einziges Problem: er setzt jetzt anscheinend die CPU-Frequenz auf 398 MHz fest

    Code
    cat /proc/cpuinfo

    kommt


    Wenn ich mir die scaling-Dateien und eben gerade die cpuinfo aus

    Code
    /sys/devices/system/cpu/cpu0/cpufreq

    ansehe, steht dort überall der Wert 398.918. Ändern kann ich die Dateien leider nicht dahingehend, dass im Bedarfsfalle auch die 1,4 GHz des Geode abgerufen werden.


    Habt Ihr hierzu noch eine Idee?

  • Zitat

    Original von Boss666

    Code
    [4294797.933000] powernow_k7: disagrees about version of symbol struct_module


    Benutzt Du noch den 2.6.12-10-386, wie Du früher schriebst? Dann dürfte mein Modul bei
    Dir nicht passen, da ich hier 2.6.12-10-k7 einsetze.

  • Zitat

    Original von Boss666
    Wenn ich mir die scaling-Dateien und eben gerade die cpuinfo aus

    Code
    /sys/devices/system/cpu/cpu0/cpufreq

    ansehe, steht dort überall der Wert 398.918. Ändern kann ich die Dateien leider nicht dahingehend, dass im Bedarfsfalle auch die 1,4 GHz des Geode abgerufen werden.
    Habt Ihr hierzu noch eine Idee?


    Was zeigen bei Dir "scaling_available_governors" an? Und was hast Du in "scaling_governor"
    geschrieben? Siehe dazu Punkt 2. des Startpostings dieses Threads.


    Ansonsten soll das Frequenz hoch- und herunterschalten ja auch automatisch passieren...

  • @Alle


    Hi,
    Sehr interresant das alles.
    Ich nutze LINVDR7 mit div patches.
    Habe noch nie einen Kernel kompiliert!! :(


    We hat auch LINVDR laufen und könnte mit nen kompilierten kKernel zur Verfügung stellen ??


    Grüße Magicdragon67

  • Zitat

    Original von kilroy
    Was zeigen bei Dir "scaling_available_governors" an?

    in

    Code
    /sys/devices/system/cpu/cpu0/cpufreq

    steht in

    Code
    scaling_governor

    userspace
    in

    Code
    scaling_available_governors

    steht userspace powersave ondemand conservative performance


    Zitat

    Original von kilroy
    Und was hast Du in "scaling_governor" geschrieben? Siehe dazu Punkt 2. des Startpostings dieses Threads.

    Welchen Punkt unter 2. meinst Du genau?


    Zitat

    Original von kilroy
    Ansonsten soll das Frequenz hoch- und herunterschalten ja auch automatisch passieren...

    Ist schon klar, es sieht allerdings ganz so aus, als ob er permanent mit 398 MHz läuft und bei Bedarf eben gerade nicht hochtaktet...

  • Dann versuch es mal mit
    echo -n "ondemand" > /<Pfad>/scaling_governor

    LG
    Jochen


    Rpi4 headless mit MLD 5.4 als Server via satip-Plugin hinter einem Telestar Digibit Twin, ein Rpi3 als Streamdev-Client mit MLD 5.4

    Rpi3 auch hinter Telestar Digibit Twin und mit MLD 5.4

  • keine Änderung nachdem in scaling_governor nun ondemand drin steht...


    reine Verständnisfrage: Es kann sich doch auch nichts ändern, wenn z.B. in cpuinfo_max_freq nur 398871 drin steht => dann kann er doch auch gar nicht höher takten, oder? Ich kann diesen Wert nur dummerweise nicht auf 1,4 GHz ändern...dafür muss es doch aber eine Lösung geben...

  • Zitat

    Original von Boss666
    reine Verständnisfrage: Es kann sich doch auch nichts ändern, wenn z.B. in cpuinfo_max_freq nur 398871 drin steht => dann kann er doch auch gar nicht höher takten, oder?


    würde ich auch so sehen.


    unter /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies sollten die verfügbaren Frequenzen auftauchen


    im syslog müsste zu powernow bsw. etwas in der Form :


    Apr 5 18:37:56 frank kernel: powernow: Building frequency table from MSR info.
    Apr 5 18:37:56 frank kernel: powernow: Minimum speed 1400 MHz. Maximum speed 1533 MHz.


    stehen


    wenn Du Powernowd drauf hast, kannste ja mal darüber Infos ausgeben lassen.


    bsw:


    frank /usr/sbin# ./powernowd -v
    powernowd: PowerNow Daemon v0.96, (c) 2003-2005 John Clemens
    powernowd: Settings:
    powernowd: verbosity: 1
    powernowd: mode: 1 (AGGRESSIVE)
    powernowd: step: 100 MHz (100000 kHz)
    powernowd: lowwater: 20 %
    powernowd: highwater: 80 %
    powernowd: poll interval: 1000 ms
    powernowd: Found 1 cpu: -- 1 thread (or core) per physical cpu
    powernowd: cpu0: 1400Mhz - 1533Mhz (2 steps)
    powernowd: step1 : 1533Mhz
    powernowd: step2 : 1400Mhz
    frank /usr/sbin#


    Gruß Fr@nk

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!