This project is mirrored from https://github.com/seL4/seL4.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
- Aug 13, 2019
-
-
Kent McLeod authored
Returns an array of interrupt affinities corresponding to an array of interrupts for a Device.
-
Kent McLeod authored
- Use correct timer header file - Use correct name for FVP target.
-
Kent McLeod authored
This name is case sensitive
-
- Aug 08, 2019
-
-
Edward Pierzchalski authored
Use the specific executable name "python2" to distinguish it from "python" on distributions that install Python 3 as "python".
-
Edward Pierzchalski authored
In Python 3, dict value iterators aren't deterministic between runs, which causes nondeterministic definition output order. Some L4V proofs are sensitive to this order. Use sorted keys to guarantee order when iterating over values.
-
Anna Lyons authored
Update all scripts and build system to call python3, given python2's upcoming doom. Use sys.maxsize instead of sys.maxint in one script (maxint does not exist in python3).
-
- Aug 07, 2019
-
-
G. Branden Robinson authored
Introduce a variable to hold a long expression to prevent the code styler from line-wrapping the declare_platform() statement. We want to keep that on one line so the `griddle` tool (or humans) can easily `grep` a list of supported platforms. As of 2019-08-07, this platform is the only one requiring this workaround.
-
- Aug 05, 2019
-
-
Edward Pierzchalski authored
This allows MCS and non-MCS versions of the kernel to go through the L4V build process.
-
- Jul 31, 2019
-
-
Kent McLeod authored
This dep is required by the elfloader for loading Arm and RISC-V platforms.
-
- Jul 30, 2019
-
-
Anna Lyons authored
-
Anna Lyons authored
This allows SMP support for the imx8m.
-
Anna Lyons authored
This allows SPIs to be routed to different cores.
-
Anna Lyons authored
This function enables ipis to be sent between cores. Co-authored-by:
Yanyan Shen <yanyan.shen@data61.csiro.au>
-
Anna Lyons authored
This commit updates the gic_v3 driver to translate virtual irqs to hardware irq numbers, which enables PPI support for SMP.
-
Anna Lyons authored
This commit brings the gic_v3 is_sgi and is_ppi checks in line with gicv2 making the code more consistent. It also removes unneccessary conditionals in the checks, as is_sgi is always called before is_ppi so the lower bounds checks are not required.
-
Anna Lyons authored
This removes a redundant constant to use one from the gic_common header.
-
Anna Lyons authored
In order to support gic_v3 SMP, move helpers from gic_v2.h to gic_common.h
-
Anna Lyons authored
Move common definitions from gic_v2.h and gic_v3.h into gic_common.h
-
Anna Lyons authored
Co-authored-by:
Yanyan Shen <yanyan.shen@data61.csiro.au>
-
Anna Lyons authored
Move definition of L1_CACHE_LINE_SIZE_BITS to cmake where it is set according to the arm processor family. This removes duplication in the hardware.h header files and makes adding a new processor family require less lines changed.
-
- Jul 29, 2019
-
-
Kent McLeod authored
This also adds a check that translating a core + irq doesn't result in an index that is irqInvalid.
-
Kent McLeod authored
-
Kent McLeod authored
Under SMP configurations, getActiveIRQ doesn't directly return an IRQ ID, but an encoding of the ID and core due to the existance of per core interrupts. This fixes some remaining locations where the result is still interpreted as an IRQ.
-
- Jul 25, 2019
-
-
Kent McLeod authored
Setting the IRQState to IRQTimer for each per core timer prevents the interrupts from getting masked the first time that they are received.
-
Kent McLeod authored
Need to explicitly set these to either ON or OFF rather than simply setting them.
-
Chris Guikema authored
This is possible now that the kernel supports 40 bit PAs.
-
Anna Lyons authored
This commit adds support for using a 40-bit physical addresses in aarch64-hyp mode. 40-bit PA support is implemented by using a 3-stage translation, with a 13 bit page upper directory as the vspace root. PageGlobalDirectories are not used in this configuration. To use 40-bit PAs, platforms should set KernelArmPASizeBits40 to ON. Co-authored-by:
Yanyan Shen <yanyan.shen@data61.csiro.au> Co-authored-by:
Chris Guikema <chris.guikema@dornerworks.com>
-
Anna Lyons authored
Depending on the physical address range the top level translation table may be a page upper directory or a page global directory. Rename in libsel4 the invocations on top level structures to be on an seL4_ARM_VSpace rather than an seL4_ARM_PageGlobalDirectory.
-
Anna Lyons authored
On aarch64-hyp the virtual address translation structure can differ depending on the physical address range. This commit prepares to support more than a single physical address range by removing the assumption that the top-level structure in a vspace is a PGD, replacing it with the concept of a vspace_root. Specifically: - add and use macros to refer to vtable bitfield generator functions - use the existing vspace_root_t type rather than pgde_t - pull performASIDPoolInvocation into header - add and use VSPACE_PTR rather than PGDE_PTR - rename decodeARMVPageGlobalDirectoryInvocation to refer to VSpace - update comments/error messages - rename variables
-
Kent McLeod authored
The physical address range supported by each aarch64 platform is defined by which Arm CPUs it has. We therefore configure KernelArmPASizeBits* based on which CPU is selected.
-
Anna Lyons authored
Check that the configured physical address range is supported by the processor and that the granule size (4KiB) is supported.
-
Chris Guikema authored
-
- Jul 19, 2019
-
-
Sylvain Gauthier authored
-
Sylvain Gauthier authored
Correctly defined the macros to translate between virtual and hardware IRQs such that PPIs can be properly handled on gic_v2. It is now possible to create a per-core handler for PPIs on platforms using this GIC.
-
Sylvain Gauthier authored
irq_t is now a "virtual" interrupt type that encapsulates the information of the core in case of a private interrupt. There is a couple of macros that need to be defined on the interrupt controller level to translate between virtual and hardware IRQs.
-
Sylvain Gauthier authored
Added a new IPI on ARM to unmask a remote private interrupt.
-
Sylvain Gauthier authored
Created a new syscall, seL4_DebugSendIPI for ARM to send arbitrary SGIs (software generated interrupts) to arbitrary cores. As SGIs are specifically PPIs (private interrupts), this syscall effectively allows to trigger PPIs on arbitrary cores, for debug/testing purposes.
-
Kent McLeod authored
This adds support for the 64-bit i.MX8M Mini evaluation kit. Currently only AArch64 EL1 is supported.
-
Kent McLeod authored
-
- Jul 18, 2019
-
-
Kent McLeod authored
-