mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-20 14:13:09 +00:00
47724c68c2
Switch port I/O based PCI config space access to memory-mapped IO. The base address of the PCI configuration space is acquired by mapping the ACPI ROM and reading the first <bdf> node. An exception is thrown if the first <bdf> node is not for PCI domain zero or if multiple <bdf> nodes exist. This is to reduce complexity and also because multiple PCI domains are rare. The PCI configuration space is accessed via I/O mem dataspace which is created in the platform_drv root and then passed on to the PCI session, device components and finally to the actual PCI config access instances. The memory access code is implemented in a way to make it work with Muen subject monitor (SM) device emulation and also general x86 targets. On Muen, the simplified device emulation code (which works also for Linux) always returns 0xffff in EAX to indicate a non-existing device. Therefore, EAX is enforced in the assembly templates. Fixes #2547 |
||
---|---|---|
.. | ||
boot | ||
builddir | ||
depot | ||
ports | ||
run | ||
abi_symbols | ||
autopilot | ||
autopilot.list | ||
beautify | ||
check_abi | ||
create_builddir | ||
create_grub2 | ||
create_iso | ||
create_uboot | ||
cxx_to_html | ||
download_hashver | ||
download_sigver | ||
fix_include_ifndef | ||
grub2-head.img | ||
link.h | ||
parse_cxx | ||
README | ||
rump | ||
rump_cgdconf | ||
tool_chain | ||
tool_chain_nim | ||
tool_chain_rump |
This directory contains tools for managing and using the source code of Genode. :'create_builddir' The 'create_builddir' tool provides a convenient way to create build directories for different platforms. Its usage information is printed when starting the tool without arguments. :'builddir/': This directory contains a Makefile template and configuration snippets used by the 'create_builddir' tool. :'tool_chain': This tool downloads, builds, and installs the tool chain needed to build the Genode OS Framework. For getting usage information, start the tool without arguments. :'create_iso': This simple tool helps to build bootable ISO images from your build of Genode. For getting usage information, start the tool without arguments. :'create_grub2': This tool prepares a partitioned disk image with GRUB2 as boot loader. :'grub2-head.img': This file is the head part of a partioned disk image including an installation of GRUB2 as boot loader. GRUB2 is available from http://www.gnu.org/software/grub/ and in major Linux distributions. Steps to reproduce the image creation can be found in 'create_grub2'. :'beautify': Beautify is a coding-style checking tool that analyzes source code for its adherence to Genode's coding style as described in 'doc/coding_style.txt'. Whenever possible, the tool tries to fix the issues and outputs a corrected file. Some corrections, however, require human interaction. In this case, the tool stops the analysis with an error. :'parse_cxx': This tool is a C++ parser used as front-end for Beautify. :'cxx_to_html': This tool converts a C++ source file to a HTML view to be used for the API documentation at the genode.org website. It relies on 'parse_cxx' to do the actual C++ parsing. :'fix_include_ifndef': This tool helps with assigning consistent include guards to header files. :'boot': This directory contains boot-loader files needed to create boot images. :'autopilot': Autopilot is a tool for the automatic execution of run scripts among multiple base platforms. :'abi_symbols': The utility assists with the initial creation of a ABI-symbols file, taking a shared object as a starting point. For more information, refer to the header of the 'abi_symbols' script. :'check_abi': The 'check_abi' helper is used by the build system to detect violations of an ABI by a shared library. Most importantly, it reports incompatibilities of symbol sizes, which require an adaptation of the ABI. For more information, refer to the header of the 'check_abi' script.