Skip to content
Snippets Groups Projects
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 .
  1. Jul 30, 2019
  2. Jul 29, 2019
  3. Jul 25, 2019
    • Kent McLeod's avatar
      arm,smp: setIRQState for each core timer · aee7d516
      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.
      aee7d516
    • Kent McLeod's avatar
      CMake: Fix KernelArmPASizeBits* settings · f38f5b38
      Kent McLeod authored
      Need to explicitly set these to either ON or OFF rather than simply
      setting them.
      f38f5b38
    • Chris Guikema's avatar
      cortex-53: enable virtualization extensions · 4a37703c
      Chris Guikema authored
      This is possible now that the kernel supports 40 bit PAs.
      4a37703c
    • Anna Lyons's avatar
      aarch64: add support for 40-bit PA · b1788e02
      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: default avatarYanyan Shen <yanyan.shen@data61.csiro.au>
      Co-authored-by: default avatarChris Guikema <chris.guikema@dornerworks.com>
      b1788e02
    • Anna Lyons's avatar
      aarch64: abstract vspace in libsel4 · d1153fbe
      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.
      d1153fbe
    • Anna Lyons's avatar
      aarch64: abstract vspace_root in vspace code · 8af1aa77
      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
      8af1aa77
    • Kent McLeod's avatar
      CMake: Set KernelArmPASizeBits* based on Arm CPU · e0887c96
      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.
      e0887c96
    • Anna Lyons's avatar
      aarch64-hyp: check PA and granule sizes · dfd8641c
      Anna Lyons authored
      Check that the configured physical address range is supported by the
      processor and that the granule size (4KiB) is supported.
      dfd8641c
    • Chris Guikema's avatar
      trivial: properly mask vtcr macros · 86a22fd3
      Chris Guikema authored
      86a22fd3
  4. Jul 19, 2019
  5. Jul 18, 2019
  6. Jul 12, 2019
  7. Jul 11, 2019
  8. Jul 10, 2019
  9. Jul 05, 2019
  10. Jul 03, 2019
    • Japheth Lim's avatar
      exynos4, exynos5, sabrelite: clamp memory to fit in kernel window · 0a5499bd
      Japheth Lim authored
      This is a hack that allows user-space tools like the capDL static
      allocator to work. Otherwise, the allocator (currently unaware of the
      kernel window) would think that there is a 28-bit untyped at pptr
      0xf0000000, and would generate untyped derivations that are not
      available at runtime.
      
      Note that we clamp to 0xff000000 on exynos4 and exynos5, *not*
      0xfff00000 (PPTR_TOP), to avoid the ASID PD hole at
      0xff000000..0xff200000. The affected platforms are ARM VM platforms;
      VM images are often larger than 13MiB and would overlap the ASID hole
      if loaded from PPTR_TOP. init_freemem fails if this overlap exists.
      0a5499bd
    • Anna Lyons's avatar
      tools: store KernelDTBSize as internal cache var · daa2f231
      Anna Lyons authored
      This is so KernelDTBSize can be consumed by other tools.
      daa2f231
Loading