1/* 2 * Copyright 2018, Data61 3 * Commonwealth Scientific and Industrial Research Organisation (CSIRO) 4 * ABN 41 687 119 230. 5 * 6 * This software may be distributed and modified according to the terms of 7 * the GNU General Public License version 2. Note that NO WARRANTY is provided. 8 * See "LICENSE_GPLv2.txt" for details. 9 * 10 * @TAG(DATA61_GPL) 11 */ 12 13/* 14 * 15 * Copyright 2016, 2017 Hesham Almatary, Data61/CSIRO <hesham.almatary@data61.csiro.au> 16 * Copyright 2015, 2016 Hesham Almatary <heshamelmatary@gmail.com> 17 */ 18 19#ifndef __LIBSEL4_SEL4_ARCH_CONSTANTS_H 20#define __LIBSEL4_SEL4_ARCH_CONSTANTS_H 21 22#ifdef HAVE_AUTOCONF 23#include <autoconf.h> 24#endif 25 26#define seL4_WordBits 64 27/* log 2 bits in a word */ 28#define seL4_WordSizeBits 3 29 30#define seL4_SlotBits 5 31#define seL4_NotificationBits 5 32#define seL4_EndpointBits 4 33#define seL4_IPCBufferSizeBits 10 34#define seL4_TCBBits 10 35 36/* Sv39/Sv48 pages/ptes sizes */ 37#define seL4_PageTableEntryBits 3 38#define seL4_PageTableIndexBits 9 39 40#define seL4_PageBits 12 41#define seL4_LargePageBits 21 42#define seL4_HugePageBits 30 43#define seL4_TeraPageBits 39 44#define seL4_PageTableBits 12 45 46#define seL4_ASIDPoolIndexBits 10 47#define seL4_ASIDPoolBits 12 48 49/* Untyped size limits */ 50#define seL4_MinUntypedBits 4 51#define seL4_MaxUntypedBits 47 52 53enum { 54 seL4_VMFault_IP, 55 seL4_VMFault_Addr, 56 seL4_VMFault_PrefetchFault, 57 seL4_VMFault_FSR, 58 seL4_VMFault_Length, 59} seL4_VMFault_Msg; 60 61enum { 62 seL4_UnknownSyscall_FaultIP, 63 seL4_UnknownSyscall_SP, 64 seL4_UnknownSyscall_RA, 65 seL4_UnknownSyscall_A0, 66 seL4_UnknownSyscall_A1, 67 seL4_UnknownSyscall_A2, 68 seL4_UnknownSyscall_A3, 69 seL4_UnknownSyscall_A4, 70 seL4_UnknownSyscall_A5, 71 seL4_UnknownSyscall_A6, 72 seL4_UnknownSyscall_Syscall, 73 seL4_UnknownSyscall_Length, 74} seL4_UnknownSyscall_Msg; 75 76enum { 77 seL4_UserException_FaultIP, 78 seL4_UserException_SP, 79 seL4_UserException_FLAGS, 80 seL4_UserException_Number, 81 seL4_UserException_Code, 82 seL4_UserException_Length, 83} seL4_UserException_Msg; 84 85#endif 86