Molto probabilmente sarai in grado di risolvere il tuo problema con qualcos'altro che sovrascriverà i comandi della tua fan i8kctl con il metodo indicato in questa risposta. Per completezza, includerò alcune note generali sul controllo della ventola sui laptop Dell e istruzioni complete per i8kutils
.
Ciò che probabilmente non funzionerà
Sfortunatamente, due mezzi comuni e diretti per controllare la ventola sui laptop sono tramite ACPI e pin PWM:
I laptop Dell non dispongono della funzionalità di controllo della ventola ACPI (* 1)
- di conseguenza, provare con i parametri di avvio ACPI e simili fallirà
I laptop Dell Latitude, per quanto ne so, mancano di ventole controllabili su pwm (* 2)
- di conseguenza, il programma
fancontrol
/ pwmconfig
non funzionerà
Tuttavia, esiste un pacchetto chiamato i8kutils
scritto per controllare la ventola sui laptop Dell Inspiron tramite il BIOS SMM . Diversi utenti segnalano il successo anche sui loro laptop Dell Laitude (io sono uno di loro, su un Dell Latitude E7440) - tuttavia, spesso è necessario un trucco per sbarazzarsi dell'interferenza del controllo della ventola del BIOS. Ne soffri anche secondo un commento precedente.
Installa i8kutils
:
$ sudo apt-get install i8kutils
Provalo:
$ i8kfan 2 2 # set to max speed
$ i8kfan 0 0 # set to 0 speed
... e ascolta per vedere se funziona.
Disabilita il controllo della ventola del BIOS
Se funziona, ma qualcos'altro sta reagendo alla velocità impostata (riportata da molti utenti sui laptop Dell Latitude), ciò è dovuto alle sessioni SMM pianificate che impostano la velocità della ventola. Fortunatamente esiste un modo per disabilitare il controllo della ventola del BIOS scrivendo nei registri SMM .
Avvertenza: vedere l'avvertenza nella parte superiore di smm.c. Questo metodo scriverà nei registri SMM. Tuttavia, non ho visto segnalazioni degli utenti su questo che causano problemi. Inoltre, tutti i rapporti sul tentativo di questo hanno indicato il successo nella disabilitazione del controllo della ventola del BIOS.
i8kutils
include l'origine di un programma smm
ma il i8kutils
pacchetto non include il file binario compilato. Quello che faremo è scaricare il codice sorgente di i8kutils
, compilare il programma smm
ed eseguirlo con un argomento appropriato per disabilitare il controllo della ventola del BIOS scrivendo nei registri SMM.
Scarica i pacchetti necessari per la costruzione:
$ sudo apt-get build-dep i8kutils
Scarica i8kutils
il codice sorgente, estrai e inserisci la directory (nomi esatti a seconda della versione di i8k):
$ apt-get source i8kutils
$ tar xvf i8kutils_1.33.tar.gz
$ cd i8kutils-1.33/
Compilare smm
:
Se su un sistema a 32 bit :
$ make
(Sopra verrà eseguito gcc -g -O2 -Wall -I. -o smm smm.c
.)
Se su un sistema a 64 bit :
$ gcc -g -O2 -Wall -I. -o smm -m32 smm.c
Esegui smm
con argomento 30a3
per disabilitare il controllo della ventola SMM:
$ sudo ./smm 30a3
Ora, il controllo della ventola del BIOS dovrebbe essere disabilitato. Prova impostando la velocità con i8kctl
, ascolta la ventola e assicurati che la velocità persista.
Nota: questa è un'impostazione che persiste il riavvio e lo spegnimento. Il controllo della ventola del BIOS può essere nuovamente abilitato con $ sudo ./smm 31a3
.
* 1: ho visto una fonte ufficiale su questo, non riesco a trovarlo in questo momento. Se vuoi verificare che il tuo hardware sia privo di, segui le istruzioni qui: https://wiki.ubuntu.com/DebuggingACPI
* 2: per verificare questo, eseguire pwmconfig: sudo apt-get install fancontrol
, sudo pwm-config
dirà se una ventola PWM con capacità sia presente o meno