1pub const seL4_True: u32 = 1;
4pub const seL4_False: u32 = 0;
5pub const seL4_DataFault: u32 = 0;
6pub const seL4_InstructionFault: u32 = 1;
7pub const seL4_PageBits: u32 = 12;
8pub const seL4_LargePageBits: u32 = 21;
9pub const seL4_HugePageBits: u32 = 30;
10pub const seL4_SlotBits: u32 = 5;
11pub const seL4_TCBBits: u32 = 11;
12pub const seL4_EndpointBits: u32 = 4;
13pub const seL4_NotificationBits: u32 = 6;
14pub const seL4_ReplyBits: u32 = 5;
15pub const seL4_PageTableBits: u32 = 12;
16pub const seL4_PageTableEntryBits: u32 = 3;
17pub const seL4_PageTableIndexBits: u32 = 9;
18pub const seL4_NumASIDPoolsBits: u32 = 7;
19pub const seL4_ASIDPoolBits: u32 = 12;
20pub const seL4_ASIDPoolIndexBits: u32 = 9;
21pub const seL4_IOPageTableBits: u32 = 12;
22pub const seL4_WordSizeBits: u32 = 3;
23pub const seL4_VSpaceEntryBits: u32 = 3;
24pub const seL4_VSpaceBits: u32 = 13;
25pub const seL4_VSpaceIndexBits: u32 = 10;
26pub const seL4_ARM_VCPUBits: u32 = 12;
27pub const seL4_VCPUBits: u32 = 12;
28pub const seL4_MinUntypedBits: u32 = 4;
29pub const seL4_MaxUntypedBits: u32 = 47;
30pub const seL4_FastMessageRegisters: u32 = 4;
31pub const seL4_IPCBufferSizeBits: u32 = 10;
32pub const seL4_UserTop: u64 = 1099511627775;
33pub const seL4_ARM_IOPageTableObject: u32 = 65535;
34pub const seL4_CapRightsBits: u32 = 4;
35pub const seL4_MinSchedContextBits: u32 = 7;
36pub const seL4_RefillSizeBytes: u32 = 16;
37pub const seL4_GuardSizeBits: u32 = 6;
38pub const seL4_GuardBits: u32 = 58;
39pub const seL4_BadgeBits: u32 = 64;
40pub const seL4_UntypedRetypeMaxObjects: u32 = 256;
41pub const seL4_NilData: u32 = 0;
42pub const seL4_BootInfoFrameBits: u32 = 12;
43pub const seL4_PageDirBits: u32 = 12;
44pub const seL4_PageDirEntryBits: u32 = 3;
45pub const seL4_PageDirIndexBits: u32 = 9;
46pub const seL4_PUDEntryBits: u32 = 3;
47pub const seL4_PGDBits: u32 = 0;
48pub const seL4_PGDEntryBits: u32 = 0;
49pub const seL4_PGDIndexBits: u32 = 0;
50pub const seL4_PUDBits: u32 = 13;
51pub const seL4_PUDIndexBits: u32 = 10;
52pub const seL4_NumHWBreakpoints: u32 = 10;
53pub const seL4_NumExclusiveBreakpoints: u32 = 6;
54pub const seL4_NumExclusiveWatchpoints: u32 = 4;
55pub const SEL4_MAPPING_LOOKUP_LEVEL: u32 = 2;
56pub const SEL4_MAPPING_LOOKUP_NO_PT: u32 = 21;
57pub const SEL4_MAPPING_LOOKUP_NO_PD: u32 = 30;
58pub const SEL4_MAPPING_LOOKUP_NO_PUD: u32 = 39;
59pub type seL4_Int8 = ::core::ffi::c_schar;
60pub type seL4_Uint8 = ::core::ffi::c_uchar;
61pub type seL4_Int16 = ::core::ffi::c_short;
62pub type seL4_Uint16 = ::core::ffi::c_ushort;
63pub type seL4_Int32 = ::core::ffi::c_int;
64pub type seL4_Uint32 = ::core::ffi::c_uint;
65pub type seL4_Int64 = ::core::ffi::c_long;
66pub type seL4_Uint64 = ::core::ffi::c_ulong;
67pub type seL4_Bool = seL4_Int8;
68pub type seL4_Word = seL4_Uint64;
69pub type seL4_CPtr = seL4_Word;
70pub mod seL4_UnknownSyscall_Msg {
71 pub type Type = ::core::ffi::c_ulong;
72 pub const seL4_UnknownSyscall_X0: Type = 0;
73 pub const seL4_UnknownSyscall_X1: Type = 1;
74 pub const seL4_UnknownSyscall_X2: Type = 2;
75 pub const seL4_UnknownSyscall_X3: Type = 3;
76 pub const seL4_UnknownSyscall_X4: Type = 4;
77 pub const seL4_UnknownSyscall_X5: Type = 5;
78 pub const seL4_UnknownSyscall_X6: Type = 6;
79 pub const seL4_UnknownSyscall_X7: Type = 7;
80 pub const seL4_UnknownSyscall_FaultIP: Type = 8;
81 pub const seL4_UnknownSyscall_SP: Type = 9;
82 pub const seL4_UnknownSyscall_LR: Type = 10;
83 pub const seL4_UnknownSyscall_SPSR: Type = 11;
84 pub const seL4_UnknownSyscall_Syscall: Type = 12;
85 pub const seL4_UnknownSyscall_Length: Type = 13;
86 pub const _enum_pad_seL4_UnknownSyscall_Msg: Type = 9223372036854775807;
87}
88pub mod seL4_UserException_Msg {
89 pub type Type = ::core::ffi::c_ulong;
90 pub const seL4_UserException_FaultIP: Type = 0;
91 pub const seL4_UserException_SP: Type = 1;
92 pub const seL4_UserException_SPSR: Type = 2;
93 pub const seL4_UserException_Number: Type = 3;
94 pub const seL4_UserException_Code: Type = 4;
95 pub const seL4_UserException_Length: Type = 5;
96 pub const _enum_pad_seL4_UserException_Msg: Type = 9223372036854775807;
97}
98pub mod seL4_VMFault_Msg {
99 pub type Type = ::core::ffi::c_ulong;
100 pub const seL4_VMFault_IP: Type = 0;
101 pub const seL4_VMFault_Addr: Type = 1;
102 pub const seL4_VMFault_PrefetchFault: Type = 2;
103 pub const seL4_VMFault_FSR: Type = 3;
104 pub const seL4_VMFault_Length: Type = 4;
105 pub const _enum_pad_seL4_VMFault_Msg: Type = 9223372036854775807;
106}
107pub mod seL4_VGICMaintenance_Msg {
108 pub type Type = ::core::ffi::c_ulong;
109 pub const seL4_VGICMaintenance_IDX: Type = 0;
110 pub const seL4_VGICMaintenance_Length: Type = 1;
111 pub const _enum_pad_seL4_VGICMaintenance_Msg: Type = 9223372036854775807;
112}
113pub mod seL4_VPPIEvent_Msg {
114 pub type Type = ::core::ffi::c_ulong;
115 pub const seL4_VPPIEvent_IRQ: Type = 0;
116 pub const seL4_VPPIEvent_Length: Type = 1;
117 pub const _enum_pad_seL4_VPPIEvent_Msg: Type = 9223372036854775807;
118}
119pub mod seL4_VCPUFault_Msg {
120 pub type Type = ::core::ffi::c_ulong;
121 pub const seL4_VCPUFault_HSR: Type = 0;
122 pub const seL4_VCPUFault_Length: Type = 1;
123 pub const _enum_pad_seL4_VCPUFault_Msg: Type = 9223372036854775807;
124}
125pub mod seL4_VCPUReg {
126 pub type Type = ::core::ffi::c_ulong;
127 pub const seL4_VCPUReg_SCTLR: Type = 0;
128 pub const seL4_VCPUReg_CPACR: Type = 1;
129 pub const seL4_VCPURegSaveRange_start: Type = 2;
130 pub const seL4_VCPUReg_TTBR0: Type = 2;
131 pub const seL4_VCPUReg_TTBR1: Type = 3;
132 pub const seL4_VCPUReg_TCR: Type = 4;
133 pub const seL4_VCPUReg_MAIR: Type = 5;
134 pub const seL4_VCPUReg_AMAIR: Type = 6;
135 pub const seL4_VCPUReg_CIDR: Type = 7;
136 pub const seL4_VCPUReg_ACTLR: Type = 8;
137 pub const seL4_VCPUReg_AFSR0: Type = 9;
138 pub const seL4_VCPUReg_AFSR1: Type = 10;
139 pub const seL4_VCPUReg_ESR: Type = 11;
140 pub const seL4_VCPUReg_FAR: Type = 12;
141 pub const seL4_VCPUReg_ISR: Type = 13;
142 pub const seL4_VCPUReg_VBAR: Type = 14;
143 pub const seL4_VCPUReg_TPIDR_EL1: Type = 15;
144 pub const seL4_VCPUReg_VMPIDR_EL2: Type = 16;
145 pub const seL4_VCPUReg_SP_EL1: Type = 17;
146 pub const seL4_VCPUReg_ELR_EL1: Type = 18;
147 pub const seL4_VCPUReg_SPSR_EL1: Type = 19;
148 pub const seL4_VCPURegSaveRange_end: Type = 19;
149 pub const seL4_VCPUReg_CNTV_CTL: Type = 20;
150 pub const seL4_VCPUReg_CNTV_CVAL: Type = 21;
151 pub const seL4_VCPUReg_CNTVOFF: Type = 22;
152 pub const seL4_VCPUReg_CNTKCTL_EL1: Type = 23;
153 pub const seL4_VCPUReg_Num: Type = 24;
154 pub const _enum_pad_seL4_VCPUReg: Type = 9223372036854775807;
155}
156pub mod seL4_TimeoutReply_Msg {
157 pub type Type = ::core::ffi::c_ulong;
158 pub const seL4_TimeoutReply_FaultIP: Type = 0;
159 pub const seL4_TimeoutReply_SP: Type = 1;
160 pub const seL4_TimeoutReply_SPSR_EL1: Type = 2;
161 pub const seL4_TimeoutReply_X0: Type = 3;
162 pub const seL4_TimeoutReply_X1: Type = 4;
163 pub const seL4_TimeoutReply_X2: Type = 5;
164 pub const seL4_TimeoutReply_X3: Type = 6;
165 pub const seL4_TimeoutReply_X4: Type = 7;
166 pub const seL4_TimeoutReply_X5: Type = 8;
167 pub const seL4_TimeoutReply_X6: Type = 9;
168 pub const seL4_TimeoutReply_X7: Type = 10;
169 pub const seL4_TimeoutReply_X8: Type = 11;
170 pub const seL4_TimeoutReply_X16: Type = 12;
171 pub const seL4_TimeoutReply_X17: Type = 13;
172 pub const seL4_TimeoutReply_X18: Type = 14;
173 pub const seL4_TimeoutReply_X29: Type = 15;
174 pub const seL4_TimeoutReply_X30: Type = 16;
175 pub const seL4_TimeoutReply_X9: Type = 17;
176 pub const seL4_TimeoutReply_X10: Type = 18;
177 pub const seL4_TimeoutReply_X11: Type = 19;
178 pub const seL4_TimeoutReply_X12: Type = 20;
179 pub const seL4_TimeoutReply_X13: Type = 21;
180 pub const seL4_TimeoutReply_X14: Type = 22;
181 pub const seL4_TimeoutReply_X15: Type = 23;
182 pub const seL4_TimeoutReply_X19: Type = 24;
183 pub const seL4_TimeoutReply_X20: Type = 25;
184 pub const seL4_TimeoutReply_X21: Type = 26;
185 pub const seL4_TimeoutReply_X22: Type = 27;
186 pub const seL4_TimeoutReply_X23: Type = 28;
187 pub const seL4_TimeoutReply_X24: Type = 29;
188 pub const seL4_TimeoutReply_X25: Type = 30;
189 pub const seL4_TimeoutReply_X26: Type = 31;
190 pub const seL4_TimeoutReply_X27: Type = 32;
191 pub const seL4_TimeoutReply_X28: Type = 33;
192 pub const seL4_TimeoutReply_Length: Type = 34;
193 pub const _enum_pad_seL4_TimeoutReply_Msg: Type = 9223372036854775807;
194}
195pub mod seL4_Timeout_Msg {
196 pub type Type = ::core::ffi::c_ulong;
197 pub const seL4_Timeout_Data: Type = 0;
198 pub const seL4_Timeout_Consumed: Type = 1;
199 pub const seL4_Timeout_Length: Type = 2;
200 pub const _enum_pad_seL4_Timeout_Msg: Type = 9223372036854775807;
201}
202pub type seL4_ARM_VSpace = seL4_CPtr;
203#[repr(C)]
204#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
205pub struct seL4_UserContext_ {
206 pub pc: seL4_Word,
207 pub sp: seL4_Word,
208 pub spsr: seL4_Word,
209 pub x0: seL4_Word,
210 pub x1: seL4_Word,
211 pub x2: seL4_Word,
212 pub x3: seL4_Word,
213 pub x4: seL4_Word,
214 pub x5: seL4_Word,
215 pub x6: seL4_Word,
216 pub x7: seL4_Word,
217 pub x8: seL4_Word,
218 pub x16: seL4_Word,
219 pub x17: seL4_Word,
220 pub x18: seL4_Word,
221 pub x29: seL4_Word,
222 pub x30: seL4_Word,
223 pub x9: seL4_Word,
224 pub x10: seL4_Word,
225 pub x11: seL4_Word,
226 pub x12: seL4_Word,
227 pub x13: seL4_Word,
228 pub x14: seL4_Word,
229 pub x15: seL4_Word,
230 pub x19: seL4_Word,
231 pub x20: seL4_Word,
232 pub x21: seL4_Word,
233 pub x22: seL4_Word,
234 pub x23: seL4_Word,
235 pub x24: seL4_Word,
236 pub x25: seL4_Word,
237 pub x26: seL4_Word,
238 pub x27: seL4_Word,
239 pub x28: seL4_Word,
240 pub tpidr_el0: seL4_Word,
241 pub tpidrro_el0: seL4_Word,
242}
243#[allow(clippy::unnecessary_operation, clippy::identity_op)]
244const _: () = {
245 ["Size of seL4_UserContext_"][::core::mem::size_of::<seL4_UserContext_>() - 288usize];
246 ["Alignment of seL4_UserContext_"][::core::mem::align_of::<seL4_UserContext_>() - 8usize];
247 ["Offset of field: seL4_UserContext_::pc"]
248 [::core::mem::offset_of!(seL4_UserContext_, pc) - 0usize];
249 ["Offset of field: seL4_UserContext_::sp"]
250 [::core::mem::offset_of!(seL4_UserContext_, sp) - 8usize];
251 ["Offset of field: seL4_UserContext_::spsr"]
252 [::core::mem::offset_of!(seL4_UserContext_, spsr) - 16usize];
253 ["Offset of field: seL4_UserContext_::x0"]
254 [::core::mem::offset_of!(seL4_UserContext_, x0) - 24usize];
255 ["Offset of field: seL4_UserContext_::x1"]
256 [::core::mem::offset_of!(seL4_UserContext_, x1) - 32usize];
257 ["Offset of field: seL4_UserContext_::x2"]
258 [::core::mem::offset_of!(seL4_UserContext_, x2) - 40usize];
259 ["Offset of field: seL4_UserContext_::x3"]
260 [::core::mem::offset_of!(seL4_UserContext_, x3) - 48usize];
261 ["Offset of field: seL4_UserContext_::x4"]
262 [::core::mem::offset_of!(seL4_UserContext_, x4) - 56usize];
263 ["Offset of field: seL4_UserContext_::x5"]
264 [::core::mem::offset_of!(seL4_UserContext_, x5) - 64usize];
265 ["Offset of field: seL4_UserContext_::x6"]
266 [::core::mem::offset_of!(seL4_UserContext_, x6) - 72usize];
267 ["Offset of field: seL4_UserContext_::x7"]
268 [::core::mem::offset_of!(seL4_UserContext_, x7) - 80usize];
269 ["Offset of field: seL4_UserContext_::x8"]
270 [::core::mem::offset_of!(seL4_UserContext_, x8) - 88usize];
271 ["Offset of field: seL4_UserContext_::x16"]
272 [::core::mem::offset_of!(seL4_UserContext_, x16) - 96usize];
273 ["Offset of field: seL4_UserContext_::x17"]
274 [::core::mem::offset_of!(seL4_UserContext_, x17) - 104usize];
275 ["Offset of field: seL4_UserContext_::x18"]
276 [::core::mem::offset_of!(seL4_UserContext_, x18) - 112usize];
277 ["Offset of field: seL4_UserContext_::x29"]
278 [::core::mem::offset_of!(seL4_UserContext_, x29) - 120usize];
279 ["Offset of field: seL4_UserContext_::x30"]
280 [::core::mem::offset_of!(seL4_UserContext_, x30) - 128usize];
281 ["Offset of field: seL4_UserContext_::x9"]
282 [::core::mem::offset_of!(seL4_UserContext_, x9) - 136usize];
283 ["Offset of field: seL4_UserContext_::x10"]
284 [::core::mem::offset_of!(seL4_UserContext_, x10) - 144usize];
285 ["Offset of field: seL4_UserContext_::x11"]
286 [::core::mem::offset_of!(seL4_UserContext_, x11) - 152usize];
287 ["Offset of field: seL4_UserContext_::x12"]
288 [::core::mem::offset_of!(seL4_UserContext_, x12) - 160usize];
289 ["Offset of field: seL4_UserContext_::x13"]
290 [::core::mem::offset_of!(seL4_UserContext_, x13) - 168usize];
291 ["Offset of field: seL4_UserContext_::x14"]
292 [::core::mem::offset_of!(seL4_UserContext_, x14) - 176usize];
293 ["Offset of field: seL4_UserContext_::x15"]
294 [::core::mem::offset_of!(seL4_UserContext_, x15) - 184usize];
295 ["Offset of field: seL4_UserContext_::x19"]
296 [::core::mem::offset_of!(seL4_UserContext_, x19) - 192usize];
297 ["Offset of field: seL4_UserContext_::x20"]
298 [::core::mem::offset_of!(seL4_UserContext_, x20) - 200usize];
299 ["Offset of field: seL4_UserContext_::x21"]
300 [::core::mem::offset_of!(seL4_UserContext_, x21) - 208usize];
301 ["Offset of field: seL4_UserContext_::x22"]
302 [::core::mem::offset_of!(seL4_UserContext_, x22) - 216usize];
303 ["Offset of field: seL4_UserContext_::x23"]
304 [::core::mem::offset_of!(seL4_UserContext_, x23) - 224usize];
305 ["Offset of field: seL4_UserContext_::x24"]
306 [::core::mem::offset_of!(seL4_UserContext_, x24) - 232usize];
307 ["Offset of field: seL4_UserContext_::x25"]
308 [::core::mem::offset_of!(seL4_UserContext_, x25) - 240usize];
309 ["Offset of field: seL4_UserContext_::x26"]
310 [::core::mem::offset_of!(seL4_UserContext_, x26) - 248usize];
311 ["Offset of field: seL4_UserContext_::x27"]
312 [::core::mem::offset_of!(seL4_UserContext_, x27) - 256usize];
313 ["Offset of field: seL4_UserContext_::x28"]
314 [::core::mem::offset_of!(seL4_UserContext_, x28) - 264usize];
315 ["Offset of field: seL4_UserContext_::tpidr_el0"]
316 [::core::mem::offset_of!(seL4_UserContext_, tpidr_el0) - 272usize];
317 ["Offset of field: seL4_UserContext_::tpidrro_el0"]
318 [::core::mem::offset_of!(seL4_UserContext_, tpidrro_el0) - 280usize];
319};
320pub type seL4_UserContext = seL4_UserContext_;
321#[repr(C)]
322#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
323pub struct seL4_ARM_SMCContext_ {
324 pub x0: seL4_Word,
325 pub x1: seL4_Word,
326 pub x2: seL4_Word,
327 pub x3: seL4_Word,
328 pub x4: seL4_Word,
329 pub x5: seL4_Word,
330 pub x6: seL4_Word,
331 pub x7: seL4_Word,
332}
333#[allow(clippy::unnecessary_operation, clippy::identity_op)]
334const _: () = {
335 ["Size of seL4_ARM_SMCContext_"][::core::mem::size_of::<seL4_ARM_SMCContext_>() - 64usize];
336 ["Alignment of seL4_ARM_SMCContext_"][::core::mem::align_of::<seL4_ARM_SMCContext_>() - 8usize];
337 ["Offset of field: seL4_ARM_SMCContext_::x0"]
338 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x0) - 0usize];
339 ["Offset of field: seL4_ARM_SMCContext_::x1"]
340 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x1) - 8usize];
341 ["Offset of field: seL4_ARM_SMCContext_::x2"]
342 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x2) - 16usize];
343 ["Offset of field: seL4_ARM_SMCContext_::x3"]
344 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x3) - 24usize];
345 ["Offset of field: seL4_ARM_SMCContext_::x4"]
346 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x4) - 32usize];
347 ["Offset of field: seL4_ARM_SMCContext_::x5"]
348 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x5) - 40usize];
349 ["Offset of field: seL4_ARM_SMCContext_::x6"]
350 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x6) - 48usize];
351 ["Offset of field: seL4_ARM_SMCContext_::x7"]
352 [::core::mem::offset_of!(seL4_ARM_SMCContext_, x7) - 56usize];
353};
354pub type seL4_ARM_SMCContext = seL4_ARM_SMCContext_;
355pub type seL4_ARM_Page = seL4_CPtr;
356pub type seL4_ARM_PageTable = seL4_CPtr;
357pub type seL4_ARM_PageDirectory = seL4_CPtr;
358pub type seL4_ARM_ASIDControl = seL4_CPtr;
359pub type seL4_ARM_ASIDPool = seL4_CPtr;
360pub type seL4_ARM_VCPU = seL4_CPtr;
361pub type seL4_ARM_IOSpace = seL4_CPtr;
362pub type seL4_ARM_IOPageTable = seL4_CPtr;
363pub type seL4_ARM_SIDControl = seL4_CPtr;
364pub type seL4_ARM_SID = seL4_CPtr;
365pub type seL4_ARM_CBControl = seL4_CPtr;
366pub type seL4_ARM_CB = seL4_CPtr;
367pub type seL4_ARM_SMC = seL4_CPtr;
368pub type seL4_ARM_SGI_Signal = seL4_CPtr;
369pub mod seL4_ARM_VMAttributes {
370 pub type Type = ::core::ffi::c_ulong;
371 pub const seL4_ARM_PageCacheable: Type = 1;
372 pub const seL4_ARM_ParityEnabled: Type = 2;
373 pub const seL4_ARM_Default_VMAttributes: Type = 3;
374 pub const seL4_ARM_ExecuteNever: Type = 4;
375 pub const _enum_pad_seL4_ARM_VMAttributes: Type = 9223372036854775807;
376}
377pub mod seL4_ARM_CacheType {
378 pub type Type = ::core::ffi::c_ulong;
379 pub const seL4_ARM_CacheI: Type = 1;
380 pub const seL4_ARM_CacheD: Type = 2;
381 pub const seL4_ARM_CacheID: Type = 3;
382 pub const _enum_pad_seL4_ARM_CacheType: Type = 9223372036854775807;
383}
384pub mod api_object {
385 pub type Type = ::core::ffi::c_uint;
386 pub const seL4_UntypedObject: Type = 0;
387 pub const seL4_TCBObject: Type = 1;
388 pub const seL4_EndpointObject: Type = 2;
389 pub const seL4_NotificationObject: Type = 3;
390 pub const seL4_CapTableObject: Type = 4;
391 pub const seL4_SchedContextObject: Type = 5;
392 pub const seL4_ReplyObject: Type = 6;
393 pub const seL4_NonArchObjectTypeCount: Type = 7;
394}
395pub use self::api_object::Type as seL4_ObjectType;
396pub mod _mode_object {
397 pub type Type = ::core::ffi::c_uint;
398 pub const seL4_ARM_HugePageObject: Type = 7;
399 pub const seL4_ARM_VSpaceObject: Type = 8;
400 pub const seL4_ModeObjectTypeCount: Type = 9;
401}
402pub use self::_mode_object::Type as seL4_ModeObjectType;
403pub mod _object {
404 pub type Type = ::core::ffi::c_uint;
405 pub const seL4_ARM_SmallPageObject: Type = 9;
406 pub const seL4_ARM_LargePageObject: Type = 10;
407 pub const seL4_ARM_PageTableObject: Type = 11;
408 pub const seL4_ARM_VCPUObject: Type = 12;
409 pub const seL4_ObjectTypeCount: Type = 13;
410}
411pub use self::_object::Type as seL4_ArchObjectType;
412pub mod seL4_Error {
413 pub type Type = ::core::ffi::c_uint;
414 pub const seL4_NoError: Type = 0;
415 pub const seL4_InvalidArgument: Type = 1;
416 pub const seL4_InvalidCapability: Type = 2;
417 pub const seL4_IllegalOperation: Type = 3;
418 pub const seL4_RangeError: Type = 4;
419 pub const seL4_AlignmentError: Type = 5;
420 pub const seL4_FailedLookup: Type = 6;
421 pub const seL4_TruncatedMessage: Type = 7;
422 pub const seL4_DeleteFirst: Type = 8;
423 pub const seL4_RevokeFirst: Type = 9;
424 pub const seL4_NotEnoughMemory: Type = 10;
425 pub const seL4_NumErrors: Type = 11;
426}
427pub mod priorityConstants {
428 pub type Type = ::core::ffi::c_int;
429 pub const seL4_InvalidPrio: Type = -1;
430 pub const seL4_MinPrio: Type = 0;
431 pub const seL4_MaxPrio: Type = 255;
432}
433pub mod seL4_MsgLimits {
434 pub type Type = ::core::ffi::c_uint;
435 pub const seL4_MsgLengthBits: Type = 7;
436 pub const seL4_MsgExtraCapBits: Type = 2;
437 pub const seL4_MsgMaxLength: Type = 120;
438}
439pub mod seL4_LookupFailureType {
440 pub type Type = ::core::ffi::c_ulong;
441 pub const seL4_NoFailure: Type = 0;
442 pub const seL4_InvalidRoot: Type = 1;
443 pub const seL4_MissingCapability: Type = 2;
444 pub const seL4_DepthMismatch: Type = 3;
445 pub const seL4_GuardMismatch: Type = 4;
446 pub const _enum_pad_seL4_LookupFailureType: Type = 9223372036854775807;
447}
448pub mod seL4_TCBFlag {
449 pub type Type = ::core::ffi::c_ulong;
450 pub const seL4_TCBFlag_NoFlag: Type = 0;
451 pub const seL4_TCBFlag_fpuDisabled: Type = 1;
452 pub const _enum_pad_seL4_TCBFlag: Type = 9223372036854775807;
453 pub const seL4_TCBFlag_MASK: Type = 1;
454}
455pub mod seL4_SchedContextFlag {
456 pub type Type = ::core::ffi::c_ulong;
457 pub const seL4_SchedContext_NoFlag: Type = 0;
458 pub const seL4_SchedContext_Sporadic: Type = 1;
459 pub const _enum_pad_seL4_SchedContextFlag: Type = 9223372036854775807;
460}
461#[repr(C)]
462pub struct seL4_IPCBuffer_ {
463 pub tag: seL4_MessageInfo_t,
464 pub msg: [seL4_Word; 120usize],
465 pub userData: seL4_Word,
466 pub caps_or_badges: [seL4_Word; 3usize],
467 pub receiveCNode: seL4_CPtr,
468 pub receiveIndex: seL4_CPtr,
469 pub receiveDepth: seL4_Word,
470}
471#[allow(clippy::unnecessary_operation, clippy::identity_op)]
472const _: () = {
473 ["Size of seL4_IPCBuffer_"][::core::mem::size_of::<seL4_IPCBuffer_>() - 1024usize];
474 ["Alignment of seL4_IPCBuffer_"][::core::mem::align_of::<seL4_IPCBuffer_>() - 8usize];
475 ["Offset of field: seL4_IPCBuffer_::tag"]
476 [::core::mem::offset_of!(seL4_IPCBuffer_, tag) - 0usize];
477 ["Offset of field: seL4_IPCBuffer_::msg"]
478 [::core::mem::offset_of!(seL4_IPCBuffer_, msg) - 8usize];
479 ["Offset of field: seL4_IPCBuffer_::userData"]
480 [::core::mem::offset_of!(seL4_IPCBuffer_, userData) - 968usize];
481 ["Offset of field: seL4_IPCBuffer_::caps_or_badges"]
482 [::core::mem::offset_of!(seL4_IPCBuffer_, caps_or_badges) - 976usize];
483 ["Offset of field: seL4_IPCBuffer_::receiveCNode"]
484 [::core::mem::offset_of!(seL4_IPCBuffer_, receiveCNode) - 1000usize];
485 ["Offset of field: seL4_IPCBuffer_::receiveIndex"]
486 [::core::mem::offset_of!(seL4_IPCBuffer_, receiveIndex) - 1008usize];
487 ["Offset of field: seL4_IPCBuffer_::receiveDepth"]
488 [::core::mem::offset_of!(seL4_IPCBuffer_, receiveDepth) - 1016usize];
489};
490impl Default for seL4_IPCBuffer_ {
491 fn default() -> Self {
492 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
493 unsafe {
494 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
495 s.assume_init()
496 }
497 }
498}
499pub type seL4_IPCBuffer = seL4_IPCBuffer_;
500pub mod seL4_CapFault_Msg {
501 pub type Type = ::core::ffi::c_ulong;
502 pub const seL4_CapFault_IP: Type = 0;
503 pub const seL4_CapFault_Addr: Type = 1;
504 pub const seL4_CapFault_InRecvPhase: Type = 2;
505 pub const seL4_CapFault_LookupFailureType: Type = 3;
506 pub const seL4_CapFault_BitsLeft: Type = 4;
507 pub const seL4_CapFault_DepthMismatch_BitsFound: Type = 5;
508 pub const seL4_CapFault_GuardMismatch_GuardFound: Type = 5;
509 pub const seL4_CapFault_GuardMismatch_BitsFound: Type = 6;
510 pub const _enum_pad_seL4_CapFault_Msg: Type = 9223372036854775807;
511}
512pub type seL4_NodeId = seL4_Word;
513pub type seL4_PAddr = seL4_Word;
514pub type seL4_Domain = seL4_Word;
515pub type seL4_CNode = seL4_CPtr;
516pub type seL4_IRQHandler = seL4_CPtr;
517pub type seL4_IRQControl = seL4_CPtr;
518pub type seL4_TCB = seL4_CPtr;
519pub type seL4_Untyped = seL4_CPtr;
520pub type seL4_DomainSet = seL4_CPtr;
521pub type seL4_SchedContext = seL4_CPtr;
522pub type seL4_SchedControl = seL4_CPtr;
523pub type seL4_Time = seL4_Uint64;
524#[repr(C)]
525#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
526pub struct seL4_ARM_SIDControl_GetFault {
527 pub error: ::core::ffi::c_int,
528 pub status: seL4_Word,
529 pub syndrome_0: seL4_Word,
530 pub syndrome_1: seL4_Word,
531}
532#[allow(clippy::unnecessary_operation, clippy::identity_op)]
533const _: () = {
534 ["Size of seL4_ARM_SIDControl_GetFault"]
535 [::core::mem::size_of::<seL4_ARM_SIDControl_GetFault>() - 32usize];
536 ["Alignment of seL4_ARM_SIDControl_GetFault"]
537 [::core::mem::align_of::<seL4_ARM_SIDControl_GetFault>() - 8usize];
538 ["Offset of field: seL4_ARM_SIDControl_GetFault::error"]
539 [::core::mem::offset_of!(seL4_ARM_SIDControl_GetFault, error) - 0usize];
540 ["Offset of field: seL4_ARM_SIDControl_GetFault::status"]
541 [::core::mem::offset_of!(seL4_ARM_SIDControl_GetFault, status) - 8usize];
542 ["Offset of field: seL4_ARM_SIDControl_GetFault::syndrome_0"]
543 [::core::mem::offset_of!(seL4_ARM_SIDControl_GetFault, syndrome_0) - 16usize];
544 ["Offset of field: seL4_ARM_SIDControl_GetFault::syndrome_1"]
545 [::core::mem::offset_of!(seL4_ARM_SIDControl_GetFault, syndrome_1) - 24usize];
546};
547#[repr(C)]
548#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
549pub struct seL4_ARM_CB_CBGetFault {
550 pub error: ::core::ffi::c_int,
551 pub status: seL4_Word,
552 pub address: seL4_Word,
553}
554#[allow(clippy::unnecessary_operation, clippy::identity_op)]
555const _: () = {
556 ["Size of seL4_ARM_CB_CBGetFault"][::core::mem::size_of::<seL4_ARM_CB_CBGetFault>() - 24usize];
557 ["Alignment of seL4_ARM_CB_CBGetFault"]
558 [::core::mem::align_of::<seL4_ARM_CB_CBGetFault>() - 8usize];
559 ["Offset of field: seL4_ARM_CB_CBGetFault::error"]
560 [::core::mem::offset_of!(seL4_ARM_CB_CBGetFault, error) - 0usize];
561 ["Offset of field: seL4_ARM_CB_CBGetFault::status"]
562 [::core::mem::offset_of!(seL4_ARM_CB_CBGetFault, status) - 8usize];
563 ["Offset of field: seL4_ARM_CB_CBGetFault::address"]
564 [::core::mem::offset_of!(seL4_ARM_CB_CBGetFault, address) - 16usize];
565};
566#[repr(C)]
567#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
568pub struct seL4_TCB_GetBreakpoint {
569 pub error: ::core::ffi::c_int,
570 pub vaddr: seL4_Word,
571 pub type_: seL4_Word,
572 pub size: seL4_Word,
573 pub rw: seL4_Word,
574 pub is_enabled: seL4_Bool,
575}
576#[allow(clippy::unnecessary_operation, clippy::identity_op)]
577const _: () = {
578 ["Size of seL4_TCB_GetBreakpoint"][::core::mem::size_of::<seL4_TCB_GetBreakpoint>() - 48usize];
579 ["Alignment of seL4_TCB_GetBreakpoint"]
580 [::core::mem::align_of::<seL4_TCB_GetBreakpoint>() - 8usize];
581 ["Offset of field: seL4_TCB_GetBreakpoint::error"]
582 [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, error) - 0usize];
583 ["Offset of field: seL4_TCB_GetBreakpoint::vaddr"]
584 [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, vaddr) - 8usize];
585 ["Offset of field: seL4_TCB_GetBreakpoint::type_"]
586 [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, type_) - 16usize];
587 ["Offset of field: seL4_TCB_GetBreakpoint::size"]
588 [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, size) - 24usize];
589 ["Offset of field: seL4_TCB_GetBreakpoint::rw"]
590 [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, rw) - 32usize];
591 ["Offset of field: seL4_TCB_GetBreakpoint::is_enabled"]
592 [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, is_enabled) - 40usize];
593};
594#[repr(C)]
595#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
596pub struct seL4_TCB_ConfigureSingleStepping {
597 pub error: ::core::ffi::c_int,
598 pub bp_was_consumed: seL4_Bool,
599}
600#[allow(clippy::unnecessary_operation, clippy::identity_op)]
601const _: () = {
602 ["Size of seL4_TCB_ConfigureSingleStepping"]
603 [::core::mem::size_of::<seL4_TCB_ConfigureSingleStepping>() - 8usize];
604 ["Alignment of seL4_TCB_ConfigureSingleStepping"]
605 [::core::mem::align_of::<seL4_TCB_ConfigureSingleStepping>() - 4usize];
606 ["Offset of field: seL4_TCB_ConfigureSingleStepping::error"]
607 [::core::mem::offset_of!(seL4_TCB_ConfigureSingleStepping, error) - 0usize];
608 ["Offset of field: seL4_TCB_ConfigureSingleStepping::bp_was_consumed"]
609 [::core::mem::offset_of!(seL4_TCB_ConfigureSingleStepping, bp_was_consumed) - 4usize];
610};
611pub mod seL4_RootCNodeCapSlots {
612 pub type Type = ::core::ffi::c_uint;
613 pub const seL4_CapNull: Type = 0;
614 pub const seL4_CapInitThreadTCB: Type = 1;
615 pub const seL4_CapInitThreadCNode: Type = 2;
616 pub const seL4_CapInitThreadVSpace: Type = 3;
617 pub const seL4_CapIRQControl: Type = 4;
618 pub const seL4_CapASIDControl: Type = 5;
619 pub const seL4_CapInitThreadASIDPool: Type = 6;
620 pub const seL4_CapIOPortControl: Type = 7;
621 pub const seL4_CapIOSpace: Type = 8;
622 pub const seL4_CapBootInfoFrame: Type = 9;
623 pub const seL4_CapInitThreadIPCBuffer: Type = 10;
624 pub const seL4_CapDomain: Type = 11;
625 pub const seL4_CapSMMUSIDControl: Type = 12;
626 pub const seL4_CapSMMUCBControl: Type = 13;
627 pub const seL4_CapInitThreadSC: Type = 14;
628 pub const seL4_CapSMC: Type = 15;
629 pub const seL4_NumInitialCaps: Type = 16;
630}
631pub type seL4_SlotPos = seL4_Word;
632#[repr(C)]
633#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
634pub struct seL4_SlotRegion {
635 pub start: seL4_SlotPos,
636 pub end: seL4_SlotPos,
637}
638#[allow(clippy::unnecessary_operation, clippy::identity_op)]
639const _: () = {
640 ["Size of seL4_SlotRegion"][::core::mem::size_of::<seL4_SlotRegion>() - 16usize];
641 ["Alignment of seL4_SlotRegion"][::core::mem::align_of::<seL4_SlotRegion>() - 8usize];
642 ["Offset of field: seL4_SlotRegion::start"]
643 [::core::mem::offset_of!(seL4_SlotRegion, start) - 0usize];
644 ["Offset of field: seL4_SlotRegion::end"]
645 [::core::mem::offset_of!(seL4_SlotRegion, end) - 8usize];
646};
647#[repr(C)]
648#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
649pub struct seL4_UntypedDesc {
650 pub paddr: seL4_Word,
651 pub sizeBits: seL4_Uint8,
652 pub isDevice: seL4_Uint8,
653 pub padding: [seL4_Uint8; 6usize],
654}
655#[allow(clippy::unnecessary_operation, clippy::identity_op)]
656const _: () = {
657 ["Size of seL4_UntypedDesc"][::core::mem::size_of::<seL4_UntypedDesc>() - 16usize];
658 ["Alignment of seL4_UntypedDesc"][::core::mem::align_of::<seL4_UntypedDesc>() - 8usize];
659 ["Offset of field: seL4_UntypedDesc::paddr"]
660 [::core::mem::offset_of!(seL4_UntypedDesc, paddr) - 0usize];
661 ["Offset of field: seL4_UntypedDesc::sizeBits"]
662 [::core::mem::offset_of!(seL4_UntypedDesc, sizeBits) - 8usize];
663 ["Offset of field: seL4_UntypedDesc::isDevice"]
664 [::core::mem::offset_of!(seL4_UntypedDesc, isDevice) - 9usize];
665 ["Offset of field: seL4_UntypedDesc::padding"]
666 [::core::mem::offset_of!(seL4_UntypedDesc, padding) - 10usize];
667};
668#[repr(C)]
669#[derive(Debug, Copy, Clone, PartialEq, Eq)]
670pub struct seL4_BootInfo {
671 pub extraLen: seL4_Word,
672 pub nodeID: seL4_NodeId,
673 pub numNodes: seL4_Word,
674 pub numIOPTLevels: seL4_Word,
675 pub ipcBuffer: *mut seL4_IPCBuffer,
676 pub empty: seL4_SlotRegion,
677 pub sharedFrames: seL4_SlotRegion,
678 pub userImageFrames: seL4_SlotRegion,
679 pub userImagePaging: seL4_SlotRegion,
680 pub ioSpaceCaps: seL4_SlotRegion,
681 pub extraBIPages: seL4_SlotRegion,
682 pub initThreadCNodeSizeBits: seL4_Word,
683 pub initThreadDomain: seL4_Domain,
684 pub schedcontrol: seL4_SlotRegion,
685 pub untyped: seL4_SlotRegion,
686 pub untypedList: [seL4_UntypedDesc; 230usize],
687}
688#[allow(clippy::unnecessary_operation, clippy::identity_op)]
689const _: () = {
690 ["Size of seL4_BootInfo"][::core::mem::size_of::<seL4_BootInfo>() - 3864usize];
691 ["Alignment of seL4_BootInfo"][::core::mem::align_of::<seL4_BootInfo>() - 8usize];
692 ["Offset of field: seL4_BootInfo::extraLen"]
693 [::core::mem::offset_of!(seL4_BootInfo, extraLen) - 0usize];
694 ["Offset of field: seL4_BootInfo::nodeID"]
695 [::core::mem::offset_of!(seL4_BootInfo, nodeID) - 8usize];
696 ["Offset of field: seL4_BootInfo::numNodes"]
697 [::core::mem::offset_of!(seL4_BootInfo, numNodes) - 16usize];
698 ["Offset of field: seL4_BootInfo::numIOPTLevels"]
699 [::core::mem::offset_of!(seL4_BootInfo, numIOPTLevels) - 24usize];
700 ["Offset of field: seL4_BootInfo::ipcBuffer"]
701 [::core::mem::offset_of!(seL4_BootInfo, ipcBuffer) - 32usize];
702 ["Offset of field: seL4_BootInfo::empty"]
703 [::core::mem::offset_of!(seL4_BootInfo, empty) - 40usize];
704 ["Offset of field: seL4_BootInfo::sharedFrames"]
705 [::core::mem::offset_of!(seL4_BootInfo, sharedFrames) - 56usize];
706 ["Offset of field: seL4_BootInfo::userImageFrames"]
707 [::core::mem::offset_of!(seL4_BootInfo, userImageFrames) - 72usize];
708 ["Offset of field: seL4_BootInfo::userImagePaging"]
709 [::core::mem::offset_of!(seL4_BootInfo, userImagePaging) - 88usize];
710 ["Offset of field: seL4_BootInfo::ioSpaceCaps"]
711 [::core::mem::offset_of!(seL4_BootInfo, ioSpaceCaps) - 104usize];
712 ["Offset of field: seL4_BootInfo::extraBIPages"]
713 [::core::mem::offset_of!(seL4_BootInfo, extraBIPages) - 120usize];
714 ["Offset of field: seL4_BootInfo::initThreadCNodeSizeBits"]
715 [::core::mem::offset_of!(seL4_BootInfo, initThreadCNodeSizeBits) - 136usize];
716 ["Offset of field: seL4_BootInfo::initThreadDomain"]
717 [::core::mem::offset_of!(seL4_BootInfo, initThreadDomain) - 144usize];
718 ["Offset of field: seL4_BootInfo::schedcontrol"]
719 [::core::mem::offset_of!(seL4_BootInfo, schedcontrol) - 152usize];
720 ["Offset of field: seL4_BootInfo::untyped"]
721 [::core::mem::offset_of!(seL4_BootInfo, untyped) - 168usize];
722 ["Offset of field: seL4_BootInfo::untypedList"]
723 [::core::mem::offset_of!(seL4_BootInfo, untypedList) - 184usize];
724};
725impl Default for seL4_BootInfo {
726 fn default() -> Self {
727 let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
728 unsafe {
729 ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
730 s.assume_init()
731 }
732 }
733}
734pub mod seL4_BootInfoID {
735 pub type Type = ::core::ffi::c_ulong;
736 pub const SEL4_BOOTINFO_HEADER_PADDING: Type = 0;
737 pub const SEL4_BOOTINFO_HEADER_X86_VBE: Type = 1;
738 pub const SEL4_BOOTINFO_HEADER_X86_MBMMAP: Type = 2;
739 pub const SEL4_BOOTINFO_HEADER_X86_ACPI_RSDP: Type = 3;
740 pub const SEL4_BOOTINFO_HEADER_X86_FRAMEBUFFER: Type = 4;
741 pub const SEL4_BOOTINFO_HEADER_X86_TSC_FREQ: Type = 5;
742 pub const SEL4_BOOTINFO_HEADER_FDT: Type = 6;
743 pub const SEL4_BOOTINFO_HEADER_NUM: Type = 7;
744 pub const _enum_pad_seL4_BootInfoID: Type = 9223372036854775807;
745}
746#[repr(C)]
747#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
748pub struct seL4_BootInfoHeader {
749 pub id: seL4_Word,
750 pub len: seL4_Word,
751}
752#[allow(clippy::unnecessary_operation, clippy::identity_op)]
753const _: () = {
754 ["Size of seL4_BootInfoHeader"][::core::mem::size_of::<seL4_BootInfoHeader>() - 16usize];
755 ["Alignment of seL4_BootInfoHeader"][::core::mem::align_of::<seL4_BootInfoHeader>() - 8usize];
756 ["Offset of field: seL4_BootInfoHeader::id"]
757 [::core::mem::offset_of!(seL4_BootInfoHeader, id) - 0usize];
758 ["Offset of field: seL4_BootInfoHeader::len"]
759 [::core::mem::offset_of!(seL4_BootInfoHeader, len) - 8usize];
760};