Newsgroup: it.comp.os.linux.sys
Titolo: [Forse OT]: Asus A7v, idle e Linux

Chiedo scusa se l'argomento è OT ma su it.comp.hardware.motherboard non
mi rispondono.
Il problema è:
I programmi per attivare l'idle con i bios della Asus A7V  sono tutti per
Window$ :-(
La domanda è:
qualcuno conosce qualche programma tipo wpcrset, ecc per
Linux o qualche procedura esoterica fruibile attraverso le molteplici
peculiarità del sistema (tipo /dev/xxx oppure /proc/xxx)?
Grazie!

 oppure /proc/xxx)?
Non vorrei dire una stronzata, ma mi pare che il kernel
possa essere compilato con il supporto per la chiamata
"idle"  abilitando un'apposita voce nel "General Setup".
Al 99.9% dovrebbe esserci
Magari funziona pure !!

 Magari funziona pure !!
Nell'XConfig del Kernel 2.4.1 non l'ho trovato ma il problema è un'altro,
da quanto ho capito:
bisogna modificare un byte di un registro del north-bridge per mandare il
processore in idle quando il sistema operativo lo richiede: Windows 2000,
e quindi credo anche linux, invia l'istruzione HLT quando entra in idle e
se il north-bridge è configurato in modo corretto invia al processore il
"comando di spegnimento" (lo so che è approssimativo ma oggi il mio
vocabolario comprende poche parole :-).
Dunque, ammesso che il kernel invii l'istruzione HLT, sensa il supporto
del NB si va poco avanti.
In sintesi: come cavolo faccio ad accedere a questo registro (in generale
ai registri del NB)?
Grazie cmq!

"idle"  abilitando un'apposita voce nel "General Setup".
Ho controllato. Hai ragione:
Advanced Power Management BIOS support -> Make CPU Idle calls when idle
Poi provo.
Il vantaggio di avere una cpu veloce e` che adesso il kernel lo compilo
in 3 minuti anziche` 30.
Uno puo` fare tutti gli esperimenti che vuole. :)
Ciao
Ale
-- 
Home Page: 
http://web.tiscalinet.it/airaghi
Per ottenere il mio indirizzo e-mail sostituire a NOSPAM il mio cognome

l'istruzione HLT, sensa il supporto del NB si va poco avanti.
Sicuro? Ho una a7v con duron700 che si stabilizza sui 40 gradi (arriva a
50 sotto win98se...)
Ciao
-- 
Fabio Cobianchi | 
fabi...@tiscalinet.it

 50 sotto win98se...)
Infatti, spinto dal post ho reinstallato lm_sensors (tolto al passaggio
tra 2.2 e 2.4), e a me con un Duron 750 sta sui 33 contro i 47-49 di
Windows.
A questo punto credo che
1- Solo Windows2000 ha bisogno di questa patch
2- Il byte nel north bridge serve a mandare il processore in risparmio
energetico (abbassando la frequenza, come nei portatili)
3- Boh!
Bye.
-- 
Signature under rework - Shuriken

 Bye.
Thanx.
Ah, a proposito: dove hai trovato/come hai fatto per i settaggi
corretti di lm_sensors: sul sito ufficiale non li ho trovati. non è che
potresti mandarmeli sulla mia casella di posta o se preferisci postali. 
Thanx Again
--
Lord Essere
Per ottenere il mio indirizzo email elimina _my_ ed espandi kataweb

 energetico (abbassando la frequenza, come nei portatili)
mmmh... l'istruzione HLT che citavi tu e' un'istruzione del processore,
e il north bridge in tal caso credo non c'entri niente. Linux usa
quell'istruzione da sempre. Penso che sia vera l'ipotesi 2), e in tal
caso si tratta della feature attivabile nei kernel 2.4 con
general setup / Make CPU Idle calls when idle 
Tutto questo IMHO :)
-- 
addio, e grazie per tutto il pesce


doh!
--
    (iao!!oai)                                    (ICQ: 10860566)
    //.aurizio
[WARNING!: a breve 
m.mu...@iol.it
 verra' disabilitato, usate il nuovo indirizzo]
[WARNING!: togliete _nessuno_ per rispondere]
    Time may change me
    But I can't trace time

50 sotto win98se...)
che versione di bios?
e' l'ultima versione che ha un bug che non permette di attivare l'hlt.


Interessante ipotesi che, però, non mi dispiacerebbe veder verificata
il discorso e' leggermente piu' complesso - parliamone su
it.comp.ardware.cpu, forse e' meglio... ^____^


potresti mandarmeli sulla mia casella di posta o se preferisci postali.
Non ho  modificato nulla del file  di configurazione originale e  uso il
comando "sensors" da console dopo  avergli fatto fare il "sensor-detect"
(Dovrei reimpostare  i limiti  per i  voltaggi, sono  tutti in  ALARM, e
alcune misure sono  semplicemente insensate, ma le  cose fondamentali ci
sono)


permette di attivare l'hlt.
Credo ci sia un  po' di confusione. Io parlo dell'HLT  che fa' parte del
set di  istruzioni x86 del  processore. Bios,  chipset e altra  roba non
possono farci  niente se  un programma (il  kernel) ha  un'istruzione di
halt nel suo codice.


50 sotto win98se...)
Non sono un esperto di lm_sensors. Oggi ho letto un po' di
documentazione ed ho provato a farlo andare.
Ho un Athlon @1100
Dopo le dovute compilazioni, carico i seguenti due moduli:
# modprobe i2c-viapro
# modprobe w83781d
Questa la linea aggiunta in /etc/modules.conf:
alias char-major-89 i2c-dev
Questo l'output del comando "sensors"
------------------------------------------------------------------------
as99127f-i2c-0-2d
Adapter: SMBus vt82c596 adapter at e800
Algorithm: Non-I2C SMBus adapter
VCore 1:   +1.80 V  (min =  +1.66 V, max =  +2.03 V)              
VCore 2:   +0.09 V  (min =  +1.66 V, max =  +2.03 V)       ALARM  
+3.3V:     +3.23 V  (min =  +2.97 V, max =  +3.63 V)              
+5V:       +4.91 V  (min =  +4.50 V, max =  +5.48 V)              
+12V:     +11.78 V  (min = +10.79 V, max = +13.11 V)              
-12V:     -10.40 V  (min = -10.78 V, max = -13.18 V)              
-5V:       -5.06 V  (min =  -4.50 V, max =  -5.48 V)              
fan1:        0 RPM  (min = 3000 RPM, div = 2)              ALARM  
fan2:     6532 RPM  (min = 3000 RPM, div = 2)                     
fan3:        0 RPM  (min = 3000 RPM, div = 2)                     
temp1:    +31.0°C   (limit = +60°C, hysteresis = +50°C)        
temp2:    +21.2°C   (limit = +60°C, hysteresis = +50°C)        
temp3:    +112.2°C   (limit = +60°C, hysteresis = +50°C)        
vid:      +1.85 V
alarms:   Chassis intrusion detection                             
beep_enable:
          Sound alarm enabled
------------------------------------------------------------------------
Carini i 112.2°C  :-)
Tu ottieni gli stessi valori ?
Le temperature sono molto piu` basse che in win98se.


