Loading...
Searching...
No Matches
__vm-arm.h
Go to the documentation of this file.
// vi:set ft=cpp: -*- Mode: C++ -*-
/*
* (c) 2018 Adam Lackorzynski <adam@l4re.org>
*
* License: see LICENSE.spdx (in this directory or the directories above)
*/
#pragma once
#include <l4/sys/task>
namespace L4 {
class Vm : public Kobject_t<Vm, Task, L4_PROTO_VM>
{
public:
l4_msgtag_t vgicc_map(l4_fpage_t const vgicc_fpage,
l4_utcb_t *utcb = l4_utcb()) noexcept
{ return l4_task_vgicc_map_u(cap(), vgicc_fpage, utcb); }
protected:
Vm();
private:
Vm(Vm const &);
void operator = (Vm const &);
};
}
L4::Kobject_t
Helper class to create an L4Re interface class that is derived from a single base class.
Definition __typeinfo.h:750
L4::Kobject::cap
l4_cap_idx_t cap() const noexcept
Return capability selector.
Definition kobject:69
L4::Vm
Virtual machine host address space.
Definition __vm-arm.h:18
L4::Vm::vgicc_map
l4_msgtag_t vgicc_map(l4_fpage_t const vgicc_fpage, l4_utcb_t *utcb=l4_utcb()) noexcept
Map the GIC virtual CPU interface page to the task in case Fiasco detected a GIC version 2.
Definition __vm-arm.h:30
l4_utcb_t
struct l4_utcb_t l4_utcb_t
Opaque type for the UTCB.
Definition utcb.h:56
l4_utcb
l4_utcb_t * l4_utcb(void) L4_NOTHROW L4_PURE
Get the UTCB address.
Definition utcb.h:346
L4
L4 low-level kernel interface.
Definition l4sys-l4f-groups.dox:50
l4_msgtag_t
Message tag data structure.
Definition types.h:154
task
Common task related definitions.
l4_fpage_t
L4 flexpage type.
Definition __l4_fpage.h:76