Guys:
There are two places where screen splashing takes place in a typical
Beagleboard setup.
The first place where screen splashing happens is within u-boot itself.
A modified u-boot for Beagleboard typically contains the splash image
within the u-boot image itself. A patch to do that is here:
http://groups.google.com/group/beagleboard/browse_thread/thread/3ad9b803a3418624
Another way I have seen splashes done under u-boot is to program the
image into a well-known flash memory area, and then use a command within
u-boot to copy that memory to the framebuffer during startup. I don't
know if anyone is doing that with Beagleboards or not. It would in fact
be better to do it this way, because then you could change the splash
image without rebuilding u-boot.
If the Beagleboard boots into Angstrom, then the psplash utility is used
to post an initial splash image and to provide the progress bar
updates. The details on how that all works are still not quite clear to
me, so I'll post them later. For those who want to investigate on their
own, the psplash source code is here:
http://svn.o-hand.com/view/misc/trunk/psplash/
I think Angstrom probably modifies that source code somewhat, to
integrate it into their SysV-style initialization procedure. In
particular, there is an /etc/init.d/psplash, and a file
/etc/default/splashfuncs contains helper macros for updating the
progress bar.
After browsing the source code for the upstream psplash, it looks like
the splash screen is compiled into the psplash executable. So the
Angstrom guys modified the code at least in order to change the splash
image from the one used by Poky Linux (which is what psplash mainline
sources appear to enclose by default).
HTH,
b.g.