mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-19 21:57:55 +00:00
94ea3a0acb
Driver definitions which are used by kernel/core in base-hw, and also by other drivers (e.g. from the os repository) have to reside in the generic base-repository, for instance some uart drivers. All drivers which are interesting for one of the sites only (sp804 for timer driver, or cortex_a9 cpu driver for base-hw) should reside in the respective repos. Factorize cpu context out of Cortex A9 specific definitions. Moreover, there is already a Cpu_state object containing all common ARM registers. We use this as a base for the cpu context switching done by the base-hw kernel. The Cpu_state class get extended by a cpu-exception field, that stores the kind of exception raised when the corresponding context got interrupted. This information is used not only by the base-hw kernel, but also by the TrustZone VMM that is build currently. |
||
---|---|---|
.. | ||
etc | ||
include | ||
lib | ||
mk | ||
run | ||
src | ||
README |
This is generic part of the Genode implementation. It consists of two parts: :_Core_: is the ultimate root of the Genode application tree and provides abstractions for the lowest-level hardware resources such as RAM, ROM, CPU, and generic device access. All generic parts of Core can be found here - for system-specific implementations refer to the appropriate 'base-<system>' directory. :_Base libraries and protocols_: that are used by each Genode component to interact with other components. This is the glue that holds everything together.