genode/repos/base
Christian Prochaska 85b1563e57 mk: generate .data symbols with distinct values/addresses
Prevent the static linker from assuming weak object symbols to be alias
symbols for unrelated non-weak symbols with the same value/address.

Fixes #3458
2019-08-21 12:37:01 +02:00
..
etc tool_chain: versioned install location 2019-05-29 10:20:52 +02:00
include util/fifo: Change empty() method of fifo to const. 2019-08-13 12:02:27 +02:00
lib base: add 'trace' function to base/log.h 2019-07-09 08:55:23 +02:00
mk mk: generate .data symbols with distinct values/addresses 2019-08-21 12:37:01 +02:00
ports grub2: avoid switching modes 2018-06-12 12:11:44 +02:00
recipes depot: update recipe hashes 2019-07-09 09:06:54 +02:00
run drivers/acpi: provide plain SMBIOS table as report 2019-08-13 12:02:03 +02:00
src ldso: ability to preload shared objects 2019-08-21 12:37:00 +02:00
xsd base_types.xsd: allow session labels of length 0 2018-11-16 14:37:19 +01:00
README core: add information about infos provided by core 2017-06-29 11:59:52 +02:00

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.

_Core_ may export information about the hardware platform by an ROM
called 'platform_info'. Depending on the platform, e.g. ARM or x86 or riscv,
and depending on the boot mode and boot loader and kernel, some nodes may not
be populated.

!<platform_info>
! <acpi revision="2" rsdt="0x1fe93074" xsdt="0x1fe930e8"/>
! <boot>
!   <framebuffer phys="0x7300000" width="1024" height="768" bpp="32"/>
! </boot>
!</platform_info>

If the ACPI RSDT and XSDT physical pointer is reported by the used kernel
and/or bootloader, _Core_ may provide this information by the ROM.

If the graphic device is initialised and can be directly used by a framebuffer
driver, _Core_ may provide the physical pointer to the framebuffer, the
resolution and color depth in bits.