====== EIB e Linux kernel 2.4 ====== ===== Download dei files ===== Per il kernel 2.4 ci sono due pacchetti: eib-0.2.2.tar.gz e eib-0.2.4.tar.gz\\ Il primo contiene documentazione e programmi di utilita`, mentre il secondo solo la vesrione aggiornata del modulo eib.\\ * scaricare i driver dal sito http://www.auto.tuwien.ac.at/~mkoegler/index.php/eibdriver * prendere i due pacchetti eib-0.2.2.tar.gz e eib-0.2.4.tar.gz =====Compilare il modulo eib.o===== * unzippare il pacchetto eib-0.2.4.tar.gz * editare il file Makefile per raggiungere i sorgenti del kernel * lanciare `make` =====Caricare il modulo eib.o===== prima di caricare il modulo bisonga liberare la risorsa ttyS0 per evitare di ottenere un errore del tipo "Devide or resource busy", quindi: setserial /dev/ttyS0 uart none ./inseib (script che crea il device e carica il modulo) con lsmod vediamo il modulo `eib` caricato =====Compilare eibdump===== Nel pacchetto eib-0.2.2.tar.gz ci sono un paio di utility tra le quali eibdump che non fa altro che intercettare i messaggi sul bus tramite il modulo eib precedentemente caricato. \\ Questo ci serve ora per capire se tutto funziona e in seguto come debug. gcc -O -Wall eibdump.c -o eibdump =====Testare il funzionanento===== A questo punto non ci resta che controllare che tutto funzioni e il modulo lavori correttamente.\\ Lanciamo quindi il comando ./eibdump e generiamo degli eventi sul bus con i dispositivi collegati.\\ Se tutto e' andato a buon fine dovremo vedere dei messaggi del tipo: 11:56:10 set bcu to busmonitor mode 11:56:20 49 00 da 28 bc 00 04 09 02 e1 00 80 2d 11:56:20 49 01 f4 93 cc 11:56:22 49 02 21 2d bc 00 04 09 02 e1 00 81 2c 11:56:22 49 03 3b 99 cc 11:56:26 49 04 ba d8 bc 00 04 09 01 e1 00 80 2e 11:56:26 49 05 d5 43 cc 11:56:28 49 06 aa 2c bc 00 04 09 01 e1 00 80 2e 11:56:28 49 07 c4 96 cc 11:56:30 49 00 9d 65 bc 00 04 09 01 e1 00 81 2f 11:56:30 49 01 b7 d1 cc