1 = Source Code Overview = 2 3 This distribution provides packages for use within L4Re, located in the `pkg` 4 directory in this distribution and in the `src/l4/pkg` directory within the 5 L4Re repository structure. They are currently as follows: 6 7 || '''Package''' || '''Description''' || 8 || devices || a collection of device drivers and libraries || 9 || landfall-examples || a collection of examples demonstrating the devices || 10 11 In addition to the above, configuration files are provided for the example 12 programs in the `conf/landfall-examples` directory. 13 14 == Device Support == 15 16 A selection of devices are supported by this software. They are found within 17 the `pkg/devices` directory and are currently the following: 18 19 || '''Device''' || '''Description''' || 20 || backlight || display backlight control || 21 || cpm || clock and power management || 22 || display || device-specific display control || 23 || fb || framebuffer access || 24 || input || input event delivery || 25 || keypad || keypad/keyboard scanning || 26 || lcd || LCD and other display peripheral support || 27 || pwm || pulse width modulation support || 28 || spi || serial peripheral interface support || 29 30 Many device types provide the following kinds of support: 31 32 * Server programs that regulate access to devices 33 * Client libraries that provide access to the server programs 34 * General library support for server programs to use 35 36 In addition to the above, more general libraries found in the lib subdirectory 37 provide abstractions for working with peripherals defined at the hardware 38 level. It is envisaged that each peripheral-specific library will eventually 39 have corresponding server support, at least where this would offer a 40 reasonable kind of abstraction. 41 42 (Some kinds of peripherals may, in fact, only be accessed when providing a 43 device with different outward characteristics to those exposed at the hardware 44 level. Other aspects of the hardware are also best maintained as libraries or 45 data for use by other components, such as information about display panels. 46 Such things do not need their own server whose only purpose would be to 47 provide static data to other programs, and even then only very occasionally.)