Messages in this thread |  | | Date | Tue, 7 Jan 1997 11:22:58 +0200 | From | Kohtala Marko <> | Subject | Re: Display and keyboard drivers configuration option for embedded systems |
| |
[ I got into a conversation about my patch off the list with Eirik, I'll invite you on the list to it. Eirik was considering making the kernel slimmer for X terminal. It seems that some mails got lost on this mailing list (at least I did not receive my original post nor is it on http://www.uwsg.indiana.edu/hypermail/), so the original message about the patch is at the end. ]
I have been thinking about one change that could be used for X terminal. That is to separate the keyboard I/O, which is basically a specialized serial port, and the keyboard line discipline which handles the protocol between the computer and keyboard. It might be fun and even useful at times to be able to attach many keyboards to a machine.
X server does not need the discipline, and thus the keyboard mapping tables and code in kernel, so it could work with less kernel code.
Similar thing could be done for display; have the terminal emulation in a line discipline.
This should end up in several virtual terminal devices which could share a keyboard and a video device.
However, I have no idea how to make it work cleanly. I see two problems 1) make the multiple virtual terminals work for keyboard and display combinations in a sane way, enabling several consoles that do not disturb each other. 2) combine the serial input and display output tty devices and disciplines such that, for example one could change the terminal emulation of one virtual terminal on a display device.
This is not important to me, just one fun thing to think about, but something like this is needed for the different ports of Linux. Currently the different ports of Linux seem to copy the keyboard discipline and console code, instead of just adding some specialization.
------------------------ the original posting
I wrote a patch to make the virtual terminal tty devices be a configuration option. This is of use to those wanting to run Linux on machines that have no video or keyboard hardware.
The patch against 2.1.20 is at http://www.hut.fi/~mkohtala/newtty.diff.20
Please, check this patch out. I wish to have it tried by - maintainers of various architectures, I only use i386 - those porting Linux to MVME
If Linus does not pick the patch up from this message, I'll be mailing it to him in couple of weeks.
The patch defines three new CONFIG_ macros CONFIG_VT for inclusion of console, vt, vc_screen, consolemap, selection, keyboard and defkeymap CONFIG_VT_CONSOLE for directing printk to the VT device CONFIG_VT_SERIAL for directing printk to the standard serial device
Both CONFIG_VT_CONSOLE and CONFIG_VT_SERIAL can be used together in which case the output goes to both. To support this, there is a new console device list with entries for this output. The list also has entries for waiting a key press and for determining what device really to open for /dev/console, but these are used only from the device at the head of the list.
The rest of the change is to move some code from tty_io.c to other files where it seems to fit better. This avoids some #ifdef CONFIG_VT / #endif.
-- --- Marko Kohtala - Marko.Kohtala@ntc.nokia.com, Marko.Kohtala@hut.fi
|  |