2001-12-13 13:47:39

by Samuel Maftoul

[permalink] [raw]
Subject: Graphical boot ( under kernel and not lilo)

Hello hackers,
I think that linux has somehow grown up and I would like to suggest we (
mostly you as my knowledge ... ) integrate the "new version" of
linux_logo.h which makes fullscreen tty1 graphical(maybe as non default
).
What do you think about that ?

Sam


2001-12-13 22:10:03

by Adam Jaskiewicz

[permalink] [raw]
Subject: Re: Graphical boot ( under kernel and not lilo)

On Thursday 13 December 2001 08:47 am, Samuel Maftoul wrote:
> Hello hackers,
> I think that linux has somehow grown up and I would like to suggest we (
> mostly you as my knowledge ... ) integrate the "new version" of
> linux_logo.h which makes fullscreen tty1 graphical(maybe as non default
> ).
> What do you think about that ?
>
> Sam

IIRC, you can already do that using the framebuffer device. Please tell me if
I am wrong.

--
Adam Jaskiewicz
[email protected]
http://middlearth.d2g.com:3141
talk: [email protected]
--
Test-tube babies shouldn't throw stones.

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

2001-12-14 11:37:20

by Tommi Kyntola

[permalink] [raw]
Subject: Re: Graphical boot ( under kernel and not lilo)


> > Hello hackers,
> > I think that linux has somehow grown up and I would like to suggest we (
> > mostly you as my knowledge ... ) integrate the "new version" of
> > linux_logo.h which makes fullscreen tty1 graphical(maybe as non default
> > ).
> > What do you think about that ?
>
> IIRC, you can already do that using the framebuffer device. Please tell
> me if I am wrong.

Yes, atleast the are various patches out there for various 2.4.X kernels,
and as the include/linux/linux_logo.h format changed some of them work and
some require tweaking. The simplest ones allow larger pictures than 80x80
and more complicated ones also display a progress bar (google: linux
progress patch).

I have made a patch for 2.4.X that makes three new compile options -
custom boot logo, non blinking fbcon cursor and totally hidden fbcon
cursor. Custom boot logo stuff requires a picture in some well known
format and then uses convert, ppm* progs and one custom tool to
convert it to linux_logo.h alike "format". I've omitted the progress bar
stuff because that'd require placing code snippets allover the linux init
code. I'm glad to make that available somewhere, but it's all been done
over and over again by loads of people out there, sadly none of that code
has ever made it to the kernel.

My guess is that the people that have needed some tweaking to the graphical
booting (companies involved in making embedded linux boxes) have tweaked the
drivers/video/fbcon.c themselves, like myself, but have thought that
linux is fine without the bloat that bootlogo ehancements requires.
Besides there's been discussion about this here in lkml before.

You see, using a larger picture as a boot logo requires that it's compiled
into the kernel and it indeed increases it's size (some 100kb and then
some for a fullscreen picture). But indeed for embedded boxes it's
sometimes the only possible solution.

For the record, redirecting the kernel output to tty2 (kernel parameter
console=/dev/tty2 or perhaps even append="console/dev/tty2" for lilo),
and spalshing the picture from inittab or rc.sysinit (or similar)
('cat /dev/fb0 > /tmp/screenshot' and 'cat /tmp/screenshot > /dev/fb0')
may be sufficient, since the kernel boots fairly swiftly and
usually it's the userspace bootstuff that takes the time.
Redirecting the rc.sysinit to tty2 from inittab might also come in handy.

--
Tommi "Kynde" Kyntola
/* A man alone in the forest talking to himself and
no women around to hear him. Is he still wrong? */

2001-12-14 17:36:39

by Torrey Hoffman

[permalink] [raw]
Subject: RE: Graphical boot ( under kernel and not lilo)

Tommi Kyntola wrote:
[... earlier discussion snipped ...]

> I have made a patch for 2.4.X that makes three new compile options -
> custom boot logo, non blinking fbcon cursor and totally hidden fbcon
> cursor. Custom boot logo stuff requires a picture in some well known

I also have done patches for this stuff. Recently I've
finished up a simple patch for 2.4.x that allows arbitrary
sized images which can be different sizes for black&white, 16,
and 214 colors. We use it here for our set top boxes - I put
console on tty2, and use the "fbv" program in userspace to
splash other images after init starts.

I've also updated the glogo "gimp" plugin to save images
in the 2.4.x linux_logo.h format (well, including the changes
from my patch.) I haven't posted these patches to the list
yet because I haven't been able to test them fully... also
I've just learned of the similar work other people have done.

I would like to see something like this make it in to 2.5 at
least, and maybe into 2.4 as well. But I understand that the
console layer is being extensively rewritten for 2.5, so I guess
that logo stuff will need to wait...

At the very least, a patch that moved the definition of
LOGO_H and LOGO_W from fbcon.c over to linux_logo.h would
make it much easier to write tools that save images as
linux_logo.h without requiring kernel patches.

That cleanup at least should go into 2.4, IMHO.

For 2.5, I'd like to see options like this in the kernel
configuration under the framebuffer stuff:

- Use fancy splash image options (y/N):
- Select 214-color splash image (/boot/logo-214.png)
- Select 16-color splash image (/boot/logo-16.png)
- Select b&w splash image (/boot/logo-bw.png)
- multiple images on SMP (Y/n)
- Center image horizontally (y/N)
- Center image vertically (y/N)
- Background/border color (0x000000)
- Foreground/text color (0x777777)
- Default console output to tty2 (y/N)

Some kernel developers might complain that things like this are
unnecessary fluff, but it's convenient for embedded developers
and it would allow distributors to put their distribution logos
in a standard place to be picked up for custom kernel compiles,
also it would make it much easier for users to customize their
linux boot. And, it doesn't really add much bloat to the kernel.

Oddly enough, people like to customize these things.

Torrey Hoffman