1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/docs/wiki/Source_Code Sat Apr 13 19:28:39 2019 +0200
1.3 @@ -0,0 +1,47 @@
1.4 += Source Code Overview =
1.5 +
1.6 +This distribution provides packages for use within L4Re, located in the `pkg`
1.7 +directory in this distribution and in the `src/l4/pkg` directory within the
1.8 +L4Re repository structure. They are currently as follows:
1.9 +
1.10 +|| '''Package''' || '''Description''' ||
1.11 +|| devices || a collection of device drivers and libraries ||
1.12 +|| landfall-examples || a collection of examples demonstrating the devices ||
1.13 +
1.14 +In addition to the above, configuration files are provided for the example
1.15 +programs in the `conf/landfall-examples` directory.
1.16 +
1.17 +== Device Support ==
1.18 +
1.19 +A selection of devices are supported by this software. They are found within
1.20 +the `pkg/devices` directory and are currently the following:
1.21 +
1.22 +|| '''Device''' || '''Description''' ||
1.23 +|| backlight || display backlight control ||
1.24 +|| cpm || clock and power management ||
1.25 +|| display || device-specific display control ||
1.26 +|| fb || framebuffer access ||
1.27 +|| input || input event delivery ||
1.28 +|| keypad || keypad/keyboard scanning ||
1.29 +|| lcd || LCD and other display peripheral support ||
1.30 +|| pwm || pulse width modulation support ||
1.31 +|| spi || serial peripheral interface support ||
1.32 +
1.33 +Many device types provide the following kinds of support:
1.34 +
1.35 + * Server programs that regulate access to devices
1.36 + * Client libraries that provide access to the server programs
1.37 + * General library support for server programs to use
1.38 +
1.39 +In addition to the above, more general libraries found in the lib subdirectory
1.40 +provide abstractions for working with peripherals defined at the hardware
1.41 +level. It is envisaged that each peripheral-specific library will eventually
1.42 +have corresponding server support, at least where this would offer a
1.43 +reasonable kind of abstraction.
1.44 +
1.45 +(Some kinds of peripherals may, in fact, only be accessed when providing a
1.46 +device with different outward characteristics to those exposed at the hardware
1.47 +level. Other aspects of the hardware are also best maintained as libraries or
1.48 +data for use by other components, such as information about display panels.
1.49 +Such things do not need their own server whose only purpose would be to
1.50 +provide static data to other programs, and even then only very occasionally.)