L4Linux stub drivers & L4 drivers
adam at os.inf.tu-dresden.de
Mon Feb 9 22:22:51 CET 2009
On Fri Feb 06, 2009 at 08:05:56 -0800, Alexander Valitov wrote:
> I think I have found all L4Linux configuration options related to my task in
> the following menuconfig’s menu:
> L4Linux configuration -> Stub drivers ->
> Here they are (I put corresponding variable in parentheses):
> [*] Use the rtc server (L4_EXTERNAL_RTC)
> [ ] Block driver for the generic_blk interface (L4_BLK_DRV)
> [ ] Block driver for the persistent dataspace interface (L4_PDSPBLK_DRV)
> [*] Framebuffer driver for l4con and DOpE (input/output) (L4_FB_DRIVER)
> [ ] Support for the X Window System driver (L4_FB_DRIVER_XF86IF)
> [ ] Network driver for ORe (L4_ORE_DRV)
> [*] Pseudo serial driver for console (L4_SERIAL)
> [*] Serial console support (L4_SERIAL_CONSOLE)
> [ ] Cons system support (L4_CONS)
> Meaning of some of these options is clear for me and some of them isn’t. If
> I’m right:
> 1. L4_EXTERNAL_RTC option forces L4Linux to use rtc module instead of direct
> access to timer hardware.
> 2. As you wrote L4_FB_DRIVER compiles in l4fb module into L4Linux, so it
> could be used by dope or con server.
> 3. L4_ORE_DRV adds stub network driver to L4Linux which uses ore server for
> actual access to NIC.
Yes. Or for communication with other Ore clients, like other L4Linuxes.
> Other isn’t really clear:
> 1. Help in menuconfig says
> L4_SERIAL : "Serial type driver used for console".
> L4_SERIAL_CONSOLE : "you will be able to use the pseudo serial interface as
> a system console"
> I can’t get the difference between L4_SERIAL and L4_SERIAL_CONSOLE options.
> Maybe L4_SERIAL is pseudo COM port driver and L4_SERIAL_CONSOLE is module
> for system console (I mean ttyLv0). Am I right here?
Yes, basically. It's the same difference as e.g. SERIAL_8250 and
SERIAL_8250_CONSOLE. I.e. with *_CONSOLE one can use the driver as a
> 2. Another confusing thing is that Wiki says console=ttyLv0 options is to
> use 'l4ser' driver for console. But I don’t load such a module (l4ser) and
> 'console=ttyLv0' option works. What is 'l4ser'? Is it L4 server? If it's not
> who controls COM port hardware? Is it done by L4 kernel?
l4ser is the serial driver, i.e. the one behind L4_SERIAL.
> 3. You've mentioned "block stub without a real L4 driver". Is it L4_BLK_DRV?
> Do you have plans to implement the L4 driver?
The old one for real disks hasn't been maintained for ages. Currently
there's only one for Fiasco-UX which uses files on the host as disk
images. It's in pkg/generic_blk/examples/ux.
> 4. Unfortunately, menuconfig help isn't really comprehensible for me. Could
> you please explain, in short, what is L4_CONS?
cons is some text-based console server which isn't in public svn.
> 5. And L4_PDSPBLK_DRV?
It's block driver for a backend server that works on (memory) dataspaces.
> 6. And L4_FB_DRIVER_XF86IF?
The counterpart to Xorg driver in the l4con package.
Adam adam at os.inf.tu-dresden.de
More information about the l4-hackers