Customizzazione boot Debian Wheezy
Salve a tutti!
Spero che questa sia la mailing list corretta per chiedere informazioni
di questo tipo, ma non so proprio che pesci pigliare... :(
Ho un sistema deb-boostrappato da armel per la scheda che ho progettato
(basata su processore iMX28 ARM926EJ-S) e per il quale non riesco a far
eseguire un mio codice al boot.
Premessa:
La scheda e' provvista di LCD che viene inizializzato una prima volta
dal bootloader (Barebox http://www.barebox.org) il quale si preoccupa di
caricare dalla partizione /boot un file .png che viene correttamente
visualizzato...
Nei pochi istanti seguenti viene caricato il kernel (3.12.1) dalla
stessa partizione /boot e successivamente lanciato. Tale kernel utilizza
pero` l'area di memoria che precedentemente il bootloader aveva
'malloc'ato per il framebuffer/display per altri scopi (in quanto decisa
dalle politiche del linker sia del bootloader che del kernel che non
condividono nulla) e per cui quello che avevo sullo schermo mi si cancella.
Per avere un workaround ho creato un piccolo helper che utilizzando le
librerie grafiche SDL carica la stessa immagine che utilizza il
bootloader da /boot e che rimane in attesa con questo splash finche`
qualche altro processo non invoca in una FIFO il comando di
auto-killarsi (perche` per esempio occorre lanciare l'applicazione per
la quale la scheda e` stata progettata) ;-)
L'ho provato e lanciato appena effettuato il login e funziona egregiamente.
Volevo pero` lanciarlo il prima possibile (magari prima del lancio di
udev che mi pare sia nel runlevel rcS.d/S02udev) poiche` la procedura di
boot standard con tutti i servizi necessari al mio scopo occcupa un
certo numero di secondi (diciamo oltre 30), con uno script del genere:
#!/bin/sh
/usr/bin/mkfifo /tmp/myfifo
/sbin/fbsplash /boot/splash.png &
exit 0
magari chiamandolo /etc/rcS.d/S01fbsplash, ma non viene nemmeno
invocato, o per lo meno non vedo nessun output nell console seriale
durante il boot...
Magari il posto migliore e` in /etc/inittab ma non so come fare a
compilarlo correttamente...
Sto sbagliando qualcosa???
Ciao
--
,,,
(o o)
======oOO==(_)==OOo======
Gianluca Renzi
R&D
phone: +39.0542.609120
fax: +39.0542.609212
.oooO Oooo.
======( )==( )=======
\ ( ) /
\_) (_/
===================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(".)_/¯
Reply to: