History log of /seL4-camkes-master/projects/seL4_projects_libs/libsel4vm/src/arch/x86/i8259/i8259.c
Revision Date Author Comments
# 745291ce 27-Nov-2020 Gerwin Klein <gerwin.klein@data61.csiro.au>

Convert to SPDX license tags

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>


# 934ec2d5 13-May-2020 Kent McLeod <Kent.Mcleod@data61.csiro.au>

trivial: Cleanup compiler warnings


# d0ff8dd4 03-Dec-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: irq controller interface takes vcpu's

Updated the guest irq controller interface to use vcpu handles
over vm handles when it comes to irq management (inject and ack).
Using the vcpu handle is needed when injecting interrupts that
are designated to specific cores e.g. PPI's. The vm handle can
additionally be derived from the vcpu if it is needed in the
interrupt controller driver.


# c69cd028 13-Dec-2019 Kent McLeod <Kent.Mcleod@data61.csiro.au>

trivial: Style changed files


# 76649e2a 12-Nov-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Calloc i8259 state object

We want to make sure the state of the i8259 is zero'd and doesn't
contain any junk/misconfigured value.


# e1947740 22-Oct-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Removed uses of 'vmm' in x86 source

Updated x86 source such that the naming convention used is to
prefix/postfix with 'vm' rather than 'vmm'. This change makes
the naming convention consistent as this library now represents a
single 'vm' instance rather than a vmm.


# 3a36c854 21-Oct-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: arch specific includes into arch subdir

Moved the architecture specific headers, being unique header files
that only exist for a given architecture, into an 'arch'
subdirectory. Since this library can be used across architectures
this avoids polluting the root libsel4vm namespace and adds
further structure to distinguish different interfaces.


# 83631065 21-Oct-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Moved PIC IO definitions into i8259

Moved the IOPort definitions relevant to the i8259 driver into
the i8259 source. This is due to the i8259 driver managing these
ioports.


# 86ae4546 10-Oct-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Move i8259 instance into the VM object

Move the i8259 state into x86 guest VM datastructure. This
ensuring a PIC instance per-VM rather than a global instance.


# 271455b0 10-Oct-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: i8259 implements x86 irq controller

Updated the i8259 to implement the guest irq controller interface.
This updates the i8259 source to implement the interface
prototypes. In addition this commit lifts the initialisation of
the APIC memory region to create a single guest irq controller
init function.


# 9855aab3 10-Oct-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Add IOPort init in i8259 init

Added the initialisation of the PIC IOPorts to the i8259 pre
init processes. This initialisation being lifted out of the
camkes-vm where the PIC code originally lived.


# 79ed695b 10-Oct-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Added i8259 PIC from camkes-vm

Added the i8259 PIC from the camkes-vm into the x86 architecture
sub-directory. It is intended that libsel4vm contains a default
irq controller for each architecture. The source doesn't compile
but will be updated in subsequent commits to conform to the
libsel4vm guest irq interface.