Pagine: [1]
  Stampa  
Autore Topic: [UBUNTU/DEBIAN] Installazione del modulo Omnibook (Gestione BIOS Notebook Toshiba-HP)  (Letto 6324 volte)
Martinux

*
Rookie
Posts: 129
Offline Offline

gravedancer@libero.it
« il: 19 Maggio 2007 08:38:48 »

Come mi era stato richiesto scrivo una guida riguardante l\'installazione del modulo Omnibook per i possessori di notebook Toshiba o HP compatibili (lista di compatibilità).

Per prima cosa dobbiamo aggiungere alla lista dei repository

Citazione
deb http://packages.kirya.net/debian/ sid main contrib non-free
deb-src http://packages.kirya.net/debian/ sid main contrib non-free

scarichiamo e aggiungiamo la chiave di questo repository con
Codice:
wget -O - http://packages.kirya.net/Kirya.netDebianpackagesVerificationKey.asc  | sudo apt-key add -

e aggiornarniamo la lista dei pacchetti.
Codice:
sudo apt-get update


Se utilizzate debian testing, con kernel debian 18-4, troverete nella lista dei pacchetti un modulo precompilato (cercate omnibook-module-2.6.18-4-68 ) per il vostro sistema, sarà sufficente scaricarlo per averlo disponibile.
Codice:
sudo aptitude install omnibook-module-2.6.18-4-68


Se invece, come me, non utilizzate il kernel 18-4 (ubuntu attualmente usa il 20-15) dovete scaricare il sorgente, che è sempre un pacchetto dal nome omnibook-source.
Questo pacchetto vi scarica un file: /usr/src/omnibook.tar.bz2.
Codice:
sudo aptitude install omnibook-source


Per prima cosa scompattiamo il file scaricato nella nostra home:
Codice:
tar -xjvf /usr/src/omnibook.tar.bz2


Otterremo così una cartella, di nome modules, al cui interno c'è la cartella omnibook contenente tutti i file necessari alla compilazione.
Per essere sicuri di riuscire a compilarlo ci convine installare module-assistant, che prepara il sistema alla compilazione di moduli per il kernel, dopo di che passiamo alla compilazione:
Codice:
sudo aptitude install module-assistant
sudo m-a prepare
cd modules/omnibook/
sudo make install


A questo punto dovremmo avere il modulo presente nella cartella /lib/modules/*nomekernel*/extras (il file si chiama omnibook.ko).

Per caricarlo usiamo i comandi
Codice:
sudo depmod -a
sudo modprobe omnibook

Per controllare il funzionamento del modulo possiamo usare questo:
Codice:
martinux@ubuntu-laptop:~$ modinfo omnibook
filename:       /lib/modules/2.6.20-15-generic/extra/omnibook.ko
license:        GPL
description:    Kernel interface for HP OmniBook, HP Pavilion, Toshiba Satellite and Compal ACL00 laptops
author:         Soós Péter, Mathieu Bérard
srcversion:     30379913C36F7F50AFF80A6
depends:        backlight
vermagic:       2.6.20-15-generic SMP mod_unload 586
parm:           throttle:Use 0 to disable, 1 to enable CPU throttling control (int)
parm:           wifi:Use 0 to disable, 1 to enable Wifi adapter control (int)
parm:           touchpad:Use 0 to disable, 1 to enable touchpad handling (int)
parm:           temperature:Use 0 to disable, 1 to enable thermal status and policy support (int)
parm:           key_polling:Use 0 to disable, 1 to enable key polling (int)
parm:           muteled:Use 0 to disable, 1 to enable 'Audo Mute' LED control (int)
parm:           lcd:Use 0 to disable, 1 to enable to LCD brightness support (int)
parm:           dmi:Use 0 to disable, 1 to enable DMI informations display support (int)
parm:           hotkeys:Use 0 to disable, 1 to enable hotkeys handling (int)
parm:           fan_policy:Use 0 to disable, 1 to enable fan control policy support (int)
parm:           fan:Use 0 to disable, 1 to enable fan status monitor and control (int)
parm:           dump:Use 0 to disable, 1 to enable embedded controller register dump support (int)
parm:           dock:Use 0 to disable, 1 to enable docking station support (int)
parm:           display:Use 0 to disable, 1 to enable display status handling (int)
parm:           cooling:Use 0 to disable, 1 to enable CPU cooling method control (int)
parm:           bluetooth:Use 0 to disable, 1 to enable bluetooth adapter control (int)
parm:           blank:Use 0 to disable, 1 to enable lcd console blanking (int)
parm:           battery:Use 0 to disable, 1 to enable battery status monitoring (int)
parm:           ac:Use 0 to disable, 1 to enable AC adapter status monitoring (int)
parm:           ectype:Type of embedded controller firmware
parm:           userset:Use 0 to disable, 1 to enable users to set parameters (int)

