1 /* automatically generated by tools/bindgen-all-the-things */ 2 3 #![allow(clippy::missing_safety_doc)] 4 #![allow(clippy::undocumented_unsafe_blocks)] 5 #![allow(clippy::upper_case_acronyms)] 6 #![allow(non_upper_case_globals)] 7 #![allow(non_camel_case_types)] 8 #![allow(non_snake_case)] 9 #![allow(dead_code)] 10 11 #[repr(C)] 12 #[derive(Default)] 13 pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]); 14 impl<T> __IncompleteArrayField<T> { 15 #[inline] new() -> Self16 pub const fn new() -> Self { 17 __IncompleteArrayField(::std::marker::PhantomData, []) 18 } 19 #[inline] as_ptr(&self) -> *const T20 pub fn as_ptr(&self) -> *const T { 21 self as *const _ as *const T 22 } 23 #[inline] as_mut_ptr(&mut self) -> *mut T24 pub fn as_mut_ptr(&mut self) -> *mut T { 25 self as *mut _ as *mut T 26 } 27 #[inline] as_slice(&self, len: usize) -> &[T]28 pub unsafe fn as_slice(&self, len: usize) -> &[T] { 29 ::std::slice::from_raw_parts(self.as_ptr(), len) 30 } 31 #[inline] as_mut_slice(&mut self, len: usize) -> &mut [T]32 pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { 33 ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len) 34 } 35 } 36 impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> { fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result37 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { 38 fmt.write_str("__IncompleteArrayField") 39 } 40 } 41 pub const UDMABUF_FLAGS_CLOEXEC: u32 = 1; 42 #[repr(C)] 43 #[derive(Debug, Default, Copy, Clone)] 44 pub struct udmabuf_create { 45 pub memfd: u32, 46 pub flags: u32, 47 pub offset: u64, 48 pub size: u64, 49 } 50 #[repr(C)] 51 #[derive(Debug, Default, Copy, Clone)] 52 pub struct udmabuf_create_item { 53 pub memfd: u32, 54 pub __pad: u32, 55 pub offset: u64, 56 pub size: u64, 57 } 58 #[repr(C)] 59 #[derive(Debug, Default)] 60 pub struct udmabuf_create_list { 61 pub flags: u32, 62 pub count: u32, 63 pub list: __IncompleteArrayField<udmabuf_create_item>, 64 } 65