Interessante ipotesi che, perň, non mi dispiacerebbe veder verificata
Nei sorgenti del kernel si legge questo:
------------------------------------------------------------------------
Do CPU IDLE calls
CONFIG_APM_CPU_IDLE
  Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop.
  On some machines, this can activate improved power savings, such as
  a slowed CPU clock rate, when the machine is idle. These idle calls
  are made after the idle loop has run for some length of time (e.g.,
  333 mS). On some machines, this will cause a hang at boot time or
  whenever the CPU becomes idle. (On machines with more than one CPU,
  this option does nothing.)
------------------------------------------------------------------------
L'ho abilitata, se eseguo "top" mi ritrovo con questa riga:
PID USER  PRI  NI  SIZE  RSS SHARE STAT  LIB %CPU %MEM   TIME COMMAND
3 root     20   0     0    0     0  SW     0 94.8  0.0  21:59 kapm-idled
Ora provo a leggermi come funziona lm_sensors :)


Le temperature sono molto piu` basse che in win98se.
Ma nel 98 non avevano messo il "raffreddamento" della CPU? Boh, comunque
il programma fornito dalla Asus ha margini sulle tensioni più ampi (però
il mio alimentatore non fà comunque un buon lavoro :-( )


 postali.  Thanx Again
Che settaggi ti servono? Quelli per il Makefile o quelli per
/etc/sensors.conf?
Cmq, mi sa che hai ragione tu, serve il supporto.
Mi sono documentato un po', e sembra che la VIA non rilasci el
specifiche per il chip di rilevamento contenuto nella A7V (e di nessun
altro suo chip), quindi lm_sensors e` frutto di reverse engineering,
per quanto riguarda questo chip.
Inoltre le misurazioni sono sbagliate, nel senso che i 33 gradi che ti
dicevo erano effettivamente quelli della MoBo, e non della CPU.
La CPU, sotto Linux, segna di norma 19 gradi. Caricando il processore
per un po' (cat /dev/urandom >/dev/null) arriva sui 21, ben distanti da
51 di Windows, quindi credo che il BIOS e il programma della Asus
semplicemente aumentino di 30 gradi il valore letto, probabilmente (si
dice nel forum di lm_sensors) perche` il sensore non e` attaccato alla
CPU, ma a una certa distanza.
Se fosse vero questo, le ipotesi sono:
1- E` giusto aumentare di 30 gradi la lettura, quindi i valori sotto
Linux sono identici a quelli di Windows 9x. In questo caso bisogna
settare il byte nel north bridge per mandarlo in HLT. Infatti io ho
provato anche a compilare il kernel con "Make CPU Idle calls..." e le
temperature sono le stesse.
2- Non e` esatta la formula (x+30) ma e` piu` complesso il calcolo, e
questo solo VIA puo` dirlo, e non lo dice. :(


 questo solo VIA puo` dirlo, e non lo dice. :(
Thanx a lot!

set di  istruzioni x86 del  processore. 
pure io...
purtroppo la a7v con bios... qualcosa.f mi pare :-) inibisce la riga
acpi verso il processore  - Dio solo sa perche'.


ho un dissipatore+ventola made in cina da poco :-)
Ho un dissipatore superorb della termaltake + due ventole sul frontale
del case per immettere aria fresca. Ho anche i caloriferi spenti :-)
