sel4_sys/build/target/x86_64-sel4/debug/build/sel4-sys-7a5588c4d8b74673/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 TLS_GDT_ENTRY: u32 = 7;
6pub const TLS_GDT_SELECTOR: u32 = 59;
7pub const IPCBUF_GDT_ENTRY: u32 = 8;
8pub const IPCBUF_GDT_SELECTOR: u32 = 67;
9pub const seL4_DataFault: u32 = 0;
10pub const seL4_InstructionFault: u32 = 1;
11pub const seL4_WordBits: u32 = 64;
12pub const seL4_WordSizeBits: u32 = 3;
13pub const seL4_PageBits: u32 = 12;
14pub const seL4_SlotBits: u32 = 5;
15pub const seL4_TCBBits: u32 = 11;
16pub const seL4_EndpointBits: u32 = 4;
17pub const seL4_NotificationBits: u32 = 5;
18pub const seL4_PageTableBits: u32 = 12;
19pub const seL4_PageTableEntryBits: u32 = 3;
20pub const seL4_PageTableIndexBits: u32 = 9;
21pub const seL4_PageDirBits: u32 = 12;
22pub const seL4_PageDirEntryBits: u32 = 3;
23pub const seL4_PageDirIndexBits: u32 = 9;
24pub const seL4_PDPTBits: u32 = 12;
25pub const seL4_PDPTEntryBits: u32 = 3;
26pub const seL4_PDPTIndexBits: u32 = 9;
27pub const seL4_PML4Bits: u32 = 12;
28pub const seL4_PML4EntryBits: u32 = 3;
29pub const seL4_PML4IndexBits: u32 = 9;
30pub const seL4_VSpaceBits: u32 = 12;
31pub const seL4_IOPageTableBits: u32 = 12;
32pub const seL4_LargePageBits: u32 = 21;
33pub const seL4_HugePageBits: u32 = 30;
34pub const seL4_NumASIDPoolsBits: u32 = 3;
35pub const seL4_ASIDPoolBits: u32 = 12;
36pub const seL4_ASIDPoolIndexBits: u32 = 9;
37pub const seL4_MinUntypedBits: u32 = 4;
38pub const seL4_MaxUntypedBits: u32 = 47;
39pub const seL4_FastMessageRegisters: u32 = 4;
40pub const seL4_IPCBufferSizeBits: u32 = 10;
41pub const seL4_UserTop: u64 = 140737488351232;
42pub const seL4_X86_IOPageTableObject: u32 = 16777215;
43pub const seL4_X86_VCPUObject: u32 = 16777214;
44pub const seL4_X86_EPTPML4Object: u32 = 16777213;
45pub const seL4_X86_EPTPDPTObject: u32 = 16777212;
46pub const seL4_X86_EPTPDObject: u32 = 16777211;
47pub const seL4_X86_EPTPTObject: u32 = 16777210;
48pub const seL4_CapRightsBits: u32 = 4;
49pub const seL4_GuardSizeBits: u32 = 6;
50pub const seL4_GuardBits: u32 = 58;
51pub const seL4_BadgeBits: u32 = 64;
52pub const seL4_UntypedRetypeMaxObjects: u32 = 256;
53pub const seL4_NilData: u32 = 0;
54pub const IRQ_OFFSET: u32 = 48;
55pub const VECTOR_MIN: u32 = 0;
56pub const VECTOR_MAX: u32 = 109;
57pub const MSI_MIN: u32 = 0;
58pub const MSI_MAX: u32 = 109;
59pub const seL4_VCPUBits: u32 = 14;
60pub const seL4_X86_VCPUBits: u32 = 14;
61pub const seL4_X86_EPTPML4EntryBits: u32 = 3;
62pub const seL4_X86_EPTPML4IndexBits: u32 = 9;
63pub const seL4_X86_EPTPML4Bits: u32 = 12;
64pub const seL4_X86_EPTPDPTEntryBits: u32 = 3;
65pub const seL4_X86_EPTPDPTIndexBits: u32 = 9;
66pub const seL4_X86_EPTPDPTBits: u32 = 12;
67pub const seL4_X86_EPTPDEntryBits: u32 = 3;
68pub const seL4_X86_EPTPDIndexBits: u32 = 9;
69pub const seL4_X86_EPTPDBits: u32 = 12;
70pub const seL4_X86_EPTPTEntryBits: u32 = 3;
71pub const seL4_X86_EPTPTIndexBits: u32 = 9;
72pub const seL4_X86_EPTPTBits: u32 = 12;
73pub const seL4_BootInfoFrameBits: u32 = 12;
74pub const SEL4_MAPPING_LOOKUP_LEVEL: u32 = 2;
75pub const SEL4_MAPPING_LOOKUP_NO_PT: u32 = 21;
76pub const SEL4_MAPPING_LOOKUP_NO_PD: u32 = 30;
77pub const SEL4_MAPPING_LOOKUP_NO_PDPT: u32 = 39;
78pub const SEL4_MAPPING_LOOKUP_NO_EPTPDPT: u32 = 39;
79pub const SEL4_MAPPING_LOOKUP_NO_EPTPD: u32 = 30;
80pub const SEL4_MAPPING_LOOKUP_NO_EPTPT: u32 = 21;
81pub type seL4_Int8 = ::core::ffi::c_schar;
82pub type seL4_Uint8 = ::core::ffi::c_uchar;
83pub type seL4_Int16 = ::core::ffi::c_short;
84pub type seL4_Uint16 = ::core::ffi::c_ushort;
85pub type seL4_Int32 = ::core::ffi::c_int;
86pub type seL4_Uint32 = ::core::ffi::c_uint;
87pub type seL4_Int64 = ::core::ffi::c_long;
88pub type seL4_Uint64 = ::core::ffi::c_ulong;
89pub type seL4_Bool = seL4_Int8;
90pub type seL4_Word = seL4_Uint64;
91pub type seL4_CPtr = seL4_Word;
92pub mod seL4_VMFault_Msg {
93    pub type Type = ::core::ffi::c_ulong;
94    pub const seL4_VMFault_IP: Type = 0;
95    pub const seL4_VMFault_Addr: Type = 1;
96    pub const seL4_VMFault_PrefetchFault: Type = 2;
97    pub const seL4_VMFault_FSR: Type = 3;
98    pub const seL4_VMFault_Length: Type = 4;
99    pub const _enum_pad_seL4_VMFault_Msg: Type = 9223372036854775807;
100}
101pub mod seL4_UnknownSyscall_Msg {
102    pub type Type = ::core::ffi::c_ulong;
103    pub const seL4_UnknownSyscall_RAX: Type = 0;
104    pub const seL4_UnknownSyscall_RBX: Type = 1;
105    pub const seL4_UnknownSyscall_RCX: Type = 2;
106    pub const seL4_UnknownSyscall_RDX: Type = 3;
107    pub const seL4_UnknownSyscall_RSI: Type = 4;
108    pub const seL4_UnknownSyscall_RDI: Type = 5;
109    pub const seL4_UnknownSyscall_RBP: Type = 6;
110    pub const seL4_UnknownSyscall_R8: Type = 7;
111    pub const seL4_UnknownSyscall_R9: Type = 8;
112    pub const seL4_UnknownSyscall_R10: Type = 9;
113    pub const seL4_UnknownSyscall_R11: Type = 10;
114    pub const seL4_UnknownSyscall_R12: Type = 11;
115    pub const seL4_UnknownSyscall_R13: Type = 12;
116    pub const seL4_UnknownSyscall_R14: Type = 13;
117    pub const seL4_UnknownSyscall_R15: Type = 14;
118    pub const seL4_UnknownSyscall_FaultIP: Type = 15;
119    pub const seL4_UnknownSyscall_SP: Type = 16;
120    pub const seL4_UnknownSyscall_FLAGS: Type = 17;
121    pub const seL4_UnknownSyscall_Syscall: Type = 18;
122    pub const seL4_UnknownSyscall_Length: Type = 19;
123    pub const _enum_pad_seL4_UnknownSyscall_Msg: Type = 9223372036854775807;
124}
125pub mod seL4_UserException_Msg {
126    pub type Type = ::core::ffi::c_ulong;
127    pub const seL4_UserException_FaultIP: Type = 0;
128    pub const seL4_UserException_SP: Type = 1;
129    pub const seL4_UserException_FLAGS: Type = 2;
130    pub const seL4_UserException_Number: Type = 3;
131    pub const seL4_UserException_Code: Type = 4;
132    pub const seL4_UserException_Length: Type = 5;
133    pub const _enum_pad_seL4_UserException_Msg: Type = 9223372036854775807;
134}
135pub type seL4_X64_PML4 = seL4_CPtr;
136#[repr(C)]
137#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
138pub struct seL4_UserContext_ {
139    pub rip: seL4_Word,
140    pub rsp: seL4_Word,
141    pub rflags: seL4_Word,
142    pub rax: seL4_Word,
143    pub rbx: seL4_Word,
144    pub rcx: seL4_Word,
145    pub rdx: seL4_Word,
146    pub rsi: seL4_Word,
147    pub rdi: seL4_Word,
148    pub rbp: seL4_Word,
149    pub r8: seL4_Word,
150    pub r9: seL4_Word,
151    pub r10: seL4_Word,
152    pub r11: seL4_Word,
153    pub r12: seL4_Word,
154    pub r13: seL4_Word,
155    pub r14: seL4_Word,
156    pub r15: seL4_Word,
157    pub fs_base: seL4_Word,
158    pub gs_base: seL4_Word,
159}
160#[allow(clippy::unnecessary_operation, clippy::identity_op)]
161const _: () = {
162    ["Size of seL4_UserContext_"][::core::mem::size_of::<seL4_UserContext_>() - 160usize];
163    ["Alignment of seL4_UserContext_"][::core::mem::align_of::<seL4_UserContext_>() - 8usize];
164    ["Offset of field: seL4_UserContext_::rip"]
165        [::core::mem::offset_of!(seL4_UserContext_, rip) - 0usize];
166    ["Offset of field: seL4_UserContext_::rsp"]
167        [::core::mem::offset_of!(seL4_UserContext_, rsp) - 8usize];
168    ["Offset of field: seL4_UserContext_::rflags"]
169        [::core::mem::offset_of!(seL4_UserContext_, rflags) - 16usize];
170    ["Offset of field: seL4_UserContext_::rax"]
171        [::core::mem::offset_of!(seL4_UserContext_, rax) - 24usize];
172    ["Offset of field: seL4_UserContext_::rbx"]
173        [::core::mem::offset_of!(seL4_UserContext_, rbx) - 32usize];
174    ["Offset of field: seL4_UserContext_::rcx"]
175        [::core::mem::offset_of!(seL4_UserContext_, rcx) - 40usize];
176    ["Offset of field: seL4_UserContext_::rdx"]
177        [::core::mem::offset_of!(seL4_UserContext_, rdx) - 48usize];
178    ["Offset of field: seL4_UserContext_::rsi"]
179        [::core::mem::offset_of!(seL4_UserContext_, rsi) - 56usize];
180    ["Offset of field: seL4_UserContext_::rdi"]
181        [::core::mem::offset_of!(seL4_UserContext_, rdi) - 64usize];
182    ["Offset of field: seL4_UserContext_::rbp"]
183        [::core::mem::offset_of!(seL4_UserContext_, rbp) - 72usize];
184    ["Offset of field: seL4_UserContext_::r8"]
185        [::core::mem::offset_of!(seL4_UserContext_, r8) - 80usize];
186    ["Offset of field: seL4_UserContext_::r9"]
187        [::core::mem::offset_of!(seL4_UserContext_, r9) - 88usize];
188    ["Offset of field: seL4_UserContext_::r10"]
189        [::core::mem::offset_of!(seL4_UserContext_, r10) - 96usize];
190    ["Offset of field: seL4_UserContext_::r11"]
191        [::core::mem::offset_of!(seL4_UserContext_, r11) - 104usize];
192    ["Offset of field: seL4_UserContext_::r12"]
193        [::core::mem::offset_of!(seL4_UserContext_, r12) - 112usize];
194    ["Offset of field: seL4_UserContext_::r13"]
195        [::core::mem::offset_of!(seL4_UserContext_, r13) - 120usize];
196    ["Offset of field: seL4_UserContext_::r14"]
197        [::core::mem::offset_of!(seL4_UserContext_, r14) - 128usize];
198    ["Offset of field: seL4_UserContext_::r15"]
199        [::core::mem::offset_of!(seL4_UserContext_, r15) - 136usize];
200    ["Offset of field: seL4_UserContext_::fs_base"]
201        [::core::mem::offset_of!(seL4_UserContext_, fs_base) - 144usize];
202    ["Offset of field: seL4_UserContext_::gs_base"]
203        [::core::mem::offset_of!(seL4_UserContext_, gs_base) - 152usize];
204};
205pub type seL4_UserContext = seL4_UserContext_;
206pub type seL4_X86_ASIDControl = seL4_CPtr;
207pub type seL4_X86_ASIDPool = seL4_CPtr;
208pub type seL4_X86_IOSpace = seL4_CPtr;
209pub type seL4_X86_IOPort = seL4_CPtr;
210pub type seL4_X86_IOPortControl = seL4_CPtr;
211pub type seL4_X86_Page = seL4_CPtr;
212pub type seL4_X86_PDPT = seL4_CPtr;
213pub type seL4_X86_PageDirectory = seL4_CPtr;
214pub type seL4_X86_PageTable = seL4_CPtr;
215pub type seL4_X86_IOPageTable = seL4_CPtr;
216pub type seL4_X86_EPTPML4 = seL4_CPtr;
217pub type seL4_X86_EPTPDPT = seL4_CPtr;
218pub type seL4_X86_EPTPD = seL4_CPtr;
219pub type seL4_X86_EPTPT = seL4_CPtr;
220pub type seL4_X86_VCPU = seL4_CPtr;
221pub mod seL4_X86_VMAttributes {
222    pub type Type = ::core::ffi::c_ulong;
223    pub const seL4_X86_Default_VMAttributes: Type = 0;
224    pub const seL4_X86_WriteBack: Type = 0;
225    pub const seL4_X86_WriteThrough: Type = 1;
226    pub const seL4_X86_CacheDisabled: Type = 2;
227    pub const seL4_X86_Uncacheable: Type = 3;
228    pub const seL4_X86_WriteCombining: Type = 4;
229    pub const _enum_pad_seL4_X86_VMAttributes: Type = 9223372036854775807;
230}
231pub mod seL4_X86_EPT_VMAttributes {
232    pub type Type = ::core::ffi::c_ulong;
233    pub const seL4_X86_EPT_Uncached_VMAttributes: Type = 6;
234    pub const seL4_X86_EPT_Uncacheable: Type = 0;
235    pub const seL4_X86_EPT_WriteCombining: Type = 1;
236    pub const seL4_X86_EPT_WriteThrough: Type = 4;
237    pub const seL4_X86_EPT_WriteProtected: Type = 5;
238    pub const seL4_X86_EPT_WriteBack: Type = 6;
239    pub const seL4_X86_EPT_Default_VMAttributes: Type = 6;
240    pub const _enum_pad_seL4_X86_EPT_VMAttributes: Type = 9223372036854775807;
241}
242#[repr(C)]
243#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
244pub struct seL4_VCPUContext_ {
245    pub eax: seL4_Word,
246    pub ebx: seL4_Word,
247    pub ecx: seL4_Word,
248    pub edx: seL4_Word,
249    pub esi: seL4_Word,
250    pub edi: seL4_Word,
251    pub ebp: seL4_Word,
252}
253#[allow(clippy::unnecessary_operation, clippy::identity_op)]
254const _: () = {
255    ["Size of seL4_VCPUContext_"][::core::mem::size_of::<seL4_VCPUContext_>() - 56usize];
256    ["Alignment of seL4_VCPUContext_"][::core::mem::align_of::<seL4_VCPUContext_>() - 8usize];
257    ["Offset of field: seL4_VCPUContext_::eax"]
258        [::core::mem::offset_of!(seL4_VCPUContext_, eax) - 0usize];
259    ["Offset of field: seL4_VCPUContext_::ebx"]
260        [::core::mem::offset_of!(seL4_VCPUContext_, ebx) - 8usize];
261    ["Offset of field: seL4_VCPUContext_::ecx"]
262        [::core::mem::offset_of!(seL4_VCPUContext_, ecx) - 16usize];
263    ["Offset of field: seL4_VCPUContext_::edx"]
264        [::core::mem::offset_of!(seL4_VCPUContext_, edx) - 24usize];
265    ["Offset of field: seL4_VCPUContext_::esi"]
266        [::core::mem::offset_of!(seL4_VCPUContext_, esi) - 32usize];
267    ["Offset of field: seL4_VCPUContext_::edi"]
268        [::core::mem::offset_of!(seL4_VCPUContext_, edi) - 40usize];
269    ["Offset of field: seL4_VCPUContext_::ebp"]
270        [::core::mem::offset_of!(seL4_VCPUContext_, ebp) - 48usize];
271};
272pub type seL4_VCPUContext = seL4_VCPUContext_;
273pub mod api_object {
274    pub type Type = ::core::ffi::c_uint;
275    pub const seL4_UntypedObject: Type = 0;
276    pub const seL4_TCBObject: Type = 1;
277    pub const seL4_EndpointObject: Type = 2;
278    pub const seL4_NotificationObject: Type = 3;
279    pub const seL4_CapTableObject: Type = 4;
280    pub const seL4_NonArchObjectTypeCount: Type = 5;
281}
282pub use self::api_object::Type as seL4_ObjectType;
283pub mod _mode_object {
284    pub type Type = ::core::ffi::c_uint;
285    pub const seL4_X86_PDPTObject: Type = 5;
286    pub const seL4_X64_PML4Object: Type = 6;
287    pub const seL4_X64_HugePageObject: Type = 7;
288    pub const seL4_ModeObjectTypeCount: Type = 8;
289}
290pub use self::_mode_object::Type as seL4_seL4ArchObjectType;
291pub mod _object {
292    pub type Type = ::core::ffi::c_uint;
293    pub const seL4_X86_4K: Type = 8;
294    pub const seL4_X86_LargePageObject: Type = 9;
295    pub const seL4_X86_PageTableObject: Type = 10;
296    pub const seL4_X86_PageDirectoryObject: Type = 11;
297    pub const seL4_ObjectTypeCount: Type = 12;
298}
299pub use self::_object::Type as seL4_ArchObjectType;
300pub mod seL4_Error {
301    pub type Type = ::core::ffi::c_uint;
302    pub const seL4_NoError: Type = 0;
303    pub const seL4_InvalidArgument: Type = 1;
304    pub const seL4_InvalidCapability: Type = 2;
305    pub const seL4_IllegalOperation: Type = 3;
306    pub const seL4_RangeError: Type = 4;
307    pub const seL4_AlignmentError: Type = 5;
308    pub const seL4_FailedLookup: Type = 6;
309    pub const seL4_TruncatedMessage: Type = 7;
310    pub const seL4_DeleteFirst: Type = 8;
311    pub const seL4_RevokeFirst: Type = 9;
312    pub const seL4_NotEnoughMemory: Type = 10;
313    pub const seL4_NumErrors: Type = 11;
314}
315pub mod priorityConstants {
316    pub type Type = ::core::ffi::c_int;
317    pub const seL4_InvalidPrio: Type = -1;
318    pub const seL4_MinPrio: Type = 0;
319    pub const seL4_MaxPrio: Type = 255;
320}
321pub mod seL4_MsgLimits {
322    pub type Type = ::core::ffi::c_uint;
323    pub const seL4_MsgLengthBits: Type = 7;
324    pub const seL4_MsgExtraCapBits: Type = 2;
325    pub const seL4_MsgMaxLength: Type = 120;
326}
327pub mod seL4_LookupFailureType {
328    pub type Type = ::core::ffi::c_ulong;
329    pub const seL4_NoFailure: Type = 0;
330    pub const seL4_InvalidRoot: Type = 1;
331    pub const seL4_MissingCapability: Type = 2;
332    pub const seL4_DepthMismatch: Type = 3;
333    pub const seL4_GuardMismatch: Type = 4;
334    pub const _enum_pad_seL4_LookupFailureType: Type = 9223372036854775807;
335}
336pub mod seL4_TCBFlag {
337    pub type Type = ::core::ffi::c_ulong;
338    pub const seL4_TCBFlag_NoFlag: Type = 0;
339    pub const seL4_TCBFlag_fpuDisabled: Type = 1;
340    pub const _enum_pad_seL4_TCBFlag: Type = 9223372036854775807;
341    pub const seL4_TCBFlag_MASK: Type = 1;
342}
343#[repr(C)]
344pub struct seL4_IPCBuffer_ {
345    pub tag: seL4_MessageInfo_t,
346    pub msg: [seL4_Word; 120usize],
347    pub userData: seL4_Word,
348    pub caps_or_badges: [seL4_Word; 3usize],
349    pub receiveCNode: seL4_CPtr,
350    pub receiveIndex: seL4_CPtr,
351    pub receiveDepth: seL4_Word,
352}
353#[allow(clippy::unnecessary_operation, clippy::identity_op)]
354const _: () = {
355    ["Size of seL4_IPCBuffer_"][::core::mem::size_of::<seL4_IPCBuffer_>() - 1024usize];
356    ["Alignment of seL4_IPCBuffer_"][::core::mem::align_of::<seL4_IPCBuffer_>() - 8usize];
357    ["Offset of field: seL4_IPCBuffer_::tag"]
358        [::core::mem::offset_of!(seL4_IPCBuffer_, tag) - 0usize];
359    ["Offset of field: seL4_IPCBuffer_::msg"]
360        [::core::mem::offset_of!(seL4_IPCBuffer_, msg) - 8usize];
361    ["Offset of field: seL4_IPCBuffer_::userData"]
362        [::core::mem::offset_of!(seL4_IPCBuffer_, userData) - 968usize];
363    ["Offset of field: seL4_IPCBuffer_::caps_or_badges"]
364        [::core::mem::offset_of!(seL4_IPCBuffer_, caps_or_badges) - 976usize];
365    ["Offset of field: seL4_IPCBuffer_::receiveCNode"]
366        [::core::mem::offset_of!(seL4_IPCBuffer_, receiveCNode) - 1000usize];
367    ["Offset of field: seL4_IPCBuffer_::receiveIndex"]
368        [::core::mem::offset_of!(seL4_IPCBuffer_, receiveIndex) - 1008usize];
369    ["Offset of field: seL4_IPCBuffer_::receiveDepth"]
370        [::core::mem::offset_of!(seL4_IPCBuffer_, receiveDepth) - 1016usize];
371};
372impl Default for seL4_IPCBuffer_ {
373    fn default() -> Self {
374        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
375        unsafe {
376            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
377            s.assume_init()
378        }
379    }
380}
381pub type seL4_IPCBuffer = seL4_IPCBuffer_;
382pub mod seL4_CapFault_Msg {
383    pub type Type = ::core::ffi::c_ulong;
384    pub const seL4_CapFault_IP: Type = 0;
385    pub const seL4_CapFault_Addr: Type = 1;
386    pub const seL4_CapFault_InRecvPhase: Type = 2;
387    pub const seL4_CapFault_LookupFailureType: Type = 3;
388    pub const seL4_CapFault_BitsLeft: Type = 4;
389    pub const seL4_CapFault_DepthMismatch_BitsFound: Type = 5;
390    pub const seL4_CapFault_GuardMismatch_GuardFound: Type = 5;
391    pub const seL4_CapFault_GuardMismatch_BitsFound: Type = 6;
392    pub const _enum_pad_seL4_CapFault_Msg: Type = 9223372036854775807;
393}
394pub type seL4_NodeId = seL4_Word;
395pub type seL4_PAddr = seL4_Word;
396pub type seL4_Domain = seL4_Word;
397pub type seL4_CNode = seL4_CPtr;
398pub type seL4_IRQHandler = seL4_CPtr;
399pub type seL4_IRQControl = seL4_CPtr;
400pub type seL4_TCB = seL4_CPtr;
401pub type seL4_Untyped = seL4_CPtr;
402pub type seL4_DomainSet = seL4_CPtr;
403pub type seL4_SchedContext = seL4_CPtr;
404pub type seL4_SchedControl = seL4_CPtr;
405pub type seL4_Time = seL4_Uint64;
406#[repr(C)]
407#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
408pub struct seL4_X86_VCPU_ReadMSR {
409    pub error: ::core::ffi::c_int,
410    pub value: seL4_Word,
411}
412#[allow(clippy::unnecessary_operation, clippy::identity_op)]
413const _: () = {
414    ["Size of seL4_X86_VCPU_ReadMSR"][::core::mem::size_of::<seL4_X86_VCPU_ReadMSR>() - 16usize];
415    ["Alignment of seL4_X86_VCPU_ReadMSR"]
416        [::core::mem::align_of::<seL4_X86_VCPU_ReadMSR>() - 8usize];
417    ["Offset of field: seL4_X86_VCPU_ReadMSR::error"]
418        [::core::mem::offset_of!(seL4_X86_VCPU_ReadMSR, error) - 0usize];
419    ["Offset of field: seL4_X86_VCPU_ReadMSR::value"]
420        [::core::mem::offset_of!(seL4_X86_VCPU_ReadMSR, value) - 8usize];
421};
422#[repr(C)]
423#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
424pub struct seL4_X86_VCPU_WriteMSR {
425    pub error: ::core::ffi::c_int,
426    pub written: seL4_Word,
427}
428#[allow(clippy::unnecessary_operation, clippy::identity_op)]
429const _: () = {
430    ["Size of seL4_X86_VCPU_WriteMSR"][::core::mem::size_of::<seL4_X86_VCPU_WriteMSR>() - 16usize];
431    ["Alignment of seL4_X86_VCPU_WriteMSR"]
432        [::core::mem::align_of::<seL4_X86_VCPU_WriteMSR>() - 8usize];
433    ["Offset of field: seL4_X86_VCPU_WriteMSR::error"]
434        [::core::mem::offset_of!(seL4_X86_VCPU_WriteMSR, error) - 0usize];
435    ["Offset of field: seL4_X86_VCPU_WriteMSR::written"]
436        [::core::mem::offset_of!(seL4_X86_VCPU_WriteMSR, written) - 8usize];
437};
438#[repr(C)]
439#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
440pub struct seL4_X86_PageDirectory_GetStatusBits {
441    pub error: ::core::ffi::c_int,
442    pub accessed: seL4_Word,
443    pub dirty: seL4_Word,
444}
445#[allow(clippy::unnecessary_operation, clippy::identity_op)]
446const _: () = {
447    ["Size of seL4_X86_PageDirectory_GetStatusBits"]
448        [::core::mem::size_of::<seL4_X86_PageDirectory_GetStatusBits>() - 24usize];
449    ["Alignment of seL4_X86_PageDirectory_GetStatusBits"]
450        [::core::mem::align_of::<seL4_X86_PageDirectory_GetStatusBits>() - 8usize];
451    ["Offset of field: seL4_X86_PageDirectory_GetStatusBits::error"]
452        [::core::mem::offset_of!(seL4_X86_PageDirectory_GetStatusBits, error) - 0usize];
453    ["Offset of field: seL4_X86_PageDirectory_GetStatusBits::accessed"]
454        [::core::mem::offset_of!(seL4_X86_PageDirectory_GetStatusBits, accessed) - 8usize];
455    ["Offset of field: seL4_X86_PageDirectory_GetStatusBits::dirty"]
456        [::core::mem::offset_of!(seL4_X86_PageDirectory_GetStatusBits, dirty) - 16usize];
457};
458#[repr(C)]
459#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
460pub struct seL4_X86_VCPU_ReadVMCS {
461    pub error: ::core::ffi::c_int,
462    pub value: seL4_Word,
463}
464#[allow(clippy::unnecessary_operation, clippy::identity_op)]
465const _: () = {
466    ["Size of seL4_X86_VCPU_ReadVMCS"][::core::mem::size_of::<seL4_X86_VCPU_ReadVMCS>() - 16usize];
467    ["Alignment of seL4_X86_VCPU_ReadVMCS"]
468        [::core::mem::align_of::<seL4_X86_VCPU_ReadVMCS>() - 8usize];
469    ["Offset of field: seL4_X86_VCPU_ReadVMCS::error"]
470        [::core::mem::offset_of!(seL4_X86_VCPU_ReadVMCS, error) - 0usize];
471    ["Offset of field: seL4_X86_VCPU_ReadVMCS::value"]
472        [::core::mem::offset_of!(seL4_X86_VCPU_ReadVMCS, value) - 8usize];
473};
474#[repr(C)]
475#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
476pub struct seL4_X86_VCPU_WriteVMCS {
477    pub error: ::core::ffi::c_int,
478    pub written: seL4_Word,
479}
480#[allow(clippy::unnecessary_operation, clippy::identity_op)]
481const _: () = {
482    ["Size of seL4_X86_VCPU_WriteVMCS"]
483        [::core::mem::size_of::<seL4_X86_VCPU_WriteVMCS>() - 16usize];
484    ["Alignment of seL4_X86_VCPU_WriteVMCS"]
485        [::core::mem::align_of::<seL4_X86_VCPU_WriteVMCS>() - 8usize];
486    ["Offset of field: seL4_X86_VCPU_WriteVMCS::error"]
487        [::core::mem::offset_of!(seL4_X86_VCPU_WriteVMCS, error) - 0usize];
488    ["Offset of field: seL4_X86_VCPU_WriteVMCS::written"]
489        [::core::mem::offset_of!(seL4_X86_VCPU_WriteVMCS, written) - 8usize];
490};
491#[repr(C)]
492#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
493pub struct seL4_TCB_GetBreakpoint {
494    pub error: ::core::ffi::c_int,
495    pub vaddr: seL4_Word,
496    pub type_: seL4_Word,
497    pub size: seL4_Word,
498    pub rw: seL4_Word,
499    pub is_enabled: seL4_Bool,
500}
501#[allow(clippy::unnecessary_operation, clippy::identity_op)]
502const _: () = {
503    ["Size of seL4_TCB_GetBreakpoint"][::core::mem::size_of::<seL4_TCB_GetBreakpoint>() - 48usize];
504    ["Alignment of seL4_TCB_GetBreakpoint"]
505        [::core::mem::align_of::<seL4_TCB_GetBreakpoint>() - 8usize];
506    ["Offset of field: seL4_TCB_GetBreakpoint::error"]
507        [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, error) - 0usize];
508    ["Offset of field: seL4_TCB_GetBreakpoint::vaddr"]
509        [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, vaddr) - 8usize];
510    ["Offset of field: seL4_TCB_GetBreakpoint::type_"]
511        [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, type_) - 16usize];
512    ["Offset of field: seL4_TCB_GetBreakpoint::size"]
513        [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, size) - 24usize];
514    ["Offset of field: seL4_TCB_GetBreakpoint::rw"]
515        [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, rw) - 32usize];
516    ["Offset of field: seL4_TCB_GetBreakpoint::is_enabled"]
517        [::core::mem::offset_of!(seL4_TCB_GetBreakpoint, is_enabled) - 40usize];
518};
519#[repr(C)]
520#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
521pub struct seL4_TCB_ConfigureSingleStepping {
522    pub error: ::core::ffi::c_int,
523    pub bp_was_consumed: seL4_Bool,
524}
525#[allow(clippy::unnecessary_operation, clippy::identity_op)]
526const _: () = {
527    ["Size of seL4_TCB_ConfigureSingleStepping"]
528        [::core::mem::size_of::<seL4_TCB_ConfigureSingleStepping>() - 8usize];
529    ["Alignment of seL4_TCB_ConfigureSingleStepping"]
530        [::core::mem::align_of::<seL4_TCB_ConfigureSingleStepping>() - 4usize];
531    ["Offset of field: seL4_TCB_ConfigureSingleStepping::error"]
532        [::core::mem::offset_of!(seL4_TCB_ConfigureSingleStepping, error) - 0usize];
533    ["Offset of field: seL4_TCB_ConfigureSingleStepping::bp_was_consumed"]
534        [::core::mem::offset_of!(seL4_TCB_ConfigureSingleStepping, bp_was_consumed) - 4usize];
535};
536#[repr(C)]
537#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
538pub struct seL4_SchedContext_Consumed {
539    pub error: ::core::ffi::c_int,
540    pub consumed: seL4_Time,
541}
542#[allow(clippy::unnecessary_operation, clippy::identity_op)]
543const _: () = {
544    ["Size of seL4_SchedContext_Consumed"]
545        [::core::mem::size_of::<seL4_SchedContext_Consumed>() - 16usize];
546    ["Alignment of seL4_SchedContext_Consumed"]
547        [::core::mem::align_of::<seL4_SchedContext_Consumed>() - 8usize];
548    ["Offset of field: seL4_SchedContext_Consumed::error"]
549        [::core::mem::offset_of!(seL4_SchedContext_Consumed, error) - 0usize];
550    ["Offset of field: seL4_SchedContext_Consumed::consumed"]
551        [::core::mem::offset_of!(seL4_SchedContext_Consumed, consumed) - 8usize];
552};
553#[repr(C)]
554#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
555pub struct seL4_SchedContext_YieldTo {
556    pub error: ::core::ffi::c_int,
557    pub consumed: seL4_Time,
558}
559#[allow(clippy::unnecessary_operation, clippy::identity_op)]
560const _: () = {
561    ["Size of seL4_SchedContext_YieldTo"]
562        [::core::mem::size_of::<seL4_SchedContext_YieldTo>() - 16usize];
563    ["Alignment of seL4_SchedContext_YieldTo"]
564        [::core::mem::align_of::<seL4_SchedContext_YieldTo>() - 8usize];
565    ["Offset of field: seL4_SchedContext_YieldTo::error"]
566        [::core::mem::offset_of!(seL4_SchedContext_YieldTo, error) - 0usize];
567    ["Offset of field: seL4_SchedContext_YieldTo::consumed"]
568        [::core::mem::offset_of!(seL4_SchedContext_YieldTo, consumed) - 8usize];
569};
570pub mod seL4_RootCNodeCapSlots {
571    pub type Type = ::core::ffi::c_uint;
572    pub const seL4_CapNull: Type = 0;
573    pub const seL4_CapInitThreadTCB: Type = 1;
574    pub const seL4_CapInitThreadCNode: Type = 2;
575    pub const seL4_CapInitThreadVSpace: Type = 3;
576    pub const seL4_CapIRQControl: Type = 4;
577    pub const seL4_CapASIDControl: Type = 5;
578    pub const seL4_CapInitThreadASIDPool: Type = 6;
579    pub const seL4_CapIOPortControl: Type = 7;
580    pub const seL4_CapIOSpace: Type = 8;
581    pub const seL4_CapBootInfoFrame: Type = 9;
582    pub const seL4_CapInitThreadIPCBuffer: Type = 10;
583    pub const seL4_CapDomain: Type = 11;
584    pub const seL4_CapSMMUSIDControl: Type = 12;
585    pub const seL4_CapSMMUCBControl: Type = 13;
586    pub const seL4_CapInitThreadSC: Type = 14;
587    pub const seL4_CapSMC: Type = 15;
588    pub const seL4_NumInitialCaps: Type = 16;
589}
590pub type seL4_SlotPos = seL4_Word;
591#[repr(C)]
592#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
593pub struct seL4_SlotRegion {
594    pub start: seL4_SlotPos,
595    pub end: seL4_SlotPos,
596}
597#[allow(clippy::unnecessary_operation, clippy::identity_op)]
598const _: () = {
599    ["Size of seL4_SlotRegion"][::core::mem::size_of::<seL4_SlotRegion>() - 16usize];
600    ["Alignment of seL4_SlotRegion"][::core::mem::align_of::<seL4_SlotRegion>() - 8usize];
601    ["Offset of field: seL4_SlotRegion::start"]
602        [::core::mem::offset_of!(seL4_SlotRegion, start) - 0usize];
603    ["Offset of field: seL4_SlotRegion::end"]
604        [::core::mem::offset_of!(seL4_SlotRegion, end) - 8usize];
605};
606#[repr(C)]
607#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
608pub struct seL4_UntypedDesc {
609    pub paddr: seL4_Word,
610    pub sizeBits: seL4_Uint8,
611    pub isDevice: seL4_Uint8,
612    pub padding: [seL4_Uint8; 6usize],
613}
614#[allow(clippy::unnecessary_operation, clippy::identity_op)]
615const _: () = {
616    ["Size of seL4_UntypedDesc"][::core::mem::size_of::<seL4_UntypedDesc>() - 16usize];
617    ["Alignment of seL4_UntypedDesc"][::core::mem::align_of::<seL4_UntypedDesc>() - 8usize];
618    ["Offset of field: seL4_UntypedDesc::paddr"]
619        [::core::mem::offset_of!(seL4_UntypedDesc, paddr) - 0usize];
620    ["Offset of field: seL4_UntypedDesc::sizeBits"]
621        [::core::mem::offset_of!(seL4_UntypedDesc, sizeBits) - 8usize];
622    ["Offset of field: seL4_UntypedDesc::isDevice"]
623        [::core::mem::offset_of!(seL4_UntypedDesc, isDevice) - 9usize];
624    ["Offset of field: seL4_UntypedDesc::padding"]
625        [::core::mem::offset_of!(seL4_UntypedDesc, padding) - 10usize];
626};
627#[repr(C)]
628#[derive(Debug, Copy, Clone, PartialEq, Eq)]
629pub struct seL4_BootInfo {
630    pub extraLen: seL4_Word,
631    pub nodeID: seL4_NodeId,
632    pub numNodes: seL4_Word,
633    pub numIOPTLevels: seL4_Word,
634    pub ipcBuffer: *mut seL4_IPCBuffer,
635    pub empty: seL4_SlotRegion,
636    pub sharedFrames: seL4_SlotRegion,
637    pub userImageFrames: seL4_SlotRegion,
638    pub userImagePaging: seL4_SlotRegion,
639    pub ioSpaceCaps: seL4_SlotRegion,
640    pub extraBIPages: seL4_SlotRegion,
641    pub initThreadCNodeSizeBits: seL4_Word,
642    pub initThreadDomain: seL4_Domain,
643    pub untyped: seL4_SlotRegion,
644    pub untypedList: [seL4_UntypedDesc; 230usize],
645}
646#[allow(clippy::unnecessary_operation, clippy::identity_op)]
647const _: () = {
648    ["Size of seL4_BootInfo"][::core::mem::size_of::<seL4_BootInfo>() - 3848usize];
649    ["Alignment of seL4_BootInfo"][::core::mem::align_of::<seL4_BootInfo>() - 8usize];
650    ["Offset of field: seL4_BootInfo::extraLen"]
651        [::core::mem::offset_of!(seL4_BootInfo, extraLen) - 0usize];
652    ["Offset of field: seL4_BootInfo::nodeID"]
653        [::core::mem::offset_of!(seL4_BootInfo, nodeID) - 8usize];
654    ["Offset of field: seL4_BootInfo::numNodes"]
655        [::core::mem::offset_of!(seL4_BootInfo, numNodes) - 16usize];
656    ["Offset of field: seL4_BootInfo::numIOPTLevels"]
657        [::core::mem::offset_of!(seL4_BootInfo, numIOPTLevels) - 24usize];
658    ["Offset of field: seL4_BootInfo::ipcBuffer"]
659        [::core::mem::offset_of!(seL4_BootInfo, ipcBuffer) - 32usize];
660    ["Offset of field: seL4_BootInfo::empty"]
661        [::core::mem::offset_of!(seL4_BootInfo, empty) - 40usize];
662    ["Offset of field: seL4_BootInfo::sharedFrames"]
663        [::core::mem::offset_of!(seL4_BootInfo, sharedFrames) - 56usize];
664    ["Offset of field: seL4_BootInfo::userImageFrames"]
665        [::core::mem::offset_of!(seL4_BootInfo, userImageFrames) - 72usize];
666    ["Offset of field: seL4_BootInfo::userImagePaging"]
667        [::core::mem::offset_of!(seL4_BootInfo, userImagePaging) - 88usize];
668    ["Offset of field: seL4_BootInfo::ioSpaceCaps"]
669        [::core::mem::offset_of!(seL4_BootInfo, ioSpaceCaps) - 104usize];
670    ["Offset of field: seL4_BootInfo::extraBIPages"]
671        [::core::mem::offset_of!(seL4_BootInfo, extraBIPages) - 120usize];
672    ["Offset of field: seL4_BootInfo::initThreadCNodeSizeBits"]
673        [::core::mem::offset_of!(seL4_BootInfo, initThreadCNodeSizeBits) - 136usize];
674    ["Offset of field: seL4_BootInfo::initThreadDomain"]
675        [::core::mem::offset_of!(seL4_BootInfo, initThreadDomain) - 144usize];
676    ["Offset of field: seL4_BootInfo::untyped"]
677        [::core::mem::offset_of!(seL4_BootInfo, untyped) - 152usize];
678    ["Offset of field: seL4_BootInfo::untypedList"]
679        [::core::mem::offset_of!(seL4_BootInfo, untypedList) - 168usize];
680};
681impl Default for seL4_BootInfo {
682    fn default() -> Self {
683        let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
684        unsafe {
685            ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
686            s.assume_init()
687        }
688    }
689}
690pub mod seL4_BootInfoID {
691    pub type Type = ::core::ffi::c_ulong;
692    pub const SEL4_BOOTINFO_HEADER_PADDING: Type = 0;
693    pub const SEL4_BOOTINFO_HEADER_X86_VBE: Type = 1;
694    pub const SEL4_BOOTINFO_HEADER_X86_MBMMAP: Type = 2;
695    pub const SEL4_BOOTINFO_HEADER_X86_ACPI_RSDP: Type = 3;
696    pub const SEL4_BOOTINFO_HEADER_X86_FRAMEBUFFER: Type = 4;
697    pub const SEL4_BOOTINFO_HEADER_X86_TSC_FREQ: Type = 5;
698    pub const SEL4_BOOTINFO_HEADER_FDT: Type = 6;
699    pub const SEL4_BOOTINFO_HEADER_NUM: Type = 7;
700    pub const _enum_pad_seL4_BootInfoID: Type = 9223372036854775807;
701}
702#[repr(C)]
703#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
704pub struct seL4_BootInfoHeader {
705    pub id: seL4_Word,
706    pub len: seL4_Word,
707}
708#[allow(clippy::unnecessary_operation, clippy::identity_op)]
709const _: () = {
710    ["Size of seL4_BootInfoHeader"][::core::mem::size_of::<seL4_BootInfoHeader>() - 16usize];
711    ["Alignment of seL4_BootInfoHeader"][::core::mem::align_of::<seL4_BootInfoHeader>() - 8usize];
712    ["Offset of field: seL4_BootInfoHeader::id"]
713        [::core::mem::offset_of!(seL4_BootInfoHeader, id) - 0usize];
714    ["Offset of field: seL4_BootInfoHeader::len"]
715        [::core::mem::offset_of!(seL4_BootInfoHeader, len) - 8usize];
716};