Una volta caricato il modulo crea una cartella in /proc con lo stesso nome del modulo; al suo interno troviamo vari file (dipende da quanto è supportato il nostro notebook). Sicuramente all\'interno di essa troverete due file: dmi e version.
L'output di questi file risulterà simile a questo:
Codice:
martinux@ubuntu-laptop:~$ cat /proc/omnibook/dmi
BIOS Vendor:   TOSHIBA
BIOS Version:  V1.30
BIOS Release:  12/26/2005
System Vendor: TOSHIBA
Product Name:  Satellite M70
Version:       PSM71E-02601RIT
Serial Number: Z5338915K
Board Vendor:  TOSHIBA
Board Name:    Null
martinux@ubuntu-laptop:~$ cat /proc/omnibook/version
2.20070211

Queste sono le informazioni riguardanti il nostro computer e la versione del modulo che abbiamo installato (20070211 è anche la data di creazione dei sorgenti del modulo 11-02-2007).

Per caricare automaticamente all\'avvio il modulo è necessario aggiungerlo alla lista, con ubuntu potete utilizzare il comando
Codice:
echo 'omnibook' | sudo tee -a /etc/modules
Con debian dovrebbe funzionare ma non ne sono certo al 100%.
Loggato
Spot



Martinux

*
Rookie
Posts: 129
Offline Offline

gravedancer@libero.it
« Risposta #1 il: 19 Maggio 2007 09:10:25 »

Passiamo ora alla descrizione del funzionamento degli altri file presenti in /proc/omnibook/. Per ogni file le due "azioni" possibili sono:

