[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: