Re: Introducing the LCD-Linux project

From: Mattia Jona-Lasinio
Date: Wed Jul 28 2010 - 15:24:39 EST


On Mon, Jul 26, 2010 at 10:11 PM, Geert Uytterhoeven
<geert@xxxxxxxxxxxxxx> wrote:
> On Sat, Jul 24, 2010 at 16:43, Florian Tobias Schandinat
> <FlorianSchandinat@xxxxxx> wrote:
>> Mattia Jona-Lasinio <mattia.jona <at> gmail.com> writes:
>>> Moreover I wanted something that COULD be used as a console but not
>>> necessarily, that is
>>> something that could run happily in the presence of a normal monitor
>>> as well. It seems to me, but I may be
>>> wrong, that through the standard console system only the current
>>> visible console is actually updated
>>> while other consoles are just "software" updated. An external LCD
>>> would therefore be updated
>>> only when you "switch" to it, so it would not be possible to use it to
>>> display diagnostics.
>>
>> True, that's a general problem one has when multiple framebuffers exist.
>> Therefore I'd be very happy if someone could come up with a general solution.
>
> Fixing that was (one of the) goal of the linux-console project. James?

Hmmm, the linux-console project seems to be dead. There are no file
releases after nearly ten
years and the CVS is three years old.

I downloaded your driver and explored the code a bit. Indeed there are
many similarities
with the very early stages of LCD-Linux. At the beginning I also wrote
something very close to what you did.
But then I realized that
the display management part was very much intertwined with the low
level details of the display
(parallel port, 8 bit and 4 bit and so on....),
and this made the module not so obvious to be ported to different displays.
If you abstract the display management, add a framebuffer, you realize
that basically
you get a terminal emulator (nearly) for free, with the possibility to
add custom features
typical of small displays (like custom character generation). And once
a framebuffer is added,
you can play a bit by adding a virtual display larger than the
physical one, also adding
the code to keep the cursor visible in a smart way. Basically this is
the way LCD-Linux
was born. Implementing this in the standard Linux terminal emulation
would require
a rewrite of most of the code, which I personally would do only if
there is some interest from
the community in improving the standard Linux console, and I don't
think it is the case
looking at the age of the Linux console project. So I decided to keep
it separate.
But never say never! In the future the two consoles could merge in a
single one. ;)

Greetings,

Mattia
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/