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. Aug 13, 2019
    • Kent McLeod's avatar
      hardware_gen: Always specify kernel devices · cf997974
      Kent McLeod authored
      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.
      cf997974
    • Kent McLeod's avatar
      hardware_gen: Refactor calculating device regions · 44fce7dd
      Kent McLeod authored
      - Device.regions() now just calculates memory regions without splitting
      them into user and kernel groups.
      - Config.split_regions() now calls Device.regions() and performs the
      splitting if the device is a kernel device, otherwise returns the
      original regions.
      - Config.split_regions() is now only used in a context when dealing with
      kernel devices, otherwise Device.regions() can be called to return only
      informatioin extracted from the device tree.
      44fce7dd
    • Kent McLeod's avatar
      hardware_gen: Refactor calculating kernel IRQs · 1bd86aab
      Kent McLeod authored
      - directly return IRQs from Device.get_interrupts(): Previously, these
      IRQs were then mutated by Config.get_irqs() based on driver definitions
      in hardware.yml. Inverting this order makes get_interrupts more general.
      - Config.get_irqs() uses the Device it gets passed to call
      get_interrupts() only when it needs to extract interrupts for a device.
      - Use Config.get_irqs() for building kernel's IRQ list instead of
      calling Device.get_interrupts() due to the new inversion.
      1bd86aab
    • Kent McLeod's avatar
      hardware_gen: Remove unused method is_compatible · ad45ffc1
      Kent McLeod authored
      Not used and it is unlikely that it will be needed in the near future.
      ad45ffc1
    • Kent McLeod's avatar
      hardware_gen,Device: extract get_affinities method · 51f55342
      Kent McLeod authored
      Returns an array of interrupt affinities corresponding to an array of
      interrupts for a Device.
      51f55342
    • Kent McLeod's avatar
      CMake,fvp: Fix typos in FVP CMake config · 929dead3
      Kent McLeod authored
      - Use correct timer header file
      - Use correct name for FVP target.
      929dead3
    • Kent McLeod's avatar
      CMake: Correct allwinnerA20 platform name · a603c7f8
      Kent McLeod authored
      This name is case sensitive
      a603c7f8
  2. Aug 08, 2019
    • Edward Pierzchalski's avatar
      CMake: Use unambiguous Python 2 executable name · 3576377b
      Edward Pierzchalski authored
      Use the specific executable name "python2" to distinguish it from
      "python" on distributions that install Python 3 as "python".
      3576377b
    • Edward Pierzchalski's avatar
      bitfields: Specify iteration order over dicts · cfc544ab
      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.
      cfc544ab
    • Anna Lyons's avatar
      python2 --> python3 · bc61a7f3
      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).
      bc61a7f3
  3. Aug 07, 2019
    • G. Branden Robinson's avatar
      exynos5: tweak CMake for greppability · 9dc013a0
      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.
      9dc013a0
  4. Aug 05, 2019
  5. Jul 31, 2019
  6. Jul 30, 2019
  7. Jul 29, 2019
  8. 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
  9. Jul 19, 2019
Loading