History log of /seL4-l4v-master/seL4/tools/hardware_schema.yml
Revision Date Author Comments
# 79da0792 01-Mar-2020 Gerwin Klein <gerwin.klein@data61.csiro.au>

Convert license tags to SPDX identifiers

This commit also converts our own copyright headers to directly use
SPDX, but leaves all other copyright header intact, only adding the
SPDX ident. As far as possible this commit also merges multiple
Data61 copyright statements/headers into one for consistency.


# 82084ad9 04-Sep-2019 Simon Shields <simon.shields@data61.csiro.au>

hardware_schema: simplify and clarify schema

The two interrupt-related 'macros' are rather confusingly different.
Explain them, rename them and simplify interrupt specification while
we're at it.


# cdb6a093 29-Aug-2019 Simon Shields <simon.shields@data61.csiro.au>

hardware: remove executeNever

this is now implicitly true. MMIO regions should always be executeNever.


# 7a26d271 29-Aug-2019 Simon Shields <simon.shields@data61.csiro.au>

hardware: change region logic in hardware yaml

- we're going to switch to mapping the whole address space, excluding
parts used by the kernel, to userspace. We trust the root server anyway,
so giving it extra (possibly invalid) MMIO space just simplifies stuff
on the kernel end.
- drop the hacky true/false/null 'user' flag in favour of a saner
true/false one.
- remove support for 'default' regions. By default we will pass unused
regions through to userspace.


# cf997974 12-Aug-2019 Kent McLeod <Kent.Mcleod@data61.csiro.au>

hardware_gen: Always specify kernel devices

The kernel device IRQs and Frame mappings generated by this script will
only come from nodes specified in the seL4,kernel-devices property of
the chosen node. Previously these devices were inferred by the script
but this led to false matching and didn't support easily overriding
which devices to match under different configurations or across
different platforms.

Explicitly specifying which devices from the device tree will be used in
the kernel makes it easier to check which devices the kernel is actually
using and makes it easier to change on a per platform or per
configuration basis.


# e9fc74b5 05-Feb-2019 Simon Shields <simon.shields@data61.csiro.au>

hardware_gen: support specifying size of kernel device

This allows for mapping of consecutive pages for a single device in the
kernel.


# b45de785 04-Feb-2019 Simon Shields <simon.shields@data61.csiro.au>

hardware_gen: use "ranges" property for cpu-addressable buses

This removes the need for the buses array in the hardware YAML


# 8440f033 09-Jan-2019 Simon Shields <simon.shields@data61.csiro.au>

hardware_gen: pull interrupts from DTS

This adds support for extracting interrupt numbers from DTS
to the hardware header file generator, so that the majority
of the per-platform interrupt listings can be removed.


# 0ac07923 09-Dec-2018 Simon Shields <simon.shields@data61.csiro.au>

arm: generate memory region tables from dts

This change adds infrastructure to automatically generate the
physBase macro, the avail_p_regs array, and the dev_p_regs array
based on a device tree. Platforms can opt-in to using this
by adding DTS files to the KernelDTSList variable.

The Python script uses the hardware.yml file to determine which
devices in the device tree are of interest to the kernel and should
be hidden from userspace and instead mapped into the kernel. Note that
currently the kernel mappings are not (yet) generated, however most
of the infrastructure needed to make that happen is present.