-Monitorare lo stato con
Codice:
cat /proc/omnibook/*nomefile*

-Regolare lo stato con
Codice:
sudo echo *N* > /proc/omnibook/*nomefile*

dove con N intendiamo il parametro numerico che ha un diverso significato per ogni file.

Riporto ora la descrizione dei file presenti nel mio sistema, sul sito ufficiale c'è la descrizione di tutti i file che può generare il modulo, se qualcuno ha i file mancanti posti la descrizione! :D

Cooling
Questo file governa il comportamento della ventola della CPU/GPU, l'output tipico è:
Codice:
cat /proc/omnibook/cooling
Cooling method : Performance

Questo significa che la nostra ventola si "attiva" a temperature non troppo alte, in modo da mantenere la cpu più fredda. Questo stato corrisponde al paramentro 1, il paramentro 0 è invece il cosidetto Powersave, che non fa altro che ritardare l'attivamento della ventola, innalzando la temperatura a cui aumenta di giri. Non so quanto questo influisca sulla durata della batteria, ma di sicuro influisce sulla rumorosità del sistema :D

Temperature
Per restare nell'argomento "caldo" abbiamo il file temperature che ci restituisce la temperatura di funzionamento del sistema:
Codice:
martinux@ubuntu-laptop:~$ cat /proc/omnibook/temperature
CPU temperature:            50 C


Throttling
Questo file è importantissimo per il powersave, ci permette di selezionare la potenza della CPU in 8 stati diversi (0-7), il primo stato corrisponde al massimo (0% di throttling) mentre l'ultimo è quello che ci permette di risparmiare + energia (87% di throttling). Questo vale per i notebook con Pentium-M, con altre CPU (Turion ecc ecc) penso che il numero di stati e il loro effetto sulla CPU cambi. L'output del mio pc per questo file è:
Codice:
cat /proc/omnibook/throttling
state count:             8
active state:            T0
   *T0:                  00%
    T1:                  12%
    T2:                  25%
    T3:                  37%
    T4:                  50%
    T5:                  62%
    T6:                  75%
    T7:                  87%
Loggato
Martinux

*
Rookie
Posts: 129
Offline Offline

gravedancer@libero.it
« Risposta #2 il: 19 Maggio 2007 09:37:13 »

LCD
Sempre sul fornte del risparmio energetico, possiamo controllare la luminosità del display con il file LCD:
Codice:
cat /proc/omnibook/lcd
LCD brightness:  7 (max value: 7)

Il mio display ha 8 stati di illuminazione, 7 è quello più luminoso e 0 è quello meno sprecone in termini di energia.

Display
Attraverso il file display possiamo selezionare quale schermo utilizzare:
Codice:
cat /proc/omnibook/display
Internal LCD: display present port enabled
External VGA: display absent port disabled
External TV-OUT: display absent port disabled

Il parametro da passare a questo file è un numero esadecimale, calcolato sommando i valori che ogni singolo stato rappresenta cioè:
Internal LCD panel   0×1
External VGA port   0×2
External TV port   0×4
Se per esempio vogliamo attivare l'uscita TV oltre al display del portatile dobbiamo passare il parametro 0x5 che è il risultato di 0x1+0x4 (attenzione a non spegnervi il monitor se non ne avete altri attaccati!).

Touchpad
Questo file controlla l'utilizzo del touchpad del notebook, se questo è funzionante o meno.
Codice:
cat /proc/omnibook/touchpad
Last touchpad action was an enable command.


Wifi e Bluetooth
Questi due file controllano il funzionamento delle due antenne (se presenti):
Codice:
martinux@ubuntu-laptop:~$ cat /proc/omnibook/wifi
Wifi adapter is present and enabled.
Wifi Kill switch is on.
martinux@ubuntu-laptop:~$ cat /proc/omnibook/bluetooth
Bluetooth adapter is present and enabled.

Impostare lo stato 0 equivale a spegnere l'antenna. Il kill switch segnalato è il pulsante che nel mio modello è presente anche esternamento come interruttore a due stati.

Hotkeys
Questo file segnala lo stato di funzionamento dei tasti speciali della tastiera:
Codice:
martinux@ubuntu-laptop:~$ cat /proc/omnibook/wifi
Wifi adapter is present and enabled.
Wifi Kill switch is on.
martinux@ubuntu-laptop:~$ cat /proc/omnibook/bluetooth
Bluetooth adapter is present and enabled.

Per configurarlo anche qui dobbiamo usare dei valori esadecimali:

Citazione

Onetouch buttons        0×1
Multimedia hotkeys     0×2
Fn hotkeys                 0×4
Stick key                    0×8
Press Fn twice to lock 0×10
Dock events               0×20
Fn + F5 hotkey   0×40

F5 è generalmente il tasto per cambiare display.
Vale sempre la regola della somma, per assegnare i programmi alla pressione dei tasti utilizzate le scorciatoie da tastiera di gnome o l'equilvalente in KDE. Non tutti i tasti sono riconosciuti automaticamente dal sistema, appena capisco come aggiungerli lo posto.

Esiste anche un file di nome blank ma non ho ancora capito bene il suo funzionamento...
Loggato
Snake

*****
Moderatore
Posts: 6267
Offline Offline
Take off every 'ZIG', for Great Justice!
WWW
« Risposta #3 il: 19 Maggio 2007 10:45:35 »

uhm, guida interessante.... non è che per caso conosci qualcosina di analogo per gli HP zd8000? (non mi fungono la fila di tastini extra oltre ai tasti FN, in particolare mi da fastidio il non poter spegnere il modulo WiFi/Bluetooth)
Loggato



The "WOW" is still now...
RIG: Q8400 - P5Q-E - 2x2Gb TeamGroup Xtreem Dark - Sapphire HD4850 Custom - Corsair VX550EU - all inside a Cooler Master Storm Scout - Powered by Windows 7 x64
Homeserver: Gigabyte GA-D510UD "Pine Trail" miniITX - Powered by Windows Server 2008 R2 x64
NB: Samsung N510 ION - Powered by Windows 7 x86

"Living life 32M digits of Pi at a time..." (cit.) - Tesla's Pwnage!
"Without music, life would be a mistake." F.N. - A 9500GT with 1GB of RAM is the most pointless thing since NASCAR.(cit)
Il plexi di deimos norris non è satinato,ma ha la pelle d'oca per averlo incontrato(cit)

  ▲
▲ ▲
le0n

*****
Moderatore
Posts: 9243
Offline Offline
« Risposta #4 il: 19 Maggio 2007 10:58:39 »

molto chiaro martinux Occhiolino
purtroppo vedo che il mio laptop non è supportato...


Citazione

Snake wrote:
uhm, guida interessante.... non è che per caso conosci qualcosina di analogo per gli HP zd8000? (non mi fungono la fila di tastini extra oltre ai tasti FN, in particolare mi da fastidio il non poter spegnere il modulo WiFi/Bluetooth)
io usavo hotkeys per i tasti Fn Occhiolino
Loggato





CLAN DEGLI SVIZZERI -- member #03 Syncro / Sequential

La mia Tesi da Ingegnere  - - - -  Un basso a nuova vita!

Debian Testing Etch su Compaq Presario 2145EU - - - -  Debian Testing Lenny su HP Pavilion dv6270EU
FreeBSD 7.0 su HP Pavilion dv6270EU

Coltiva linux tanto windows si pianta da solo!!
Nessun sistema è sicuro se c'è un idiota a gestirlo!

Danzi mai col Diavolo nel pallido plenilunio? / Have you ever danced with the devil in the pale moonlight? - Joker

L'estremo è ricerca. Del limite da superare, della meta più lontana che un uomo può proporsi di raggiungere. E, una volta che l'ha raggiunta, l'estremo diventa un ulteriore limite, una meta ancor più lontana - Patrick De Gayardon

CAMPIONI DEL MONDO!!!!
Martinux

*
Rookie
Posts: 129
Offline Offline

gravedancer@libero.it
« Risposta #5 il: 19 Maggio 2007 16:48:19 »

In realtà per vedere se i tasti Fn sono supportati dovete premerli e controllare il dmesg, ad esempio se io premo il stato Stop ottengo:
Codice:
martinux@ubuntu-laptop:~$ dmesg | tail
[   48.812000] apm: overridden by ACPI.
[   49.116000] Bluetooth: L2CAP ver 2.8
[   49.116000] Bluetooth: L2CAP socket layer initialized
[   49.240000] Bluetooth: RFCOMM socket layer initialized
[   49.240000] Bluetooth: RFCOMM TTY layer initialized
[   49.240000] Bluetooth: RFCOMM ver 1.8
[  727.876000] atkbd.c: Unknown key pressed (translated set 2, code 0x92 on isa0060/serio0).
[  727.876000] atkbd.c: Use 'setkeycodes e012 ' to make it known.
[  727.992000] atkbd.c: Unknown key released (translated set 2, code 0x92 on isa0060/serio0).
[  727.992000] atkbd.c: Use 'setkeycodes e012 ' to make it known.


Il comando a cui si riferisce associa i tasti non configurati normalmente a codici, quando sarò sicuro dei codici a cui assegnare o non assegnare quei tasti lo posto.
A meno che qualcuno non ci illumini prima :D

Sul sito ufficiale riporta la possibilità di poter forzare il caricamento del modulo con i file di uno specifico notebook. Il comando in questione è
Codice:
modprobe omnibook ectype=X
dove con X si intende un codice, nel sito ufficiale segnale 1, 12, 13; il primo per i nuovi laptop HP e gli altri due per i nuovi Toshiba. Non è cmq troppo consigliato usarlo, sperando che a breve ci siano nuove release del modulo con + supporto per i nuovi laptop.
Loggato
Martinux

*
Rookie
Posts: 129
Offline Offline

gravedancer@libero.it
« Risposta #6 il: 19 Maggio 2007 17:56:18 »

Presto risolto anche questo dilemma :D
Come spiegato QUI è possibile scoprire quali sono i keycodes non utilizzati dal sistema con il comando
Codice:
sudo dumpkeys
L'output di questo comando è un tantino lungo, ma scorrendo verso l'altro noterete dei codici a cui non è essegnato nulla, per esempio a me non sono assegnati tutti i codici sopra il 200.
Per vedere quale codice genera il tasto del notebook lanciate
Codice:
sudo tail -f /var/log/messages
e poi premete i tasti, se questi generano errori nella forma
Codice:
[ 3932.200000] atkbd.c: Unknown key released (translated set 2, code 0xee on isa0060/serio0).
[ 3932.200000] atkbd.c: Use 'setkeycodes e06e ' to make it known.

potete chiudere il monitoraggio dei messaggi con ctrl+c e assegnare ad un codice libero il tasto, ad esempio io ho associato i tasti "multimediali" ai primi sei valori sopra il 200:
Codice:
sudo setkeycodes e074 200
sudo setkeycodes e039 201
sudo setkeycodes e012 202
sudo setkeycodes e077 203
sudo setkeycodes e014 204
sudo setkeycodes e013 205

Chiaramente i codici e0XX variano da macchina a macchina...
Loggato
le0n

*****
Moderatore
Posts: 9243
Offline Offline
« Risposta #7 il: 20 Maggio 2007 10:57:30 »

ottimo martinux Occhiolino
da qualche parte c'è la guida che usavo per associare i tasti ad hotkeys usando solo xev (senza fare tutto questo giro) ma ora mi sono un po arruginito con linux testata


ps
grande Z3n0 inchino
Loggato





CLAN DEGLI SVIZZERI -- member #03 Syncro / Sequential

La mia Tesi da Ingegnere  - - - -  Un basso a nuova vita!

Debian Testing Etch su Compaq Presario 2145EU - - - -  Debian Testing Lenny su HP Pavilion dv6270EU
FreeBSD 7.0 su HP Pavilion dv6270EU

Coltiva linux tanto windows si pianta da solo!!
Nessun sistema è sicuro se c'è un idiota a gestirlo!

Danzi mai col Diavolo nel pallido plenilunio? / Have you ever danced with the devil in the pale moonlight? - Joker

L'estremo è ricerca. Del limite da superare, della meta più lontana che un uomo può proporsi di raggiungere. E, una volta che l'ha raggiunta, l'estremo diventa un ulteriore limite, una meta ancor più lontana - Patrick De Gayardon

CAMPIONI DEL MONDO!!!!
pumax

*****
Moderatore
Posts: 19472
Offline Offline
WWWpumax84@hotmail.com
« Risposta #8 il: 20 Maggio 2007 11:09:25 »

Ottimo Martinux! sorriso Complimenti per il tutorial e grazie per averlo scritto naturalmente! Sorriso

Lo inserisco subito nel thread "TOPICS RILEVANTI" dove sono presenti tutti i topic Stickati! pollice su

P.S. Ti ho editato il titolo con il tag [UBUNTU/DEBIAN] secondo la "politica" d'ordinamento presa nel thread "TOPICS RILEVANTI". Inseriamo HowTo quando si parla di GNU/Linux in generale, mentre il nome della distro se il tutorial è indirizzato esplicitamente ad essa! pollice su
Loggato

* powered by *
# NIKON D50 # Nikkor AF-S 18-55mm DX
# Nikkor AF-S 70-300mm VR

»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
OVERCLOCK DATABASE: Il database by Freemodding.it
»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
OC WORLD RECORD: AthlonXP 2800+ Barton @ 2663.2 MHZ
»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
PCL86 PROJECT: L'Amplificatore Valvolare
»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
VIDEO CARD AND CPU STRESS TOOL: Artifact 'n' Stress
»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
Diventa anche Tu >POWER USER< di Freemodding.it
»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»

Martinux

*
Rookie
Posts: 129
Offline Offline

gravedancer@libero.it
« Risposta #9 il: 20 Maggio 2007 19:05:59 »

Grazie per i complimenti! In effetti non sapevo con precisione cosa mettere nel titolo del post...
Qualcuno mi sa consigliere un tutorial online per la programmazione con le GTK2+/Phyton, volevo creare un programmino per gestire questo modulo e magari creare dei profili energetici.

Tra l'altro ho notato che i valori della batteria che segna linux sono completamente sballati, purtroppo sul mio pc il file battery non c'è, spero nelle prossime versioni...
Loggato
Spot



Pagine: [1]
  Stampa  
 
Salta a:  

Copyright © 2005-2009 Freemodding.it
Powered by SMF | SMF © 2006-2008, Simple Machines LLC
Traduzione Italiana a cura di SMItalia