30 #include <l4/sys/l4int.h> 32 #include <l4/sys/consts.h> 81 L4_VARG_TYPE_NIL = 0x00,
82 L4_VARG_TYPE_UMWORD = 0x01,
83 L4_VARG_TYPE_MWORD = 0x81,
84 L4_VARG_TYPE_STRING = 0x02,
85 L4_VARG_TYPE_FPAGE = 0x03,
87 L4_VARG_TYPE_SIGN = 0x80,
163 long label()
const throw() {
return raw >> 16; }
168 unsigned words()
const throw() {
return raw & 0x3f; }
170 unsigned items()
const throw() {
return (raw >> 6) & 0x3f; }
177 unsigned flags()
const throw() {
return raw & 0xf000; }
393 {
return c & L4_INVALID_CAP_BIT; }
397 {
return !(c & L4_INVALID_CAP_BIT); }
409 unsigned flags) L4_NOTHROW
421 {
return t.
raw >> 16; }
425 {
return t.
raw & 0x3f; }
429 {
return (t.
raw >> 6) & 0x3f; }
433 {
return t.
raw & 0xf000; }
461 {
return c + L4_CAP_OFFSET; }
463 #include <l4/sys/__l4_fpage.h> 464 #include <l4/sys/__timeout.h> Protocol for messages to a log object.
unsigned l4_msgtag_is_page_fault(l4_msgtag_t t) L4_NOTHROW
Test for page-fault protocol.
Protocol ID for ARM SMCCC calls.
unsigned l4_is_invalid_cap(l4_cap_idx_t c) L4_NOTHROW
Test if a capability selector is the invalid capability.
bool is_sigma0() const
Test if protocol indicates sigma0 protocol.
Protocol ID for the debugger.
Protocol for messages to a generic kobject.
unsigned l4_msgtag_has_error(l4_msgtag_t t) L4_NOTHROW
Test for error indicator flag.
Protocol for messages to a factory object.
Allow an alien the system call.
unsigned l4_msgtag_is_sys_exception(l4_msgtag_t t) L4_NOTHROW
Test for system-exception protocol.
unsigned l4_msgtag_is_preemption(l4_msgtag_t t) L4_NOTHROW
Test for preemption protocol.
signed long l4_mword_t
Signed machine word.
unsigned words() const
Get the number of untyped words.
unsigned l4_is_valid_cap(l4_cap_idx_t c) L4_NOTHROW
Test if a capability selector is a valid selector.
bool is_exception() const
Test if protocol indicates exception protocol.
unsigned long l4_cap_idx_t
L4 Capability selector Type.
Protocol for messages to a virtual machine object.
bool is_preemption() const
Test if protocol indicates preemption protocol.
Enable FPU transfer flag for IPC.
long l4_msgtag_label(l4_msgtag_t t) L4_NOTHROW
Get the protocol of tag.
unsigned l4_msgtag_is_sigma0(l4_msgtag_t t) L4_NOTHROW
Test for sigma0 protocol.
Protocol for messages to a thread object.
long label() const
Get the protocol value.
l4_msgtag_flags
Flags for message tags.
L4 compiler related defines.
l4_msgtag_protocol
Message tag for IPC operations.
unsigned l4_msgtag_items(l4_msgtag_t t) L4_NOTHROW
Get the number of typed items.
Protocol for (creating) kernel DMA space objects.
Enable schedule in IPC flag.
unsigned l4_msgtag_is_exception(l4_msgtag_t t) L4_NOTHROW
Test for exception protocol.
l4_cap_idx_t l4_capability_next(l4_cap_idx_t c) L4_NOTHROW
Get the next capability selector after c.
unsigned has_error() const
Test if flags indicate an error.
bool is_sys_exception() const
Test if protocol indicates system-exception protocol.
Protocol for messages to a task object.
Protocol for IRQ senders (IRQ -> IPC)
unsigned l4_capability_equal(l4_cap_idx_t c1, l4_cap_idx_t c2) L4_NOTHROW
Test if two capability selectors are equal.
unsigned long l4_umword_t
Unsigned machine word.
unsigned items() const
Get the number of typed items.
unsigned l4_msgtag_words(l4_msgtag_t t) L4_NOTHROW
Get the number of untyped words.
Default protocol tag to reply to kernel.
void label(long v)
Set the protocol value.
Protocol for IRQ mux (IRQ -> n x IRQ)
l4_msgtag_t l4_msgtag(long label, unsigned words, unsigned items, unsigned flags) L4_NOTHROW
Create a message tag from the specified values.
Protocol for semaphore objects.
unsigned flags() const
Get the flags value.
Make an exception out of a page fault.
Protocol for messages to a scheduler object.
Meta information protocol.
struct l4_msgtag_t l4_msgtag_t
Message tag data structure.
Message tag data structure.
unsigned l4_msgtag_is_io_page_fault(l4_msgtag_t t) L4_NOTHROW
Test for IO-page-fault protocol.
bool is_io_page_fault() const
Test if protocol indicates IO-page-fault protocol.
#define L4_NOTHROW
Mark a function declaration and definition as never throwing an exception.
bool is_page_fault() const
Test if protocol indicates page-fault protocol.