sel4_sys/build/target/aarch64-sel4/debug/build/sel4-sys-5c2f18b3ec6d372e/out/
bindings.rs

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