1--
2-- Copyright 2017, 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 BSD 2-Clause license. Note that NO WARRANTY is provided.
8-- See "LICENSE_BSD2.txt" for details.
9--
10 -- @TAG(DATA61_BSD)
11 --
12
13#include <autoconf.h>
14
15base 64
16
17block VMFault {
18    padding 576
19    field IP 64
20    field Addr 64
21    field PrefetchFault 64
22    field FSR 64
23    padding 60
24    field seL4_FaultType 4
25}
26
27block NullFault {
28    padding 832
29    padding 60
30    field seL4_FaultType 4
31}
32
33block CapFault {
34    padding 384
35    field IP   64
36    field Addr 64
37    field InRecvPhase 64
38    field LookupFailureType 64
39    -- these vary according to LookupFailureType
40    field MR4 64
41    field MR5 64
42    field MR6 64
43    padding 60
44    field seL4_FaultType 4
45}
46
47block UnknownSyscall {
48    field X0 64
49    field X1 64
50    field X2 64
51    field X3 64
52    field X4 64
53    field X5 64
54    field X6 64
55    field X7 64
56    field FaultIP 64
57    field SP 64
58    field LR 64
59    field SPSR 64
60    field Syscall 64
61    padding 60
62    field seL4_FaultType 4
63}
64
65block UserException {
66    padding 512
67    field FaultIP 64
68    field Stack   64
69    field SPSR  64
70    field Number  64
71    field Code    64
72    padding 60
73    field seL4_FaultType 4
74}
75
76#ifdef CONFIG_ARM_HYPERVISOR_SUPPORT
77block VGICMaintenance {
78    padding 768
79    field IDX 64
80    padding 61
81    field seL4_FaultType 3
82}
83
84block VCPUFault {
85    padding 768
86    padding 32
87    field HSR 32
88    padding 61
89    field seL4_FaultType 3
90}
91#endif
92
93#ifdef CONFIG_HARDWARE_DEBUG_API
94block DebugException {
95    padding 576
96    field FaultIP 64
97    field ExceptionReason 64
98    field TriggerAddress 64
99    field BreakpointNumber 64
100    padding 60
101    field seL4_FaultType 4
102}
103#endif
104
105block Timeout {
106    padding 704
107    field data 64
108    field consumed 64
109    padding 60
110    field seL4_FaultType 4
111}
112
113#include <sel4/arch/shared_types.bf>
114