[Primipassi] Cosa significa "kernel tainted"?

francis3 francis3@libero.it
Gio 5 Feb 2009 10:20:10 CET


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

* leandro noferini <lnoferin@cybervalley.org> [050209, 06:09]:
> Gian ha scritto:
> 

[...]
> Il fatto č che non riesco  a far funzionare un telecomando di una scheda
> tv e cosė mentre osservavo ipnotizzato lo scorrere del log di sistema la
> mia attenzione subcosciente č stata destata dal seguente messaggio:
> 
> lirc_dev: IR Remote Control driver registered, at major 61
> lirc_i2c: no version for "lirc_unregister_plugin" found: kernel tainted.

Mmmm ... mi avevano dato un diploma in "lirchese" ... :-D
Non e' roba proprio banale eh ...

Il ricevitore e' infrarossi o radio?
L'interfaccia del ricevitore e' attaccata direttamente alla scheda tv o
al pc (seriale o USB)?

> 
> I  moduli per lirc  li ho  compilati con  module-assistant e  quindi non
> capisco quale possa essere il problema.....
> 

Quali? Ce ne sono diversi ...
Io di solito preferisco usare la roba piu' standard e che alla fine mi
funziona sempre .... ovvero ricevitore IR standard su seriale. 
In quel caso il modulo che ti serve e' lirc_serial ...


Ma il device /dev/lirc0 te lo crea?

Se e' su seriale hai messo la porta in modo acconcio?

setserial /dev/ttyS0 uart none

Puoi fissare la cosa in 

/var/lib/setserial/autoserial.conf

con 

#/dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base 115200 spd_normal
skip_test
/dev/ttyS0 uart none port 0x03f8 irq 4 baud_base 115200 spd_normal
skip_test

Poi provare a caricare il modulo ... ecc. ecc...
Importante: GUARDA bene le opzioni del modulo!!!

modinfo <nome modulo>

Diverse volte mi ha funzionato tutto alla fine dopo avere provato le
varie opzioni.


Per es. il lirc_serial su cui pispolavo io mi dice

- ---
filename:       /lib/modules/2.6.26-1-686/misc/lirc_serial.ko
license:        GPL
author:         Ralph Metzler, Trent Piepho, Ben Pfaff, Christoph
Bartelmus, Andrei Tanas
description:    Infra-red receiver driver for serial ports.
depends:        lirc_dev
vermagic:       2.6.26-1-686 SMP mod_unload modversions 686
parm:           type:Hardware type (0 = home-brew, 1 = IRdeo, 2 = IRdeo
Remote, 3 = AnimaX, 4 = IgorPlug) (int)
parm:           io:I/O address base (0x3f8 or 0x2f8) (int)
parm:           irq:Interrupt (4 or 3) (int)
parm:           share_irq:Share interrupts (0 = off, 1 = on) (bool)
parm:           sense:Override autodetection of IR receiver circuit (0 =
active high, 1 = active low ) (bool)
parm:           txsense:Sense of transmitter circuit (0 = active high, 1
= active low ) (bool)
parm:           softcarrier:Software carrier (0 = off, 1 = on) (bool)
parm:           debug:Enable debugging messages (bool)
- ---


Se sta girando ferma il demone lircd e carica il modulo a mano
con impostato il debug=1 e vedi che ti dice.


es.

modprobe -v lirc_serial debug=1 irq=4 io=0x3f8 type=0

Trovate le opzioni funzionanti le puoi fissare in 

 /etc/lirc/hardware.conf


Prima di scrivere harware.conf

puoi caricare il demone

/usr/sbin/lircd -n --drive=default --device=TUO_DEVICE (nel mio caso la
seriale) /etc/lirc/lircd.conf


Poi viene la parte divertente ... :-DDDD

Se qualche segnale arriva al kernel lo devi vedere con 

mode2 -d /dev/lirc0


Se vedi un po' di numeri a video mentre pispoli sul telecomando sei a
buon punto.

E puoi partire per un'altro viaggio. Ovvero mappare i tasti con le
funzioni.

irrecord
irw
ecc.ecc.


Per fare funzionar quegli aggeggi IMO la cosa migliore che puoi fare e'
percorrere a ritroso la strada del segnale. Ovvero parti
dall'interfaccia del PC per il ricevitore, poi individua bene il tipo di
ricevitore, poi cerca di capire bene il modulo di lirc che ti serve. Poi
carica il modulo, guarda se il sistema ti crea il device ecc.

ciao
f.

- -- 
francis3  - GnuPG Key ID = 05A867E6
Key fingerprint = 2622 A58F DAE3 034B 986A  B456 FC80 DD7F 05A8 67E6
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFJiq9K/IDdfwWoZ+YRArnbAJ4iJJ+bxPRg3qVhHQNZSM5Ku6mbsACgikVN
18cCmG4/IBS820NeL5QH+yk=
=Lnwu
-----END PGP SIGNATURE-----



Maggiori informazioni sulla lista primipassi