L4Linux/configurations: Difference between revisions
No edit summary |
|||
(5 intermediate revisions by 2 users not shown) | |||
Line 6: | Line 6: | ||
* Direct access | * Direct access | ||
** In this mode L4Linux will drive the keyboard and mouse controller and will control the screen (e.g. VGA). And only L4Linux will do that, no one else. For the configuration of L4Linux this means that one needs to enable the keyboard and mouse controller driver and the VGA driver. | ** In this mode L4Linux will drive the keyboard and mouse controller and will control the screen (e.g. VGA). And only L4Linux will do that, no one else. For the configuration of L4Linux this means that one needs to enable the keyboard and mouse controller driver and the VGA driver. | ||
* l4con/DOpe consoles | * mag/l4con/DOpe consoles | ||
** For console use, the l4con or DOpE is controlling the keyboard and mouse controller and the screen. And only l4con/DOpE is controlling the keyboard/mouse/screen. No one else. For the configuration of L4Linux this means that L4Linux does not need any keyboard/mouse driver nor any VGA driver. It _just_ needs the l4fb driver (which also does input handling). | ** For console use, the mag, l4con or DOpE is controlling the keyboard and mouse controller and the screen. And only mag/l4con/DOpE is controlling the keyboard/mouse/screen. No one else. For the configuration of L4Linux this means that L4Linux does not need any keyboard/mouse driver nor any VGA driver. It _just_ needs the l4fb driver (which also does input handling). | ||
=== Device Access === | |||
Device access requires that ''io'' allows L4Linux to access those devices. For more information on ''io'' please read on [http://os.inf.tu-dresden.de/L4Re/doc/io.html here]. | |||
Using the x86 architecture, ''io'' uses ACPI and PCI scans the system to find available devices. Legacy components are described in the x86-legacy.devs configuration file found in l4/pkg/io/configs/x86-legacy.devs. A client configuration for L4Linux could look like this: | |||
l4lx => new System_bus() | |||
{ | |||
# add every found network, storage and multimedia (e.g. sound-card) device | |||
pci_l4x[] => wrap(hw-root.match("PCI/CC_02,PCI/CC_01,PCI/04")); | |||
} | |||
Make sure to enable the 'L4 virtual PCI bus' in the L4Linux configuration. | |||
If you like to give Linux access to VGA and PS2, add the following the above ''l4lx'' block: | |||
vgadev => wrap(hw-root.VGA); | |||
ps2dev => wrap(hw-root.PS2); | |||
Launch ''io'' with both files as arguments: | |||
rom/io rom/x86-legacy.devs rom/l4lx.io | |||
=== UX === | === UX === | ||
Line 21: | Line 42: | ||
When you start it and it crashes (Ooops), look at the backtrace to see the driver that is trying to access some hardware. Then disable this driver and try again. | When you start it and it crashes (Ooops), look at the backtrace to see the driver that is trying to access some hardware. Then disable this driver and try again. | ||
There's a default config 'x86-ux_defconfig' which is a configuration without hardware drivers. | |||
Latest revision as of 14:26, 15 June 2011
Possible configurations for L4Linux
Consoles
Basically two modes are possible:
- Direct access
- In this mode L4Linux will drive the keyboard and mouse controller and will control the screen (e.g. VGA). And only L4Linux will do that, no one else. For the configuration of L4Linux this means that one needs to enable the keyboard and mouse controller driver and the VGA driver.
- mag/l4con/DOpe consoles
- For console use, the mag, l4con or DOpE is controlling the keyboard and mouse controller and the screen. And only mag/l4con/DOpE is controlling the keyboard/mouse/screen. No one else. For the configuration of L4Linux this means that L4Linux does not need any keyboard/mouse driver nor any VGA driver. It _just_ needs the l4fb driver (which also does input handling).
Device Access
Device access requires that io allows L4Linux to access those devices. For more information on io please read on here.
Using the x86 architecture, io uses ACPI and PCI scans the system to find available devices. Legacy components are described in the x86-legacy.devs configuration file found in l4/pkg/io/configs/x86-legacy.devs. A client configuration for L4Linux could look like this:
l4lx => new System_bus() { # add every found network, storage and multimedia (e.g. sound-card) device pci_l4x[] => wrap(hw-root.match("PCI/CC_02,PCI/CC_01,PCI/04")); }
Make sure to enable the 'L4 virtual PCI bus' in the L4Linux configuration.
If you like to give Linux access to VGA and PS2, add the following the above l4lx block:
vgadev => wrap(hw-root.VGA); ps2dev => wrap(hw-root.PS2);
Launch io with both files as arguments:
rom/io rom/x86-legacy.devs rom/l4lx.io
UX
To run L4Linux under Fiasco-UX, the L4Linux does not have any access to any hardware. This basically means the following:
- Disable PCI
- Disable Keyboard/Mouse (PS2) input
- Disable VGA/VESA/etc.
- Do not use serial drivers or similar
For Input/Output you need to use a console setup, see above.
When you start it and it crashes (Ooops), look at the backtrace to see the driver that is trying to access some hardware. Then disable this driver and try again.
There's a default config 'x86-ux_defconfig' which is a configuration without hardware drivers.