#include <host_resource_owner.hpp>


Public Member Functions | |
| virtual uint32_t | read_ioport (l4_port_t port, access_size access_size) |
| Emulate a device's I/O space read access and return the value that should have been read. | |
| virtual int | write_ioport (l4_port_t port, uint32_t data, access_size access_size) |
| Emulate a device's I/O space write access. | |
| virtual l4_umword_t | read_mmio (l4_gpa_t address, access_size access_size) |
| Emulate a device's memory mapped I/O read access and return the value that should have been read. | |
| virtual int | write_mmio (l4_gpa_t address, l4_umword_t data, access_size access_size) |
| Emulate a device's memory mapped I/O write access. | |
| virtual l4_hva_t | map_mmio_region (int flags, l4_gpa_t base, l4_gpa_t size=1) |
| Maps the specified (guest) physical memory region to the hosts (virtual) address space. | |
| virtual int | unmap_mmio_region (l4_gpa_t base, l4_gpa_t size=1) |
| Unmaps the specified (guest) physical memory region from the hosts (virtual) address space. | |
| virtual void | irq_moved (l4_irq_t from, l4_irq_t to) |
| Called whenever the IRQ management chooses to assign this source annother IRQ than the requested one. | |
Enters the kernel debugger, if one of its handler functions is ever called. This is a bug.
| virtual uint32_t host_resource_owner::read_ioport | ( | l4_port_t | port, | |
| access_size | access_size | |||
| ) | [inline, virtual] |
Emulate a device's I/O space read access and return the value that should have been read.
This function is intended to be overridden.
Implements iospace_handler.
References iospace_handler::INVALID.
| virtual int host_resource_owner::write_ioport | ( | l4_port_t | port, | |
| uint32_t | data, | |||
| access_size | access_size | |||
| ) | [inline, virtual] |
Emulate a device's I/O space write access.
This function is intended to be overridden.
Implements iospace_handler.
| virtual l4_umword_t host_resource_owner::read_mmio | ( | l4_gpa_t | address, | |
| access_size | access_size | |||
| ) | [inline, virtual] |
Emulate a device's memory mapped I/O read access and return the value that should have been read.
This function is intended to be overridden.
Implements mmio_handler.
References mmio_handler::INVALID.
| virtual int host_resource_owner::write_mmio | ( | l4_gpa_t | address, | |
| l4_umword_t | data, | |||
| access_size | access_size | |||
| ) | [inline, virtual] |
Emulate a device's memory mapped I/O write access.
This function is intended to be overridden.
Implements mmio_handler.
| virtual l4_hva_t host_resource_owner::map_mmio_region | ( | int | flags, | |
| l4_gpa_t | base, | |||
| l4_gpa_t | size = 1 | |||
| ) | [inline, virtual] |
Maps the specified (guest) physical memory region to the hosts (virtual) address space.
This function is intended to be overridden.
Implements mmio_handler.
| virtual int host_resource_owner::unmap_mmio_region | ( | l4_gpa_t | base, | |
| l4_gpa_t | size = 1 | |||
| ) | [inline, virtual] |
Unmaps the specified (guest) physical memory region from the hosts (virtual) address space.
This function is intended to be overridden.
Implements mmio_handler.
| virtual void host_resource_owner::irq_moved | ( | l4_irq_t | from, | |
| l4_irq_t | to | |||
| ) | [inline, virtual] |
Called whenever the IRQ management chooses to assign this source annother IRQ than the requested one.
This function is intended to be overridden.
Implements irq_source.