/* * Copyright 2020, Data61, CSIRO (ABN 41 687 119 230) * Copyright 2015, 2016 Hesham Almatary * * SPDX-License-Identifier: GPL-2.0-only */ #pragma once #include #include #include #include typedef unsigned long word_t; typedef signed long sword_t; typedef word_t vptr_t; typedef word_t paddr_t; typedef word_t pptr_t; typedef word_t cptr_t; typedef word_t dev_id_t; typedef word_t cpu_id_t; typedef word_t node_id_t; typedef word_t dom_t; /* for libsel4 headers that the kernel shares */ typedef word_t seL4_Word; typedef cptr_t seL4_CPtr; typedef uint32_t seL4_Uint32; typedef uint8_t seL4_Uint8; typedef node_id_t seL4_NodeId; typedef paddr_t seL4_PAddr; typedef dom_t seL4_Domain; typedef uint64_t timestamp_t; #define wordBits BIT(wordRadix) typedef struct kernel_frame { paddr_t paddr; pptr_t pptr; int userAvailable; } kernel_frame_t;