/* automatically generated by rust-bindgen 0.69.4 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] pub struct __BindgenBitfieldUnit { storage: Storage, } impl __BindgenBitfieldUnit { #[inline] pub const fn new(storage: Storage) -> Self { Self { storage } } } impl __BindgenBitfieldUnit where Storage: AsRef<[u8]> + AsMut<[u8]>, { #[inline] pub fn get_bit(&self, index: usize) -> bool { debug_assert!(index / 8 < self.storage.as_ref().len()); let byte_index = index / 8; let byte = self.storage.as_ref()[byte_index]; let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; let mask = 1 << bit_index; byte & mask == mask } #[inline] pub fn set_bit(&mut self, index: usize, val: bool) { debug_assert!(index / 8 < self.storage.as_ref().len()); let byte_index = index / 8; let byte = &mut self.storage.as_mut()[byte_index]; let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; let mask = 1 << bit_index; if val { *byte |= mask; } else { *byte &= !mask; } } #[inline] pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 { debug_assert!(bit_width <= 64); debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); let mut val = 0; for i in 0..(bit_width as usize) { if self.get_bit(i + bit_offset) { let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; val |= 1 << index; } } val } #[inline] pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) { debug_assert!(bit_width <= 64); debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); for i in 0..(bit_width as usize) { let mask = 1 << i; let val_bit_is_set = val & mask == mask; let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; self.set_bit(index + bit_offset, val_bit_is_set); } } } #[repr(C)] #[derive(Default)] pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); impl __IncompleteArrayField { #[inline] pub const fn new() -> Self { __IncompleteArrayField(::core::marker::PhantomData, []) } #[inline] pub fn as_ptr(&self) -> *const T { self as *const _ as *const T } #[inline] pub fn as_mut_ptr(&mut self) -> *mut T { self as *mut _ as *mut T } #[inline] pub unsafe fn as_slice(&self, len: usize) -> &[T] { ::core::slice::from_raw_parts(self.as_ptr(), len) } #[inline] pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { ::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) } } impl ::core::fmt::Debug for __IncompleteArrayField { fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { fmt.write_str("__IncompleteArrayField") } } pub const __GNUC_VA_LIST: u32 = 1; pub const _SYS_TYPES_H: u32 = 1; pub const _FEATURES_H: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; pub const __USE_POSIX_IMPLICITLY: u32 = 1; pub const _POSIX_SOURCE: u32 = 1; pub const _POSIX_C_SOURCE: u32 = 200809; pub const __USE_POSIX: u32 = 1; pub const __USE_POSIX2: u32 = 1; pub const __USE_POSIX199309: u32 = 1; pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; pub const __WORDSIZE: u32 = 64; pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; pub const __SYSCALL_WORDSIZE: u32 = 64; pub const __TIMESIZE: u32 = 64; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const _STDC_PREDEF_H: u32 = 1; pub const __STDC_IEC_559__: u32 = 1; pub const __STDC_IEC_60559_BFP__: u32 = 201404; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; pub const __GLIBC_MINOR__: u32 = 36; pub const _SYS_CDEFS_H: u32 = 1; pub const __glibc_c99_flexarr_available: u32 = 1; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; pub const __HAVE_GENERIC_SELECTION: u32 = 1; pub const _BITS_TYPES_H: u32 = 1; pub const _BITS_TYPESIZES_H: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; pub const __STATFS_MATCHES_STATFS64: u32 = 1; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; pub const _BITS_TIME64_H: u32 = 1; pub const __clock_t_defined: u32 = 1; pub const __clockid_t_defined: u32 = 1; pub const __time_t_defined: u32 = 1; pub const __timer_t_defined: u32 = 1; pub const _BITS_STDINT_INTN_H: u32 = 1; pub const __BIT_TYPES_DEFINED__: u32 = 1; pub const _ENDIAN_H: u32 = 1; pub const _BITS_ENDIAN_H: u32 = 1; pub const __LITTLE_ENDIAN: u32 = 1234; pub const __BIG_ENDIAN: u32 = 4321; pub const __PDP_ENDIAN: u32 = 3412; pub const _BITS_ENDIANNESS_H: u32 = 1; pub const __BYTE_ORDER: u32 = 1234; pub const __FLOAT_WORD_ORDER: u32 = 1234; pub const LITTLE_ENDIAN: u32 = 1234; pub const BIG_ENDIAN: u32 = 4321; pub const PDP_ENDIAN: u32 = 3412; pub const BYTE_ORDER: u32 = 1234; pub const _BITS_BYTESWAP_H: u32 = 1; pub const _BITS_UINTN_IDENTITY_H: u32 = 1; pub const _SYS_SELECT_H: u32 = 1; pub const __sigset_t_defined: u32 = 1; pub const __timeval_defined: u32 = 1; pub const _STRUCT_TIMESPEC: u32 = 1; pub const FD_SETSIZE: u32 = 1024; pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1; pub const _THREAD_SHARED_TYPES_H: u32 = 1; pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1; pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40; pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56; pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56; pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4; pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1; pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; pub const __have_pthread_attr_t: u32 = 1; pub const _STDINT_H: u32 = 1; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; pub const _BITS_WCHAR_H: u32 = 1; pub const _BITS_STDINT_UINTN_H: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; pub const INT8_MAX: u32 = 127; pub const INT16_MAX: u32 = 32767; pub const INT32_MAX: u32 = 2147483647; pub const UINT8_MAX: u32 = 255; pub const UINT16_MAX: u32 = 65535; pub const UINT32_MAX: u32 = 4294967295; pub const INT_LEAST8_MIN: i32 = -128; pub const INT_LEAST16_MIN: i32 = -32768; pub const INT_LEAST32_MIN: i32 = -2147483648; pub const INT_LEAST8_MAX: u32 = 127; pub const INT_LEAST16_MAX: u32 = 32767; pub const INT_LEAST32_MAX: u32 = 2147483647; pub const UINT_LEAST8_MAX: u32 = 255; pub const UINT_LEAST16_MAX: u32 = 65535; pub const UINT_LEAST32_MAX: u32 = 4294967295; pub const INT_FAST8_MIN: i32 = -128; pub const INT_FAST16_MIN: i64 = -9223372036854775808; pub const INT_FAST32_MIN: i64 = -9223372036854775808; pub const INT_FAST8_MAX: u32 = 127; pub const INT_FAST16_MAX: u64 = 9223372036854775807; pub const INT_FAST32_MAX: u64 = 9223372036854775807; pub const UINT_FAST8_MAX: u32 = 255; pub const UINT_FAST16_MAX: i32 = -1; pub const UINT_FAST32_MAX: i32 = -1; pub const INTPTR_MIN: i64 = -9223372036854775808; pub const INTPTR_MAX: u64 = 9223372036854775807; pub const UINTPTR_MAX: i32 = -1; pub const PTRDIFF_MIN: i64 = -9223372036854775808; pub const PTRDIFF_MAX: u64 = 9223372036854775807; pub const SIG_ATOMIC_MIN: i32 = -2147483648; pub const SIG_ATOMIC_MAX: u32 = 2147483647; pub const SIZE_MAX: i32 = -1; pub const WINT_MIN: u32 = 0; pub const WINT_MAX: u32 = 4294967295; pub const __BITS_PER_LONG: u32 = 64; pub const __BITS_PER_LONG_LONG: u32 = 64; pub const _IOC_NRBITS: u32 = 8; pub const _IOC_TYPEBITS: u32 = 8; pub const _IOC_SIZEBITS: u32 = 14; pub const _IOC_DIRBITS: u32 = 2; pub const _IOC_NRMASK: u32 = 255; pub const _IOC_TYPEMASK: u32 = 255; pub const _IOC_SIZEMASK: u32 = 16383; pub const _IOC_DIRMASK: u32 = 3; pub const _IOC_NRSHIFT: u32 = 0; pub const _IOC_TYPESHIFT: u32 = 8; pub const _IOC_SIZESHIFT: u32 = 16; pub const _IOC_DIRSHIFT: u32 = 30; pub const _IOC_NONE: u32 = 0; pub const _IOC_WRITE: u32 = 1; pub const _IOC_READ: u32 = 2; pub const IOC_IN: u32 = 1073741824; pub const IOC_OUT: u32 = 2147483648; pub const IOC_INOUT: u32 = 3221225472; pub const IOCSIZE_MASK: u32 = 1073676288; pub const IOCSIZE_SHIFT: u32 = 16; pub const DRM_NAME: &[u8; 4] = b"drm\0"; pub const DRM_MIN_ORDER: u32 = 5; pub const DRM_MAX_ORDER: u32 = 22; pub const DRM_RAM_PERCENT: u32 = 10; pub const _DRM_LOCK_HELD: u32 = 2147483648; pub const _DRM_LOCK_CONT: u32 = 1073741824; pub const _DRM_VBLANK_HIGH_CRTC_SHIFT: u32 = 1; pub const _DRM_PRE_MODESET: u32 = 1; pub const _DRM_POST_MODESET: u32 = 2; pub const DRM_CAP_DUMB_BUFFER: u32 = 1; pub const DRM_CAP_VBLANK_HIGH_CRTC: u32 = 2; pub const DRM_CAP_DUMB_PREFERRED_DEPTH: u32 = 3; pub const DRM_CAP_DUMB_PREFER_SHADOW: u32 = 4; pub const DRM_CAP_PRIME: u32 = 5; pub const DRM_PRIME_CAP_IMPORT: u32 = 1; pub const DRM_PRIME_CAP_EXPORT: u32 = 2; pub const DRM_CAP_TIMESTAMP_MONOTONIC: u32 = 6; pub const DRM_CAP_ASYNC_PAGE_FLIP: u32 = 7; pub const DRM_CAP_CURSOR_WIDTH: u32 = 8; pub const DRM_CAP_CURSOR_HEIGHT: u32 = 9; pub const DRM_CAP_ADDFB2_MODIFIERS: u32 = 16; pub const DRM_CAP_PAGE_FLIP_TARGET: u32 = 17; pub const DRM_CAP_CRTC_IN_VBLANK_EVENT: u32 = 18; pub const DRM_CAP_SYNCOBJ: u32 = 19; pub const DRM_CAP_SYNCOBJ_TIMELINE: u32 = 20; pub const DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP: u32 = 21; pub const DRM_CLIENT_CAP_STEREO_3D: u32 = 1; pub const DRM_CLIENT_CAP_UNIVERSAL_PLANES: u32 = 2; pub const DRM_CLIENT_CAP_ATOMIC: u32 = 3; pub const DRM_CLIENT_CAP_ASPECT_RATIO: u32 = 4; pub const DRM_CLIENT_CAP_WRITEBACK_CONNECTORS: u32 = 5; pub const DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT: u32 = 6; pub const DRM_SYNCOBJ_CREATE_SIGNALED: u32 = 1; pub const DRM_SYNCOBJ_FD_TO_HANDLE_FLAGS_IMPORT_SYNC_FILE: u32 = 1; pub const DRM_SYNCOBJ_HANDLE_TO_FD_FLAGS_EXPORT_SYNC_FILE: u32 = 1; pub const DRM_SYNCOBJ_WAIT_FLAGS_WAIT_ALL: u32 = 1; pub const DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT: u32 = 2; pub const DRM_SYNCOBJ_WAIT_FLAGS_WAIT_AVAILABLE: u32 = 4; pub const DRM_SYNCOBJ_WAIT_FLAGS_WAIT_DEADLINE: u32 = 8; pub const DRM_SYNCOBJ_QUERY_FLAGS_LAST_SUBMITTED: u32 = 1; pub const DRM_CRTC_SEQUENCE_RELATIVE: u32 = 1; pub const DRM_CRTC_SEQUENCE_NEXT_ON_MISS: u32 = 2; pub const DRM_CONNECTOR_NAME_LEN: u32 = 32; pub const DRM_DISPLAY_MODE_LEN: u32 = 32; pub const DRM_PROP_NAME_LEN: u32 = 32; pub const DRM_MODE_TYPE_BUILTIN: u32 = 1; pub const DRM_MODE_TYPE_CLOCK_C: u32 = 3; pub const DRM_MODE_TYPE_CRTC_C: u32 = 5; pub const DRM_MODE_TYPE_PREFERRED: u32 = 8; pub const DRM_MODE_TYPE_DEFAULT: u32 = 16; pub const DRM_MODE_TYPE_USERDEF: u32 = 32; pub const DRM_MODE_TYPE_DRIVER: u32 = 64; pub const DRM_MODE_TYPE_ALL: u32 = 104; pub const DRM_MODE_FLAG_PHSYNC: u32 = 1; pub const DRM_MODE_FLAG_NHSYNC: u32 = 2; pub const DRM_MODE_FLAG_PVSYNC: u32 = 4; pub const DRM_MODE_FLAG_NVSYNC: u32 = 8; pub const DRM_MODE_FLAG_INTERLACE: u32 = 16; pub const DRM_MODE_FLAG_DBLSCAN: u32 = 32; pub const DRM_MODE_FLAG_CSYNC: u32 = 64; pub const DRM_MODE_FLAG_PCSYNC: u32 = 128; pub const DRM_MODE_FLAG_NCSYNC: u32 = 256; pub const DRM_MODE_FLAG_HSKEW: u32 = 512; pub const DRM_MODE_FLAG_BCAST: u32 = 1024; pub const DRM_MODE_FLAG_PIXMUX: u32 = 2048; pub const DRM_MODE_FLAG_DBLCLK: u32 = 4096; pub const DRM_MODE_FLAG_CLKDIV2: u32 = 8192; pub const DRM_MODE_FLAG_3D_MASK: u32 = 507904; pub const DRM_MODE_FLAG_3D_NONE: u32 = 0; pub const DRM_MODE_FLAG_3D_FRAME_PACKING: u32 = 16384; pub const DRM_MODE_FLAG_3D_FIELD_ALTERNATIVE: u32 = 32768; pub const DRM_MODE_FLAG_3D_LINE_ALTERNATIVE: u32 = 49152; pub const DRM_MODE_FLAG_3D_SIDE_BY_SIDE_FULL: u32 = 65536; pub const DRM_MODE_FLAG_3D_L_DEPTH: u32 = 81920; pub const DRM_MODE_FLAG_3D_L_DEPTH_GFX_GFX_DEPTH: u32 = 98304; pub const DRM_MODE_FLAG_3D_TOP_AND_BOTTOM: u32 = 114688; pub const DRM_MODE_FLAG_3D_SIDE_BY_SIDE_HALF: u32 = 131072; pub const DRM_MODE_PICTURE_ASPECT_NONE: u32 = 0; pub const DRM_MODE_PICTURE_ASPECT_4_3: u32 = 1; pub const DRM_MODE_PICTURE_ASPECT_16_9: u32 = 2; pub const DRM_MODE_PICTURE_ASPECT_64_27: u32 = 3; pub const DRM_MODE_PICTURE_ASPECT_256_135: u32 = 4; pub const DRM_MODE_CONTENT_TYPE_NO_DATA: u32 = 0; pub const DRM_MODE_CONTENT_TYPE_GRAPHICS: u32 = 1; pub const DRM_MODE_CONTENT_TYPE_PHOTO: u32 = 2; pub const DRM_MODE_CONTENT_TYPE_CINEMA: u32 = 3; pub const DRM_MODE_CONTENT_TYPE_GAME: u32 = 4; pub const DRM_MODE_FLAG_PIC_AR_MASK: u32 = 7864320; pub const DRM_MODE_FLAG_PIC_AR_NONE: u32 = 0; pub const DRM_MODE_FLAG_PIC_AR_4_3: u32 = 524288; pub const DRM_MODE_FLAG_PIC_AR_16_9: u32 = 1048576; pub const DRM_MODE_FLAG_PIC_AR_64_27: u32 = 1572864; pub const DRM_MODE_FLAG_PIC_AR_256_135: u32 = 2097152; pub const DRM_MODE_FLAG_ALL: u32 = 521215; pub const DRM_MODE_DPMS_ON: u32 = 0; pub const DRM_MODE_DPMS_STANDBY: u32 = 1; pub const DRM_MODE_DPMS_SUSPEND: u32 = 2; pub const DRM_MODE_DPMS_OFF: u32 = 3; pub const DRM_MODE_SCALE_NONE: u32 = 0; pub const DRM_MODE_SCALE_FULLSCREEN: u32 = 1; pub const DRM_MODE_SCALE_CENTER: u32 = 2; pub const DRM_MODE_SCALE_ASPECT: u32 = 3; pub const DRM_MODE_DITHERING_OFF: u32 = 0; pub const DRM_MODE_DITHERING_ON: u32 = 1; pub const DRM_MODE_DITHERING_AUTO: u32 = 2; pub const DRM_MODE_DIRTY_OFF: u32 = 0; pub const DRM_MODE_DIRTY_ON: u32 = 1; pub const DRM_MODE_DIRTY_ANNOTATE: u32 = 2; pub const DRM_MODE_LINK_STATUS_GOOD: u32 = 0; pub const DRM_MODE_LINK_STATUS_BAD: u32 = 1; pub const DRM_MODE_ROTATE_0: u32 = 1; pub const DRM_MODE_ROTATE_90: u32 = 2; pub const DRM_MODE_ROTATE_180: u32 = 4; pub const DRM_MODE_ROTATE_270: u32 = 8; pub const DRM_MODE_ROTATE_MASK: u32 = 15; pub const DRM_MODE_REFLECT_X: u32 = 16; pub const DRM_MODE_REFLECT_Y: u32 = 32; pub const DRM_MODE_REFLECT_MASK: u32 = 48; pub const DRM_MODE_CONTENT_PROTECTION_UNDESIRED: u32 = 0; pub const DRM_MODE_CONTENT_PROTECTION_DESIRED: u32 = 1; pub const DRM_MODE_CONTENT_PROTECTION_ENABLED: u32 = 2; pub const DRM_MODE_PRESENT_TOP_FIELD: u32 = 1; pub const DRM_MODE_PRESENT_BOTTOM_FIELD: u32 = 2; pub const DRM_MODE_ENCODER_NONE: u32 = 0; pub const DRM_MODE_ENCODER_DAC: u32 = 1; pub const DRM_MODE_ENCODER_TMDS: u32 = 2; pub const DRM_MODE_ENCODER_LVDS: u32 = 3; pub const DRM_MODE_ENCODER_TVDAC: u32 = 4; pub const DRM_MODE_ENCODER_VIRTUAL: u32 = 5; pub const DRM_MODE_ENCODER_DSI: u32 = 6; pub const DRM_MODE_ENCODER_DPMST: u32 = 7; pub const DRM_MODE_ENCODER_DPI: u32 = 8; pub const DRM_MODE_CONNECTOR_Unknown: u32 = 0; pub const DRM_MODE_CONNECTOR_VGA: u32 = 1; pub const DRM_MODE_CONNECTOR_DVII: u32 = 2; pub const DRM_MODE_CONNECTOR_DVID: u32 = 3; pub const DRM_MODE_CONNECTOR_DVIA: u32 = 4; pub const DRM_MODE_CONNECTOR_Composite: u32 = 5; pub const DRM_MODE_CONNECTOR_SVIDEO: u32 = 6; pub const DRM_MODE_CONNECTOR_LVDS: u32 = 7; pub const DRM_MODE_CONNECTOR_Component: u32 = 8; pub const DRM_MODE_CONNECTOR_9PinDIN: u32 = 9; pub const DRM_MODE_CONNECTOR_DisplayPort: u32 = 10; pub const DRM_MODE_CONNECTOR_HDMIA: u32 = 11; pub const DRM_MODE_CONNECTOR_HDMIB: u32 = 12; pub const DRM_MODE_CONNECTOR_TV: u32 = 13; pub const DRM_MODE_CONNECTOR_eDP: u32 = 14; pub const DRM_MODE_CONNECTOR_VIRTUAL: u32 = 15; pub const DRM_MODE_CONNECTOR_DSI: u32 = 16; pub const DRM_MODE_CONNECTOR_DPI: u32 = 17; pub const DRM_MODE_CONNECTOR_WRITEBACK: u32 = 18; pub const DRM_MODE_CONNECTOR_SPI: u32 = 19; pub const DRM_MODE_CONNECTOR_USB: u32 = 20; pub const DRM_MODE_PROP_PENDING: u32 = 1; pub const DRM_MODE_PROP_RANGE: u32 = 2; pub const DRM_MODE_PROP_IMMUTABLE: u32 = 4; pub const DRM_MODE_PROP_ENUM: u32 = 8; pub const DRM_MODE_PROP_BLOB: u32 = 16; pub const DRM_MODE_PROP_BITMASK: u32 = 32; pub const DRM_MODE_PROP_LEGACY_TYPE: u32 = 58; pub const DRM_MODE_PROP_EXTENDED_TYPE: u32 = 65472; pub const DRM_MODE_PROP_ATOMIC: u32 = 2147483648; pub const DRM_MODE_OBJECT_CRTC: u32 = 3435973836; pub const DRM_MODE_OBJECT_CONNECTOR: u32 = 3233857728; pub const DRM_MODE_OBJECT_ENCODER: u32 = 3772834016; pub const DRM_MODE_OBJECT_MODE: u32 = 3739147998; pub const DRM_MODE_OBJECT_PROPERTY: u32 = 2964369584; pub const DRM_MODE_OBJECT_FB: u32 = 4227595259; pub const DRM_MODE_OBJECT_BLOB: u32 = 3149642683; pub const DRM_MODE_OBJECT_PLANE: u32 = 4008636142; pub const DRM_MODE_OBJECT_ANY: u32 = 0; pub const DRM_MODE_FB_INTERLACED: u32 = 1; pub const DRM_MODE_FB_MODIFIERS: u32 = 2; pub const DRM_MODE_FB_DIRTY_ANNOTATE_COPY: u32 = 1; pub const DRM_MODE_FB_DIRTY_ANNOTATE_FILL: u32 = 2; pub const DRM_MODE_FB_DIRTY_FLAGS: u32 = 3; pub const DRM_MODE_FB_DIRTY_MAX_CLIPS: u32 = 256; pub const DRM_MODE_CURSOR_BO: u32 = 1; pub const DRM_MODE_CURSOR_MOVE: u32 = 2; pub const DRM_MODE_CURSOR_FLAGS: u32 = 3; pub const DRM_MODE_PAGE_FLIP_EVENT: u32 = 1; pub const DRM_MODE_PAGE_FLIP_ASYNC: u32 = 2; pub const DRM_MODE_PAGE_FLIP_TARGET_ABSOLUTE: u32 = 4; pub const DRM_MODE_PAGE_FLIP_TARGET_RELATIVE: u32 = 8; pub const DRM_MODE_PAGE_FLIP_TARGET: u32 = 12; pub const DRM_MODE_PAGE_FLIP_FLAGS: u32 = 15; pub const DRM_MODE_ATOMIC_TEST_ONLY: u32 = 256; pub const DRM_MODE_ATOMIC_NONBLOCK: u32 = 512; pub const DRM_MODE_ATOMIC_ALLOW_MODESET: u32 = 1024; pub const DRM_MODE_ATOMIC_FLAGS: u32 = 1795; pub const FORMAT_BLOB_CURRENT: u32 = 1; pub const DRM_IOCTL_BASE: u8 = 100u8; pub const DRM_COMMAND_BASE: u32 = 64; pub const DRM_COMMAND_END: u32 = 160; pub const DRM_EVENT_VBLANK: u32 = 1; pub const DRM_EVENT_FLIP_COMPLETE: u32 = 2; pub const DRM_EVENT_CRTC_SEQUENCE: u32 = 3; pub const DRM_MAX_MINOR: u32 = 64; pub const DRM_IOC_VOID: u32 = 0; pub const DRM_IOC_READ: u32 = 2; pub const DRM_IOC_WRITE: u32 = 1; pub const DRM_IOC_READWRITE: u32 = 3; pub const DRM_DEV_UID: u32 = 0; pub const DRM_DEV_GID: u32 = 0; pub const DRM_DIR_NAME: &[u8; 9] = b"/dev/dri\0"; pub const DRM_PRIMARY_MINOR_NAME: &[u8; 5] = b"card\0"; pub const DRM_CONTROL_MINOR_NAME: &[u8; 9] = b"controlD\0"; pub const DRM_RENDER_MINOR_NAME: &[u8; 8] = b"renderD\0"; pub const DRM_PROC_NAME: &[u8; 11] = b"/proc/dri/\0"; pub const DRM_DEV_NAME: &[u8; 10] = b"%s/card%d\0"; pub const DRM_CONTROL_DEV_NAME: &[u8; 14] = b"%s/controlD%d\0"; pub const DRM_RENDER_DEV_NAME: &[u8; 13] = b"%s/renderD%d\0"; pub const DRM_ERR_NO_DEVICE: i32 = -1001; pub const DRM_ERR_NO_ACCESS: i32 = -1002; pub const DRM_ERR_NOT_ROOT: i32 = -1003; pub const DRM_ERR_INVALID: i32 = -1004; pub const DRM_ERR_NO_FD: i32 = -1005; pub const DRM_AGP_NO_HANDLE: u32 = 0; pub const DRM_VBLANK_HIGH_CRTC_SHIFT: u32 = 1; pub const DRM_LOCK_HELD: u32 = 2147483648; pub const DRM_LOCK_CONT: u32 = 1073741824; pub const DRM_NODE_PRIMARY: u32 = 0; pub const DRM_NODE_CONTROL: u32 = 1; pub const DRM_NODE_RENDER: u32 = 2; pub const DRM_NODE_MAX: u32 = 3; pub const DRM_EVENT_CONTEXT_VERSION: u32 = 4; pub const DRM_BUS_PCI: u32 = 0; pub const DRM_BUS_USB: u32 = 1; pub const DRM_BUS_PLATFORM: u32 = 2; pub const DRM_BUS_HOST1X: u32 = 3; pub const DRM_PLATFORM_DEVICE_NAME_LEN: u32 = 512; pub const DRM_HOST1X_DEVICE_NAME_LEN: u32 = 512; pub const DRM_DEVICE_GET_PCI_REVISION: u32 = 1; pub const __bool_true_false_are_defined: u32 = 1; pub const true_: u32 = 1; pub const false_: u32 = 0; pub const DRM_MODE_FEATURE_KMS: u32 = 1; pub const DRM_MODE_FEATURE_DIRTYFB: u32 = 1; pub const DRM_PLANE_TYPE_OVERLAY: u32 = 0; pub const DRM_PLANE_TYPE_PRIMARY: u32 = 1; pub const DRM_PLANE_TYPE_CURSOR: u32 = 2; pub const AMDGPU_CS_MAX_IBS_PER_SUBMIT: u32 = 4; pub const AMDGPU_TIMEOUT_INFINITE: i32 = -1; pub const AMDGPU_QUERY_FENCE_TIMEOUT_IS_ABSOLUTE: u32 = 1; pub const AMDGPU_VA_RANGE_32_BIT: u32 = 1; pub const AMDGPU_VA_RANGE_HIGH: u32 = 2; pub const AMDGPU_VA_RANGE_REPLAYABLE: u32 = 4; pub const DRM_AMDGPU_GEM_CREATE: u32 = 0; pub const DRM_AMDGPU_GEM_MMAP: u32 = 1; pub const DRM_AMDGPU_CTX: u32 = 2; pub const DRM_AMDGPU_BO_LIST: u32 = 3; pub const DRM_AMDGPU_CS: u32 = 4; pub const DRM_AMDGPU_INFO: u32 = 5; pub const DRM_AMDGPU_GEM_METADATA: u32 = 6; pub const DRM_AMDGPU_GEM_WAIT_IDLE: u32 = 7; pub const DRM_AMDGPU_GEM_VA: u32 = 8; pub const DRM_AMDGPU_WAIT_CS: u32 = 9; pub const DRM_AMDGPU_GEM_OP: u32 = 16; pub const DRM_AMDGPU_GEM_USERPTR: u32 = 17; pub const DRM_AMDGPU_WAIT_FENCES: u32 = 18; pub const DRM_AMDGPU_VM: u32 = 19; pub const DRM_AMDGPU_FENCE_TO_HANDLE: u32 = 20; pub const DRM_AMDGPU_SCHED: u32 = 21; pub const AMDGPU_GEM_DOMAIN_CPU: u32 = 1; pub const AMDGPU_GEM_DOMAIN_GTT: u32 = 2; pub const AMDGPU_GEM_DOMAIN_VRAM: u32 = 4; pub const AMDGPU_GEM_DOMAIN_GDS: u32 = 8; pub const AMDGPU_GEM_DOMAIN_GWS: u32 = 16; pub const AMDGPU_GEM_DOMAIN_OA: u32 = 32; pub const AMDGPU_GEM_DOMAIN_DOORBELL: u32 = 64; pub const AMDGPU_GEM_DOMAIN_MASK: u32 = 127; pub const AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED: u32 = 1; pub const AMDGPU_GEM_CREATE_NO_CPU_ACCESS: u32 = 2; pub const AMDGPU_GEM_CREATE_CPU_GTT_USWC: u32 = 4; pub const AMDGPU_GEM_CREATE_VRAM_CLEARED: u32 = 8; pub const AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS: u32 = 32; pub const AMDGPU_GEM_CREATE_VM_ALWAYS_VALID: u32 = 64; pub const AMDGPU_GEM_CREATE_EXPLICIT_SYNC: u32 = 128; pub const AMDGPU_GEM_CREATE_CP_MQD_GFX9: u32 = 256; pub const AMDGPU_GEM_CREATE_VRAM_WIPE_ON_RELEASE: u32 = 512; pub const AMDGPU_GEM_CREATE_ENCRYPTED: u32 = 1024; pub const AMDGPU_GEM_CREATE_PREEMPTIBLE: u32 = 2048; pub const AMDGPU_GEM_CREATE_DISCARDABLE: u32 = 4096; pub const AMDGPU_GEM_CREATE_COHERENT: u32 = 8192; pub const AMDGPU_GEM_CREATE_UNCACHED: u32 = 16384; pub const AMDGPU_GEM_CREATE_EXT_COHERENT: u32 = 32768; pub const AMDGPU_BO_LIST_OP_CREATE: u32 = 0; pub const AMDGPU_BO_LIST_OP_DESTROY: u32 = 1; pub const AMDGPU_BO_LIST_OP_UPDATE: u32 = 2; pub const AMDGPU_CTX_OP_ALLOC_CTX: u32 = 1; pub const AMDGPU_CTX_OP_FREE_CTX: u32 = 2; pub const AMDGPU_CTX_OP_QUERY_STATE: u32 = 3; pub const AMDGPU_CTX_OP_QUERY_STATE2: u32 = 4; pub const AMDGPU_CTX_OP_GET_STABLE_PSTATE: u32 = 5; pub const AMDGPU_CTX_OP_SET_STABLE_PSTATE: u32 = 6; pub const AMDGPU_CTX_NO_RESET: u32 = 0; pub const AMDGPU_CTX_GUILTY_RESET: u32 = 1; pub const AMDGPU_CTX_INNOCENT_RESET: u32 = 2; pub const AMDGPU_CTX_UNKNOWN_RESET: u32 = 3; pub const AMDGPU_CTX_QUERY2_FLAGS_RESET: u32 = 1; pub const AMDGPU_CTX_QUERY2_FLAGS_VRAMLOST: u32 = 2; pub const AMDGPU_CTX_QUERY2_FLAGS_GUILTY: u32 = 4; pub const AMDGPU_CTX_QUERY2_FLAGS_RAS_CE: u32 = 8; pub const AMDGPU_CTX_QUERY2_FLAGS_RAS_UE: u32 = 16; pub const AMDGPU_CTX_QUERY2_FLAGS_RESET_IN_PROGRESS: u32 = 32; pub const AMDGPU_CTX_PRIORITY_UNSET: i32 = -2048; pub const AMDGPU_CTX_PRIORITY_VERY_LOW: i32 = -1023; pub const AMDGPU_CTX_PRIORITY_LOW: i32 = -512; pub const AMDGPU_CTX_PRIORITY_NORMAL: u32 = 0; pub const AMDGPU_CTX_PRIORITY_HIGH: u32 = 512; pub const AMDGPU_CTX_PRIORITY_VERY_HIGH: u32 = 1023; pub const AMDGPU_CTX_STABLE_PSTATE_FLAGS_MASK: u32 = 15; pub const AMDGPU_CTX_STABLE_PSTATE_NONE: u32 = 0; pub const AMDGPU_CTX_STABLE_PSTATE_STANDARD: u32 = 1; pub const AMDGPU_CTX_STABLE_PSTATE_MIN_SCLK: u32 = 2; pub const AMDGPU_CTX_STABLE_PSTATE_MIN_MCLK: u32 = 3; pub const AMDGPU_CTX_STABLE_PSTATE_PEAK: u32 = 4; pub const AMDGPU_VM_OP_RESERVE_VMID: u32 = 1; pub const AMDGPU_VM_OP_UNRESERVE_VMID: u32 = 2; pub const AMDGPU_SCHED_OP_PROCESS_PRIORITY_OVERRIDE: u32 = 1; pub const AMDGPU_SCHED_OP_CONTEXT_PRIORITY_OVERRIDE: u32 = 2; pub const AMDGPU_GEM_USERPTR_READONLY: u32 = 1; pub const AMDGPU_GEM_USERPTR_ANONONLY: u32 = 2; pub const AMDGPU_GEM_USERPTR_VALIDATE: u32 = 4; pub const AMDGPU_GEM_USERPTR_REGISTER: u32 = 8; pub const AMDGPU_TILING_ARRAY_MODE_SHIFT: u32 = 0; pub const AMDGPU_TILING_ARRAY_MODE_MASK: u32 = 15; pub const AMDGPU_TILING_PIPE_CONFIG_SHIFT: u32 = 4; pub const AMDGPU_TILING_PIPE_CONFIG_MASK: u32 = 31; pub const AMDGPU_TILING_TILE_SPLIT_SHIFT: u32 = 9; pub const AMDGPU_TILING_TILE_SPLIT_MASK: u32 = 7; pub const AMDGPU_TILING_MICRO_TILE_MODE_SHIFT: u32 = 12; pub const AMDGPU_TILING_MICRO_TILE_MODE_MASK: u32 = 7; pub const AMDGPU_TILING_BANK_WIDTH_SHIFT: u32 = 15; pub const AMDGPU_TILING_BANK_WIDTH_MASK: u32 = 3; pub const AMDGPU_TILING_BANK_HEIGHT_SHIFT: u32 = 17; pub const AMDGPU_TILING_BANK_HEIGHT_MASK: u32 = 3; pub const AMDGPU_TILING_MACRO_TILE_ASPECT_SHIFT: u32 = 19; pub const AMDGPU_TILING_MACRO_TILE_ASPECT_MASK: u32 = 3; pub const AMDGPU_TILING_NUM_BANKS_SHIFT: u32 = 21; pub const AMDGPU_TILING_NUM_BANKS_MASK: u32 = 3; pub const AMDGPU_TILING_SWIZZLE_MODE_SHIFT: u32 = 0; pub const AMDGPU_TILING_SWIZZLE_MODE_MASK: u32 = 31; pub const AMDGPU_TILING_DCC_OFFSET_256B_SHIFT: u32 = 5; pub const AMDGPU_TILING_DCC_OFFSET_256B_MASK: u32 = 16777215; pub const AMDGPU_TILING_DCC_PITCH_MAX_SHIFT: u32 = 29; pub const AMDGPU_TILING_DCC_PITCH_MAX_MASK: u32 = 16383; pub const AMDGPU_TILING_DCC_INDEPENDENT_64B_SHIFT: u32 = 43; pub const AMDGPU_TILING_DCC_INDEPENDENT_64B_MASK: u32 = 1; pub const AMDGPU_TILING_DCC_INDEPENDENT_128B_SHIFT: u32 = 44; pub const AMDGPU_TILING_DCC_INDEPENDENT_128B_MASK: u32 = 1; pub const AMDGPU_TILING_SCANOUT_SHIFT: u32 = 63; pub const AMDGPU_TILING_SCANOUT_MASK: u32 = 1; pub const AMDGPU_GEM_METADATA_OP_SET_METADATA: u32 = 1; pub const AMDGPU_GEM_METADATA_OP_GET_METADATA: u32 = 2; pub const AMDGPU_GEM_OP_GET_GEM_CREATE_INFO: u32 = 0; pub const AMDGPU_GEM_OP_SET_PLACEMENT: u32 = 1; pub const AMDGPU_VA_OP_MAP: u32 = 1; pub const AMDGPU_VA_OP_UNMAP: u32 = 2; pub const AMDGPU_VA_OP_CLEAR: u32 = 3; pub const AMDGPU_VA_OP_REPLACE: u32 = 4; pub const AMDGPU_VM_DELAY_UPDATE: u32 = 1; pub const AMDGPU_VM_PAGE_READABLE: u32 = 2; pub const AMDGPU_VM_PAGE_WRITEABLE: u32 = 4; pub const AMDGPU_VM_PAGE_EXECUTABLE: u32 = 8; pub const AMDGPU_VM_PAGE_PRT: u32 = 16; pub const AMDGPU_VM_MTYPE_MASK: u32 = 480; pub const AMDGPU_VM_MTYPE_DEFAULT: u32 = 0; pub const AMDGPU_VM_MTYPE_NC: u32 = 32; pub const AMDGPU_VM_MTYPE_WC: u32 = 64; pub const AMDGPU_VM_MTYPE_CC: u32 = 96; pub const AMDGPU_VM_MTYPE_UC: u32 = 128; pub const AMDGPU_VM_MTYPE_RW: u32 = 160; pub const AMDGPU_VM_PAGE_NOALLOC: u32 = 512; pub const AMDGPU_HW_IP_GFX: u32 = 0; pub const AMDGPU_HW_IP_COMPUTE: u32 = 1; pub const AMDGPU_HW_IP_DMA: u32 = 2; pub const AMDGPU_HW_IP_UVD: u32 = 3; pub const AMDGPU_HW_IP_VCE: u32 = 4; pub const AMDGPU_HW_IP_UVD_ENC: u32 = 5; pub const AMDGPU_HW_IP_VCN_DEC: u32 = 6; pub const AMDGPU_HW_IP_VCN_ENC: u32 = 7; pub const AMDGPU_HW_IP_VCN_JPEG: u32 = 8; pub const AMDGPU_HW_IP_VPE: u32 = 9; pub const AMDGPU_HW_IP_NUM: u32 = 10; pub const AMDGPU_HW_IP_INSTANCE_MAX_COUNT: u32 = 1; pub const AMDGPU_CHUNK_ID_IB: u32 = 1; pub const AMDGPU_CHUNK_ID_FENCE: u32 = 2; pub const AMDGPU_CHUNK_ID_DEPENDENCIES: u32 = 3; pub const AMDGPU_CHUNK_ID_SYNCOBJ_IN: u32 = 4; pub const AMDGPU_CHUNK_ID_SYNCOBJ_OUT: u32 = 5; pub const AMDGPU_CHUNK_ID_BO_HANDLES: u32 = 6; pub const AMDGPU_CHUNK_ID_SCHEDULED_DEPENDENCIES: u32 = 7; pub const AMDGPU_CHUNK_ID_SYNCOBJ_TIMELINE_WAIT: u32 = 8; pub const AMDGPU_CHUNK_ID_SYNCOBJ_TIMELINE_SIGNAL: u32 = 9; pub const AMDGPU_CHUNK_ID_CP_GFX_SHADOW: u32 = 10; pub const AMDGPU_IB_FLAG_CE: u32 = 1; pub const AMDGPU_IB_FLAG_PREAMBLE: u32 = 2; pub const AMDGPU_IB_FLAG_PREEMPT: u32 = 4; pub const AMDGPU_IB_FLAG_TC_WB_NOT_INVALIDATE: u32 = 8; pub const AMDGPU_IB_FLAG_RESET_GDS_MAX_WAVE_ID: u32 = 16; pub const AMDGPU_IB_FLAGS_SECURE: u32 = 32; pub const AMDGPU_IB_FLAG_EMIT_MEM_SYNC: u32 = 64; pub const AMDGPU_FENCE_TO_HANDLE_GET_SYNCOBJ: u32 = 0; pub const AMDGPU_FENCE_TO_HANDLE_GET_SYNCOBJ_FD: u32 = 1; pub const AMDGPU_FENCE_TO_HANDLE_GET_SYNC_FILE_FD: u32 = 2; pub const AMDGPU_CS_CHUNK_CP_GFX_SHADOW_FLAGS_INIT_SHADOW: u32 = 1; pub const AMDGPU_IDS_FLAGS_FUSION: u32 = 1; pub const AMDGPU_IDS_FLAGS_PREEMPTION: u32 = 2; pub const AMDGPU_IDS_FLAGS_TMZ: u32 = 4; pub const AMDGPU_IDS_FLAGS_CONFORMANT_TRUNC_COORD: u32 = 8; pub const AMDGPU_INFO_ACCEL_WORKING: u32 = 0; pub const AMDGPU_INFO_CRTC_FROM_ID: u32 = 1; pub const AMDGPU_INFO_HW_IP_INFO: u32 = 2; pub const AMDGPU_INFO_HW_IP_COUNT: u32 = 3; pub const AMDGPU_INFO_TIMESTAMP: u32 = 5; pub const AMDGPU_INFO_FW_VERSION: u32 = 14; pub const AMDGPU_INFO_FW_VCE: u32 = 1; pub const AMDGPU_INFO_FW_UVD: u32 = 2; pub const AMDGPU_INFO_FW_GMC: u32 = 3; pub const AMDGPU_INFO_FW_GFX_ME: u32 = 4; pub const AMDGPU_INFO_FW_GFX_PFP: u32 = 5; pub const AMDGPU_INFO_FW_GFX_CE: u32 = 6; pub const AMDGPU_INFO_FW_GFX_RLC: u32 = 7; pub const AMDGPU_INFO_FW_GFX_MEC: u32 = 8; pub const AMDGPU_INFO_FW_SMC: u32 = 10; pub const AMDGPU_INFO_FW_SDMA: u32 = 11; pub const AMDGPU_INFO_FW_SOS: u32 = 12; pub const AMDGPU_INFO_FW_ASD: u32 = 13; pub const AMDGPU_INFO_FW_VCN: u32 = 14; pub const AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_CNTL: u32 = 15; pub const AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_GPM_MEM: u32 = 16; pub const AMDGPU_INFO_FW_GFX_RLC_RESTORE_LIST_SRM_MEM: u32 = 17; pub const AMDGPU_INFO_FW_DMCU: u32 = 18; pub const AMDGPU_INFO_FW_TA: u32 = 19; pub const AMDGPU_INFO_FW_DMCUB: u32 = 20; pub const AMDGPU_INFO_FW_TOC: u32 = 21; pub const AMDGPU_INFO_FW_CAP: u32 = 22; pub const AMDGPU_INFO_FW_GFX_RLCP: u32 = 23; pub const AMDGPU_INFO_FW_GFX_RLCV: u32 = 24; pub const AMDGPU_INFO_FW_MES_KIQ: u32 = 25; pub const AMDGPU_INFO_FW_MES: u32 = 26; pub const AMDGPU_INFO_FW_IMU: u32 = 27; pub const AMDGPU_INFO_FW_VPE: u32 = 28; pub const AMDGPU_INFO_NUM_BYTES_MOVED: u32 = 15; pub const AMDGPU_INFO_VRAM_USAGE: u32 = 16; pub const AMDGPU_INFO_GTT_USAGE: u32 = 17; pub const AMDGPU_INFO_GDS_CONFIG: u32 = 19; pub const AMDGPU_INFO_VRAM_GTT: u32 = 20; pub const AMDGPU_INFO_READ_MMR_REG: u32 = 21; pub const AMDGPU_INFO_DEV_INFO: u32 = 22; pub const AMDGPU_INFO_VIS_VRAM_USAGE: u32 = 23; pub const AMDGPU_INFO_NUM_EVICTIONS: u32 = 24; pub const AMDGPU_INFO_MEMORY: u32 = 25; pub const AMDGPU_INFO_VCE_CLOCK_TABLE: u32 = 26; pub const AMDGPU_INFO_VBIOS: u32 = 27; pub const AMDGPU_INFO_VBIOS_SIZE: u32 = 1; pub const AMDGPU_INFO_VBIOS_IMAGE: u32 = 2; pub const AMDGPU_INFO_VBIOS_INFO: u32 = 3; pub const AMDGPU_INFO_NUM_HANDLES: u32 = 28; pub const AMDGPU_INFO_SENSOR: u32 = 29; pub const AMDGPU_INFO_SENSOR_GFX_SCLK: u32 = 1; pub const AMDGPU_INFO_SENSOR_GFX_MCLK: u32 = 2; pub const AMDGPU_INFO_SENSOR_GPU_TEMP: u32 = 3; pub const AMDGPU_INFO_SENSOR_GPU_LOAD: u32 = 4; pub const AMDGPU_INFO_SENSOR_GPU_AVG_POWER: u32 = 5; pub const AMDGPU_INFO_SENSOR_VDDNB: u32 = 6; pub const AMDGPU_INFO_SENSOR_VDDGFX: u32 = 7; pub const AMDGPU_INFO_SENSOR_STABLE_PSTATE_GFX_SCLK: u32 = 8; pub const AMDGPU_INFO_SENSOR_STABLE_PSTATE_GFX_MCLK: u32 = 9; pub const AMDGPU_INFO_SENSOR_PEAK_PSTATE_GFX_SCLK: u32 = 10; pub const AMDGPU_INFO_SENSOR_PEAK_PSTATE_GFX_MCLK: u32 = 11; pub const AMDGPU_INFO_NUM_VRAM_CPU_PAGE_FAULTS: u32 = 30; pub const AMDGPU_INFO_VRAM_LOST_COUNTER: u32 = 31; pub const AMDGPU_INFO_RAS_ENABLED_FEATURES: u32 = 32; pub const AMDGPU_INFO_RAS_ENABLED_UMC: u32 = 1; pub const AMDGPU_INFO_RAS_ENABLED_SDMA: u32 = 2; pub const AMDGPU_INFO_RAS_ENABLED_GFX: u32 = 4; pub const AMDGPU_INFO_RAS_ENABLED_MMHUB: u32 = 8; pub const AMDGPU_INFO_RAS_ENABLED_ATHUB: u32 = 16; pub const AMDGPU_INFO_RAS_ENABLED_PCIE: u32 = 32; pub const AMDGPU_INFO_RAS_ENABLED_HDP: u32 = 64; pub const AMDGPU_INFO_RAS_ENABLED_XGMI: u32 = 128; pub const AMDGPU_INFO_RAS_ENABLED_DF: u32 = 256; pub const AMDGPU_INFO_RAS_ENABLED_SMN: u32 = 512; pub const AMDGPU_INFO_RAS_ENABLED_SEM: u32 = 1024; pub const AMDGPU_INFO_RAS_ENABLED_MP0: u32 = 2048; pub const AMDGPU_INFO_RAS_ENABLED_MP1: u32 = 4096; pub const AMDGPU_INFO_RAS_ENABLED_FUSE: u32 = 8192; pub const AMDGPU_INFO_VIDEO_CAPS: u32 = 33; pub const AMDGPU_INFO_VIDEO_CAPS_DECODE: u32 = 0; pub const AMDGPU_INFO_VIDEO_CAPS_ENCODE: u32 = 1; pub const AMDGPU_INFO_MAX_IBS: u32 = 34; pub const AMDGPU_INFO_GPUVM_FAULT: u32 = 35; pub const AMDGPU_INFO_MMR_SE_INDEX_SHIFT: u32 = 0; pub const AMDGPU_INFO_MMR_SE_INDEX_MASK: u32 = 255; pub const AMDGPU_INFO_MMR_SH_INDEX_SHIFT: u32 = 8; pub const AMDGPU_INFO_MMR_SH_INDEX_MASK: u32 = 255; pub const AMDGPU_VRAM_TYPE_UNKNOWN: u32 = 0; pub const AMDGPU_VRAM_TYPE_GDDR1: u32 = 1; pub const AMDGPU_VRAM_TYPE_DDR2: u32 = 2; pub const AMDGPU_VRAM_TYPE_GDDR3: u32 = 3; pub const AMDGPU_VRAM_TYPE_GDDR4: u32 = 4; pub const AMDGPU_VRAM_TYPE_GDDR5: u32 = 5; pub const AMDGPU_VRAM_TYPE_HBM: u32 = 6; pub const AMDGPU_VRAM_TYPE_DDR3: u32 = 7; pub const AMDGPU_VRAM_TYPE_DDR4: u32 = 8; pub const AMDGPU_VRAM_TYPE_GDDR6: u32 = 9; pub const AMDGPU_VRAM_TYPE_DDR5: u32 = 10; pub const AMDGPU_VRAM_TYPE_LPDDR4: u32 = 11; pub const AMDGPU_VRAM_TYPE_LPDDR5: u32 = 12; pub const AMDGPU_VCE_CLOCK_TABLE_ENTRIES: u32 = 6; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG2: u32 = 0; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4: u32 = 1; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VC1: u32 = 2; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_MPEG4_AVC: u32 = 3; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_HEVC: u32 = 4; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_JPEG: u32 = 5; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_VP9: u32 = 6; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_AV1: u32 = 7; pub const AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_COUNT: u32 = 8; pub const AMDGPU_VMHUB_TYPE_MASK: u32 = 255; pub const AMDGPU_VMHUB_TYPE_SHIFT: u32 = 0; pub const AMDGPU_VMHUB_TYPE_GFX: u32 = 0; pub const AMDGPU_VMHUB_TYPE_MM0: u32 = 1; pub const AMDGPU_VMHUB_TYPE_MM1: u32 = 2; pub const AMDGPU_VMHUB_IDX_MASK: u32 = 65280; pub const AMDGPU_VMHUB_IDX_SHIFT: u32 = 8; pub const AMDGPU_FAMILY_UNKNOWN: u32 = 0; pub const AMDGPU_FAMILY_SI: u32 = 110; pub const AMDGPU_FAMILY_CI: u32 = 120; pub const AMDGPU_FAMILY_KV: u32 = 125; pub const AMDGPU_FAMILY_VI: u32 = 130; pub const AMDGPU_FAMILY_CZ: u32 = 135; pub const AMDGPU_FAMILY_AI: u32 = 141; pub const AMDGPU_FAMILY_RV: u32 = 142; pub const AMDGPU_FAMILY_NV: u32 = 143; pub const AMDGPU_FAMILY_VGH: u32 = 144; pub const AMDGPU_FAMILY_GC_11_0_0: u32 = 145; pub const AMDGPU_FAMILY_YC: u32 = 146; pub const AMDGPU_FAMILY_GC_11_0_1: u32 = 148; pub const AMDGPU_FAMILY_GC_10_3_6: u32 = 149; pub const AMDGPU_FAMILY_GC_10_3_7: u32 = 151; pub const AMDGPU_FAMILY_GC_11_5_0: u32 = 150; pub const BIOS_ATOM_PREFIX: &[u8; 9] = b"ATOMBIOS\0"; pub const BIOS_VERSION_PREFIX: &[u8; 15] = b"ATOMBIOSBK-AMD\0"; pub const BIOS_STRING_LENGTH: u32 = 43; pub const NUM_HBM_INSTANCES: u32 = 4; pub const NUM_XGMI_LINKS: u32 = 8; pub const MAX_GFX_CLKS: u32 = 8; pub const MAX_CLKS: u32 = 4; pub const NUM_VCN: u32 = 4; pub const NUM_JPEG_ENG: u32 = 32; pub type va_list = __builtin_va_list; pub type __gnuc_va_list = __builtin_va_list; pub type __u_char = ::core::ffi::c_uchar; pub type __u_short = ::core::ffi::c_ushort; pub type __u_int = ::core::ffi::c_uint; pub type __u_long = ::core::ffi::c_ulong; pub type __int8_t = ::core::ffi::c_schar; pub type __uint8_t = ::core::ffi::c_uchar; pub type __int16_t = ::core::ffi::c_short; pub type __uint16_t = ::core::ffi::c_ushort; pub type __int32_t = ::core::ffi::c_int; pub type __uint32_t = ::core::ffi::c_uint; pub type __int64_t = ::core::ffi::c_long; pub type __uint64_t = ::core::ffi::c_ulong; pub type __int_least8_t = __int8_t; pub type __uint_least8_t = __uint8_t; pub type __int_least16_t = __int16_t; pub type __uint_least16_t = __uint16_t; pub type __int_least32_t = __int32_t; pub type __uint_least32_t = __uint32_t; pub type __int_least64_t = __int64_t; pub type __uint_least64_t = __uint64_t; pub type __quad_t = ::core::ffi::c_long; pub type __u_quad_t = ::core::ffi::c_ulong; pub type __intmax_t = ::core::ffi::c_long; pub type __uintmax_t = ::core::ffi::c_ulong; pub type __dev_t = ::core::ffi::c_ulong; pub type __uid_t = ::core::ffi::c_uint; pub type __gid_t = ::core::ffi::c_uint; pub type __ino_t = ::core::ffi::c_ulong; pub type __ino64_t = ::core::ffi::c_ulong; pub type __mode_t = ::core::ffi::c_uint; pub type __nlink_t = ::core::ffi::c_ulong; pub type __off_t = ::core::ffi::c_long; pub type __off64_t = ::core::ffi::c_long; pub type __pid_t = ::core::ffi::c_int; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __fsid_t { pub __val: [::core::ffi::c_int; 2usize], } #[test] fn bindgen_test_layout___fsid_t() { const UNINIT: ::core::mem::MaybeUninit<__fsid_t> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__fsid_t>(), 8usize, concat!("Size of: ", stringify!(__fsid_t)) ); assert_eq!( ::core::mem::align_of::<__fsid_t>(), 4usize, concat!("Alignment of ", stringify!(__fsid_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__val) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__fsid_t), "::", stringify!(__val) ) ); } pub type __clock_t = ::core::ffi::c_long; pub type __rlim_t = ::core::ffi::c_ulong; pub type __rlim64_t = ::core::ffi::c_ulong; pub type __id_t = ::core::ffi::c_uint; pub type __time_t = ::core::ffi::c_long; pub type __useconds_t = ::core::ffi::c_uint; pub type __suseconds_t = ::core::ffi::c_long; pub type __suseconds64_t = ::core::ffi::c_long; pub type __daddr_t = ::core::ffi::c_int; pub type __key_t = ::core::ffi::c_int; pub type __clockid_t = ::core::ffi::c_int; pub type __timer_t = *mut ::core::ffi::c_void; pub type __blksize_t = ::core::ffi::c_long; pub type __blkcnt_t = ::core::ffi::c_long; pub type __blkcnt64_t = ::core::ffi::c_long; pub type __fsblkcnt_t = ::core::ffi::c_ulong; pub type __fsblkcnt64_t = ::core::ffi::c_ulong; pub type __fsfilcnt_t = ::core::ffi::c_ulong; pub type __fsfilcnt64_t = ::core::ffi::c_ulong; pub type __fsword_t = ::core::ffi::c_long; pub type __ssize_t = ::core::ffi::c_long; pub type __syscall_slong_t = ::core::ffi::c_long; pub type __syscall_ulong_t = ::core::ffi::c_ulong; pub type __loff_t = __off64_t; pub type __caddr_t = *mut ::core::ffi::c_char; pub type __intptr_t = ::core::ffi::c_long; pub type __socklen_t = ::core::ffi::c_uint; pub type __sig_atomic_t = ::core::ffi::c_int; pub type u_char = __u_char; pub type u_short = __u_short; pub type u_int = __u_int; pub type u_long = __u_long; pub type quad_t = __quad_t; pub type u_quad_t = __u_quad_t; pub type fsid_t = __fsid_t; pub type loff_t = __loff_t; pub type ino_t = __ino_t; pub type dev_t = __dev_t; pub type gid_t = __gid_t; pub type mode_t = __mode_t; pub type nlink_t = __nlink_t; pub type uid_t = __uid_t; pub type off_t = __off_t; pub type pid_t = __pid_t; pub type id_t = __id_t; pub type daddr_t = __daddr_t; pub type caddr_t = __caddr_t; pub type key_t = __key_t; pub type clock_t = __clock_t; pub type clockid_t = __clockid_t; pub type time_t = __time_t; pub type timer_t = __timer_t; pub type ulong = ::core::ffi::c_ulong; pub type ushort = ::core::ffi::c_ushort; pub type uint = ::core::ffi::c_uint; pub type u_int8_t = __uint8_t; pub type u_int16_t = __uint16_t; pub type u_int32_t = __uint32_t; pub type u_int64_t = __uint64_t; pub type register_t = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __sigset_t { pub __val: [::core::ffi::c_ulong; 16usize], } #[test] fn bindgen_test_layout___sigset_t() { const UNINIT: ::core::mem::MaybeUninit<__sigset_t> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__sigset_t>(), 128usize, concat!("Size of: ", stringify!(__sigset_t)) ); assert_eq!( ::core::mem::align_of::<__sigset_t>(), 8usize, concat!("Alignment of ", stringify!(__sigset_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__val) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__sigset_t), "::", stringify!(__val) ) ); } pub type sigset_t = __sigset_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct timeval { pub tv_sec: __time_t, pub tv_usec: __suseconds_t, } #[test] fn bindgen_test_layout_timeval() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(timeval)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(timeval)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(timeval), "::", stringify!(tv_sec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tv_usec) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(timeval), "::", stringify!(tv_usec) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct timespec { pub tv_sec: __time_t, pub tv_nsec: __syscall_slong_t, } #[test] fn bindgen_test_layout_timespec() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(timespec)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(timespec)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(timespec), "::", stringify!(tv_sec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tv_nsec) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(timespec), "::", stringify!(tv_nsec) ) ); } pub type suseconds_t = __suseconds_t; pub type __fd_mask = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct fd_set { pub __fds_bits: [__fd_mask; 16usize], } #[test] fn bindgen_test_layout_fd_set() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 128usize, concat!("Size of: ", stringify!(fd_set)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(fd_set)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__fds_bits) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(fd_set), "::", stringify!(__fds_bits) ) ); } pub type fd_mask = __fd_mask; extern "C" { pub fn select( __nfds: ::core::ffi::c_int, __readfds: *mut fd_set, __writefds: *mut fd_set, __exceptfds: *mut fd_set, __timeout: *mut timeval, ) -> ::core::ffi::c_int; } extern "C" { pub fn pselect( __nfds: ::core::ffi::c_int, __readfds: *mut fd_set, __writefds: *mut fd_set, __exceptfds: *mut fd_set, __timeout: *const timespec, __sigmask: *const __sigset_t, ) -> ::core::ffi::c_int; } pub type blksize_t = __blksize_t; pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; #[repr(C)] #[derive(Copy, Clone)] pub union __atomic_wide_counter { pub __value64: ::core::ffi::c_ulonglong, pub __value32: __atomic_wide_counter__bindgen_ty_1, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __atomic_wide_counter__bindgen_ty_1 { pub __low: ::core::ffi::c_uint, pub __high: ::core::ffi::c_uint, } #[test] fn bindgen_test_layout___atomic_wide_counter__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit<__atomic_wide_counter__bindgen_ty_1> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__atomic_wide_counter__bindgen_ty_1>(), 8usize, concat!("Size of: ", stringify!(__atomic_wide_counter__bindgen_ty_1)) ); assert_eq!( ::core::mem::align_of::<__atomic_wide_counter__bindgen_ty_1>(), 4usize, concat!( "Alignment of ", stringify!(__atomic_wide_counter__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__low) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__atomic_wide_counter__bindgen_ty_1), "::", stringify!(__low) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__high) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(__atomic_wide_counter__bindgen_ty_1), "::", stringify!(__high) ) ); } #[test] fn bindgen_test_layout___atomic_wide_counter() { const UNINIT: ::core::mem::MaybeUninit<__atomic_wide_counter> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__atomic_wide_counter>(), 8usize, concat!("Size of: ", stringify!(__atomic_wide_counter)) ); assert_eq!( ::core::mem::align_of::<__atomic_wide_counter>(), 8usize, concat!("Alignment of ", stringify!(__atomic_wide_counter)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__value64) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__atomic_wide_counter), "::", stringify!(__value64) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__value32) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__atomic_wide_counter), "::", stringify!(__value32) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __pthread_internal_list { pub __prev: *mut __pthread_internal_list, pub __next: *mut __pthread_internal_list, } #[test] fn bindgen_test_layout___pthread_internal_list() { const UNINIT: ::core::mem::MaybeUninit<__pthread_internal_list> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__pthread_internal_list>(), 16usize, concat!("Size of: ", stringify!(__pthread_internal_list)) ); assert_eq!( ::core::mem::align_of::<__pthread_internal_list>(), 8usize, concat!("Alignment of ", stringify!(__pthread_internal_list)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__prev) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__pthread_internal_list), "::", stringify!(__prev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__next) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(__pthread_internal_list), "::", stringify!(__next) ) ); } pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __pthread_internal_slist { pub __next: *mut __pthread_internal_slist, } #[test] fn bindgen_test_layout___pthread_internal_slist() { const UNINIT: ::core::mem::MaybeUninit<__pthread_internal_slist> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__pthread_internal_slist>(), 8usize, concat!("Size of: ", stringify!(__pthread_internal_slist)) ); assert_eq!( ::core::mem::align_of::<__pthread_internal_slist>(), 8usize, concat!("Alignment of ", stringify!(__pthread_internal_slist)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__next) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__pthread_internal_slist), "::", stringify!(__next) ) ); } pub type __pthread_slist_t = __pthread_internal_slist; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __pthread_mutex_s { pub __lock: ::core::ffi::c_int, pub __count: ::core::ffi::c_uint, pub __owner: ::core::ffi::c_int, pub __nusers: ::core::ffi::c_uint, pub __kind: ::core::ffi::c_int, pub __spins: ::core::ffi::c_short, pub __elision: ::core::ffi::c_short, pub __list: __pthread_list_t, } #[test] fn bindgen_test_layout___pthread_mutex_s() { const UNINIT: ::core::mem::MaybeUninit<__pthread_mutex_s> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__pthread_mutex_s>(), 40usize, concat!("Size of: ", stringify!(__pthread_mutex_s)) ); assert_eq!( ::core::mem::align_of::<__pthread_mutex_s>(), 8usize, concat!("Alignment of ", stringify!(__pthread_mutex_s)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__lock) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__lock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__count) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__owner) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__owner) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__nusers) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__nusers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__kind) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__kind) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__spins) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__spins) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__elision) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__elision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__list) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(__pthread_mutex_s), "::", stringify!(__list) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __pthread_rwlock_arch_t { pub __readers: ::core::ffi::c_uint, pub __writers: ::core::ffi::c_uint, pub __wrphase_futex: ::core::ffi::c_uint, pub __writers_futex: ::core::ffi::c_uint, pub __pad3: ::core::ffi::c_uint, pub __pad4: ::core::ffi::c_uint, pub __cur_writer: ::core::ffi::c_int, pub __shared: ::core::ffi::c_int, pub __rwelision: ::core::ffi::c_schar, pub __pad1: [::core::ffi::c_uchar; 7usize], pub __pad2: ::core::ffi::c_ulong, pub __flags: ::core::ffi::c_uint, } #[test] fn bindgen_test_layout___pthread_rwlock_arch_t() { const UNINIT: ::core::mem::MaybeUninit<__pthread_rwlock_arch_t> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__pthread_rwlock_arch_t>(), 56usize, concat!("Size of: ", stringify!(__pthread_rwlock_arch_t)) ); assert_eq!( ::core::mem::align_of::<__pthread_rwlock_arch_t>(), 8usize, concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__readers) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__readers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__writers) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__writers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__wrphase_futex) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__wrphase_futex) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__writers_futex) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__writers_futex) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__pad3) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__pad3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__pad4) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__pad4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__cur_writer) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__cur_writer) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__shared) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__shared) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__rwelision) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__rwelision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__pad1) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__pad1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__pad2) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__pad2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__flags) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(__pthread_rwlock_arch_t), "::", stringify!(__flags) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct __pthread_cond_s { pub __wseq: __atomic_wide_counter, pub __g1_start: __atomic_wide_counter, pub __g_refs: [::core::ffi::c_uint; 2usize], pub __g_size: [::core::ffi::c_uint; 2usize], pub __g1_orig_size: ::core::ffi::c_uint, pub __wrefs: ::core::ffi::c_uint, pub __g_signals: [::core::ffi::c_uint; 2usize], } #[test] fn bindgen_test_layout___pthread_cond_s() { const UNINIT: ::core::mem::MaybeUninit<__pthread_cond_s> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__pthread_cond_s>(), 48usize, concat!("Size of: ", stringify!(__pthread_cond_s)) ); assert_eq!( ::core::mem::align_of::<__pthread_cond_s>(), 8usize, concat!("Alignment of ", stringify!(__pthread_cond_s)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__wseq) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__pthread_cond_s), "::", stringify!(__wseq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__g1_start) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(__pthread_cond_s), "::", stringify!(__g1_start) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__g_refs) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(__pthread_cond_s), "::", stringify!(__g_refs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__g_size) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(__pthread_cond_s), "::", stringify!(__g_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__g1_orig_size) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(__pthread_cond_s), "::", stringify!(__g1_orig_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__wrefs) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(__pthread_cond_s), "::", stringify!(__wrefs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__g_signals) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(__pthread_cond_s), "::", stringify!(__g_signals) ) ); } pub type __tss_t = ::core::ffi::c_uint; pub type __thrd_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __once_flag { pub __data: ::core::ffi::c_int, } #[test] fn bindgen_test_layout___once_flag() { const UNINIT: ::core::mem::MaybeUninit<__once_flag> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__once_flag>(), 4usize, concat!("Size of: ", stringify!(__once_flag)) ); assert_eq!( ::core::mem::align_of::<__once_flag>(), 4usize, concat!("Alignment of ", stringify!(__once_flag)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__data) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__once_flag), "::", stringify!(__data) ) ); } pub type pthread_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Copy, Clone)] pub union pthread_mutexattr_t { pub __size: [::core::ffi::c_char; 4usize], pub __align: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_pthread_mutexattr_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(pthread_mutexattr_t)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(pthread_mutexattr_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_mutexattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_mutexattr_t), "::", stringify!(__align) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union pthread_condattr_t { pub __size: [::core::ffi::c_char; 4usize], pub __align: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_pthread_condattr_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(pthread_condattr_t)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(pthread_condattr_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_condattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_condattr_t), "::", stringify!(__align) ) ); } pub type pthread_key_t = ::core::ffi::c_uint; pub type pthread_once_t = ::core::ffi::c_int; #[repr(C)] #[derive(Copy, Clone)] pub union pthread_attr_t { pub __size: [::core::ffi::c_char; 56usize], pub __align: ::core::ffi::c_long, } #[test] fn bindgen_test_layout_pthread_attr_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(pthread_attr_t)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_attr_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_attr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_attr_t), "::", stringify!(__align) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union pthread_mutex_t { pub __data: __pthread_mutex_s, pub __size: [::core::ffi::c_char; 40usize], pub __align: ::core::ffi::c_long, } #[test] fn bindgen_test_layout_pthread_mutex_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(pthread_mutex_t)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_mutex_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__data) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_mutex_t), "::", stringify!(__data) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_mutex_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_mutex_t), "::", stringify!(__align) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union pthread_cond_t { pub __data: __pthread_cond_s, pub __size: [::core::ffi::c_char; 48usize], pub __align: ::core::ffi::c_longlong, } #[test] fn bindgen_test_layout_pthread_cond_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 48usize, concat!("Size of: ", stringify!(pthread_cond_t)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_cond_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__data) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_cond_t), "::", stringify!(__data) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_cond_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_cond_t), "::", stringify!(__align) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union pthread_rwlock_t { pub __data: __pthread_rwlock_arch_t, pub __size: [::core::ffi::c_char; 56usize], pub __align: ::core::ffi::c_long, } #[test] fn bindgen_test_layout_pthread_rwlock_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(pthread_rwlock_t)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_rwlock_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__data) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_rwlock_t), "::", stringify!(__data) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_rwlock_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_rwlock_t), "::", stringify!(__align) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union pthread_rwlockattr_t { pub __size: [::core::ffi::c_char; 8usize], pub __align: ::core::ffi::c_long, } #[test] fn bindgen_test_layout_pthread_rwlockattr_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(pthread_rwlockattr_t)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_rwlockattr_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_rwlockattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_rwlockattr_t), "::", stringify!(__align) ) ); } pub type pthread_spinlock_t = ::core::ffi::c_int; #[repr(C)] #[derive(Copy, Clone)] pub union pthread_barrier_t { pub __size: [::core::ffi::c_char; 32usize], pub __align: ::core::ffi::c_long, } #[test] fn bindgen_test_layout_pthread_barrier_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(pthread_barrier_t)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(pthread_barrier_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_barrier_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_barrier_t), "::", stringify!(__align) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union pthread_barrierattr_t { pub __size: [::core::ffi::c_char; 4usize], pub __align: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_pthread_barrierattr_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(pthread_barrierattr_t)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(pthread_barrierattr_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_barrierattr_t), "::", stringify!(__size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__align) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(pthread_barrierattr_t), "::", stringify!(__align) ) ); } pub type int_least8_t = __int_least8_t; pub type int_least16_t = __int_least16_t; pub type int_least32_t = __int_least32_t; pub type int_least64_t = __int_least64_t; pub type uint_least8_t = __uint_least8_t; pub type uint_least16_t = __uint_least16_t; pub type uint_least32_t = __uint_least32_t; pub type uint_least64_t = __uint_least64_t; pub type int_fast8_t = ::core::ffi::c_schar; pub type int_fast16_t = ::core::ffi::c_long; pub type int_fast32_t = ::core::ffi::c_long; pub type int_fast64_t = ::core::ffi::c_long; pub type uint_fast8_t = ::core::ffi::c_uchar; pub type uint_fast16_t = ::core::ffi::c_ulong; pub type uint_fast32_t = ::core::ffi::c_ulong; pub type uint_fast64_t = ::core::ffi::c_ulong; pub type intmax_t = __intmax_t; pub type uintmax_t = __uintmax_t; pub type __s8 = ::core::ffi::c_schar; pub type __u8 = ::core::ffi::c_uchar; pub type __s16 = ::core::ffi::c_short; pub type __u16 = ::core::ffi::c_ushort; pub type __s32 = ::core::ffi::c_int; pub type __u32 = ::core::ffi::c_uint; pub type __s64 = ::core::ffi::c_longlong; pub type __u64 = ::core::ffi::c_ulonglong; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __kernel_fd_set { pub fds_bits: [::core::ffi::c_ulong; 16usize], } #[test] fn bindgen_test_layout___kernel_fd_set() { const UNINIT: ::core::mem::MaybeUninit<__kernel_fd_set> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__kernel_fd_set>(), 128usize, concat!("Size of: ", stringify!(__kernel_fd_set)) ); assert_eq!( ::core::mem::align_of::<__kernel_fd_set>(), 8usize, concat!("Alignment of ", stringify!(__kernel_fd_set)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fds_bits) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__kernel_fd_set), "::", stringify!(fds_bits) ) ); } pub type __kernel_sighandler_t = ::core::option::Option; pub type __kernel_key_t = ::core::ffi::c_int; pub type __kernel_mqd_t = ::core::ffi::c_int; pub type __kernel_old_uid_t = ::core::ffi::c_ushort; pub type __kernel_old_gid_t = ::core::ffi::c_ushort; pub type __kernel_old_dev_t = ::core::ffi::c_ulong; pub type __kernel_long_t = ::core::ffi::c_long; pub type __kernel_ulong_t = ::core::ffi::c_ulong; pub type __kernel_ino_t = __kernel_ulong_t; pub type __kernel_mode_t = ::core::ffi::c_uint; pub type __kernel_pid_t = ::core::ffi::c_int; pub type __kernel_ipc_pid_t = ::core::ffi::c_int; pub type __kernel_uid_t = ::core::ffi::c_uint; pub type __kernel_gid_t = ::core::ffi::c_uint; pub type __kernel_suseconds_t = __kernel_long_t; pub type __kernel_daddr_t = ::core::ffi::c_int; pub type __kernel_uid32_t = ::core::ffi::c_uint; pub type __kernel_gid32_t = ::core::ffi::c_uint; pub type __kernel_size_t = __kernel_ulong_t; pub type __kernel_ssize_t = __kernel_long_t; pub type __kernel_ptrdiff_t = __kernel_long_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __kernel_fsid_t { pub val: [::core::ffi::c_int; 2usize], } #[test] fn bindgen_test_layout___kernel_fsid_t() { const UNINIT: ::core::mem::MaybeUninit<__kernel_fsid_t> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__kernel_fsid_t>(), 8usize, concat!("Size of: ", stringify!(__kernel_fsid_t)) ); assert_eq!( ::core::mem::align_of::<__kernel_fsid_t>(), 4usize, concat!("Alignment of ", stringify!(__kernel_fsid_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).val) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__kernel_fsid_t), "::", stringify!(val) ) ); } pub type __kernel_off_t = __kernel_long_t; pub type __kernel_loff_t = ::core::ffi::c_longlong; pub type __kernel_old_time_t = __kernel_long_t; pub type __kernel_time_t = __kernel_long_t; pub type __kernel_time64_t = ::core::ffi::c_longlong; pub type __kernel_clock_t = __kernel_long_t; pub type __kernel_timer_t = ::core::ffi::c_int; pub type __kernel_clockid_t = ::core::ffi::c_int; pub type __kernel_caddr_t = *mut ::core::ffi::c_char; pub type __kernel_uid16_t = ::core::ffi::c_ushort; pub type __kernel_gid16_t = ::core::ffi::c_ushort; pub type __s128 = i128; pub type __u128 = u128; pub type __le16 = __u16; pub type __be16 = __u16; pub type __le32 = __u32; pub type __be32 = __u32; pub type __le64 = __u64; pub type __be64 = __u64; pub type __sum16 = __u16; pub type __wsum = __u32; pub type __poll_t = ::core::ffi::c_uint; pub type drm_handle_t = ::core::ffi::c_uint; pub type drm_context_t = ::core::ffi::c_uint; pub type drm_drawable_t = ::core::ffi::c_uint; pub type drm_magic_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_clip_rect { pub x1: ::core::ffi::c_ushort, pub y1: ::core::ffi::c_ushort, pub x2: ::core::ffi::c_ushort, pub y2: ::core::ffi::c_ushort, } #[test] fn bindgen_test_layout_drm_clip_rect() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_clip_rect)) ); assert_eq!( ::core::mem::align_of::(), 2usize, concat!("Alignment of ", stringify!(drm_clip_rect)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x1) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_clip_rect), "::", stringify!(x1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y1) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(drm_clip_rect), "::", stringify!(y1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x2) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_clip_rect), "::", stringify!(x2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y2) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(drm_clip_rect), "::", stringify!(y2) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_drawable_info { pub num_rects: ::core::ffi::c_uint, pub rects: *mut drm_clip_rect, } #[test] fn bindgen_test_layout_drm_drawable_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_drawable_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_drawable_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_rects) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_drawable_info), "::", stringify!(num_rects) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rects) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_drawable_info), "::", stringify!(rects) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_tex_region { pub next: ::core::ffi::c_uchar, pub prev: ::core::ffi::c_uchar, pub in_use: ::core::ffi::c_uchar, pub padding: ::core::ffi::c_uchar, pub age: ::core::ffi::c_uint, } #[test] fn bindgen_test_layout_drm_tex_region() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_tex_region)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_tex_region)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).next) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_tex_region), "::", stringify!(next) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prev) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(drm_tex_region), "::", stringify!(prev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_use) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(drm_tex_region), "::", stringify!(in_use) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(drm_tex_region), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).age) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_tex_region), "::", stringify!(age) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_hw_lock { pub lock: ::core::ffi::c_uint, pub padding: [::core::ffi::c_char; 60usize], } #[test] fn bindgen_test_layout_drm_hw_lock() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 64usize, concat!("Size of: ", stringify!(drm_hw_lock)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_hw_lock)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lock) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_hw_lock), "::", stringify!(lock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_hw_lock), "::", stringify!(padding) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_version { pub version_major: ::core::ffi::c_int, pub version_minor: ::core::ffi::c_int, pub version_patchlevel: ::core::ffi::c_int, pub name_len: __kernel_size_t, pub name: *mut ::core::ffi::c_char, pub date_len: __kernel_size_t, pub date: *mut ::core::ffi::c_char, pub desc_len: __kernel_size_t, pub desc: *mut ::core::ffi::c_char, } #[test] fn bindgen_test_layout_drm_version() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 64usize, concat!("Size of: ", stringify!(drm_version)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_version)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version_major) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(version_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version_minor) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(version_minor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version_patchlevel) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(version_patchlevel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name_len) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(name_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).date_len) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(date_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).date) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(date) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).desc_len) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(desc_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).desc) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(drm_version), "::", stringify!(desc) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_unique { pub unique_len: __kernel_size_t, pub unique: *mut ::core::ffi::c_char, } #[test] fn bindgen_test_layout_drm_unique() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_unique)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_unique)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).unique_len) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_unique), "::", stringify!(unique_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).unique) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_unique), "::", stringify!(unique) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_list { pub count: ::core::ffi::c_int, pub version: *mut drm_version, } #[test] fn bindgen_test_layout_drm_list() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_list)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_list)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_list), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_list), "::", stringify!(version) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_block { pub unused: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_drm_block() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drm_block)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_block)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).unused) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_block), "::", stringify!(unused) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_control { pub func: drm_control__bindgen_ty_1, pub irq: ::core::ffi::c_int, } pub const drm_control_DRM_ADD_COMMAND: drm_control__bindgen_ty_1 = 0; pub const drm_control_DRM_RM_COMMAND: drm_control__bindgen_ty_1 = 1; pub const drm_control_DRM_INST_HANDLER: drm_control__bindgen_ty_1 = 2; pub const drm_control_DRM_UNINST_HANDLER: drm_control__bindgen_ty_1 = 3; pub type drm_control__bindgen_ty_1 = ::core::ffi::c_uint; #[test] fn bindgen_test_layout_drm_control() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_control)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_control)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).func) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_control), "::", stringify!(func) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).irq) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_control), "::", stringify!(irq) ) ); } pub const drm_map_type__DRM_FRAME_BUFFER: drm_map_type = 0; pub const drm_map_type__DRM_REGISTERS: drm_map_type = 1; pub const drm_map_type__DRM_SHM: drm_map_type = 2; pub const drm_map_type__DRM_AGP: drm_map_type = 3; pub const drm_map_type__DRM_SCATTER_GATHER: drm_map_type = 4; pub const drm_map_type__DRM_CONSISTENT: drm_map_type = 5; pub type drm_map_type = ::core::ffi::c_uint; pub const drm_map_flags__DRM_RESTRICTED: drm_map_flags = 1; pub const drm_map_flags__DRM_READ_ONLY: drm_map_flags = 2; pub const drm_map_flags__DRM_LOCKED: drm_map_flags = 4; pub const drm_map_flags__DRM_KERNEL: drm_map_flags = 8; pub const drm_map_flags__DRM_WRITE_COMBINING: drm_map_flags = 16; pub const drm_map_flags__DRM_CONTAINS_LOCK: drm_map_flags = 32; pub const drm_map_flags__DRM_REMOVABLE: drm_map_flags = 64; pub const drm_map_flags__DRM_DRIVER: drm_map_flags = 128; pub type drm_map_flags = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_ctx_priv_map { pub ctx_id: ::core::ffi::c_uint, pub handle: *mut ::core::ffi::c_void, } #[test] fn bindgen_test_layout_drm_ctx_priv_map() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_ctx_priv_map)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_ctx_priv_map)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_ctx_priv_map), "::", stringify!(ctx_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_ctx_priv_map), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_map { pub offset: ::core::ffi::c_ulong, pub size: ::core::ffi::c_ulong, pub type_: drm_map_type, pub flags: drm_map_flags, pub handle: *mut ::core::ffi::c_void, pub mtrr: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_drm_map() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(drm_map)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_map)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_map), "::", stringify!(offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_map), "::", stringify!(size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_map), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_map), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_map), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mtrr) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_map), "::", stringify!(mtrr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_client { pub idx: ::core::ffi::c_int, pub auth: ::core::ffi::c_int, pub pid: ::core::ffi::c_ulong, pub uid: ::core::ffi::c_ulong, pub magic: ::core::ffi::c_ulong, pub iocs: ::core::ffi::c_ulong, } #[test] fn bindgen_test_layout_drm_client() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(drm_client)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_client)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).idx) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_client), "::", stringify!(idx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).auth) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_client), "::", stringify!(auth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pid) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_client), "::", stringify!(pid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uid) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_client), "::", stringify!(uid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).magic) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_client), "::", stringify!(magic) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).iocs) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_client), "::", stringify!(iocs) ) ); } pub const drm_stat_type__DRM_STAT_LOCK: drm_stat_type = 0; pub const drm_stat_type__DRM_STAT_OPENS: drm_stat_type = 1; pub const drm_stat_type__DRM_STAT_CLOSES: drm_stat_type = 2; pub const drm_stat_type__DRM_STAT_IOCTLS: drm_stat_type = 3; pub const drm_stat_type__DRM_STAT_LOCKS: drm_stat_type = 4; pub const drm_stat_type__DRM_STAT_UNLOCKS: drm_stat_type = 5; pub const drm_stat_type__DRM_STAT_VALUE: drm_stat_type = 6; pub const drm_stat_type__DRM_STAT_BYTE: drm_stat_type = 7; pub const drm_stat_type__DRM_STAT_COUNT: drm_stat_type = 8; pub const drm_stat_type__DRM_STAT_IRQ: drm_stat_type = 9; pub const drm_stat_type__DRM_STAT_PRIMARY: drm_stat_type = 10; pub const drm_stat_type__DRM_STAT_SECONDARY: drm_stat_type = 11; pub const drm_stat_type__DRM_STAT_DMA: drm_stat_type = 12; pub const drm_stat_type__DRM_STAT_SPECIAL: drm_stat_type = 13; pub const drm_stat_type__DRM_STAT_MISSED: drm_stat_type = 14; pub type drm_stat_type = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_stats { pub count: ::core::ffi::c_ulong, pub data: [drm_stats__bindgen_ty_1; 15usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_stats__bindgen_ty_1 { pub value: ::core::ffi::c_ulong, pub type_: drm_stat_type, } #[test] fn bindgen_test_layout_drm_stats__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_stats__bindgen_ty_1)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_stats__bindgen_ty_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_stats__bindgen_ty_1), "::", stringify!(value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_stats__bindgen_ty_1), "::", stringify!(type_) ) ); } #[test] fn bindgen_test_layout_drm_stats() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 248usize, concat!("Size of: ", stringify!(drm_stats)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_stats)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_stats), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_stats), "::", stringify!(data) ) ); } pub const drm_lock_flags__DRM_LOCK_READY: drm_lock_flags = 1; pub const drm_lock_flags__DRM_LOCK_QUIESCENT: drm_lock_flags = 2; pub const drm_lock_flags__DRM_LOCK_FLUSH: drm_lock_flags = 4; pub const drm_lock_flags__DRM_LOCK_FLUSH_ALL: drm_lock_flags = 8; pub const drm_lock_flags__DRM_HALT_ALL_QUEUES: drm_lock_flags = 16; pub const drm_lock_flags__DRM_HALT_CUR_QUEUES: drm_lock_flags = 32; pub type drm_lock_flags = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_lock { pub context: ::core::ffi::c_int, pub flags: drm_lock_flags, } #[test] fn bindgen_test_layout_drm_lock() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_lock)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_lock)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).context) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_lock), "::", stringify!(context) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_lock), "::", stringify!(flags) ) ); } pub const drm_dma_flags__DRM_DMA_BLOCK: drm_dma_flags = 1; pub const drm_dma_flags__DRM_DMA_WHILE_LOCKED: drm_dma_flags = 2; pub const drm_dma_flags__DRM_DMA_PRIORITY: drm_dma_flags = 4; pub const drm_dma_flags__DRM_DMA_WAIT: drm_dma_flags = 16; pub const drm_dma_flags__DRM_DMA_SMALLER_OK: drm_dma_flags = 32; pub const drm_dma_flags__DRM_DMA_LARGER_OK: drm_dma_flags = 64; pub type drm_dma_flags = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_buf_desc { pub count: ::core::ffi::c_int, pub size: ::core::ffi::c_int, pub low_mark: ::core::ffi::c_int, pub high_mark: ::core::ffi::c_int, pub flags: drm_buf_desc__bindgen_ty_1, pub agp_start: ::core::ffi::c_ulong, } pub const drm_buf_desc__DRM_PAGE_ALIGN: drm_buf_desc__bindgen_ty_1 = 1; pub const drm_buf_desc__DRM_AGP_BUFFER: drm_buf_desc__bindgen_ty_1 = 2; pub const drm_buf_desc__DRM_SG_BUFFER: drm_buf_desc__bindgen_ty_1 = 4; pub const drm_buf_desc__DRM_FB_BUFFER: drm_buf_desc__bindgen_ty_1 = 8; pub const drm_buf_desc__DRM_PCI_BUFFER_RO: drm_buf_desc__bindgen_ty_1 = 16; pub type drm_buf_desc__bindgen_ty_1 = ::core::ffi::c_uint; #[test] fn bindgen_test_layout_drm_buf_desc() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_buf_desc)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_buf_desc)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_buf_desc), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_buf_desc), "::", stringify!(size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).low_mark) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_buf_desc), "::", stringify!(low_mark) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).high_mark) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_buf_desc), "::", stringify!(high_mark) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_buf_desc), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).agp_start) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_buf_desc), "::", stringify!(agp_start) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_buf_info { pub count: ::core::ffi::c_int, pub list: *mut drm_buf_desc, } #[test] fn bindgen_test_layout_drm_buf_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_buf_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_buf_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_buf_info), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).list) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_buf_info), "::", stringify!(list) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_buf_free { pub count: ::core::ffi::c_int, pub list: *mut ::core::ffi::c_int, } #[test] fn bindgen_test_layout_drm_buf_free() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_buf_free)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_buf_free)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_buf_free), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).list) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_buf_free), "::", stringify!(list) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_buf_pub { pub idx: ::core::ffi::c_int, pub total: ::core::ffi::c_int, pub used: ::core::ffi::c_int, pub address: *mut ::core::ffi::c_void, } #[test] fn bindgen_test_layout_drm_buf_pub() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_buf_pub)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_buf_pub)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).idx) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_buf_pub), "::", stringify!(idx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).total) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_buf_pub), "::", stringify!(total) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).used) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_buf_pub), "::", stringify!(used) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).address) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_buf_pub), "::", stringify!(address) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_buf_map { pub count: ::core::ffi::c_int, pub virtual_: *mut ::core::ffi::c_void, pub list: *mut drm_buf_pub, } #[test] fn bindgen_test_layout_drm_buf_map() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_buf_map)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_buf_map)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_buf_map), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).virtual_) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_buf_map), "::", stringify!(virtual_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).list) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_buf_map), "::", stringify!(list) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_dma { pub context: ::core::ffi::c_int, pub send_count: ::core::ffi::c_int, pub send_indices: *mut ::core::ffi::c_int, pub send_sizes: *mut ::core::ffi::c_int, pub flags: drm_dma_flags, pub request_count: ::core::ffi::c_int, pub request_size: ::core::ffi::c_int, pub request_indices: *mut ::core::ffi::c_int, pub request_sizes: *mut ::core::ffi::c_int, pub granted_count: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_drm_dma() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 64usize, concat!("Size of: ", stringify!(drm_dma)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_dma)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).context) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(context) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).send_count) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(send_count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).send_indices) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(send_indices) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).send_sizes) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(send_sizes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_count) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(request_count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_size) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(request_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_indices) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(request_indices) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_sizes) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(request_sizes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).granted_count) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(drm_dma), "::", stringify!(granted_count) ) ); } pub const drm_ctx_flags__DRM_CONTEXT_PRESERVED: drm_ctx_flags = 1; pub const drm_ctx_flags__DRM_CONTEXT_2DONLY: drm_ctx_flags = 2; pub type drm_ctx_flags = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_ctx { pub handle: drm_context_t, pub flags: drm_ctx_flags, } #[test] fn bindgen_test_layout_drm_ctx() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_ctx)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_ctx)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_ctx), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_ctx), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_ctx_res { pub count: ::core::ffi::c_int, pub contexts: *mut drm_ctx, } #[test] fn bindgen_test_layout_drm_ctx_res() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_ctx_res)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_ctx_res)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_ctx_res), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).contexts) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_ctx_res), "::", stringify!(contexts) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_draw { pub handle: drm_drawable_t, } #[test] fn bindgen_test_layout_drm_draw() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drm_draw)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_draw)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_draw), "::", stringify!(handle) ) ); } pub const drm_drawable_info_type_t_DRM_DRAWABLE_CLIPRECTS: drm_drawable_info_type_t = 0; pub type drm_drawable_info_type_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_update_draw { pub handle: drm_drawable_t, pub type_: ::core::ffi::c_uint, pub num: ::core::ffi::c_uint, pub data: ::core::ffi::c_ulonglong, } #[test] fn bindgen_test_layout_drm_update_draw() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_update_draw)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_update_draw)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_update_draw), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_update_draw), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_update_draw), "::", stringify!(num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_update_draw), "::", stringify!(data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_auth { pub magic: drm_magic_t, } #[test] fn bindgen_test_layout_drm_auth() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drm_auth)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_auth)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).magic) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_auth), "::", stringify!(magic) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_irq_busid { pub irq: ::core::ffi::c_int, pub busnum: ::core::ffi::c_int, pub devnum: ::core::ffi::c_int, pub funcnum: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_drm_irq_busid() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_irq_busid)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_irq_busid)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).irq) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_irq_busid), "::", stringify!(irq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).busnum) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_irq_busid), "::", stringify!(busnum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).devnum) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_irq_busid), "::", stringify!(devnum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).funcnum) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_irq_busid), "::", stringify!(funcnum) ) ); } pub const drm_vblank_seq_type__DRM_VBLANK_ABSOLUTE: drm_vblank_seq_type = 0; pub const drm_vblank_seq_type__DRM_VBLANK_RELATIVE: drm_vblank_seq_type = 1; pub const drm_vblank_seq_type__DRM_VBLANK_HIGH_CRTC_MASK: drm_vblank_seq_type = 62; pub const drm_vblank_seq_type__DRM_VBLANK_EVENT: drm_vblank_seq_type = 67108864; pub const drm_vblank_seq_type__DRM_VBLANK_FLIP: drm_vblank_seq_type = 134217728; pub const drm_vblank_seq_type__DRM_VBLANK_NEXTONMISS: drm_vblank_seq_type = 268435456; pub const drm_vblank_seq_type__DRM_VBLANK_SECONDARY: drm_vblank_seq_type = 536870912; pub const drm_vblank_seq_type__DRM_VBLANK_SIGNAL: drm_vblank_seq_type = 1073741824; pub type drm_vblank_seq_type = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_wait_vblank_request { pub type_: drm_vblank_seq_type, pub sequence: ::core::ffi::c_uint, pub signal: ::core::ffi::c_ulong, } #[test] fn bindgen_test_layout_drm_wait_vblank_request() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_wait_vblank_request)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_wait_vblank_request)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank_request), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank_request), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).signal) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank_request), "::", stringify!(signal) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_wait_vblank_reply { pub type_: drm_vblank_seq_type, pub sequence: ::core::ffi::c_uint, pub tval_sec: ::core::ffi::c_long, pub tval_usec: ::core::ffi::c_long, } #[test] fn bindgen_test_layout_drm_wait_vblank_reply() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_wait_vblank_reply)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_wait_vblank_reply)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank_reply), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank_reply), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tval_sec) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank_reply), "::", stringify!(tval_sec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tval_usec) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank_reply), "::", stringify!(tval_usec) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_wait_vblank { pub request: drm_wait_vblank_request, pub reply: drm_wait_vblank_reply, } #[test] fn bindgen_test_layout_drm_wait_vblank() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_wait_vblank)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_wait_vblank)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank), "::", stringify!(request) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reply) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_wait_vblank), "::", stringify!(reply) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_modeset_ctl { pub crtc: __u32, pub cmd: __u32, } #[test] fn bindgen_test_layout_drm_modeset_ctl() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_modeset_ctl)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_modeset_ctl)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_modeset_ctl), "::", stringify!(crtc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_modeset_ctl), "::", stringify!(cmd) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_agp_mode { pub mode: ::core::ffi::c_ulong, } #[test] fn bindgen_test_layout_drm_agp_mode() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_agp_mode)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_agp_mode)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_agp_mode), "::", stringify!(mode) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_agp_buffer { pub size: ::core::ffi::c_ulong, pub handle: ::core::ffi::c_ulong, pub type_: ::core::ffi::c_ulong, pub physical: ::core::ffi::c_ulong, } #[test] fn bindgen_test_layout_drm_agp_buffer() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_agp_buffer)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_agp_buffer)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_agp_buffer), "::", stringify!(size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_agp_buffer), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_agp_buffer), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).physical) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_agp_buffer), "::", stringify!(physical) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_agp_binding { pub handle: ::core::ffi::c_ulong, pub offset: ::core::ffi::c_ulong, } #[test] fn bindgen_test_layout_drm_agp_binding() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_agp_binding)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_agp_binding)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_agp_binding), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_agp_binding), "::", stringify!(offset) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_agp_info { pub agp_version_major: ::core::ffi::c_int, pub agp_version_minor: ::core::ffi::c_int, pub mode: ::core::ffi::c_ulong, pub aperture_base: ::core::ffi::c_ulong, pub aperture_size: ::core::ffi::c_ulong, pub memory_allowed: ::core::ffi::c_ulong, pub memory_used: ::core::ffi::c_ulong, pub id_vendor: ::core::ffi::c_ushort, pub id_device: ::core::ffi::c_ushort, } #[test] fn bindgen_test_layout_drm_agp_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(drm_agp_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_agp_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).agp_version_major) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(agp_version_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).agp_version_minor) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(agp_version_minor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aperture_base) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(aperture_base) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aperture_size) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(aperture_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_allowed) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(memory_allowed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_used) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(memory_used) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).id_vendor) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(id_vendor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).id_device) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(drm_agp_info), "::", stringify!(id_device) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_scatter_gather { pub size: ::core::ffi::c_ulong, pub handle: ::core::ffi::c_ulong, } #[test] fn bindgen_test_layout_drm_scatter_gather() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_scatter_gather)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_scatter_gather)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_scatter_gather), "::", stringify!(size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_scatter_gather), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_set_version { pub drm_di_major: ::core::ffi::c_int, pub drm_di_minor: ::core::ffi::c_int, pub drm_dd_major: ::core::ffi::c_int, pub drm_dd_minor: ::core::ffi::c_int, } #[test] fn bindgen_test_layout_drm_set_version() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_set_version)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_set_version)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_di_major) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_set_version), "::", stringify!(drm_di_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_di_minor) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_set_version), "::", stringify!(drm_di_minor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_dd_major) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_set_version), "::", stringify!(drm_dd_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_dd_minor) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_set_version), "::", stringify!(drm_dd_minor) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_gem_close { pub handle: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_gem_close() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_gem_close)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_gem_close)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_gem_close), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_gem_close), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_gem_flink { pub handle: __u32, pub name: __u32, } #[test] fn bindgen_test_layout_drm_gem_flink() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_gem_flink)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_gem_flink)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_gem_flink), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_gem_flink), "::", stringify!(name) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_gem_open { pub name: __u32, pub handle: __u32, pub size: __u64, } #[test] fn bindgen_test_layout_drm_gem_open() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_gem_open)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_gem_open)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_gem_open), "::", stringify!(name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_gem_open), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_gem_open), "::", stringify!(size) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_get_cap { pub capability: __u64, pub value: __u64, } #[test] fn bindgen_test_layout_drm_get_cap() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_get_cap)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_get_cap)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).capability) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_get_cap), "::", stringify!(capability) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_get_cap), "::", stringify!(value) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_set_client_cap { pub capability: __u64, pub value: __u64, } #[test] fn bindgen_test_layout_drm_set_client_cap() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_set_client_cap)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_set_client_cap)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).capability) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_set_client_cap), "::", stringify!(capability) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_set_client_cap), "::", stringify!(value) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_prime_handle { pub handle: __u32, pub flags: __u32, pub fd: __s32, } #[test] fn bindgen_test_layout_drm_prime_handle() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(drm_prime_handle)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_prime_handle)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_prime_handle), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_prime_handle), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fd) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_prime_handle), "::", stringify!(fd) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_create { pub handle: __u32, pub flags: __u32, } #[test] fn bindgen_test_layout_drm_syncobj_create() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_syncobj_create)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_syncobj_create)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_create), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_syncobj_create), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_destroy { pub handle: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_syncobj_destroy() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_syncobj_destroy)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_syncobj_destroy)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_destroy), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_syncobj_destroy), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_handle { pub handle: __u32, pub flags: __u32, pub fd: __s32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_syncobj_handle() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_syncobj_handle)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_syncobj_handle)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_handle), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_syncobj_handle), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fd) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_syncobj_handle), "::", stringify!(fd) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_syncobj_handle), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_transfer { pub src_handle: __u32, pub dst_handle: __u32, pub src_point: __u64, pub dst_point: __u64, pub flags: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_syncobj_transfer() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_syncobj_transfer)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_syncobj_transfer)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).src_handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_transfer), "::", stringify!(src_handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dst_handle) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_syncobj_transfer), "::", stringify!(dst_handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).src_point) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_syncobj_transfer), "::", stringify!(src_point) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dst_point) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_syncobj_transfer), "::", stringify!(dst_point) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_syncobj_transfer), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_syncobj_transfer), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_wait { pub handles: __u64, pub timeout_nsec: __s64, pub count_handles: __u32, pub flags: __u32, pub first_signaled: __u32, pub pad: __u32, pub deadline_nsec: __u64, } #[test] fn bindgen_test_layout_drm_syncobj_wait() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(drm_syncobj_wait)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_syncobj_wait)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handles) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_wait), "::", stringify!(handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).timeout_nsec) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_syncobj_wait), "::", stringify!(timeout_nsec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_handles) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_syncobj_wait), "::", stringify!(count_handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_syncobj_wait), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).first_signaled) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_syncobj_wait), "::", stringify!(first_signaled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_syncobj_wait), "::", stringify!(pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deadline_nsec) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_syncobj_wait), "::", stringify!(deadline_nsec) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_timeline_wait { pub handles: __u64, pub points: __u64, pub timeout_nsec: __s64, pub count_handles: __u32, pub flags: __u32, pub first_signaled: __u32, pub pad: __u32, pub deadline_nsec: __u64, } #[test] fn bindgen_test_layout_drm_syncobj_timeline_wait() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 48usize, concat!("Size of: ", stringify!(drm_syncobj_timeline_wait)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_syncobj_timeline_wait)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handles) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).points) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(points) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).timeout_nsec) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(timeout_nsec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_handles) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(count_handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).first_signaled) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(first_signaled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deadline_nsec) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_wait), "::", stringify!(deadline_nsec) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_eventfd { pub handle: __u32, pub flags: __u32, pub point: __u64, pub fd: __s32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_syncobj_eventfd() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_syncobj_eventfd)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_syncobj_eventfd)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_eventfd), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_syncobj_eventfd), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).point) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_syncobj_eventfd), "::", stringify!(point) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fd) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_syncobj_eventfd), "::", stringify!(fd) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_syncobj_eventfd), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_array { pub handles: __u64, pub count_handles: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_syncobj_array() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_syncobj_array)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_syncobj_array)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handles) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_array), "::", stringify!(handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_handles) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_syncobj_array), "::", stringify!(count_handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_syncobj_array), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_syncobj_timeline_array { pub handles: __u64, pub points: __u64, pub count_handles: __u32, pub flags: __u32, } #[test] fn bindgen_test_layout_drm_syncobj_timeline_array() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_syncobj_timeline_array)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_syncobj_timeline_array)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handles) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_array), "::", stringify!(handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).points) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_array), "::", stringify!(points) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_handles) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_array), "::", stringify!(count_handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_syncobj_timeline_array), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_crtc_get_sequence { pub crtc_id: __u32, pub active: __u32, pub sequence: __u64, pub sequence_ns: __s64, } #[test] fn bindgen_test_layout_drm_crtc_get_sequence() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_crtc_get_sequence)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_crtc_get_sequence)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_crtc_get_sequence), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_crtc_get_sequence), "::", stringify!(active) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_crtc_get_sequence), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence_ns) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_crtc_get_sequence), "::", stringify!(sequence_ns) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_crtc_queue_sequence { pub crtc_id: __u32, pub flags: __u32, pub sequence: __u64, pub user_data: __u64, } #[test] fn bindgen_test_layout_drm_crtc_queue_sequence() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_crtc_queue_sequence)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_crtc_queue_sequence)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_crtc_queue_sequence), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_crtc_queue_sequence), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_crtc_queue_sequence), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).user_data) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_crtc_queue_sequence), "::", stringify!(user_data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_modeinfo { pub clock: __u32, pub hdisplay: __u16, pub hsync_start: __u16, pub hsync_end: __u16, pub htotal: __u16, pub hskew: __u16, pub vdisplay: __u16, pub vsync_start: __u16, pub vsync_end: __u16, pub vtotal: __u16, pub vscan: __u16, pub vrefresh: __u32, pub flags: __u32, pub type_: __u32, pub name: [::core::ffi::c_char; 32usize], } #[test] fn bindgen_test_layout_drm_mode_modeinfo() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 68usize, concat!("Size of: ", stringify!(drm_mode_modeinfo)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_modeinfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).clock) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(clock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdisplay) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(hdisplay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hsync_start) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(hsync_start) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hsync_end) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(hsync_end) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htotal) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(htotal) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hskew) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(hskew) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vdisplay) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(vdisplay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vsync_start) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(vsync_start) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vsync_end) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(vsync_end) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vtotal) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(vtotal) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vscan) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(vscan) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vrefresh) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(vrefresh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(drm_mode_modeinfo), "::", stringify!(name) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_card_res { pub fb_id_ptr: __u64, pub crtc_id_ptr: __u64, pub connector_id_ptr: __u64, pub encoder_id_ptr: __u64, pub count_fbs: __u32, pub count_crtcs: __u32, pub count_connectors: __u32, pub count_encoders: __u32, pub min_width: __u32, pub max_width: __u32, pub min_height: __u32, pub max_height: __u32, } #[test] fn bindgen_test_layout_drm_mode_card_res() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 64usize, concat!("Size of: ", stringify!(drm_mode_card_res)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_card_res)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id_ptr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(fb_id_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id_ptr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(crtc_id_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_id_ptr) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(connector_id_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_id_ptr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(encoder_id_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_fbs) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(count_fbs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_crtcs) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(count_crtcs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_connectors) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(count_connectors) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_encoders) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(count_encoders) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_width) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(min_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_width) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(max_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_height) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(min_height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_height) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(drm_mode_card_res), "::", stringify!(max_height) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_crtc { pub set_connectors_ptr: __u64, pub count_connectors: __u32, pub crtc_id: __u32, pub fb_id: __u32, pub x: __u32, pub y: __u32, pub gamma_size: __u32, pub mode_valid: __u32, pub mode: drm_mode_modeinfo, } #[test] fn bindgen_test_layout_drm_mode_crtc() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 104usize, concat!("Size of: ", stringify!(drm_mode_crtc)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_crtc)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).set_connectors_ptr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(set_connectors_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_connectors) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(count_connectors) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gamma_size) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(gamma_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode_valid) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(mode_valid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc), "::", stringify!(mode) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_set_plane { pub plane_id: __u32, pub crtc_id: __u32, pub fb_id: __u32, pub flags: __u32, pub crtc_x: __s32, pub crtc_y: __s32, pub crtc_w: __u32, pub crtc_h: __u32, pub src_x: __u32, pub src_y: __u32, pub src_h: __u32, pub src_w: __u32, } #[test] fn bindgen_test_layout_drm_mode_set_plane() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 48usize, concat!("Size of: ", stringify!(drm_mode_set_plane)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_set_plane)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plane_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(plane_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_x) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(crtc_x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_y) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(crtc_y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_w) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(crtc_w) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_h) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(crtc_h) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).src_x) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(src_x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).src_y) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(src_y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).src_h) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(src_h) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).src_w) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(drm_mode_set_plane), "::", stringify!(src_w) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_get_plane { pub plane_id: __u32, pub crtc_id: __u32, pub fb_id: __u32, pub possible_crtcs: __u32, pub gamma_size: __u32, pub count_format_types: __u32, pub format_type_ptr: __u64, } #[test] fn bindgen_test_layout_drm_mode_get_plane() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_mode_get_plane)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_get_plane)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plane_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane), "::", stringify!(plane_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).possible_crtcs) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane), "::", stringify!(possible_crtcs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gamma_size) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane), "::", stringify!(gamma_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_format_types) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane), "::", stringify!(count_format_types) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).format_type_ptr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane), "::", stringify!(format_type_ptr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_get_plane_res { pub plane_id_ptr: __u64, pub count_planes: __u32, } #[test] fn bindgen_test_layout_drm_mode_get_plane_res() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_get_plane_res)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_get_plane_res)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plane_id_ptr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane_res), "::", stringify!(plane_id_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_planes) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_get_plane_res), "::", stringify!(count_planes) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_get_encoder { pub encoder_id: __u32, pub encoder_type: __u32, pub crtc_id: __u32, pub possible_crtcs: __u32, pub possible_clones: __u32, } #[test] fn bindgen_test_layout_drm_mode_get_encoder() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 20usize, concat!("Size of: ", stringify!(drm_mode_get_encoder)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_get_encoder)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_get_encoder), "::", stringify!(encoder_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_type) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_get_encoder), "::", stringify!(encoder_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_get_encoder), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).possible_crtcs) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_get_encoder), "::", stringify!(possible_crtcs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).possible_clones) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_get_encoder), "::", stringify!(possible_clones) ) ); } pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_Automatic: drm_mode_subconnector = 0; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_Unknown: drm_mode_subconnector = 0; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_VGA: drm_mode_subconnector = 1; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_DVID: drm_mode_subconnector = 3; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_DVIA: drm_mode_subconnector = 4; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_Composite: drm_mode_subconnector = 5; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_SVIDEO: drm_mode_subconnector = 6; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_Component: drm_mode_subconnector = 8; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_SCART: drm_mode_subconnector = 9; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_DisplayPort: drm_mode_subconnector = 10; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_HDMIA: drm_mode_subconnector = 11; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_Native: drm_mode_subconnector = 15; pub const drm_mode_subconnector_DRM_MODE_SUBCONNECTOR_Wireless: drm_mode_subconnector = 18; pub type drm_mode_subconnector = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_get_connector { pub encoders_ptr: __u64, pub modes_ptr: __u64, pub props_ptr: __u64, pub prop_values_ptr: __u64, pub count_modes: __u32, pub count_props: __u32, pub count_encoders: __u32, pub encoder_id: __u32, pub connector_id: __u32, pub connector_type: __u32, pub connector_type_id: __u32, pub connection: __u32, pub mm_width: __u32, pub mm_height: __u32, pub subpixel: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_mode_get_connector() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 80usize, concat!("Size of: ", stringify!(drm_mode_get_connector)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_get_connector)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoders_ptr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(encoders_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).modes_ptr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(modes_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).props_ptr) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(props_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_values_ptr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(prop_values_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_modes) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(count_modes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_props) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(count_props) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_encoders) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(count_encoders) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_id) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(encoder_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_id) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(connector_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_type) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(connector_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_type_id) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(connector_type_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connection) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(connection) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mm_width) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(mm_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mm_height) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(mm_height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).subpixel) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(subpixel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(drm_mode_get_connector), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_property_enum { pub value: __u64, pub name: [::core::ffi::c_char; 32usize], } #[test] fn bindgen_test_layout_drm_mode_property_enum() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(drm_mode_property_enum)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_property_enum)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_property_enum), "::", stringify!(value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_property_enum), "::", stringify!(name) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_get_property { pub values_ptr: __u64, pub enum_blob_ptr: __u64, pub prop_id: __u32, pub flags: __u32, pub name: [::core::ffi::c_char; 32usize], pub count_values: __u32, pub count_enum_blobs: __u32, } #[test] fn bindgen_test_layout_drm_mode_get_property() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 64usize, concat!("Size of: ", stringify!(drm_mode_get_property)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_get_property)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).values_ptr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_get_property), "::", stringify!(values_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enum_blob_ptr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_get_property), "::", stringify!(enum_blob_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_id) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_get_property), "::", stringify!(prop_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_get_property), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_get_property), "::", stringify!(name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_values) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(drm_mode_get_property), "::", stringify!(count_values) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_enum_blobs) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(drm_mode_get_property), "::", stringify!(count_enum_blobs) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_connector_set_property { pub value: __u64, pub prop_id: __u32, pub connector_id: __u32, } #[test] fn bindgen_test_layout_drm_mode_connector_set_property() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_connector_set_property)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_connector_set_property)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_connector_set_property), "::", stringify!(value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_connector_set_property), "::", stringify!(prop_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_connector_set_property), "::", stringify!(connector_id) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_obj_get_properties { pub props_ptr: __u64, pub prop_values_ptr: __u64, pub count_props: __u32, pub obj_id: __u32, pub obj_type: __u32, } #[test] fn bindgen_test_layout_drm_mode_obj_get_properties() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_mode_obj_get_properties)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_obj_get_properties)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).props_ptr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_get_properties), "::", stringify!(props_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_values_ptr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_get_properties), "::", stringify!(prop_values_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_props) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_get_properties), "::", stringify!(count_props) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).obj_id) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_get_properties), "::", stringify!(obj_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).obj_type) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_get_properties), "::", stringify!(obj_type) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_obj_set_property { pub value: __u64, pub prop_id: __u32, pub obj_id: __u32, pub obj_type: __u32, } #[test] fn bindgen_test_layout_drm_mode_obj_set_property() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_mode_obj_set_property)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_obj_set_property)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_set_property), "::", stringify!(value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_set_property), "::", stringify!(prop_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).obj_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_set_property), "::", stringify!(obj_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).obj_type) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_obj_set_property), "::", stringify!(obj_type) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_get_blob { pub blob_id: __u32, pub length: __u32, pub data: __u64, } #[test] fn bindgen_test_layout_drm_mode_get_blob() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_get_blob)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_get_blob)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blob_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_get_blob), "::", stringify!(blob_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).length) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_get_blob), "::", stringify!(length) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_get_blob), "::", stringify!(data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_fb_cmd { pub fb_id: __u32, pub width: __u32, pub height: __u32, pub pitch: __u32, pub bpp: __u32, pub depth: __u32, pub handle: __u32, } #[test] fn bindgen_test_layout_drm_mode_fb_cmd() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(drm_mode_fb_cmd)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_fb_cmd)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pitch) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd), "::", stringify!(pitch) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bpp) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd), "::", stringify!(bpp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).depth) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd), "::", stringify!(depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_fb_cmd2 { pub fb_id: __u32, pub width: __u32, pub height: __u32, pub pixel_format: __u32, pub flags: __u32, pub handles: [__u32; 4usize], pub pitches: [__u32; 4usize], pub offsets: [__u32; 4usize], pub modifier: [__u64; 4usize], } #[test] fn bindgen_test_layout_drm_mode_fb_cmd2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 104usize, concat!("Size of: ", stringify!(drm_mode_fb_cmd2)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_fb_cmd2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixel_format) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(pixel_format) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handles) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pitches) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(pitches) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offsets) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(offsets) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).modifier) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_cmd2), "::", stringify!(modifier) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_fb_dirty_cmd { pub fb_id: __u32, pub flags: __u32, pub color: __u32, pub num_clips: __u32, pub clips_ptr: __u64, } #[test] fn bindgen_test_layout_drm_mode_fb_dirty_cmd() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_mode_fb_dirty_cmd)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_fb_dirty_cmd)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_dirty_cmd), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_dirty_cmd), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).color) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_dirty_cmd), "::", stringify!(color) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_clips) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_dirty_cmd), "::", stringify!(num_clips) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).clips_ptr) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_fb_dirty_cmd), "::", stringify!(clips_ptr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_mode_cmd { pub connector_id: __u32, pub mode: drm_mode_modeinfo, } #[test] fn bindgen_test_layout_drm_mode_mode_cmd() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 72usize, concat!("Size of: ", stringify!(drm_mode_mode_cmd)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_mode_cmd)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_mode_cmd), "::", stringify!(connector_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_mode_cmd), "::", stringify!(mode) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_cursor { pub flags: __u32, pub crtc_id: __u32, pub x: __s32, pub y: __s32, pub width: __u32, pub height: __u32, pub handle: __u32, } #[test] fn bindgen_test_layout_drm_mode_cursor() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(drm_mode_cursor)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_cursor)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor), "::", stringify!(x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor), "::", stringify!(y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_cursor2 { pub flags: __u32, pub crtc_id: __u32, pub x: __s32, pub y: __s32, pub width: __u32, pub height: __u32, pub handle: __u32, pub hot_x: __s32, pub hot_y: __s32, } #[test] fn bindgen_test_layout_drm_mode_cursor2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 36usize, concat!("Size of: ", stringify!(drm_mode_cursor2)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_cursor2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hot_x) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(hot_x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hot_y) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_mode_cursor2), "::", stringify!(hot_y) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_crtc_lut { pub crtc_id: __u32, pub gamma_size: __u32, pub red: __u64, pub green: __u64, pub blue: __u64, } #[test] fn bindgen_test_layout_drm_mode_crtc_lut() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_mode_crtc_lut)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_crtc_lut)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_lut), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gamma_size) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_lut), "::", stringify!(gamma_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).red) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_lut), "::", stringify!(red) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).green) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_lut), "::", stringify!(green) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blue) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_lut), "::", stringify!(blue) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_color_ctm { pub matrix: [__u64; 9usize], } #[test] fn bindgen_test_layout_drm_color_ctm() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 72usize, concat!("Size of: ", stringify!(drm_color_ctm)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_color_ctm)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).matrix) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_color_ctm), "::", stringify!(matrix) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_color_lut { pub red: __u16, pub green: __u16, pub blue: __u16, pub reserved: __u16, } #[test] fn bindgen_test_layout_drm_color_lut() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_color_lut)) ); assert_eq!( ::core::mem::align_of::(), 2usize, concat!("Alignment of ", stringify!(drm_color_lut)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).red) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_color_lut), "::", stringify!(red) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).green) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(drm_color_lut), "::", stringify!(green) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blue) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_color_lut), "::", stringify!(blue) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(drm_color_lut), "::", stringify!(reserved) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct hdr_metadata_infoframe { pub eotf: __u8, pub metadata_type: __u8, pub display_primaries: [hdr_metadata_infoframe__bindgen_ty_1; 3usize], pub white_point: hdr_metadata_infoframe__bindgen_ty_2, pub max_display_mastering_luminance: __u16, pub min_display_mastering_luminance: __u16, pub max_cll: __u16, pub max_fall: __u16, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct hdr_metadata_infoframe__bindgen_ty_1 { pub x: __u16, pub y: __u16, } #[test] fn bindgen_test_layout_hdr_metadata_infoframe__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(hdr_metadata_infoframe__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 2usize, concat!( "Alignment of ", stringify!(hdr_metadata_infoframe__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe__bindgen_ty_1), "::", stringify!(x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe__bindgen_ty_1), "::", stringify!(y) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct hdr_metadata_infoframe__bindgen_ty_2 { pub x: __u16, pub y: __u16, } #[test] fn bindgen_test_layout_hdr_metadata_infoframe__bindgen_ty_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(hdr_metadata_infoframe__bindgen_ty_2) ) ); assert_eq!( ::core::mem::align_of::(), 2usize, concat!( "Alignment of ", stringify!(hdr_metadata_infoframe__bindgen_ty_2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe__bindgen_ty_2), "::", stringify!(x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe__bindgen_ty_2), "::", stringify!(y) ) ); } #[test] fn bindgen_test_layout_hdr_metadata_infoframe() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 26usize, concat!("Size of: ", stringify!(hdr_metadata_infoframe)) ); assert_eq!( ::core::mem::align_of::(), 2usize, concat!("Alignment of ", stringify!(hdr_metadata_infoframe)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).eotf) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(eotf) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).metadata_type) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(metadata_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_primaries) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(display_primaries) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).white_point) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(white_point) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_display_mastering_luminance) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(max_display_mastering_luminance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_display_mastering_luminance) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(min_display_mastering_luminance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_cll) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(max_cll) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_fall) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(hdr_metadata_infoframe), "::", stringify!(max_fall) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct hdr_output_metadata { pub metadata_type: __u32, pub __bindgen_anon_1: hdr_output_metadata__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] pub union hdr_output_metadata__bindgen_ty_1 { pub hdmi_metadata_type1: hdr_metadata_infoframe, } #[test] fn bindgen_test_layout_hdr_output_metadata__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 26usize, concat!("Size of: ", stringify!(hdr_output_metadata__bindgen_ty_1)) ); assert_eq!( ::core::mem::align_of::(), 2usize, concat!( "Alignment of ", stringify!(hdr_output_metadata__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_metadata_type1) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(hdr_output_metadata__bindgen_ty_1), "::", stringify!(hdmi_metadata_type1) ) ); } #[test] fn bindgen_test_layout_hdr_output_metadata() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(hdr_output_metadata)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(hdr_output_metadata)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).metadata_type) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(hdr_output_metadata), "::", stringify!(metadata_type) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_crtc_page_flip { pub crtc_id: __u32, pub fb_id: __u32, pub flags: __u32, pub reserved: __u32, pub user_data: __u64, } #[test] fn bindgen_test_layout_drm_mode_crtc_page_flip() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_mode_crtc_page_flip)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_crtc_page_flip)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).user_data) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip), "::", stringify!(user_data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_crtc_page_flip_target { pub crtc_id: __u32, pub fb_id: __u32, pub flags: __u32, pub sequence: __u32, pub user_data: __u64, } #[test] fn bindgen_test_layout_drm_mode_crtc_page_flip_target() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_mode_crtc_page_flip_target)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_crtc_page_flip_target)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip_target), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip_target), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip_target), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip_target), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).user_data) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_crtc_page_flip_target), "::", stringify!(user_data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_create_dumb { pub height: __u32, pub width: __u32, pub bpp: __u32, pub flags: __u32, pub handle: __u32, pub pitch: __u32, pub size: __u64, } #[test] fn bindgen_test_layout_drm_mode_create_dumb() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_mode_create_dumb)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_create_dumb)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_create_dumb), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_create_dumb), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bpp) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_create_dumb), "::", stringify!(bpp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_create_dumb), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_create_dumb), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pitch) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_create_dumb), "::", stringify!(pitch) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_create_dumb), "::", stringify!(size) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_map_dumb { pub handle: __u32, pub pad: __u32, pub offset: __u64, } #[test] fn bindgen_test_layout_drm_mode_map_dumb() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_map_dumb)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_map_dumb)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_map_dumb), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_map_dumb), "::", stringify!(pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_map_dumb), "::", stringify!(offset) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_destroy_dumb { pub handle: __u32, } #[test] fn bindgen_test_layout_drm_mode_destroy_dumb() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drm_mode_destroy_dumb)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_destroy_dumb)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_destroy_dumb), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_atomic { pub flags: __u32, pub count_objs: __u32, pub objs_ptr: __u64, pub count_props_ptr: __u64, pub props_ptr: __u64, pub prop_values_ptr: __u64, pub reserved: __u64, pub user_data: __u64, } #[test] fn bindgen_test_layout_drm_mode_atomic() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(drm_mode_atomic)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_atomic)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_objs) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(count_objs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).objs_ptr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(objs_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_props_ptr) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(count_props_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).props_ptr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(props_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_values_ptr) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(prop_values_ptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).user_data) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(drm_mode_atomic), "::", stringify!(user_data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_format_modifier_blob { pub version: __u32, pub flags: __u32, pub count_formats: __u32, pub formats_offset: __u32, pub count_modifiers: __u32, pub modifiers_offset: __u32, } #[test] fn bindgen_test_layout_drm_format_modifier_blob() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_format_modifier_blob)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_format_modifier_blob)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_format_modifier_blob), "::", stringify!(version) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_format_modifier_blob), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_formats) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_format_modifier_blob), "::", stringify!(count_formats) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).formats_offset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_format_modifier_blob), "::", stringify!(formats_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_modifiers) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_format_modifier_blob), "::", stringify!(count_modifiers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).modifiers_offset) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_format_modifier_blob), "::", stringify!(modifiers_offset) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_format_modifier { pub formats: __u64, pub offset: __u32, pub pad: __u32, pub modifier: __u64, } #[test] fn bindgen_test_layout_drm_format_modifier() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_format_modifier)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_format_modifier)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).formats) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_format_modifier), "::", stringify!(formats) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_format_modifier), "::", stringify!(offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_format_modifier), "::", stringify!(pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).modifier) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_format_modifier), "::", stringify!(modifier) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_create_blob { pub data: __u64, pub length: __u32, pub blob_id: __u32, } #[test] fn bindgen_test_layout_drm_mode_create_blob() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_create_blob)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_create_blob)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_create_blob), "::", stringify!(data) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).length) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_create_blob), "::", stringify!(length) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blob_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_create_blob), "::", stringify!(blob_id) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_destroy_blob { pub blob_id: __u32, } #[test] fn bindgen_test_layout_drm_mode_destroy_blob() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drm_mode_destroy_blob)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_destroy_blob)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blob_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_destroy_blob), "::", stringify!(blob_id) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_create_lease { pub object_ids: __u64, pub object_count: __u32, pub flags: __u32, pub lessee_id: __u32, pub fd: __u32, } #[test] fn bindgen_test_layout_drm_mode_create_lease() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_mode_create_lease)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_create_lease)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).object_ids) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_create_lease), "::", stringify!(object_ids) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).object_count) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_create_lease), "::", stringify!(object_count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_create_lease), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lessee_id) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_mode_create_lease), "::", stringify!(lessee_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fd) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_mode_create_lease), "::", stringify!(fd) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_list_lessees { pub count_lessees: __u32, pub pad: __u32, pub lessees_ptr: __u64, } #[test] fn bindgen_test_layout_drm_mode_list_lessees() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_list_lessees)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_list_lessees)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_lessees) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_list_lessees), "::", stringify!(count_lessees) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_list_lessees), "::", stringify!(pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lessees_ptr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_list_lessees), "::", stringify!(lessees_ptr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_get_lease { pub count_objects: __u32, pub pad: __u32, pub objects_ptr: __u64, } #[test] fn bindgen_test_layout_drm_mode_get_lease() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_get_lease)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_mode_get_lease)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_objects) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_get_lease), "::", stringify!(count_objects) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_get_lease), "::", stringify!(pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).objects_ptr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_get_lease), "::", stringify!(objects_ptr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_revoke_lease { pub lessee_id: __u32, } #[test] fn bindgen_test_layout_drm_mode_revoke_lease() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drm_mode_revoke_lease)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_revoke_lease)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lessee_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_revoke_lease), "::", stringify!(lessee_id) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_rect { pub x1: __s32, pub y1: __s32, pub x2: __s32, pub y2: __s32, } #[test] fn bindgen_test_layout_drm_mode_rect() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_mode_rect)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_rect)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x1) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_rect), "::", stringify!(x1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y1) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_rect), "::", stringify!(y1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x2) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_mode_rect), "::", stringify!(x2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y2) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_mode_rect), "::", stringify!(y2) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_mode_closefb { pub fb_id: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_mode_closefb() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_mode_closefb)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_mode_closefb)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_mode_closefb), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_mode_closefb), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_event { pub type_: __u32, pub length: __u32, } #[test] fn bindgen_test_layout_drm_event() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_event)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_event)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_event), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).length) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_event), "::", stringify!(length) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_event_vblank { pub base: drm_event, pub user_data: __u64, pub tv_sec: __u32, pub tv_usec: __u32, pub sequence: __u32, pub crtc_id: __u32, } #[test] fn bindgen_test_layout_drm_event_vblank() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_event_vblank)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_event_vblank)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).base) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_event_vblank), "::", stringify!(base) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).user_data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_event_vblank), "::", stringify!(user_data) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_event_vblank), "::", stringify!(tv_sec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tv_usec) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_event_vblank), "::", stringify!(tv_usec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_event_vblank), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_event_vblank), "::", stringify!(crtc_id) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_event_crtc_sequence { pub base: drm_event, pub user_data: __u64, pub time_ns: __s64, pub sequence: __u64, } #[test] fn bindgen_test_layout_drm_event_crtc_sequence() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_event_crtc_sequence)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_event_crtc_sequence)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).base) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_event_crtc_sequence), "::", stringify!(base) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).user_data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_event_crtc_sequence), "::", stringify!(user_data) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).time_ns) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_event_crtc_sequence), "::", stringify!(time_ns) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_event_crtc_sequence), "::", stringify!(sequence) ) ); } pub type drm_clip_rect_t = drm_clip_rect; pub type drm_drawable_info_t = drm_drawable_info; pub type drm_tex_region_t = drm_tex_region; pub type drm_hw_lock_t = drm_hw_lock; pub type drm_version_t = drm_version; pub type drm_unique_t = drm_unique; pub type drm_list_t = drm_list; pub type drm_block_t = drm_block; pub type drm_control_t = drm_control; pub use self::drm_map_flags as drm_map_flags_t; pub use self::drm_map_type as drm_map_type_t; pub type drm_ctx_priv_map_t = drm_ctx_priv_map; pub type drm_map_t = drm_map; pub type drm_client_t = drm_client; pub use self::drm_stat_type as drm_stat_type_t; pub type drm_stats_t = drm_stats; pub use self::drm_lock_flags as drm_lock_flags_t; pub type drm_lock_t = drm_lock; pub use self::drm_dma_flags as drm_dma_flags_t; pub type drm_buf_desc_t = drm_buf_desc; pub type drm_buf_info_t = drm_buf_info; pub type drm_buf_free_t = drm_buf_free; pub type drm_buf_pub_t = drm_buf_pub; pub type drm_buf_map_t = drm_buf_map; pub type drm_dma_t = drm_dma; pub type drm_wait_vblank_t = drm_wait_vblank; pub type drm_agp_mode_t = drm_agp_mode; pub use self::drm_ctx_flags as drm_ctx_flags_t; pub type drm_ctx_t = drm_ctx; pub type drm_ctx_res_t = drm_ctx_res; pub type drm_draw_t = drm_draw; pub type drm_update_draw_t = drm_update_draw; pub type drm_auth_t = drm_auth; pub type drm_irq_busid_t = drm_irq_busid; pub use self::drm_vblank_seq_type as drm_vblank_seq_type_t; pub type drm_agp_buffer_t = drm_agp_buffer; pub type drm_agp_binding_t = drm_agp_binding; pub type drm_agp_info_t = drm_agp_info; pub type drm_scatter_gather_t = drm_scatter_gather; pub type drm_set_version_t = drm_set_version; pub type drmSize = ::core::ffi::c_uint; pub type drmSizePtr = *mut ::core::ffi::c_uint; pub type drmAddress = *mut ::core::ffi::c_void; pub type drmAddressPtr = *mut *mut ::core::ffi::c_void; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmServerInfo { pub debug_print: ::core::option::Option< unsafe extern "C" fn( format: *const ::core::ffi::c_char, ap: *mut __va_list_tag, ) -> ::core::ffi::c_int, >, pub load_module: ::core::option::Option< unsafe extern "C" fn(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int, >, pub get_perms: ::core::option::Option, } #[test] fn bindgen_test_layout__drmServerInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmServerInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmServerInfo>(), 24usize, concat!("Size of: ", stringify!(_drmServerInfo)) ); assert_eq!( ::core::mem::align_of::<_drmServerInfo>(), 8usize, concat!("Alignment of ", stringify!(_drmServerInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).debug_print) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmServerInfo), "::", stringify!(debug_print) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).load_module) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmServerInfo), "::", stringify!(load_module) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).get_perms) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmServerInfo), "::", stringify!(get_perms) ) ); } pub type drmServerInfo = _drmServerInfo; pub type drmServerInfoPtr = *mut _drmServerInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drmHashEntry { pub fd: ::core::ffi::c_int, pub f: ::core::option::Option< unsafe extern "C" fn( arg1: ::core::ffi::c_int, arg2: *mut ::core::ffi::c_void, arg3: *mut ::core::ffi::c_void, ), >, pub tagTable: *mut ::core::ffi::c_void, } #[test] fn bindgen_test_layout_drmHashEntry() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drmHashEntry)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drmHashEntry)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fd) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drmHashEntry), "::", stringify!(fd) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drmHashEntry), "::", stringify!(f) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tagTable) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drmHashEntry), "::", stringify!(tagTable) ) ); } extern "C" { pub fn drmIoctl( fd: ::core::ffi::c_int, request: ::core::ffi::c_ulong, arg: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetHashTable() -> *mut ::core::ffi::c_void; } extern "C" { pub fn drmGetEntry(fd: ::core::ffi::c_int) -> *mut drmHashEntry; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmVersion { pub version_major: ::core::ffi::c_int, pub version_minor: ::core::ffi::c_int, pub version_patchlevel: ::core::ffi::c_int, pub name_len: ::core::ffi::c_int, pub name: *mut ::core::ffi::c_char, pub date_len: ::core::ffi::c_int, pub date: *mut ::core::ffi::c_char, pub desc_len: ::core::ffi::c_int, pub desc: *mut ::core::ffi::c_char, } #[test] fn bindgen_test_layout__drmVersion() { const UNINIT: ::core::mem::MaybeUninit<_drmVersion> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmVersion>(), 56usize, concat!("Size of: ", stringify!(_drmVersion)) ); assert_eq!( ::core::mem::align_of::<_drmVersion>(), 8usize, concat!("Alignment of ", stringify!(_drmVersion)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version_major) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(version_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version_minor) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(version_minor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version_patchlevel) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(version_patchlevel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name_len) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(name_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).date_len) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(date_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).date) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(date) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).desc_len) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(desc_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).desc) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(_drmVersion), "::", stringify!(desc) ) ); } pub type drmVersion = _drmVersion; pub type drmVersionPtr = *mut _drmVersion; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmStats { pub count: ::core::ffi::c_ulong, pub data: [_drmStats__bindgen_ty_1; 15usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmStats__bindgen_ty_1 { pub value: ::core::ffi::c_ulong, pub long_format: *const ::core::ffi::c_char, pub long_name: *const ::core::ffi::c_char, pub rate_format: *const ::core::ffi::c_char, pub rate_name: *const ::core::ffi::c_char, pub isvalue: ::core::ffi::c_int, pub mult_names: *const ::core::ffi::c_char, pub mult: ::core::ffi::c_int, pub verbose: ::core::ffi::c_int, } #[test] fn bindgen_test_layout__drmStats__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit<_drmStats__bindgen_ty_1> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmStats__bindgen_ty_1>(), 64usize, concat!("Size of: ", stringify!(_drmStats__bindgen_ty_1)) ); assert_eq!( ::core::mem::align_of::<_drmStats__bindgen_ty_1>(), 8usize, concat!("Alignment of ", stringify!(_drmStats__bindgen_ty_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).long_format) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(long_format) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).long_name) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(long_name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rate_format) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(rate_format) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rate_name) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(rate_name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).isvalue) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(isvalue) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mult_names) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(mult_names) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mult) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(mult) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).verbose) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(_drmStats__bindgen_ty_1), "::", stringify!(verbose) ) ); } #[test] fn bindgen_test_layout__drmStats() { const UNINIT: ::core::mem::MaybeUninit<_drmStats> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmStats>(), 968usize, concat!("Size of: ", stringify!(_drmStats)) ); assert_eq!( ::core::mem::align_of::<_drmStats>(), 8usize, concat!("Alignment of ", stringify!(_drmStats)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmStats), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmStats), "::", stringify!(data) ) ); } pub type drmStatsT = _drmStats; pub const drmMapType_DRM_FRAME_BUFFER: drmMapType = 0; pub const drmMapType_DRM_REGISTERS: drmMapType = 1; pub const drmMapType_DRM_SHM: drmMapType = 2; pub const drmMapType_DRM_AGP: drmMapType = 3; pub const drmMapType_DRM_SCATTER_GATHER: drmMapType = 4; pub const drmMapType_DRM_CONSISTENT: drmMapType = 5; pub type drmMapType = ::core::ffi::c_uint; pub const drmMapFlags_DRM_RESTRICTED: drmMapFlags = 1; pub const drmMapFlags_DRM_READ_ONLY: drmMapFlags = 2; pub const drmMapFlags_DRM_LOCKED: drmMapFlags = 4; pub const drmMapFlags_DRM_KERNEL: drmMapFlags = 8; pub const drmMapFlags_DRM_WRITE_COMBINING: drmMapFlags = 16; pub const drmMapFlags_DRM_CONTAINS_LOCK: drmMapFlags = 32; pub const drmMapFlags_DRM_REMOVABLE: drmMapFlags = 64; pub type drmMapFlags = ::core::ffi::c_uint; pub const drmDMAFlags_DRM_DMA_BLOCK: drmDMAFlags = 1; pub const drmDMAFlags_DRM_DMA_WHILE_LOCKED: drmDMAFlags = 2; pub const drmDMAFlags_DRM_DMA_PRIORITY: drmDMAFlags = 4; pub const drmDMAFlags_DRM_DMA_WAIT: drmDMAFlags = 16; pub const drmDMAFlags_DRM_DMA_SMALLER_OK: drmDMAFlags = 32; pub const drmDMAFlags_DRM_DMA_LARGER_OK: drmDMAFlags = 64; pub type drmDMAFlags = ::core::ffi::c_uint; pub const drmBufDescFlags_DRM_PAGE_ALIGN: drmBufDescFlags = 1; pub const drmBufDescFlags_DRM_AGP_BUFFER: drmBufDescFlags = 2; pub const drmBufDescFlags_DRM_SG_BUFFER: drmBufDescFlags = 4; pub const drmBufDescFlags_DRM_FB_BUFFER: drmBufDescFlags = 8; pub const drmBufDescFlags_DRM_PCI_BUFFER_RO: drmBufDescFlags = 16; pub type drmBufDescFlags = ::core::ffi::c_uint; pub const drmLockFlags_DRM_LOCK_READY: drmLockFlags = 1; pub const drmLockFlags_DRM_LOCK_QUIESCENT: drmLockFlags = 2; pub const drmLockFlags_DRM_LOCK_FLUSH: drmLockFlags = 4; pub const drmLockFlags_DRM_LOCK_FLUSH_ALL: drmLockFlags = 8; pub const drmLockFlags_DRM_HALT_ALL_QUEUES: drmLockFlags = 16; pub const drmLockFlags_DRM_HALT_CUR_QUEUES: drmLockFlags = 32; pub type drmLockFlags = ::core::ffi::c_uint; pub const drm_context_tFlags_DRM_CONTEXT_PRESERVED: drm_context_tFlags = 1; pub const drm_context_tFlags_DRM_CONTEXT_2DONLY: drm_context_tFlags = 2; pub type drm_context_tFlags = ::core::ffi::c_uint; pub type drm_context_tFlagsPtr = *mut drm_context_tFlags; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmBufDesc { pub count: ::core::ffi::c_int, pub size: ::core::ffi::c_int, pub low_mark: ::core::ffi::c_int, pub high_mark: ::core::ffi::c_int, } #[test] fn bindgen_test_layout__drmBufDesc() { const UNINIT: ::core::mem::MaybeUninit<_drmBufDesc> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmBufDesc>(), 16usize, concat!("Size of: ", stringify!(_drmBufDesc)) ); assert_eq!( ::core::mem::align_of::<_drmBufDesc>(), 4usize, concat!("Alignment of ", stringify!(_drmBufDesc)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmBufDesc), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmBufDesc), "::", stringify!(size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).low_mark) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmBufDesc), "::", stringify!(low_mark) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).high_mark) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmBufDesc), "::", stringify!(high_mark) ) ); } pub type drmBufDesc = _drmBufDesc; pub type drmBufDescPtr = *mut _drmBufDesc; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmBufInfo { pub count: ::core::ffi::c_int, pub list: drmBufDescPtr, } #[test] fn bindgen_test_layout__drmBufInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmBufInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmBufInfo>(), 16usize, concat!("Size of: ", stringify!(_drmBufInfo)) ); assert_eq!( ::core::mem::align_of::<_drmBufInfo>(), 8usize, concat!("Alignment of ", stringify!(_drmBufInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmBufInfo), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).list) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmBufInfo), "::", stringify!(list) ) ); } pub type drmBufInfo = _drmBufInfo; pub type drmBufInfoPtr = *mut _drmBufInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmBuf { pub idx: ::core::ffi::c_int, pub total: ::core::ffi::c_int, pub used: ::core::ffi::c_int, pub address: drmAddress, } #[test] fn bindgen_test_layout__drmBuf() { const UNINIT: ::core::mem::MaybeUninit<_drmBuf> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmBuf>(), 24usize, concat!("Size of: ", stringify!(_drmBuf)) ); assert_eq!( ::core::mem::align_of::<_drmBuf>(), 8usize, concat!("Alignment of ", stringify!(_drmBuf)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).idx) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmBuf), "::", stringify!(idx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).total) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmBuf), "::", stringify!(total) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).used) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmBuf), "::", stringify!(used) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).address) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmBuf), "::", stringify!(address) ) ); } pub type drmBuf = _drmBuf; pub type drmBufPtr = *mut _drmBuf; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmBufMap { pub count: ::core::ffi::c_int, pub list: drmBufPtr, } #[test] fn bindgen_test_layout__drmBufMap() { const UNINIT: ::core::mem::MaybeUninit<_drmBufMap> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmBufMap>(), 16usize, concat!("Size of: ", stringify!(_drmBufMap)) ); assert_eq!( ::core::mem::align_of::<_drmBufMap>(), 8usize, concat!("Alignment of ", stringify!(_drmBufMap)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmBufMap), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).list) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmBufMap), "::", stringify!(list) ) ); } pub type drmBufMap = _drmBufMap; pub type drmBufMapPtr = *mut _drmBufMap; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmLock { pub lock: ::core::ffi::c_uint, pub padding: [::core::ffi::c_char; 60usize], } #[test] fn bindgen_test_layout__drmLock() { const UNINIT: ::core::mem::MaybeUninit<_drmLock> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmLock>(), 64usize, concat!("Size of: ", stringify!(_drmLock)) ); assert_eq!( ::core::mem::align_of::<_drmLock>(), 4usize, concat!("Alignment of ", stringify!(_drmLock)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lock) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmLock), "::", stringify!(lock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmLock), "::", stringify!(padding) ) ); } pub type drmLock = _drmLock; pub type drmLockPtr = *mut _drmLock; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmDMAReq { pub context: drm_context_t, pub send_count: ::core::ffi::c_int, pub send_list: *mut ::core::ffi::c_int, pub send_sizes: *mut ::core::ffi::c_int, pub flags: drmDMAFlags, pub request_count: ::core::ffi::c_int, pub request_size: ::core::ffi::c_int, pub request_list: *mut ::core::ffi::c_int, pub request_sizes: *mut ::core::ffi::c_int, pub granted_count: ::core::ffi::c_int, } #[test] fn bindgen_test_layout__drmDMAReq() { const UNINIT: ::core::mem::MaybeUninit<_drmDMAReq> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmDMAReq>(), 64usize, concat!("Size of: ", stringify!(_drmDMAReq)) ); assert_eq!( ::core::mem::align_of::<_drmDMAReq>(), 8usize, concat!("Alignment of ", stringify!(_drmDMAReq)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).context) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(context) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).send_count) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(send_count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).send_list) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(send_list) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).send_sizes) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(send_sizes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_count) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(request_count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_size) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(request_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_list) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(request_list) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request_sizes) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(request_sizes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).granted_count) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(_drmDMAReq), "::", stringify!(granted_count) ) ); } pub type drmDMAReq = _drmDMAReq; pub type drmDMAReqPtr = *mut _drmDMAReq; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmRegion { pub handle: drm_handle_t, pub offset: ::core::ffi::c_uint, pub size: drmSize, pub map: drmAddress, } #[test] fn bindgen_test_layout__drmRegion() { const UNINIT: ::core::mem::MaybeUninit<_drmRegion> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmRegion>(), 24usize, concat!("Size of: ", stringify!(_drmRegion)) ); assert_eq!( ::core::mem::align_of::<_drmRegion>(), 8usize, concat!("Alignment of ", stringify!(_drmRegion)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmRegion), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmRegion), "::", stringify!(offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmRegion), "::", stringify!(size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).map) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmRegion), "::", stringify!(map) ) ); } pub type drmRegion = _drmRegion; pub type drmRegionPtr = *mut _drmRegion; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmTextureRegion { pub next: ::core::ffi::c_uchar, pub prev: ::core::ffi::c_uchar, pub in_use: ::core::ffi::c_uchar, pub padding: ::core::ffi::c_uchar, pub age: ::core::ffi::c_uint, } #[test] fn bindgen_test_layout__drmTextureRegion() { const UNINIT: ::core::mem::MaybeUninit<_drmTextureRegion> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmTextureRegion>(), 8usize, concat!("Size of: ", stringify!(_drmTextureRegion)) ); assert_eq!( ::core::mem::align_of::<_drmTextureRegion>(), 4usize, concat!("Alignment of ", stringify!(_drmTextureRegion)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).next) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmTextureRegion), "::", stringify!(next) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prev) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(_drmTextureRegion), "::", stringify!(prev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_use) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(_drmTextureRegion), "::", stringify!(in_use) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(_drmTextureRegion), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).age) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmTextureRegion), "::", stringify!(age) ) ); } pub type drmTextureRegion = _drmTextureRegion; pub type drmTextureRegionPtr = *mut _drmTextureRegion; pub const drmVBlankSeqType_DRM_VBLANK_ABSOLUTE: drmVBlankSeqType = 0; pub const drmVBlankSeqType_DRM_VBLANK_RELATIVE: drmVBlankSeqType = 1; pub const drmVBlankSeqType_DRM_VBLANK_HIGH_CRTC_MASK: drmVBlankSeqType = 62; pub const drmVBlankSeqType_DRM_VBLANK_EVENT: drmVBlankSeqType = 67108864; pub const drmVBlankSeqType_DRM_VBLANK_FLIP: drmVBlankSeqType = 134217728; pub const drmVBlankSeqType_DRM_VBLANK_NEXTONMISS: drmVBlankSeqType = 268435456; pub const drmVBlankSeqType_DRM_VBLANK_SECONDARY: drmVBlankSeqType = 536870912; pub const drmVBlankSeqType_DRM_VBLANK_SIGNAL: drmVBlankSeqType = 1073741824; pub type drmVBlankSeqType = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmVBlankReq { pub type_: drmVBlankSeqType, pub sequence: ::core::ffi::c_uint, pub signal: ::core::ffi::c_ulong, } #[test] fn bindgen_test_layout__drmVBlankReq() { const UNINIT: ::core::mem::MaybeUninit<_drmVBlankReq> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmVBlankReq>(), 16usize, concat!("Size of: ", stringify!(_drmVBlankReq)) ); assert_eq!( ::core::mem::align_of::<_drmVBlankReq>(), 8usize, concat!("Alignment of ", stringify!(_drmVBlankReq)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmVBlankReq), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmVBlankReq), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).signal) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmVBlankReq), "::", stringify!(signal) ) ); } pub type drmVBlankReq = _drmVBlankReq; pub type drmVBlankReqPtr = *mut _drmVBlankReq; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmVBlankReply { pub type_: drmVBlankSeqType, pub sequence: ::core::ffi::c_uint, pub tval_sec: ::core::ffi::c_long, pub tval_usec: ::core::ffi::c_long, } #[test] fn bindgen_test_layout__drmVBlankReply() { const UNINIT: ::core::mem::MaybeUninit<_drmVBlankReply> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmVBlankReply>(), 24usize, concat!("Size of: ", stringify!(_drmVBlankReply)) ); assert_eq!( ::core::mem::align_of::<_drmVBlankReply>(), 8usize, concat!("Alignment of ", stringify!(_drmVBlankReply)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmVBlankReply), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmVBlankReply), "::", stringify!(sequence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tval_sec) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmVBlankReply), "::", stringify!(tval_sec) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tval_usec) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmVBlankReply), "::", stringify!(tval_usec) ) ); } pub type drmVBlankReply = _drmVBlankReply; pub type drmVBlankReplyPtr = *mut _drmVBlankReply; #[repr(C)] #[derive(Copy, Clone)] pub union _drmVBlank { pub request: drmVBlankReq, pub reply: drmVBlankReply, } #[test] fn bindgen_test_layout__drmVBlank() { const UNINIT: ::core::mem::MaybeUninit<_drmVBlank> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmVBlank>(), 24usize, concat!("Size of: ", stringify!(_drmVBlank)) ); assert_eq!( ::core::mem::align_of::<_drmVBlank>(), 8usize, concat!("Alignment of ", stringify!(_drmVBlank)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).request) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmVBlank), "::", stringify!(request) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reply) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmVBlank), "::", stringify!(reply) ) ); } pub type drmVBlank = _drmVBlank; pub type drmVBlankPtr = *mut _drmVBlank; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmSetVersion { pub drm_di_major: ::core::ffi::c_int, pub drm_di_minor: ::core::ffi::c_int, pub drm_dd_major: ::core::ffi::c_int, pub drm_dd_minor: ::core::ffi::c_int, } #[test] fn bindgen_test_layout__drmSetVersion() { const UNINIT: ::core::mem::MaybeUninit<_drmSetVersion> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmSetVersion>(), 16usize, concat!("Size of: ", stringify!(_drmSetVersion)) ); assert_eq!( ::core::mem::align_of::<_drmSetVersion>(), 4usize, concat!("Alignment of ", stringify!(_drmSetVersion)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_di_major) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmSetVersion), "::", stringify!(drm_di_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_di_minor) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmSetVersion), "::", stringify!(drm_di_minor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_dd_major) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmSetVersion), "::", stringify!(drm_dd_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drm_dd_minor) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmSetVersion), "::", stringify!(drm_dd_minor) ) ); } pub type drmSetVersion = _drmSetVersion; pub type drmSetVersionPtr = *mut _drmSetVersion; extern "C" { pub fn drmAvailable() -> ::core::ffi::c_int; } extern "C" { pub fn drmOpen( name: *const ::core::ffi::c_char, busid: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmOpenWithType( name: *const ::core::ffi::c_char, busid: *const ::core::ffi::c_char, type_: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmOpenControl(minor: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmOpenRender(minor: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmClose(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetVersion(fd: ::core::ffi::c_int) -> drmVersionPtr; } extern "C" { pub fn drmGetLibVersion(fd: ::core::ffi::c_int) -> drmVersionPtr; } extern "C" { pub fn drmGetCap( fd: ::core::ffi::c_int, capability: u64, value: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmFreeVersion(arg1: drmVersionPtr); } extern "C" { pub fn drmGetMagic(fd: ::core::ffi::c_int, magic: *mut drm_magic_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetBusid(fd: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; } extern "C" { pub fn drmGetInterruptFromBusID( fd: ::core::ffi::c_int, busnum: ::core::ffi::c_int, devnum: ::core::ffi::c_int, funcnum: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetMap( fd: ::core::ffi::c_int, idx: ::core::ffi::c_int, offset: *mut drm_handle_t, size: *mut drmSize, type_: *mut drmMapType, flags: *mut drmMapFlags, handle: *mut drm_handle_t, mtrr: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetClient( fd: ::core::ffi::c_int, idx: ::core::ffi::c_int, auth: *mut ::core::ffi::c_int, pid: *mut ::core::ffi::c_int, uid: *mut ::core::ffi::c_int, magic: *mut ::core::ffi::c_ulong, iocs: *mut ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetStats(fd: ::core::ffi::c_int, stats: *mut drmStatsT) -> ::core::ffi::c_int; } extern "C" { pub fn drmSetInterfaceVersion( fd: ::core::ffi::c_int, version: *mut drmSetVersion, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCommandNone( fd: ::core::ffi::c_int, drmCommandIndex: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCommandRead( fd: ::core::ffi::c_int, drmCommandIndex: ::core::ffi::c_ulong, data: *mut ::core::ffi::c_void, size: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCommandWrite( fd: ::core::ffi::c_int, drmCommandIndex: ::core::ffi::c_ulong, data: *mut ::core::ffi::c_void, size: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCommandWriteRead( fd: ::core::ffi::c_int, drmCommandIndex: ::core::ffi::c_ulong, data: *mut ::core::ffi::c_void, size: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmFreeBusid(busid: *const ::core::ffi::c_char); } extern "C" { pub fn drmSetBusid( fd: ::core::ffi::c_int, busid: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmAuthMagic(fd: ::core::ffi::c_int, magic: drm_magic_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmAddMap( fd: ::core::ffi::c_int, offset: drm_handle_t, size: drmSize, type_: drmMapType, flags: drmMapFlags, handle: *mut drm_handle_t, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmRmMap(fd: ::core::ffi::c_int, handle: drm_handle_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmAddContextPrivateMapping( fd: ::core::ffi::c_int, ctx_id: drm_context_t, handle: drm_handle_t, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmAddBufs( fd: ::core::ffi::c_int, count: ::core::ffi::c_int, size: ::core::ffi::c_int, flags: drmBufDescFlags, agp_offset: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmMarkBufs(fd: ::core::ffi::c_int, low: f64, high: f64) -> ::core::ffi::c_int; } extern "C" { pub fn drmCreateContext( fd: ::core::ffi::c_int, handle: *mut drm_context_t, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSetContextFlags( fd: ::core::ffi::c_int, context: drm_context_t, flags: drm_context_tFlags, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetContextFlags( fd: ::core::ffi::c_int, context: drm_context_t, flags: drm_context_tFlagsPtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmAddContextTag( fd: ::core::ffi::c_int, context: drm_context_t, tag: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmDelContextTag(fd: ::core::ffi::c_int, context: drm_context_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetContextTag( fd: ::core::ffi::c_int, context: drm_context_t, ) -> *mut ::core::ffi::c_void; } extern "C" { pub fn drmGetReservedContextList( fd: ::core::ffi::c_int, count: *mut ::core::ffi::c_int, ) -> *mut drm_context_t; } extern "C" { pub fn drmFreeReservedContextList(arg1: *mut drm_context_t); } extern "C" { pub fn drmSwitchToContext(fd: ::core::ffi::c_int, context: drm_context_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmDestroyContext(fd: ::core::ffi::c_int, handle: drm_context_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmCreateDrawable( fd: ::core::ffi::c_int, handle: *mut drm_drawable_t, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmDestroyDrawable(fd: ::core::ffi::c_int, handle: drm_drawable_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmUpdateDrawableInfo( fd: ::core::ffi::c_int, handle: drm_drawable_t, type_: drm_drawable_info_type_t, num: ::core::ffi::c_uint, data: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCtlInstHandler(fd: ::core::ffi::c_int, irq: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmCtlUninstHandler(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmSetClientCap( fd: ::core::ffi::c_int, capability: u64, value: u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCrtcGetSequence( fd: ::core::ffi::c_int, crtcId: u32, sequence: *mut u64, ns: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCrtcQueueSequence( fd: ::core::ffi::c_int, crtcId: u32, flags: u32, sequence: u64, sequence_queued: *mut u64, user_data: u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmMap( fd: ::core::ffi::c_int, handle: drm_handle_t, size: drmSize, address: drmAddressPtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmUnmap(address: drmAddress, size: drmSize) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetBufInfo(fd: ::core::ffi::c_int) -> drmBufInfoPtr; } extern "C" { pub fn drmMapBufs(fd: ::core::ffi::c_int) -> drmBufMapPtr; } extern "C" { pub fn drmUnmapBufs(bufs: drmBufMapPtr) -> ::core::ffi::c_int; } extern "C" { pub fn drmDMA(fd: ::core::ffi::c_int, request: drmDMAReqPtr) -> ::core::ffi::c_int; } extern "C" { pub fn drmFreeBufs( fd: ::core::ffi::c_int, count: ::core::ffi::c_int, list: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetLock( fd: ::core::ffi::c_int, context: drm_context_t, flags: drmLockFlags, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmUnlock(fd: ::core::ffi::c_int, context: drm_context_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmFinish( fd: ::core::ffi::c_int, context: ::core::ffi::c_int, flags: drmLockFlags, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetContextPrivateMapping( fd: ::core::ffi::c_int, ctx_id: drm_context_t, handle: *mut drm_handle_t, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpAcquire(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpRelease(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpEnable(fd: ::core::ffi::c_int, mode: ::core::ffi::c_ulong) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpAlloc( fd: ::core::ffi::c_int, size: ::core::ffi::c_ulong, type_: ::core::ffi::c_ulong, address: *mut ::core::ffi::c_ulong, handle: *mut drm_handle_t, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpFree(fd: ::core::ffi::c_int, handle: drm_handle_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpBind( fd: ::core::ffi::c_int, handle: drm_handle_t, offset: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpUnbind(fd: ::core::ffi::c_int, handle: drm_handle_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpVersionMajor(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpVersionMinor(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmAgpGetMode(fd: ::core::ffi::c_int) -> ::core::ffi::c_ulong; } extern "C" { pub fn drmAgpBase(fd: ::core::ffi::c_int) -> ::core::ffi::c_ulong; } extern "C" { pub fn drmAgpSize(fd: ::core::ffi::c_int) -> ::core::ffi::c_ulong; } extern "C" { pub fn drmAgpMemoryUsed(fd: ::core::ffi::c_int) -> ::core::ffi::c_ulong; } extern "C" { pub fn drmAgpMemoryAvail(fd: ::core::ffi::c_int) -> ::core::ffi::c_ulong; } extern "C" { pub fn drmAgpVendorId(fd: ::core::ffi::c_int) -> ::core::ffi::c_uint; } extern "C" { pub fn drmAgpDeviceId(fd: ::core::ffi::c_int) -> ::core::ffi::c_uint; } extern "C" { pub fn drmScatterGatherAlloc( fd: ::core::ffi::c_int, size: ::core::ffi::c_ulong, handle: *mut drm_handle_t, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmScatterGatherFree(fd: ::core::ffi::c_int, handle: drm_handle_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmWaitVBlank(fd: ::core::ffi::c_int, vbl: drmVBlankPtr) -> ::core::ffi::c_int; } extern "C" { pub fn drmSetServerInfo(info: drmServerInfoPtr); } extern "C" { pub fn drmError( err: ::core::ffi::c_int, label: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmMalloc(size: ::core::ffi::c_int) -> *mut ::core::ffi::c_void; } extern "C" { pub fn drmFree(pt: *mut ::core::ffi::c_void); } extern "C" { pub fn drmHashCreate() -> *mut ::core::ffi::c_void; } extern "C" { pub fn drmHashDestroy(t: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; } extern "C" { pub fn drmHashLookup( t: *mut ::core::ffi::c_void, key: ::core::ffi::c_ulong, value: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmHashInsert( t: *mut ::core::ffi::c_void, key: ::core::ffi::c_ulong, value: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmHashDelete( t: *mut ::core::ffi::c_void, key: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmHashFirst( t: *mut ::core::ffi::c_void, key: *mut ::core::ffi::c_ulong, value: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmHashNext( t: *mut ::core::ffi::c_void, key: *mut ::core::ffi::c_ulong, value: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmRandomCreate(seed: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; } extern "C" { pub fn drmRandomDestroy(state: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; } extern "C" { pub fn drmRandom(state: *mut ::core::ffi::c_void) -> ::core::ffi::c_ulong; } extern "C" { pub fn drmRandomDouble(state: *mut ::core::ffi::c_void) -> f64; } extern "C" { pub fn drmSLCreate() -> *mut ::core::ffi::c_void; } extern "C" { pub fn drmSLDestroy(l: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; } extern "C" { pub fn drmSLLookup( l: *mut ::core::ffi::c_void, key: ::core::ffi::c_ulong, value: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSLInsert( l: *mut ::core::ffi::c_void, key: ::core::ffi::c_ulong, value: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSLDelete( l: *mut ::core::ffi::c_void, key: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSLNext( l: *mut ::core::ffi::c_void, key: *mut ::core::ffi::c_ulong, value: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSLFirst( l: *mut ::core::ffi::c_void, key: *mut ::core::ffi::c_ulong, value: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSLDump(l: *mut ::core::ffi::c_void); } extern "C" { pub fn drmSLLookupNeighbors( l: *mut ::core::ffi::c_void, key: ::core::ffi::c_ulong, prev_key: *mut ::core::ffi::c_ulong, prev_value: *mut *mut ::core::ffi::c_void, next_key: *mut ::core::ffi::c_ulong, next_value: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmOpenOnce( unused: *mut ::core::ffi::c_void, BusID: *const ::core::ffi::c_char, newlyopened: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmOpenOnceWithType( BusID: *const ::core::ffi::c_char, newlyopened: *mut ::core::ffi::c_int, type_: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCloseOnce(fd: ::core::ffi::c_int); } extern "C" { pub fn drmMsg(format: *const ::core::ffi::c_char, ...); } extern "C" { pub fn drmSetMaster(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmDropMaster(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmIsMaster(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmEventContext { pub version: ::core::ffi::c_int, pub vblank_handler: ::core::option::Option< unsafe extern "C" fn( fd: ::core::ffi::c_int, sequence: ::core::ffi::c_uint, tv_sec: ::core::ffi::c_uint, tv_usec: ::core::ffi::c_uint, user_data: *mut ::core::ffi::c_void, ), >, pub page_flip_handler: ::core::option::Option< unsafe extern "C" fn( fd: ::core::ffi::c_int, sequence: ::core::ffi::c_uint, tv_sec: ::core::ffi::c_uint, tv_usec: ::core::ffi::c_uint, user_data: *mut ::core::ffi::c_void, ), >, pub page_flip_handler2: ::core::option::Option< unsafe extern "C" fn( fd: ::core::ffi::c_int, sequence: ::core::ffi::c_uint, tv_sec: ::core::ffi::c_uint, tv_usec: ::core::ffi::c_uint, crtc_id: ::core::ffi::c_uint, user_data: *mut ::core::ffi::c_void, ), >, pub sequence_handler: ::core::option::Option< unsafe extern "C" fn(fd: ::core::ffi::c_int, sequence: u64, ns: u64, user_data: u64), >, } #[test] fn bindgen_test_layout__drmEventContext() { const UNINIT: ::core::mem::MaybeUninit<_drmEventContext> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmEventContext>(), 40usize, concat!("Size of: ", stringify!(_drmEventContext)) ); assert_eq!( ::core::mem::align_of::<_drmEventContext>(), 8usize, concat!("Alignment of ", stringify!(_drmEventContext)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmEventContext), "::", stringify!(version) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vblank_handler) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmEventContext), "::", stringify!(vblank_handler) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).page_flip_handler) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmEventContext), "::", stringify!(page_flip_handler) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).page_flip_handler2) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmEventContext), "::", stringify!(page_flip_handler2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sequence_handler) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmEventContext), "::", stringify!(sequence_handler) ) ); } pub type drmEventContext = _drmEventContext; pub type drmEventContextPtr = *mut _drmEventContext; extern "C" { pub fn drmHandleEvent(fd: ::core::ffi::c_int, evctx: drmEventContextPtr) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetDeviceNameFromFd(fd: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; } extern "C" { pub fn drmGetDeviceNameFromFd2(fd: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; } extern "C" { pub fn drmGetNodeTypeFromFd(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmPrimeHandleToFD( fd: ::core::ffi::c_int, handle: u32, flags: u32, prime_fd: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmPrimeFDToHandle( fd: ::core::ffi::c_int, prime_fd: ::core::ffi::c_int, handle: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCloseBufferHandle(fd: ::core::ffi::c_int, handle: u32) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetPrimaryDeviceNameFromFd(fd: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; } extern "C" { pub fn drmGetRenderDeviceNameFromFd(fd: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmPciBusInfo { pub domain: u16, pub bus: u8, pub dev: u8, pub func: u8, } #[test] fn bindgen_test_layout__drmPciBusInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmPciBusInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmPciBusInfo>(), 6usize, concat!("Size of: ", stringify!(_drmPciBusInfo)) ); assert_eq!( ::core::mem::align_of::<_drmPciBusInfo>(), 2usize, concat!("Alignment of ", stringify!(_drmPciBusInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).domain) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmPciBusInfo), "::", stringify!(domain) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bus) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(_drmPciBusInfo), "::", stringify!(bus) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(_drmPciBusInfo), "::", stringify!(dev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).func) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmPciBusInfo), "::", stringify!(func) ) ); } pub type drmPciBusInfo = _drmPciBusInfo; pub type drmPciBusInfoPtr = *mut _drmPciBusInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmPciDeviceInfo { pub vendor_id: u16, pub device_id: u16, pub subvendor_id: u16, pub subdevice_id: u16, pub revision_id: u8, } #[test] fn bindgen_test_layout__drmPciDeviceInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmPciDeviceInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmPciDeviceInfo>(), 10usize, concat!("Size of: ", stringify!(_drmPciDeviceInfo)) ); assert_eq!( ::core::mem::align_of::<_drmPciDeviceInfo>(), 2usize, concat!("Alignment of ", stringify!(_drmPciDeviceInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vendor_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmPciDeviceInfo), "::", stringify!(vendor_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).device_id) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(_drmPciDeviceInfo), "::", stringify!(device_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).subvendor_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmPciDeviceInfo), "::", stringify!(subvendor_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).subdevice_id) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(_drmPciDeviceInfo), "::", stringify!(subdevice_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).revision_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmPciDeviceInfo), "::", stringify!(revision_id) ) ); } pub type drmPciDeviceInfo = _drmPciDeviceInfo; pub type drmPciDeviceInfoPtr = *mut _drmPciDeviceInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmUsbBusInfo { pub bus: u8, pub dev: u8, } #[test] fn bindgen_test_layout__drmUsbBusInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmUsbBusInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmUsbBusInfo>(), 2usize, concat!("Size of: ", stringify!(_drmUsbBusInfo)) ); assert_eq!( ::core::mem::align_of::<_drmUsbBusInfo>(), 1usize, concat!("Alignment of ", stringify!(_drmUsbBusInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bus) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmUsbBusInfo), "::", stringify!(bus) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(_drmUsbBusInfo), "::", stringify!(dev) ) ); } pub type drmUsbBusInfo = _drmUsbBusInfo; pub type drmUsbBusInfoPtr = *mut _drmUsbBusInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmUsbDeviceInfo { pub vendor: u16, pub product: u16, } #[test] fn bindgen_test_layout__drmUsbDeviceInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmUsbDeviceInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmUsbDeviceInfo>(), 4usize, concat!("Size of: ", stringify!(_drmUsbDeviceInfo)) ); assert_eq!( ::core::mem::align_of::<_drmUsbDeviceInfo>(), 2usize, concat!("Alignment of ", stringify!(_drmUsbDeviceInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vendor) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmUsbDeviceInfo), "::", stringify!(vendor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).product) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(_drmUsbDeviceInfo), "::", stringify!(product) ) ); } pub type drmUsbDeviceInfo = _drmUsbDeviceInfo; pub type drmUsbDeviceInfoPtr = *mut _drmUsbDeviceInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmPlatformBusInfo { pub fullname: [::core::ffi::c_char; 512usize], } #[test] fn bindgen_test_layout__drmPlatformBusInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmPlatformBusInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmPlatformBusInfo>(), 512usize, concat!("Size of: ", stringify!(_drmPlatformBusInfo)) ); assert_eq!( ::core::mem::align_of::<_drmPlatformBusInfo>(), 1usize, concat!("Alignment of ", stringify!(_drmPlatformBusInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fullname) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmPlatformBusInfo), "::", stringify!(fullname) ) ); } pub type drmPlatformBusInfo = _drmPlatformBusInfo; pub type drmPlatformBusInfoPtr = *mut _drmPlatformBusInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmPlatformDeviceInfo { pub compatible: *mut *mut ::core::ffi::c_char, } #[test] fn bindgen_test_layout__drmPlatformDeviceInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmPlatformDeviceInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmPlatformDeviceInfo>(), 8usize, concat!("Size of: ", stringify!(_drmPlatformDeviceInfo)) ); assert_eq!( ::core::mem::align_of::<_drmPlatformDeviceInfo>(), 8usize, concat!("Alignment of ", stringify!(_drmPlatformDeviceInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).compatible) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmPlatformDeviceInfo), "::", stringify!(compatible) ) ); } pub type drmPlatformDeviceInfo = _drmPlatformDeviceInfo; pub type drmPlatformDeviceInfoPtr = *mut _drmPlatformDeviceInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmHost1xBusInfo { pub fullname: [::core::ffi::c_char; 512usize], } #[test] fn bindgen_test_layout__drmHost1xBusInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmHost1xBusInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmHost1xBusInfo>(), 512usize, concat!("Size of: ", stringify!(_drmHost1xBusInfo)) ); assert_eq!( ::core::mem::align_of::<_drmHost1xBusInfo>(), 1usize, concat!("Alignment of ", stringify!(_drmHost1xBusInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fullname) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmHost1xBusInfo), "::", stringify!(fullname) ) ); } pub type drmHost1xBusInfo = _drmHost1xBusInfo; pub type drmHost1xBusInfoPtr = *mut _drmHost1xBusInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmHost1xDeviceInfo { pub compatible: *mut *mut ::core::ffi::c_char, } #[test] fn bindgen_test_layout__drmHost1xDeviceInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmHost1xDeviceInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmHost1xDeviceInfo>(), 8usize, concat!("Size of: ", stringify!(_drmHost1xDeviceInfo)) ); assert_eq!( ::core::mem::align_of::<_drmHost1xDeviceInfo>(), 8usize, concat!("Alignment of ", stringify!(_drmHost1xDeviceInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).compatible) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmHost1xDeviceInfo), "::", stringify!(compatible) ) ); } pub type drmHost1xDeviceInfo = _drmHost1xDeviceInfo; pub type drmHost1xDeviceInfoPtr = *mut _drmHost1xDeviceInfo; #[repr(C)] #[derive(Copy, Clone)] pub struct _drmDevice { pub nodes: *mut *mut ::core::ffi::c_char, pub available_nodes: ::core::ffi::c_int, pub bustype: ::core::ffi::c_int, pub businfo: _drmDevice__bindgen_ty_1, pub deviceinfo: _drmDevice__bindgen_ty_2, } #[repr(C)] #[derive(Copy, Clone)] pub union _drmDevice__bindgen_ty_1 { pub pci: drmPciBusInfoPtr, pub usb: drmUsbBusInfoPtr, pub platform: drmPlatformBusInfoPtr, pub host1x: drmHost1xBusInfoPtr, } #[test] fn bindgen_test_layout__drmDevice__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit<_drmDevice__bindgen_ty_1> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmDevice__bindgen_ty_1>(), 8usize, concat!("Size of: ", stringify!(_drmDevice__bindgen_ty_1)) ); assert_eq!( ::core::mem::align_of::<_drmDevice__bindgen_ty_1>(), 8usize, concat!("Alignment of ", stringify!(_drmDevice__bindgen_ty_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pci) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_1), "::", stringify!(pci) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).usb) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_1), "::", stringify!(usb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).platform) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_1), "::", stringify!(platform) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).host1x) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_1), "::", stringify!(host1x) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union _drmDevice__bindgen_ty_2 { pub pci: drmPciDeviceInfoPtr, pub usb: drmUsbDeviceInfoPtr, pub platform: drmPlatformDeviceInfoPtr, pub host1x: drmHost1xDeviceInfoPtr, } #[test] fn bindgen_test_layout__drmDevice__bindgen_ty_2() { const UNINIT: ::core::mem::MaybeUninit<_drmDevice__bindgen_ty_2> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmDevice__bindgen_ty_2>(), 8usize, concat!("Size of: ", stringify!(_drmDevice__bindgen_ty_2)) ); assert_eq!( ::core::mem::align_of::<_drmDevice__bindgen_ty_2>(), 8usize, concat!("Alignment of ", stringify!(_drmDevice__bindgen_ty_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pci) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_2), "::", stringify!(pci) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).usb) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_2), "::", stringify!(usb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).platform) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_2), "::", stringify!(platform) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).host1x) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice__bindgen_ty_2), "::", stringify!(host1x) ) ); } #[test] fn bindgen_test_layout__drmDevice() { const UNINIT: ::core::mem::MaybeUninit<_drmDevice> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmDevice>(), 32usize, concat!("Size of: ", stringify!(_drmDevice)) ); assert_eq!( ::core::mem::align_of::<_drmDevice>(), 8usize, concat!("Alignment of ", stringify!(_drmDevice)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).nodes) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmDevice), "::", stringify!(nodes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).available_nodes) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmDevice), "::", stringify!(available_nodes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bustype) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmDevice), "::", stringify!(bustype) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).businfo) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmDevice), "::", stringify!(businfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deviceinfo) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmDevice), "::", stringify!(deviceinfo) ) ); } pub type drmDevice = _drmDevice; pub type drmDevicePtr = *mut _drmDevice; extern "C" { pub fn drmGetDevice(fd: ::core::ffi::c_int, device: *mut drmDevicePtr) -> ::core::ffi::c_int; } extern "C" { pub fn drmFreeDevice(device: *mut drmDevicePtr); } extern "C" { pub fn drmGetDevices( devices: *mut drmDevicePtr, max_devices: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmFreeDevices(devices: *mut drmDevicePtr, count: ::core::ffi::c_int); } extern "C" { pub fn drmGetDevice2( fd: ::core::ffi::c_int, flags: u32, device: *mut drmDevicePtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetDevices2( flags: u32, devices: *mut drmDevicePtr, max_devices: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetDeviceFromDevId( dev_id: dev_t, flags: u32, device: *mut drmDevicePtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetNodeTypeFromDevId(devid: dev_t) -> ::core::ffi::c_int; } extern "C" { pub fn drmDevicesEqual(a: drmDevicePtr, b: drmDevicePtr) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjCreate( fd: ::core::ffi::c_int, flags: u32, handle: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjDestroy(fd: ::core::ffi::c_int, handle: u32) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjHandleToFD( fd: ::core::ffi::c_int, handle: u32, obj_fd: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjFDToHandle( fd: ::core::ffi::c_int, obj_fd: ::core::ffi::c_int, handle: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjImportSyncFile( fd: ::core::ffi::c_int, handle: u32, sync_file_fd: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjExportSyncFile( fd: ::core::ffi::c_int, handle: u32, sync_file_fd: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjWait( fd: ::core::ffi::c_int, handles: *mut u32, num_handles: ::core::ffi::c_uint, timeout_nsec: i64, flags: ::core::ffi::c_uint, first_signaled: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjReset( fd: ::core::ffi::c_int, handles: *const u32, handle_count: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjSignal( fd: ::core::ffi::c_int, handles: *const u32, handle_count: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjTimelineSignal( fd: ::core::ffi::c_int, handles: *const u32, points: *mut u64, handle_count: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjTimelineWait( fd: ::core::ffi::c_int, handles: *mut u32, points: *mut u64, num_handles: ::core::ffi::c_uint, timeout_nsec: i64, flags: ::core::ffi::c_uint, first_signaled: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjQuery( fd: ::core::ffi::c_int, handles: *mut u32, points: *mut u64, handle_count: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjQuery2( fd: ::core::ffi::c_int, handles: *mut u32, points: *mut u64, handle_count: u32, flags: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjTransfer( fd: ::core::ffi::c_int, dst_handle: u32, dst_point: u64, src_handle: u32, src_point: u64, flags: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmSyncobjEventfd( fd: ::core::ffi::c_int, handle: u32, point: u64, ev_fd: ::core::ffi::c_int, flags: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmGetFormatModifierVendor(modifier: u64) -> *mut ::core::ffi::c_char; } extern "C" { pub fn drmGetFormatModifierName(modifier: u64) -> *mut ::core::ffi::c_char; } extern "C" { pub fn drmGetFormatName(format: u32) -> *mut ::core::ffi::c_char; } pub type wchar_t = ::core::ffi::c_int; #[repr(C)] #[repr(align(16))] #[derive(Debug, Copy, Clone)] pub struct max_align_t { pub __clang_max_align_nonce1: ::core::ffi::c_longlong, pub __bindgen_padding_0: u64, pub __clang_max_align_nonce2: u128, } #[test] fn bindgen_test_layout_max_align_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(max_align_t)) ); assert_eq!( ::core::mem::align_of::(), 16usize, concat!("Alignment of ", stringify!(max_align_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__clang_max_align_nonce1) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(max_align_t), "::", stringify!(__clang_max_align_nonce1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).__clang_max_align_nonce2) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(max_align_t), "::", stringify!(__clang_max_align_nonce2) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeRes { pub count_fbs: ::core::ffi::c_int, pub fbs: *mut u32, pub count_crtcs: ::core::ffi::c_int, pub crtcs: *mut u32, pub count_connectors: ::core::ffi::c_int, pub connectors: *mut u32, pub count_encoders: ::core::ffi::c_int, pub encoders: *mut u32, pub min_width: u32, pub max_width: u32, pub min_height: u32, pub max_height: u32, } #[test] fn bindgen_test_layout__drmModeRes() { const UNINIT: ::core::mem::MaybeUninit<_drmModeRes> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeRes>(), 80usize, concat!("Size of: ", stringify!(_drmModeRes)) ); assert_eq!( ::core::mem::align_of::<_drmModeRes>(), 8usize, concat!("Alignment of ", stringify!(_drmModeRes)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_fbs) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(count_fbs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fbs) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(fbs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_crtcs) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(count_crtcs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtcs) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(crtcs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_connectors) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(count_connectors) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connectors) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(connectors) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_encoders) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(count_encoders) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoders) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(encoders) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_width) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(min_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_width) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(max_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_height) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(min_height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_height) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(_drmModeRes), "::", stringify!(max_height) ) ); } pub type drmModeRes = _drmModeRes; pub type drmModeResPtr = *mut _drmModeRes; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeModeInfo { pub clock: u32, pub hdisplay: u16, pub hsync_start: u16, pub hsync_end: u16, pub htotal: u16, pub hskew: u16, pub vdisplay: u16, pub vsync_start: u16, pub vsync_end: u16, pub vtotal: u16, pub vscan: u16, pub vrefresh: u32, pub flags: u32, pub type_: u32, pub name: [::core::ffi::c_char; 32usize], } #[test] fn bindgen_test_layout__drmModeModeInfo() { const UNINIT: ::core::mem::MaybeUninit<_drmModeModeInfo> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeModeInfo>(), 68usize, concat!("Size of: ", stringify!(_drmModeModeInfo)) ); assert_eq!( ::core::mem::align_of::<_drmModeModeInfo>(), 4usize, concat!("Alignment of ", stringify!(_drmModeModeInfo)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).clock) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(clock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdisplay) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(hdisplay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hsync_start) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(hsync_start) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hsync_end) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(hsync_end) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htotal) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(htotal) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hskew) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(hskew) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vdisplay) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(vdisplay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vsync_start) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(vsync_start) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vsync_end) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(vsync_end) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vtotal) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(vtotal) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vscan) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(vscan) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vrefresh) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(vrefresh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(_drmModeModeInfo), "::", stringify!(name) ) ); } pub type drmModeModeInfo = _drmModeModeInfo; pub type drmModeModeInfoPtr = *mut _drmModeModeInfo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeFB { pub fb_id: u32, pub width: u32, pub height: u32, pub pitch: u32, pub bpp: u32, pub depth: u32, pub handle: u32, } #[test] fn bindgen_test_layout__drmModeFB() { const UNINIT: ::core::mem::MaybeUninit<_drmModeFB> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeFB>(), 28usize, concat!("Size of: ", stringify!(_drmModeFB)) ); assert_eq!( ::core::mem::align_of::<_drmModeFB>(), 4usize, concat!("Alignment of ", stringify!(_drmModeFB)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeFB), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeFB), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeFB), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pitch) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmModeFB), "::", stringify!(pitch) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bpp) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeFB), "::", stringify!(bpp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).depth) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(_drmModeFB), "::", stringify!(depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmModeFB), "::", stringify!(handle) ) ); } pub type drmModeFB = _drmModeFB; pub type drmModeFBPtr = *mut _drmModeFB; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeFB2 { pub fb_id: u32, pub width: u32, pub height: u32, pub pixel_format: u32, pub modifier: u64, pub flags: u32, pub handles: [u32; 4usize], pub pitches: [u32; 4usize], pub offsets: [u32; 4usize], } #[test] fn bindgen_test_layout__drmModeFB2() { const UNINIT: ::core::mem::MaybeUninit<_drmModeFB2> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeFB2>(), 80usize, concat!("Size of: ", stringify!(_drmModeFB2)) ); assert_eq!( ::core::mem::align_of::<_drmModeFB2>(), 8usize, concat!("Alignment of ", stringify!(_drmModeFB2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixel_format) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(pixel_format) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).modifier) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(modifier) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handles) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pitches) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(pitches) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offsets) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(_drmModeFB2), "::", stringify!(offsets) ) ); } pub type drmModeFB2 = _drmModeFB2; pub type drmModeFB2Ptr = *mut _drmModeFB2; pub type drmModeClip = drm_clip_rect; pub type drmModeClipPtr = *mut drm_clip_rect; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModePropertyBlob { pub id: u32, pub length: u32, pub data: *mut ::core::ffi::c_void, } #[test] fn bindgen_test_layout__drmModePropertyBlob() { const UNINIT: ::core::mem::MaybeUninit<_drmModePropertyBlob> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModePropertyBlob>(), 16usize, concat!("Size of: ", stringify!(_drmModePropertyBlob)) ); assert_eq!( ::core::mem::align_of::<_drmModePropertyBlob>(), 8usize, concat!("Alignment of ", stringify!(_drmModePropertyBlob)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModePropertyBlob), "::", stringify!(id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).length) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModePropertyBlob), "::", stringify!(length) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModePropertyBlob), "::", stringify!(data) ) ); } pub type drmModePropertyBlobRes = _drmModePropertyBlob; pub type drmModePropertyBlobPtr = *mut _drmModePropertyBlob; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeProperty { pub prop_id: u32, pub flags: u32, pub name: [::core::ffi::c_char; 32usize], pub count_values: ::core::ffi::c_int, pub values: *mut u64, pub count_enums: ::core::ffi::c_int, pub enums: *mut drm_mode_property_enum, pub count_blobs: ::core::ffi::c_int, pub blob_ids: *mut u32, } #[test] fn bindgen_test_layout__drmModeProperty() { const UNINIT: ::core::mem::MaybeUninit<_drmModeProperty> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeProperty>(), 88usize, concat!("Size of: ", stringify!(_drmModeProperty)) ); assert_eq!( ::core::mem::align_of::<_drmModeProperty>(), 8usize, concat!("Alignment of ", stringify!(_drmModeProperty)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(prop_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_values) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(count_values) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).values) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(values) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_enums) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(count_enums) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enums) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(enums) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_blobs) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(count_blobs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blob_ids) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(_drmModeProperty), "::", stringify!(blob_ids) ) ); } pub type drmModePropertyRes = _drmModeProperty; pub type drmModePropertyPtr = *mut _drmModeProperty; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeCrtc { pub crtc_id: u32, pub buffer_id: u32, pub x: u32, pub y: u32, pub width: u32, pub height: u32, pub mode_valid: ::core::ffi::c_int, pub mode: drmModeModeInfo, pub gamma_size: ::core::ffi::c_int, } #[test] fn bindgen_test_layout__drmModeCrtc() { const UNINIT: ::core::mem::MaybeUninit<_drmModeCrtc> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeCrtc>(), 100usize, concat!("Size of: ", stringify!(_drmModeCrtc)) ); assert_eq!( ::core::mem::align_of::<_drmModeCrtc>(), 4usize, concat!("Alignment of ", stringify!(_drmModeCrtc)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).buffer_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(buffer_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).width) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).height) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode_valid) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(mode_valid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gamma_size) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(_drmModeCrtc), "::", stringify!(gamma_size) ) ); } pub type drmModeCrtc = _drmModeCrtc; pub type drmModeCrtcPtr = *mut _drmModeCrtc; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeEncoder { pub encoder_id: u32, pub encoder_type: u32, pub crtc_id: u32, pub possible_crtcs: u32, pub possible_clones: u32, } #[test] fn bindgen_test_layout__drmModeEncoder() { const UNINIT: ::core::mem::MaybeUninit<_drmModeEncoder> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeEncoder>(), 20usize, concat!("Size of: ", stringify!(_drmModeEncoder)) ); assert_eq!( ::core::mem::align_of::<_drmModeEncoder>(), 4usize, concat!("Alignment of ", stringify!(_drmModeEncoder)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeEncoder), "::", stringify!(encoder_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_type) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeEncoder), "::", stringify!(encoder_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeEncoder), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).possible_crtcs) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmModeEncoder), "::", stringify!(possible_crtcs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).possible_clones) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeEncoder), "::", stringify!(possible_clones) ) ); } pub type drmModeEncoder = _drmModeEncoder; pub type drmModeEncoderPtr = *mut _drmModeEncoder; pub const drmModeConnection_DRM_MODE_CONNECTED: drmModeConnection = 1; pub const drmModeConnection_DRM_MODE_DISCONNECTED: drmModeConnection = 2; pub const drmModeConnection_DRM_MODE_UNKNOWNCONNECTION: drmModeConnection = 3; pub type drmModeConnection = ::core::ffi::c_uint; pub const drmModeSubPixel_DRM_MODE_SUBPIXEL_UNKNOWN: drmModeSubPixel = 1; pub const drmModeSubPixel_DRM_MODE_SUBPIXEL_HORIZONTAL_RGB: drmModeSubPixel = 2; pub const drmModeSubPixel_DRM_MODE_SUBPIXEL_HORIZONTAL_BGR: drmModeSubPixel = 3; pub const drmModeSubPixel_DRM_MODE_SUBPIXEL_VERTICAL_RGB: drmModeSubPixel = 4; pub const drmModeSubPixel_DRM_MODE_SUBPIXEL_VERTICAL_BGR: drmModeSubPixel = 5; pub const drmModeSubPixel_DRM_MODE_SUBPIXEL_NONE: drmModeSubPixel = 6; pub type drmModeSubPixel = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeConnector { pub connector_id: u32, pub encoder_id: u32, pub connector_type: u32, pub connector_type_id: u32, pub connection: drmModeConnection, pub mmWidth: u32, pub mmHeight: u32, pub subpixel: drmModeSubPixel, pub count_modes: ::core::ffi::c_int, pub modes: drmModeModeInfoPtr, pub count_props: ::core::ffi::c_int, pub props: *mut u32, pub prop_values: *mut u64, pub count_encoders: ::core::ffi::c_int, pub encoders: *mut u32, } #[test] fn bindgen_test_layout__drmModeConnector() { const UNINIT: ::core::mem::MaybeUninit<_drmModeConnector> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeConnector>(), 88usize, concat!("Size of: ", stringify!(_drmModeConnector)) ); assert_eq!( ::core::mem::align_of::<_drmModeConnector>(), 8usize, concat!("Alignment of ", stringify!(_drmModeConnector)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(connector_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(encoder_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_type) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(connector_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_type_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(connector_type_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connection) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(connection) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mmWidth) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(mmWidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mmHeight) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(mmHeight) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).subpixel) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(subpixel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_modes) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(count_modes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).modes) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(modes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_props) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(count_props) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).props) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(props) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_values) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(prop_values) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_encoders) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(count_encoders) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoders) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(_drmModeConnector), "::", stringify!(encoders) ) ); } pub type drmModeConnector = _drmModeConnector; pub type drmModeConnectorPtr = *mut _drmModeConnector; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeObjectProperties { pub count_props: u32, pub props: *mut u32, pub prop_values: *mut u64, } #[test] fn bindgen_test_layout__drmModeObjectProperties() { const UNINIT: ::core::mem::MaybeUninit<_drmModeObjectProperties> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeObjectProperties>(), 24usize, concat!("Size of: ", stringify!(_drmModeObjectProperties)) ); assert_eq!( ::core::mem::align_of::<_drmModeObjectProperties>(), 8usize, concat!("Alignment of ", stringify!(_drmModeObjectProperties)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_props) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeObjectProperties), "::", stringify!(count_props) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).props) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeObjectProperties), "::", stringify!(props) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prop_values) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeObjectProperties), "::", stringify!(prop_values) ) ); } pub type drmModeObjectProperties = _drmModeObjectProperties; pub type drmModeObjectPropertiesPtr = *mut _drmModeObjectProperties; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeFormatModifierIterator { pub fmt_idx: u32, pub mod_idx: u32, pub fmt: u32, pub mod_: u64, } #[test] fn bindgen_test_layout__drmModeFormatModifierIterator() { const UNINIT: ::core::mem::MaybeUninit<_drmModeFormatModifierIterator> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModeFormatModifierIterator>(), 24usize, concat!("Size of: ", stringify!(_drmModeFormatModifierIterator)) ); assert_eq!( ::core::mem::align_of::<_drmModeFormatModifierIterator>(), 8usize, concat!("Alignment of ", stringify!(_drmModeFormatModifierIterator)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fmt_idx) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModeFormatModifierIterator), "::", stringify!(fmt_idx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mod_idx) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(_drmModeFormatModifierIterator), "::", stringify!(mod_idx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fmt) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModeFormatModifierIterator), "::", stringify!(fmt) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mod_) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModeFormatModifierIterator), "::", stringify!(mod_) ) ); } pub type drmModeFormatModifierIterator = _drmModeFormatModifierIterator; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModePlane { pub count_formats: u32, pub formats: *mut u32, pub plane_id: u32, pub crtc_id: u32, pub fb_id: u32, pub crtc_x: u32, pub crtc_y: u32, pub x: u32, pub y: u32, pub possible_crtcs: u32, pub gamma_size: u32, } #[test] fn bindgen_test_layout__drmModePlane() { const UNINIT: ::core::mem::MaybeUninit<_drmModePlane> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModePlane>(), 56usize, concat!("Size of: ", stringify!(_drmModePlane)) ); assert_eq!( ::core::mem::align_of::<_drmModePlane>(), 8usize, concat!("Alignment of ", stringify!(_drmModePlane)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_formats) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(count_formats) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).formats) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(formats) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plane_id) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(plane_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fb_id) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(fb_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_x) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(crtc_x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_y) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(crtc_y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(x) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(y) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).possible_crtcs) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(possible_crtcs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gamma_size) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(_drmModePlane), "::", stringify!(gamma_size) ) ); } pub type drmModePlane = _drmModePlane; pub type drmModePlanePtr = *mut _drmModePlane; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModePlaneRes { pub count_planes: u32, pub planes: *mut u32, } #[test] fn bindgen_test_layout__drmModePlaneRes() { const UNINIT: ::core::mem::MaybeUninit<_drmModePlaneRes> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_drmModePlaneRes>(), 16usize, concat!("Size of: ", stringify!(_drmModePlaneRes)) ); assert_eq!( ::core::mem::align_of::<_drmModePlaneRes>(), 8usize, concat!("Alignment of ", stringify!(_drmModePlaneRes)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count_planes) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_drmModePlaneRes), "::", stringify!(count_planes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).planes) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(_drmModePlaneRes), "::", stringify!(planes) ) ); } pub type drmModePlaneRes = _drmModePlaneRes; pub type drmModePlaneResPtr = *mut _drmModePlaneRes; extern "C" { pub fn drmModeFreeModeInfo(ptr: drmModeModeInfoPtr); } extern "C" { pub fn drmModeFreeResources(ptr: drmModeResPtr); } extern "C" { pub fn drmModeFreeFB(ptr: drmModeFBPtr); } extern "C" { pub fn drmModeFreeFB2(ptr: drmModeFB2Ptr); } extern "C" { pub fn drmModeFreeCrtc(ptr: drmModeCrtcPtr); } extern "C" { pub fn drmModeFreeConnector(ptr: drmModeConnectorPtr); } extern "C" { pub fn drmModeFreeEncoder(ptr: drmModeEncoderPtr); } extern "C" { pub fn drmModeFreePlane(ptr: drmModePlanePtr); } extern "C" { pub fn drmModeFreePlaneResources(ptr: drmModePlaneResPtr); } extern "C" { pub fn drmIsKMS(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeGetResources(fd: ::core::ffi::c_int) -> drmModeResPtr; } extern "C" { pub fn drmModeGetFB(fd: ::core::ffi::c_int, bufferId: u32) -> drmModeFBPtr; } extern "C" { pub fn drmModeGetFB2(fd: ::core::ffi::c_int, bufferId: u32) -> drmModeFB2Ptr; } extern "C" { pub fn drmModeAddFB( fd: ::core::ffi::c_int, width: u32, height: u32, depth: u8, bpp: u8, pitch: u32, bo_handle: u32, buf_id: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeAddFB2( fd: ::core::ffi::c_int, width: u32, height: u32, pixel_format: u32, bo_handles: *const u32, pitches: *const u32, offsets: *const u32, buf_id: *mut u32, flags: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeAddFB2WithModifiers( fd: ::core::ffi::c_int, width: u32, height: u32, pixel_format: u32, bo_handles: *const u32, pitches: *const u32, offsets: *const u32, modifier: *const u64, buf_id: *mut u32, flags: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeRmFB(fd: ::core::ffi::c_int, bufferId: u32) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeCloseFB(fd: ::core::ffi::c_int, buffer_id: u32) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeDirtyFB( fd: ::core::ffi::c_int, bufferId: u32, clips: drmModeClipPtr, num_clips: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeGetCrtc(fd: ::core::ffi::c_int, crtcId: u32) -> drmModeCrtcPtr; } extern "C" { pub fn drmModeSetCrtc( fd: ::core::ffi::c_int, crtcId: u32, bufferId: u32, x: u32, y: u32, connectors: *mut u32, count: ::core::ffi::c_int, mode: drmModeModeInfoPtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeSetCursor( fd: ::core::ffi::c_int, crtcId: u32, bo_handle: u32, width: u32, height: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeSetCursor2( fd: ::core::ffi::c_int, crtcId: u32, bo_handle: u32, width: u32, height: u32, hot_x: i32, hot_y: i32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeMoveCursor( fd: ::core::ffi::c_int, crtcId: u32, x: ::core::ffi::c_int, y: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeGetEncoder(fd: ::core::ffi::c_int, encoder_id: u32) -> drmModeEncoderPtr; } extern "C" { pub fn drmModeGetConnector(fd: ::core::ffi::c_int, connectorId: u32) -> drmModeConnectorPtr; } extern "C" { pub fn drmModeGetConnectorCurrent( fd: ::core::ffi::c_int, connector_id: u32, ) -> drmModeConnectorPtr; } extern "C" { pub fn drmModeConnectorGetPossibleCrtcs( fd: ::core::ffi::c_int, connector: *const drmModeConnector, ) -> u32; } extern "C" { pub fn drmModeAttachMode( fd: ::core::ffi::c_int, connectorId: u32, mode_info: drmModeModeInfoPtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeDetachMode( fd: ::core::ffi::c_int, connectorId: u32, mode_info: drmModeModeInfoPtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeGetProperty(fd: ::core::ffi::c_int, propertyId: u32) -> drmModePropertyPtr; } extern "C" { pub fn drmModeFreeProperty(ptr: drmModePropertyPtr); } extern "C" { pub fn drmModeGetPropertyBlob(fd: ::core::ffi::c_int, blob_id: u32) -> drmModePropertyBlobPtr; } extern "C" { pub fn drmModeFormatModifierBlobIterNext( blob: *const drmModePropertyBlobRes, iter: *mut drmModeFormatModifierIterator, ) -> bool; } extern "C" { pub fn drmModeFreePropertyBlob(ptr: drmModePropertyBlobPtr); } extern "C" { pub fn drmModeConnectorSetProperty( fd: ::core::ffi::c_int, connector_id: u32, property_id: u32, value: u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmCheckModesettingSupported(busid: *const ::core::ffi::c_char) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeCrtcSetGamma( fd: ::core::ffi::c_int, crtc_id: u32, size: u32, red: *const u16, green: *const u16, blue: *const u16, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeCrtcGetGamma( fd: ::core::ffi::c_int, crtc_id: u32, size: u32, red: *mut u16, green: *mut u16, blue: *mut u16, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModePageFlip( fd: ::core::ffi::c_int, crtc_id: u32, fb_id: u32, flags: u32, user_data: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModePageFlipTarget( fd: ::core::ffi::c_int, crtc_id: u32, fb_id: u32, flags: u32, user_data: *mut ::core::ffi::c_void, target_vblank: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeGetPlaneResources(fd: ::core::ffi::c_int) -> drmModePlaneResPtr; } extern "C" { pub fn drmModeGetPlane(fd: ::core::ffi::c_int, plane_id: u32) -> drmModePlanePtr; } extern "C" { pub fn drmModeSetPlane( fd: ::core::ffi::c_int, plane_id: u32, crtc_id: u32, fb_id: u32, flags: u32, crtc_x: i32, crtc_y: i32, crtc_w: u32, crtc_h: u32, src_x: u32, src_y: u32, src_w: u32, src_h: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeObjectGetProperties( fd: ::core::ffi::c_int, object_id: u32, object_type: u32, ) -> drmModeObjectPropertiesPtr; } extern "C" { pub fn drmModeFreeObjectProperties(ptr: drmModeObjectPropertiesPtr); } extern "C" { pub fn drmModeObjectSetProperty( fd: ::core::ffi::c_int, object_id: u32, object_type: u32, property_id: u32, value: u64, ) -> ::core::ffi::c_int; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _drmModeAtomicReq { _unused: [u8; 0], } pub type drmModeAtomicReq = _drmModeAtomicReq; pub type drmModeAtomicReqPtr = *mut _drmModeAtomicReq; extern "C" { pub fn drmModeAtomicAlloc() -> drmModeAtomicReqPtr; } extern "C" { pub fn drmModeAtomicDuplicate(req: drmModeAtomicReqPtr) -> drmModeAtomicReqPtr; } extern "C" { pub fn drmModeAtomicMerge( base: drmModeAtomicReqPtr, augment: drmModeAtomicReqPtr, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeAtomicFree(req: drmModeAtomicReqPtr); } extern "C" { pub fn drmModeAtomicGetCursor(req: drmModeAtomicReqPtr) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeAtomicSetCursor(req: drmModeAtomicReqPtr, cursor: ::core::ffi::c_int); } extern "C" { pub fn drmModeAtomicAddProperty( req: drmModeAtomicReqPtr, object_id: u32, property_id: u32, value: u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeAtomicCommit( fd: ::core::ffi::c_int, req: drmModeAtomicReqPtr, flags: u32, user_data: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeCreatePropertyBlob( fd: ::core::ffi::c_int, data: *const ::core::ffi::c_void, size: usize, id: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeDestroyPropertyBlob(fd: ::core::ffi::c_int, id: u32) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeCreateLease( fd: ::core::ffi::c_int, objects: *const u32, num_objects: ::core::ffi::c_int, flags: ::core::ffi::c_int, lessee_id: *mut u32, ) -> ::core::ffi::c_int; } #[repr(C)] #[derive(Debug)] pub struct drmModeLesseeList { pub count: u32, pub lessees: __IncompleteArrayField, } #[test] fn bindgen_test_layout_drmModeLesseeList() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drmModeLesseeList)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drmModeLesseeList)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drmModeLesseeList), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lessees) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drmModeLesseeList), "::", stringify!(lessees) ) ); } pub type drmModeLesseeListRes = drmModeLesseeList; pub type drmModeLesseeListPtr = *mut drmModeLesseeList; extern "C" { pub fn drmModeListLessees(fd: ::core::ffi::c_int) -> drmModeLesseeListPtr; } #[repr(C)] #[derive(Debug)] pub struct drmModeObjectList { pub count: u32, pub objects: __IncompleteArrayField, } #[test] fn bindgen_test_layout_drmModeObjectList() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drmModeObjectList)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drmModeObjectList)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drmModeObjectList), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).objects) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drmModeObjectList), "::", stringify!(objects) ) ); } pub type drmModeObjectListRes = drmModeObjectList; pub type drmModeObjectListPtr = *mut drmModeObjectList; extern "C" { pub fn drmModeGetLease(fd: ::core::ffi::c_int) -> drmModeObjectListPtr; } extern "C" { pub fn drmModeRevokeLease(fd: ::core::ffi::c_int, lessee_id: u32) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeGetConnectorTypeName(connector_type: u32) -> *const ::core::ffi::c_char; } extern "C" { pub fn drmModeCreateDumbBuffer( fd: ::core::ffi::c_int, width: u32, height: u32, bpp: u32, flags: u32, handle: *mut u32, pitch: *mut u32, size: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeDestroyDumbBuffer(fd: ::core::ffi::c_int, handle: u32) -> ::core::ffi::c_int; } extern "C" { pub fn drmModeMapDumbBuffer( fd: ::core::ffi::c_int, handle: u32, offset: *mut u64, ) -> ::core::ffi::c_int; } pub const amdgpu_bo_handle_type_amdgpu_bo_handle_type_gem_flink_name: amdgpu_bo_handle_type = 0; pub const amdgpu_bo_handle_type_amdgpu_bo_handle_type_kms: amdgpu_bo_handle_type = 1; pub const amdgpu_bo_handle_type_amdgpu_bo_handle_type_dma_buf_fd: amdgpu_bo_handle_type = 2; pub const amdgpu_bo_handle_type_amdgpu_bo_handle_type_kms_noimport: amdgpu_bo_handle_type = 3; pub type amdgpu_bo_handle_type = ::core::ffi::c_uint; pub const amdgpu_gpu_va_range_amdgpu_gpu_va_range_general: amdgpu_gpu_va_range = 0; pub type amdgpu_gpu_va_range = ::core::ffi::c_uint; pub const amdgpu_sw_info_amdgpu_sw_info_address32_hi: amdgpu_sw_info = 0; pub type amdgpu_sw_info = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_device { _unused: [u8; 0], } pub type amdgpu_device_handle = *mut amdgpu_device; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_context { _unused: [u8; 0], } pub type amdgpu_context_handle = *mut amdgpu_context; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_bo { _unused: [u8; 0], } pub type amdgpu_bo_handle = *mut amdgpu_bo; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_bo_list { _unused: [u8; 0], } pub type amdgpu_bo_list_handle = *mut amdgpu_bo_list; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_va { _unused: [u8; 0], } pub type amdgpu_va_handle = *mut amdgpu_va; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_semaphore { _unused: [u8; 0], } pub type amdgpu_semaphore_handle = *mut amdgpu_semaphore; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_bo_alloc_request { pub alloc_size: u64, pub phys_alignment: u64, pub preferred_heap: u32, pub flags: u64, } #[test] fn bindgen_test_layout_amdgpu_bo_alloc_request() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(amdgpu_bo_alloc_request)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_bo_alloc_request)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).alloc_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_alloc_request), "::", stringify!(alloc_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phys_alignment) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_alloc_request), "::", stringify!(phys_alignment) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).preferred_heap) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_alloc_request), "::", stringify!(preferred_heap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_alloc_request), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_bo_metadata { pub flags: u64, pub tiling_info: u64, pub size_metadata: u32, pub umd_metadata: [u32; 64usize], } #[test] fn bindgen_test_layout_amdgpu_bo_metadata() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 280usize, concat!("Size of: ", stringify!(amdgpu_bo_metadata)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_bo_metadata)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_metadata), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tiling_info) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_metadata), "::", stringify!(tiling_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size_metadata) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_metadata), "::", stringify!(size_metadata) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umd_metadata) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_metadata), "::", stringify!(umd_metadata) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_bo_info { pub alloc_size: u64, pub phys_alignment: u64, pub preferred_heap: u32, pub alloc_flags: u64, pub metadata: amdgpu_bo_metadata, } #[test] fn bindgen_test_layout_amdgpu_bo_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 312usize, concat!("Size of: ", stringify!(amdgpu_bo_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_bo_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).alloc_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_info), "::", stringify!(alloc_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phys_alignment) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_info), "::", stringify!(phys_alignment) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).preferred_heap) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_info), "::", stringify!(preferred_heap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).alloc_flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_info), "::", stringify!(alloc_flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).metadata) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_info), "::", stringify!(metadata) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_bo_import_result { pub buf_handle: amdgpu_bo_handle, pub alloc_size: u64, } #[test] fn bindgen_test_layout_amdgpu_bo_import_result() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(amdgpu_bo_import_result)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_bo_import_result)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).buf_handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_import_result), "::", stringify!(buf_handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).alloc_size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_bo_import_result), "::", stringify!(alloc_size) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_gds_resource_info { pub gds_gfx_partition_size: u32, pub compute_partition_size: u32, pub gds_total_size: u32, pub gws_per_gfx_partition: u32, pub gws_per_compute_partition: u32, pub oa_per_gfx_partition: u32, pub oa_per_compute_partition: u32, } #[test] fn bindgen_test_layout_amdgpu_gds_resource_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(amdgpu_gds_resource_info)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(amdgpu_gds_resource_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gds_gfx_partition_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_gds_resource_info), "::", stringify!(gds_gfx_partition_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).compute_partition_size) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(amdgpu_gds_resource_info), "::", stringify!(compute_partition_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gds_total_size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_gds_resource_info), "::", stringify!(gds_total_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gws_per_gfx_partition) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(amdgpu_gds_resource_info), "::", stringify!(gws_per_gfx_partition) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gws_per_compute_partition) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_gds_resource_info), "::", stringify!(gws_per_compute_partition) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).oa_per_gfx_partition) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(amdgpu_gds_resource_info), "::", stringify!(oa_per_gfx_partition) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).oa_per_compute_partition) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(amdgpu_gds_resource_info), "::", stringify!(oa_per_compute_partition) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_cs_fence { pub context: amdgpu_context_handle, pub ip_type: u32, pub ip_instance: u32, pub ring: u32, pub fence: u64, } #[test] fn bindgen_test_layout_amdgpu_cs_fence() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(amdgpu_cs_fence)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_cs_fence)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).context) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_fence), "::", stringify!(context) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_type) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_fence), "::", stringify!(ip_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_fence), "::", stringify!(ip_instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ring) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_fence), "::", stringify!(ring) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fence) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_fence), "::", stringify!(fence) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_cs_ib_info { pub flags: u64, pub ib_mc_address: u64, pub size: u32, } #[test] fn bindgen_test_layout_amdgpu_cs_ib_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(amdgpu_cs_ib_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_cs_ib_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_ib_info), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ib_mc_address) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_ib_info), "::", stringify!(ib_mc_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_ib_info), "::", stringify!(size) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_cs_fence_info { pub handle: amdgpu_bo_handle, pub offset: u64, } #[test] fn bindgen_test_layout_amdgpu_cs_fence_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(amdgpu_cs_fence_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_cs_fence_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_fence_info), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_fence_info), "::", stringify!(offset) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_cs_request { pub flags: u64, pub ip_type: ::core::ffi::c_uint, pub ip_instance: ::core::ffi::c_uint, pub ring: u32, pub resources: amdgpu_bo_list_handle, pub number_of_dependencies: u32, pub dependencies: *mut amdgpu_cs_fence, pub number_of_ibs: u32, pub ibs: *mut amdgpu_cs_ib_info, pub seq_no: u64, pub fence_info: amdgpu_cs_fence_info, } #[test] fn bindgen_test_layout_amdgpu_cs_request() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 88usize, concat!("Size of: ", stringify!(amdgpu_cs_request)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_cs_request)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_type) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(ip_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(ip_instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ring) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(ring) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).resources) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(resources) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).number_of_dependencies) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(number_of_dependencies) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dependencies) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(dependencies) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).number_of_ibs) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(number_of_ibs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ibs) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(ibs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).seq_no) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(seq_no) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fence_info) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(amdgpu_cs_request), "::", stringify!(fence_info) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_buffer_size_alignments { pub size_local: u64, pub size_remote: u64, } #[test] fn bindgen_test_layout_amdgpu_buffer_size_alignments() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(amdgpu_buffer_size_alignments)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_buffer_size_alignments)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size_local) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_buffer_size_alignments), "::", stringify!(size_local) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size_remote) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_buffer_size_alignments), "::", stringify!(size_remote) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_heap_info { pub heap_size: u64, pub heap_usage: u64, pub max_allocation: u64, } #[test] fn bindgen_test_layout_amdgpu_heap_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(amdgpu_heap_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_heap_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).heap_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_heap_info), "::", stringify!(heap_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).heap_usage) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_heap_info), "::", stringify!(heap_usage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_allocation) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_heap_info), "::", stringify!(max_allocation) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct amdgpu_gpu_info { pub asic_id: u32, pub chip_rev: u32, pub chip_external_rev: u32, pub family_id: u32, pub ids_flags: u64, pub max_engine_clk: u64, pub max_memory_clk: u64, pub num_shader_engines: u32, pub num_shader_arrays_per_engine: u32, pub avail_quad_shader_pipes: u32, pub max_quad_shader_pipes: u32, pub cache_entries_per_quad_pipe: u32, pub num_hw_gfx_contexts: u32, pub rb_pipes: u32, pub enabled_rb_pipes_mask: u32, pub gpu_counter_freq: u32, pub backend_disable: [u32; 4usize], pub mc_arb_ramcfg: u32, pub gb_addr_cfg: u32, pub gb_tile_mode: [u32; 32usize], pub gb_macro_tile_mode: [u32; 16usize], pub pa_sc_raster_cfg: [u32; 4usize], pub pa_sc_raster_cfg1: [u32; 4usize], pub cu_active_number: u32, pub cu_ao_mask: u32, pub cu_bitmap: [[u32; 4usize]; 4usize], pub vram_type: u32, pub vram_bit_width: u32, pub ce_ram_size: u32, pub vce_harvest_config: u32, pub pci_rev_id: u32, } #[test] fn bindgen_test_layout_amdgpu_gpu_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 416usize, concat!("Size of: ", stringify!(amdgpu_gpu_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(amdgpu_gpu_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).asic_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(asic_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).chip_rev) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(chip_rev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).chip_external_rev) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(chip_external_rev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).family_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(family_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ids_flags) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(ids_flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_engine_clk) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(max_engine_clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_memory_clk) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(max_memory_clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_shader_engines) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(num_shader_engines) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_shader_arrays_per_engine) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(num_shader_arrays_per_engine) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avail_quad_shader_pipes) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(avail_quad_shader_pipes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_quad_shader_pipes) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(max_quad_shader_pipes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cache_entries_per_quad_pipe) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(cache_entries_per_quad_pipe) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_hw_gfx_contexts) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(num_hw_gfx_contexts) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rb_pipes) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(rb_pipes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enabled_rb_pipes_mask) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(enabled_rb_pipes_mask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpu_counter_freq) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(gpu_counter_freq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).backend_disable) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(backend_disable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_arb_ramcfg) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(mc_arb_ramcfg) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_addr_cfg) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(gb_addr_cfg) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_tile_mode) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(gb_tile_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_macro_tile_mode) as usize - ptr as usize }, 228usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(gb_macro_tile_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pa_sc_raster_cfg) as usize - ptr as usize }, 292usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(pa_sc_raster_cfg) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pa_sc_raster_cfg1) as usize - ptr as usize }, 308usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(pa_sc_raster_cfg1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_active_number) as usize - ptr as usize }, 324usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(cu_active_number) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_ao_mask) as usize - ptr as usize }, 328usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(cu_ao_mask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_bitmap) as usize - ptr as usize }, 332usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(cu_bitmap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_type) as usize - ptr as usize }, 396usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(vram_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_bit_width) as usize - ptr as usize }, 400usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(vram_bit_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ce_ram_size) as usize - ptr as usize }, 404usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(ce_ram_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vce_harvest_config) as usize - ptr as usize }, 408usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(vce_harvest_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pci_rev_id) as usize - ptr as usize }, 412usize, concat!( "Offset of field: ", stringify!(amdgpu_gpu_info), "::", stringify!(pci_rev_id) ) ); } extern "C" { pub fn amdgpu_device_initialize( fd: ::core::ffi::c_int, major_version: *mut u32, minor_version: *mut u32, device_handle: *mut amdgpu_device_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_device_deinitialize(device_handle: amdgpu_device_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_device_get_fd(device_handle: amdgpu_device_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_alloc( dev: amdgpu_device_handle, alloc_buffer: *mut amdgpu_bo_alloc_request, buf_handle: *mut amdgpu_bo_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_set_metadata( buf_handle: amdgpu_bo_handle, info: *mut amdgpu_bo_metadata, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_query_info( buf_handle: amdgpu_bo_handle, info: *mut amdgpu_bo_info, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_export( buf_handle: amdgpu_bo_handle, type_: amdgpu_bo_handle_type, shared_handle: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_import( dev: amdgpu_device_handle, type_: amdgpu_bo_handle_type, shared_handle: u32, output: *mut amdgpu_bo_import_result, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_create_bo_from_user_mem( dev: amdgpu_device_handle, cpu: *mut ::core::ffi::c_void, size: u64, buf_handle: *mut amdgpu_bo_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_find_bo_by_cpu_mapping( dev: amdgpu_device_handle, cpu: *mut ::core::ffi::c_void, size: u64, buf_handle: *mut amdgpu_bo_handle, offset_in_bo: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_free(buf_handle: amdgpu_bo_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_inc_ref(bo: amdgpu_bo_handle); } extern "C" { pub fn amdgpu_bo_cpu_map( buf_handle: amdgpu_bo_handle, cpu: *mut *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_cpu_unmap(buf_handle: amdgpu_bo_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_wait_for_idle( buf_handle: amdgpu_bo_handle, timeout_ns: u64, buffer_busy: *mut bool, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_list_create_raw( dev: amdgpu_device_handle, number_of_buffers: u32, buffers: *mut drm_amdgpu_bo_list_entry, result: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_list_destroy_raw( dev: amdgpu_device_handle, bo_list: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_list_create( dev: amdgpu_device_handle, number_of_resources: u32, resources: *mut amdgpu_bo_handle, resource_prios: *mut u8, result: *mut amdgpu_bo_list_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_list_destroy(handle: amdgpu_bo_list_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_list_update( handle: amdgpu_bo_list_handle, number_of_resources: u32, resources: *mut amdgpu_bo_handle, resource_prios: *mut u8, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_ctx_create2( dev: amdgpu_device_handle, priority: u32, context: *mut amdgpu_context_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_ctx_create( dev: amdgpu_device_handle, context: *mut amdgpu_context_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_ctx_free(context: amdgpu_context_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_ctx_override_priority( dev: amdgpu_device_handle, context: amdgpu_context_handle, master_fd: ::core::ffi::c_int, priority: ::core::ffi::c_uint, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_ctx_stable_pstate( context: amdgpu_context_handle, op: u32, flags: u32, out_flags: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_query_reset_state( context: amdgpu_context_handle, state: *mut u32, hangs: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_query_reset_state2( context: amdgpu_context_handle, flags: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_submit( context: amdgpu_context_handle, flags: u64, ibs_request: *mut amdgpu_cs_request, number_of_requests: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_query_fence_status( fence: *mut amdgpu_cs_fence, timeout_ns: u64, flags: u64, expired: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_wait_fences( fences: *mut amdgpu_cs_fence, fence_count: u32, wait_all: bool, timeout_ns: u64, status: *mut u32, first: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_buffer_size_alignment( dev: amdgpu_device_handle, info: *mut amdgpu_buffer_size_alignments, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_firmware_version( dev: amdgpu_device_handle, fw_type: ::core::ffi::c_uint, ip_instance: ::core::ffi::c_uint, index: ::core::ffi::c_uint, version: *mut u32, feature: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_hw_ip_count( dev: amdgpu_device_handle, type_: ::core::ffi::c_uint, count: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_hw_ip_info( dev: amdgpu_device_handle, type_: ::core::ffi::c_uint, ip_instance: ::core::ffi::c_uint, info: *mut drm_amdgpu_info_hw_ip, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_heap_info( dev: amdgpu_device_handle, heap: u32, flags: u32, info: *mut amdgpu_heap_info, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_crtc_from_id( dev: amdgpu_device_handle, id: ::core::ffi::c_uint, result: *mut i32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_gpu_info( dev: amdgpu_device_handle, info: *mut amdgpu_gpu_info, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_info( dev: amdgpu_device_handle, info_id: ::core::ffi::c_uint, size: ::core::ffi::c_uint, value: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_sw_info( dev: amdgpu_device_handle, info: amdgpu_sw_info, value: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_gds_info( dev: amdgpu_device_handle, gds_info: *mut amdgpu_gds_resource_info, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_sensor_info( dev: amdgpu_device_handle, sensor_type: ::core::ffi::c_uint, size: ::core::ffi::c_uint, value: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_video_caps_info( dev: amdgpu_device_handle, cap_type: ::core::ffi::c_uint, size: ::core::ffi::c_uint, value: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_query_gpuvm_fault_info( dev: amdgpu_device_handle, size: ::core::ffi::c_uint, value: *mut ::core::ffi::c_void, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_read_mm_registers( dev: amdgpu_device_handle, dword_offset: ::core::ffi::c_uint, count: ::core::ffi::c_uint, instance: u32, flags: u32, values: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_va_range_alloc( dev: amdgpu_device_handle, va_range_type: amdgpu_gpu_va_range, size: u64, va_base_alignment: u64, va_base_required: u64, va_base_allocated: *mut u64, va_range_handle: *mut amdgpu_va_handle, flags: u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_va_range_free(va_range_handle: amdgpu_va_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_va_get_start_addr(va_handle: amdgpu_va_handle) -> u64; } extern "C" { pub fn amdgpu_va_range_query( dev: amdgpu_device_handle, type_: amdgpu_gpu_va_range, start: *mut u64, end: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_va_op( bo: amdgpu_bo_handle, offset: u64, size: u64, addr: u64, flags: u64, ops: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_bo_va_op_raw( dev: amdgpu_device_handle, bo: amdgpu_bo_handle, offset: u64, size: u64, addr: u64, flags: u64, ops: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_create_semaphore(sem: *mut amdgpu_semaphore_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_signal_semaphore( ctx: amdgpu_context_handle, ip_type: u32, ip_instance: u32, ring: u32, sem: amdgpu_semaphore_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_wait_semaphore( ctx: amdgpu_context_handle, ip_type: u32, ip_instance: u32, ring: u32, sem: amdgpu_semaphore_handle, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_destroy_semaphore(sem: amdgpu_semaphore_handle) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_get_marketing_name(dev: amdgpu_device_handle) -> *const ::core::ffi::c_char; } extern "C" { pub fn amdgpu_cs_create_syncobj2( dev: amdgpu_device_handle, flags: u32, syncobj: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_create_syncobj( dev: amdgpu_device_handle, syncobj: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_destroy_syncobj(dev: amdgpu_device_handle, syncobj: u32) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_reset( dev: amdgpu_device_handle, syncobjs: *const u32, syncobj_count: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_signal( dev: amdgpu_device_handle, syncobjs: *const u32, syncobj_count: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_timeline_signal( dev: amdgpu_device_handle, syncobjs: *const u32, points: *mut u64, syncobj_count: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_wait( dev: amdgpu_device_handle, handles: *mut u32, num_handles: ::core::ffi::c_uint, timeout_nsec: i64, flags: ::core::ffi::c_uint, first_signaled: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_timeline_wait( dev: amdgpu_device_handle, handles: *mut u32, points: *mut u64, num_handles: ::core::ffi::c_uint, timeout_nsec: i64, flags: ::core::ffi::c_uint, first_signaled: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_query( dev: amdgpu_device_handle, handles: *mut u32, points: *mut u64, num_handles: ::core::ffi::c_uint, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_query2( dev: amdgpu_device_handle, handles: *mut u32, points: *mut u64, num_handles: ::core::ffi::c_uint, flags: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_export_syncobj( dev: amdgpu_device_handle, syncobj: u32, shared_fd: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_import_syncobj( dev: amdgpu_device_handle, shared_fd: ::core::ffi::c_int, syncobj: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_export_sync_file( dev: amdgpu_device_handle, syncobj: u32, sync_file_fd: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_import_sync_file( dev: amdgpu_device_handle, syncobj: u32, sync_file_fd: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_export_sync_file2( dev: amdgpu_device_handle, syncobj: u32, point: u64, flags: u32, sync_file_fd: *mut ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_import_sync_file2( dev: amdgpu_device_handle, syncobj: u32, point: u64, sync_file_fd: ::core::ffi::c_int, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_syncobj_transfer( dev: amdgpu_device_handle, dst_handle: u32, dst_point: u64, src_handle: u32, src_point: u64, flags: u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_fence_to_handle( dev: amdgpu_device_handle, fence: *mut amdgpu_cs_fence, what: u32, out_handle: *mut u32, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_submit_raw( dev: amdgpu_device_handle, context: amdgpu_context_handle, bo_list_handle: amdgpu_bo_list_handle, num_chunks: ::core::ffi::c_int, chunks: *mut drm_amdgpu_cs_chunk, seq_no: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_submit_raw2( dev: amdgpu_device_handle, context: amdgpu_context_handle, bo_list_handle: u32, num_chunks: ::core::ffi::c_int, chunks: *mut drm_amdgpu_cs_chunk, seq_no: *mut u64, ) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_cs_chunk_fence_to_dep( fence: *mut amdgpu_cs_fence, dep: *mut drm_amdgpu_cs_chunk_dep, ); } extern "C" { pub fn amdgpu_cs_chunk_fence_info_to_data( fence_info: *mut amdgpu_cs_fence_info, data: *mut drm_amdgpu_cs_chunk_data, ); } extern "C" { pub fn amdgpu_vm_reserve_vmid(dev: amdgpu_device_handle, flags: u32) -> ::core::ffi::c_int; } extern "C" { pub fn amdgpu_vm_unreserve_vmid(dev: amdgpu_device_handle, flags: u32) -> ::core::ffi::c_int; } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_create_in { #[doc = " the requested memory size"] pub bo_size: __u64, #[doc = " physical start_addr alignment in bytes for some HW requirements"] pub alignment: __u64, #[doc = " the requested memory domains"] pub domains: __u64, #[doc = " allocation flags"] pub domain_flags: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_create_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_create_in)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_create_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bo_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create_in), "::", stringify!(bo_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).alignment) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create_in), "::", stringify!(alignment) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).domains) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create_in), "::", stringify!(domains) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).domain_flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create_in), "::", stringify!(domain_flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_create_out { #[doc = " returned GEM object handle"] pub handle: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_create_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_create_out)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_create_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create_out), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create_out), "::", stringify!(_pad) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_gem_create { pub in_: drm_amdgpu_gem_create_in, pub out: drm_amdgpu_gem_create_out, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_create() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_create)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_create)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_create), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_bo_list_in { #[doc = " Type of operation"] pub operation: __u32, #[doc = " Handle of list or 0 if we want to create one"] pub list_handle: __u32, #[doc = " Number of BOs in list"] pub bo_number: __u32, #[doc = " Size of each element describing BO"] pub bo_info_size: __u32, #[doc = " Pointer to array describing BOs"] pub bo_info_ptr: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_bo_list_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_bo_list_in)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_bo_list_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).operation) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_in), "::", stringify!(operation) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).list_handle) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_in), "::", stringify!(list_handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bo_number) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_in), "::", stringify!(bo_number) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bo_info_size) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_in), "::", stringify!(bo_info_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bo_info_ptr) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_in), "::", stringify!(bo_info_ptr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_bo_list_entry { #[doc = " Handle of BO"] pub bo_handle: __u32, #[doc = " New (if specified) BO priority to be used during migration"] pub bo_priority: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_bo_list_entry() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_bo_list_entry)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_bo_list_entry)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bo_handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_entry), "::", stringify!(bo_handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bo_priority) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_entry), "::", stringify!(bo_priority) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_bo_list_out { #[doc = " Handle of resource list"] pub list_handle: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_bo_list_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_bo_list_out)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_bo_list_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).list_handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_out), "::", stringify!(list_handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list_out), "::", stringify!(_pad) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_bo_list { pub in_: drm_amdgpu_bo_list_in, pub out: drm_amdgpu_bo_list_out, } #[test] fn bindgen_test_layout_drm_amdgpu_bo_list() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_bo_list)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_bo_list)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_bo_list), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_ctx_in { #[doc = " AMDGPU_CTX_OP_*"] pub op: __u32, #[doc = " Flags"] pub flags: __u32, pub ctx_id: __u32, #[doc = " AMDGPU_CTX_PRIORITY_*"] pub priority: __s32, } #[test] fn bindgen_test_layout_drm_amdgpu_ctx_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_ctx_in)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_ctx_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).op) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_in), "::", stringify!(op) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_in), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_in), "::", stringify!(ctx_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).priority) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_in), "::", stringify!(priority) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_ctx_out { pub alloc: drm_amdgpu_ctx_out__bindgen_ty_1, pub state: drm_amdgpu_ctx_out__bindgen_ty_2, pub pstate: drm_amdgpu_ctx_out__bindgen_ty_3, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_ctx_out__bindgen_ty_1 { pub ctx_id: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_ctx_out__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_1)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_1), "::", stringify!(ctx_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_1), "::", stringify!(_pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_ctx_out__bindgen_ty_2 { #[doc = " For future use, no flags defined so far"] pub flags: __u64, #[doc = " Number of resets caused by this context so far."] pub hangs: __u32, #[doc = " Reset status since the last call of the ioctl."] pub reset_status: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_ctx_out__bindgen_ty_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_2)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_2), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hangs) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_2), "::", stringify!(hangs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reset_status) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_2), "::", stringify!(reset_status) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_ctx_out__bindgen_ty_3 { pub flags: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_ctx_out__bindgen_ty_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_3)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_3), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out__bindgen_ty_3), "::", stringify!(_pad) ) ); } #[test] fn bindgen_test_layout_drm_amdgpu_ctx_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_ctx_out)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_ctx_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).alloc) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out), "::", stringify!(alloc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).state) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out), "::", stringify!(state) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pstate) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx_out), "::", stringify!(pstate) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_ctx { pub in_: drm_amdgpu_ctx_in, pub out: drm_amdgpu_ctx_out, } #[test] fn bindgen_test_layout_drm_amdgpu_ctx() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_ctx)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_ctx)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_ctx), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_vm_in { #[doc = " AMDGPU_VM_OP_*"] pub op: __u32, pub flags: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_vm_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_vm_in)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_vm_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).op) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_vm_in), "::", stringify!(op) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_vm_in), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_vm_out { #[doc = " For future use, no flags defined so far"] pub flags: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_vm_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_vm_out)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_vm_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_vm_out), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_vm { pub in_: drm_amdgpu_vm_in, pub out: drm_amdgpu_vm_out, } #[test] fn bindgen_test_layout_drm_amdgpu_vm() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_vm)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_vm)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_vm), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_vm), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_sched_in { pub op: __u32, pub fd: __u32, #[doc = " AMDGPU_CTX_PRIORITY_*"] pub priority: __s32, pub ctx_id: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_sched_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_sched_in)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_sched_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).op) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_sched_in), "::", stringify!(op) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fd) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_sched_in), "::", stringify!(fd) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).priority) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_sched_in), "::", stringify!(priority) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_sched_in), "::", stringify!(ctx_id) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_sched { pub in_: drm_amdgpu_sched_in, } #[test] fn bindgen_test_layout_drm_amdgpu_sched() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_sched)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_sched)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_sched), "::", stringify!(in_) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_userptr { pub addr: __u64, pub size: __u64, pub flags: __u32, pub handle: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_userptr() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_userptr)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_userptr)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).addr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_userptr), "::", stringify!(addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_userptr), "::", stringify!(size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_userptr), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_userptr), "::", stringify!(handle) ) ); } #[doc = " The same structure is shared for input/output"] #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_metadata { #[doc = " GEM Object handle"] pub handle: __u32, #[doc = " Do we want get or set metadata"] pub op: __u32, pub data: drm_amdgpu_gem_metadata__bindgen_ty_1, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_metadata__bindgen_ty_1 { #[doc = " For future use, no flags defined so far"] pub flags: __u64, #[doc = " family specific tiling info"] pub tiling_info: __u64, pub data_size_bytes: __u32, pub data: [__u32; 64usize], } #[test] fn bindgen_test_layout_drm_amdgpu_gem_metadata__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 280usize, concat!( "Size of: ", stringify!(drm_amdgpu_gem_metadata__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(drm_amdgpu_gem_metadata__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_metadata__bindgen_ty_1), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tiling_info) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_metadata__bindgen_ty_1), "::", stringify!(tiling_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data_size_bytes) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_metadata__bindgen_ty_1), "::", stringify!(data_size_bytes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_metadata__bindgen_ty_1), "::", stringify!(data) ) ); } #[test] fn bindgen_test_layout_drm_amdgpu_gem_metadata() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 288usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_metadata)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_metadata)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_metadata), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).op) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_metadata), "::", stringify!(op) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_metadata), "::", stringify!(data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_mmap_in { #[doc = " the GEM object handle"] pub handle: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_mmap_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_mmap_in)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_mmap_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_mmap_in), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_mmap_in), "::", stringify!(_pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_mmap_out { #[doc = " mmap offset from the vma offset manager"] pub addr_ptr: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_mmap_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_mmap_out)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_mmap_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).addr_ptr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_mmap_out), "::", stringify!(addr_ptr) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_gem_mmap { pub in_: drm_amdgpu_gem_mmap_in, pub out: drm_amdgpu_gem_mmap_out, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_mmap() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_mmap)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_mmap)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_mmap), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_mmap), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_wait_idle_in { #[doc = " GEM object handle"] pub handle: __u32, #[doc = " For future use, no flags defined so far"] pub flags: __u32, #[doc = " Absolute timeout to wait"] pub timeout: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_wait_idle_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_wait_idle_in)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_wait_idle_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_wait_idle_in), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_wait_idle_in), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).timeout) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_wait_idle_in), "::", stringify!(timeout) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_wait_idle_out { #[doc = " BO status: 0 - BO is idle, 1 - BO is busy"] pub status: __u32, #[doc = " Returned current memory domain"] pub domain: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_wait_idle_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_wait_idle_out)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_wait_idle_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).status) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_wait_idle_out), "::", stringify!(status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).domain) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_wait_idle_out), "::", stringify!(domain) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_gem_wait_idle { pub in_: drm_amdgpu_gem_wait_idle_in, pub out: drm_amdgpu_gem_wait_idle_out, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_wait_idle() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_wait_idle)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_wait_idle)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_wait_idle), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_wait_idle), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_wait_cs_in { pub handle: __u64, #[doc = " Absolute timeout to wait"] pub timeout: __u64, pub ip_type: __u32, pub ip_instance: __u32, pub ring: __u32, pub ctx_id: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_wait_cs_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_wait_cs_in)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_wait_cs_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs_in), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).timeout) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs_in), "::", stringify!(timeout) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_type) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs_in), "::", stringify!(ip_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs_in), "::", stringify!(ip_instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ring) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs_in), "::", stringify!(ring) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs_in), "::", stringify!(ctx_id) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_wait_cs_out { #[doc = " CS status: 0 - CS completed, 1 - CS still busy"] pub status: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_wait_cs_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_wait_cs_out)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_wait_cs_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).status) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs_out), "::", stringify!(status) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_wait_cs { pub in_: drm_amdgpu_wait_cs_in, pub out: drm_amdgpu_wait_cs_out, } #[test] fn bindgen_test_layout_drm_amdgpu_wait_cs() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_wait_cs)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_wait_cs)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_cs), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_fence { pub ctx_id: __u32, pub ip_type: __u32, pub ip_instance: __u32, pub ring: __u32, pub seq_no: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_fence() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_fence)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_fence)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence), "::", stringify!(ctx_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_type) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence), "::", stringify!(ip_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence), "::", stringify!(ip_instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ring) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence), "::", stringify!(ring) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).seq_no) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence), "::", stringify!(seq_no) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_wait_fences_in { #[doc = " This points to uint64_t * which points to fences"] pub fences: __u64, pub fence_count: __u32, pub wait_all: __u32, pub timeout_ns: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_wait_fences_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_wait_fences_in)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_wait_fences_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fences) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences_in), "::", stringify!(fences) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fence_count) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences_in), "::", stringify!(fence_count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).wait_all) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences_in), "::", stringify!(wait_all) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).timeout_ns) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences_in), "::", stringify!(timeout_ns) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_wait_fences_out { pub status: __u32, pub first_signaled: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_wait_fences_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_wait_fences_out)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_wait_fences_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).status) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences_out), "::", stringify!(status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).first_signaled) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences_out), "::", stringify!(first_signaled) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_wait_fences { pub in_: drm_amdgpu_wait_fences_in, pub out: drm_amdgpu_wait_fences_out, } #[test] fn bindgen_test_layout_drm_amdgpu_wait_fences() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_wait_fences)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_wait_fences)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_wait_fences), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_op { #[doc = " GEM object handle"] pub handle: __u32, #[doc = " AMDGPU_GEM_OP_*"] pub op: __u32, #[doc = " Input or return value"] pub value: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_op() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_op)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_op)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_op), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).op) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_op), "::", stringify!(op) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).value) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_op), "::", stringify!(value) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_gem_va { #[doc = " GEM object handle"] pub handle: __u32, pub _pad: __u32, #[doc = " AMDGPU_VA_OP_*"] pub operation: __u32, #[doc = " AMDGPU_VM_PAGE_*"] pub flags: __u32, #[doc = " va address to assign . Must be correctly aligned."] pub va_address: __u64, #[doc = " Specify offset inside of BO to assign. Must be correctly aligned."] pub offset_in_bo: __u64, #[doc = " Specify mapping size. Must be correctly aligned."] pub map_size: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_gem_va() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(drm_amdgpu_gem_va)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_gem_va)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_va), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_va), "::", stringify!(_pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).operation) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_va), "::", stringify!(operation) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_va), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).va_address) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_va), "::", stringify!(va_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset_in_bo) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_va), "::", stringify!(offset_in_bo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).map_size) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_gem_va), "::", stringify!(map_size) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_chunk { pub chunk_id: __u32, pub length_dw: __u32, pub chunk_data: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_chunk)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).chunk_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk), "::", stringify!(chunk_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).length_dw) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk), "::", stringify!(length_dw) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).chunk_data) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk), "::", stringify!(chunk_data) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_in { #[doc = " Rendering context id"] pub ctx_id: __u32, #[doc = " Handle of resource list associated with CS"] pub bo_list_handle: __u32, pub num_chunks: __u32, pub flags: __u32, #[doc = " this points to __u64 * which point to cs chunks"] pub chunks: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_in() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_in)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_in)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_in), "::", stringify!(ctx_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bo_list_handle) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_in), "::", stringify!(bo_list_handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_chunks) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_in), "::", stringify!(num_chunks) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_in), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).chunks) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_in), "::", stringify!(chunks) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_out { pub handle: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_out() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_out)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_out)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_out), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_cs { pub in_: drm_amdgpu_cs_in, pub out: drm_amdgpu_cs_out, } #[test] fn bindgen_test_layout_drm_amdgpu_cs() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_cs)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_chunk_ib { pub _pad: __u32, #[doc = " AMDGPU_IB_FLAG_*"] pub flags: __u32, #[doc = " Virtual address to begin IB execution"] pub va_start: __u64, #[doc = " Size of submission"] pub ib_bytes: __u32, #[doc = " HW IP to submit to"] pub ip_type: __u32, #[doc = " HW IP index of the same type to submit to"] pub ip_instance: __u32, #[doc = " Ring index to submit to"] pub ring: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_ib() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk_ib)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_chunk_ib)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_ib), "::", stringify!(_pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_ib), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).va_start) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_ib), "::", stringify!(va_start) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ib_bytes) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_ib), "::", stringify!(ib_bytes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_type) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_ib), "::", stringify!(ip_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_ib), "::", stringify!(ip_instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ring) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_ib), "::", stringify!(ring) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_chunk_dep { pub ip_type: __u32, pub ip_instance: __u32, pub ring: __u32, pub ctx_id: __u32, pub handle: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_dep() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk_dep)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_chunk_dep)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_type) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_dep), "::", stringify!(ip_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_dep), "::", stringify!(ip_instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ring) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_dep), "::", stringify!(ring) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctx_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_dep), "::", stringify!(ctx_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_dep), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_chunk_fence { pub handle: __u32, pub offset: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_fence() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk_fence)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_chunk_fence)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_fence), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_fence), "::", stringify!(offset) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_chunk_sem { pub handle: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_sem() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk_sem)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_chunk_sem)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_sem), "::", stringify!(handle) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_chunk_syncobj { pub handle: __u32, pub flags: __u32, pub point: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_syncobj() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk_syncobj)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_chunk_syncobj)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_syncobj), "::", stringify!(handle) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_syncobj), "::", stringify!(flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).point) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_syncobj), "::", stringify!(point) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_fence_to_handle { pub in_: drm_amdgpu_fence_to_handle__bindgen_ty_1, pub out: drm_amdgpu_fence_to_handle__bindgen_ty_2, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_fence_to_handle__bindgen_ty_1 { pub fence: drm_amdgpu_fence, pub what: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_fence_to_handle__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!( "Size of: ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fence) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_1), "::", stringify!(fence) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).what) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_1), "::", stringify!(what) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_1), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_fence_to_handle__bindgen_ty_2 { pub handle: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_fence_to_handle__bindgen_ty_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_2) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).handle) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence_to_handle__bindgen_ty_2), "::", stringify!(handle) ) ); } #[test] fn bindgen_test_layout_drm_amdgpu_fence_to_handle() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_fence_to_handle)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_fence_to_handle)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).in_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence_to_handle), "::", stringify!(in_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).out) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_fence_to_handle), "::", stringify!(out) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct drm_amdgpu_cs_chunk_data { pub __bindgen_anon_1: drm_amdgpu_cs_chunk_data__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_cs_chunk_data__bindgen_ty_1 { pub ib_data: drm_amdgpu_cs_chunk_ib, pub fence_data: drm_amdgpu_cs_chunk_fence, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_data__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!( "Size of: ", stringify!(drm_amdgpu_cs_chunk_data__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(drm_amdgpu_cs_chunk_data__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ib_data) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_data__bindgen_ty_1), "::", stringify!(ib_data) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fence_data) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_data__bindgen_ty_1), "::", stringify!(fence_data) ) ); } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_data() { assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk_data)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_cs_chunk_data)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_cs_chunk_cp_gfx_shadow { pub shadow_va: __u64, pub csa_va: __u64, pub gds_va: __u64, pub flags: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_cs_chunk_cp_gfx_shadow() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_cs_chunk_cp_gfx_shadow)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(drm_amdgpu_cs_chunk_cp_gfx_shadow) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).shadow_va) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_cp_gfx_shadow), "::", stringify!(shadow_va) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).csa_va) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_cp_gfx_shadow), "::", stringify!(csa_va) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gds_va) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_cp_gfx_shadow), "::", stringify!(gds_va) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_cs_chunk_cp_gfx_shadow), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_query_fw { #[doc = " AMDGPU_INFO_FW_*"] pub fw_type: __u32, #[doc = " Index of the IP if there are more IPs of\n the same type."] pub ip_instance: __u32, #[doc = " Index of the engine. Whether this is used depends\n on the firmware type. (e.g. MEC, SDMA)"] pub index: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_query_fw() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_query_fw)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_query_fw)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_type) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_query_fw), "::", stringify!(fw_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_query_fw), "::", stringify!(ip_instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).index) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_query_fw), "::", stringify!(index) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_query_fw), "::", stringify!(_pad) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct drm_amdgpu_info { pub return_pointer: __u64, pub return_size: __u32, pub query: __u32, pub __bindgen_anon_1: drm_amdgpu_info__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] pub union drm_amdgpu_info__bindgen_ty_1 { pub mode_crtc: drm_amdgpu_info__bindgen_ty_1__bindgen_ty_1, pub query_hw_ip: drm_amdgpu_info__bindgen_ty_1__bindgen_ty_2, pub read_mmr_reg: drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3, pub query_fw: drm_amdgpu_query_fw, pub vbios_info: drm_amdgpu_info__bindgen_ty_1__bindgen_ty_4, pub sensor_info: drm_amdgpu_info__bindgen_ty_1__bindgen_ty_5, pub video_cap: drm_amdgpu_info__bindgen_ty_1__bindgen_ty_6, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info__bindgen_ty_1__bindgen_ty_1 { pub id: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info__bindgen_ty_1__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!( "Size of: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_1), "::", stringify!(id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_1), "::", stringify!(_pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info__bindgen_ty_1__bindgen_ty_2 { #[doc = " AMDGPU_HW_IP_*"] pub type_: __u32, #[doc = " Index of the IP if there are more IPs of the same\n type. Ignored by AMDGPU_INFO_HW_IP_COUNT."] pub ip_instance: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info__bindgen_ty_1__bindgen_ty_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!( "Size of: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_2) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_2), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_instance) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_2), "::", stringify!(ip_instance) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3 { pub dword_offset: __u32, #[doc = " number of registers to read"] pub count: __u32, pub instance: __u32, #[doc = " For future use, no flags defined so far"] pub flags: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!( "Size of: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dword_offset) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3), "::", stringify!(dword_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3), "::", stringify!(count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).instance) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3), "::", stringify!(instance) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_3), "::", stringify!(flags) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info__bindgen_ty_1__bindgen_ty_4 { pub type_: __u32, pub offset: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info__bindgen_ty_1__bindgen_ty_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!( "Size of: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_4) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_4), "::", stringify!(type_) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_4), "::", stringify!(offset) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info__bindgen_ty_1__bindgen_ty_5 { pub type_: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info__bindgen_ty_1__bindgen_ty_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_5) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_5), "::", stringify!(type_) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info__bindgen_ty_1__bindgen_ty_6 { pub type_: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info__bindgen_ty_1__bindgen_ty_6() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_6) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_6) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1__bindgen_ty_6), "::", stringify!(type_) ) ); } #[test] fn bindgen_test_layout_drm_amdgpu_info__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_info__bindgen_ty_1)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_info__bindgen_ty_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode_crtc) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1), "::", stringify!(mode_crtc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).query_hw_ip) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1), "::", stringify!(query_hw_ip) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).read_mmr_reg) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1), "::", stringify!(read_mmr_reg) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).query_fw) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1), "::", stringify!(query_fw) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_info) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1), "::", stringify!(vbios_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sensor_info) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1), "::", stringify!(sensor_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).video_cap) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info__bindgen_ty_1), "::", stringify!(video_cap) ) ); } #[test] fn bindgen_test_layout_drm_amdgpu_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).return_pointer) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info), "::", stringify!(return_pointer) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).return_size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info), "::", stringify!(return_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).query) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info), "::", stringify!(query) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_gds { #[doc = " GDS GFX partition size"] pub gds_gfx_partition_size: __u32, #[doc = " GDS compute partition size"] pub compute_partition_size: __u32, #[doc = " total GDS memory size"] pub gds_total_size: __u32, #[doc = " GWS size per GFX partition"] pub gws_per_gfx_partition: __u32, #[doc = " GSW size per compute partition"] pub gws_per_compute_partition: __u32, #[doc = " OA size per GFX partition"] pub oa_per_gfx_partition: __u32, #[doc = " OA size per compute partition"] pub oa_per_compute_partition: __u32, pub _pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_gds() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_info_gds)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_gds)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gds_gfx_partition_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(gds_gfx_partition_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).compute_partition_size) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(compute_partition_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gds_total_size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(gds_total_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gws_per_gfx_partition) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(gws_per_gfx_partition) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gws_per_compute_partition) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(gws_per_compute_partition) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).oa_per_gfx_partition) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(oa_per_gfx_partition) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).oa_per_compute_partition) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(oa_per_compute_partition) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr)._pad) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gds), "::", stringify!(_pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_vram_gtt { pub vram_size: __u64, pub vram_cpu_accessible_size: __u64, pub gtt_size: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_info_vram_gtt() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_info_vram_gtt)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_vram_gtt)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vram_gtt), "::", stringify!(vram_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_cpu_accessible_size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vram_gtt), "::", stringify!(vram_cpu_accessible_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gtt_size) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vram_gtt), "::", stringify!(gtt_size) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_heap_info { #[doc = " max. physical memory"] pub total_heap_size: __u64, #[doc = " Theoretical max. available memory in the given heap"] pub usable_heap_size: __u64, #[doc = " Number of bytes allocated in the heap. This includes all processes\n and private allocations in the kernel. It changes when new buffers\n are allocated, freed, and moved. It cannot be larger than\n heap_size."] pub heap_usage: __u64, #[doc = " Theoretical possible max. size of buffer which\n could be allocated in the given heap"] pub max_allocation: __u64, } #[test] fn bindgen_test_layout_drm_amdgpu_heap_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_heap_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_heap_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).total_heap_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_heap_info), "::", stringify!(total_heap_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).usable_heap_size) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_heap_info), "::", stringify!(usable_heap_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).heap_usage) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_heap_info), "::", stringify!(heap_usage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_allocation) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_heap_info), "::", stringify!(max_allocation) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_memory_info { pub vram: drm_amdgpu_heap_info, pub cpu_accessible_vram: drm_amdgpu_heap_info, pub gtt: drm_amdgpu_heap_info, } #[test] fn bindgen_test_layout_drm_amdgpu_memory_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 96usize, concat!("Size of: ", stringify!(drm_amdgpu_memory_info)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_memory_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_memory_info), "::", stringify!(vram) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cpu_accessible_vram) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_memory_info), "::", stringify!(cpu_accessible_vram) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gtt) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_memory_info), "::", stringify!(gtt) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_firmware { pub ver: __u32, pub feature: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_firmware() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_info_firmware)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_firmware)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ver) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_firmware), "::", stringify!(ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).feature) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_firmware), "::", stringify!(feature) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_vbios { pub name: [__u8; 64usize], pub vbios_pn: [__u8; 64usize], pub version: __u32, pub pad: __u32, pub vbios_ver_str: [__u8; 32usize], pub date: [__u8; 32usize], } #[test] fn bindgen_test_layout_drm_amdgpu_info_vbios() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 200usize, concat!("Size of: ", stringify!(drm_amdgpu_info_vbios)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_vbios)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vbios), "::", stringify!(name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_pn) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vbios), "::", stringify!(vbios_pn) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vbios), "::", stringify!(version) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vbios), "::", stringify!(pad) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_ver_str) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vbios), "::", stringify!(vbios_ver_str) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).date) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vbios), "::", stringify!(date) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_device { #[doc = " PCI Device ID"] pub device_id: __u32, #[doc = " Internal chip revision: A0, A1, etc.)"] pub chip_rev: __u32, pub external_rev: __u32, #[doc = " Revision id in PCI Config space"] pub pci_rev: __u32, pub family: __u32, pub num_shader_engines: __u32, pub num_shader_arrays_per_engine: __u32, pub gpu_counter_freq: __u32, pub max_engine_clock: __u64, pub max_memory_clock: __u64, pub cu_active_number: __u32, pub cu_ao_mask: __u32, pub cu_bitmap: [[__u32; 4usize]; 4usize], #[doc = " Render backend pipe mask. One render backend is CB+DB."] pub enabled_rb_pipes_mask: __u32, pub num_rb_pipes: __u32, pub num_hw_gfx_contexts: __u32, pub pcie_gen: __u32, pub ids_flags: __u64, #[doc = " Starting virtual address for UMDs."] pub virtual_address_offset: __u64, #[doc = " The maximum virtual address"] pub virtual_address_max: __u64, #[doc = " Required alignment of virtual addresses."] pub virtual_address_alignment: __u32, #[doc = " Page table entry - fragment size"] pub pte_fragment_size: __u32, pub gart_page_size: __u32, #[doc = " constant engine ram size"] pub ce_ram_size: __u32, #[doc = " video memory type info"] pub vram_type: __u32, #[doc = " video memory bit width"] pub vram_bit_width: __u32, pub vce_harvest_config: __u32, pub gc_double_offchip_lds_buf: __u32, pub prim_buf_gpu_addr: __u64, pub pos_buf_gpu_addr: __u64, pub cntl_sb_buf_gpu_addr: __u64, pub param_buf_gpu_addr: __u64, pub prim_buf_size: __u32, pub pos_buf_size: __u32, pub cntl_sb_buf_size: __u32, pub param_buf_size: __u32, pub wave_front_size: __u32, pub num_shader_visible_vgprs: __u32, pub num_cu_per_sh: __u32, pub num_tcc_blocks: __u32, pub gs_vgt_table_depth: __u32, pub gs_prim_buffer_depth: __u32, pub max_gs_waves_per_vgt: __u32, pub pcie_num_lanes: __u32, pub cu_ao_bitmap: [[__u32; 4usize]; 4usize], #[doc = " Starting high virtual address for UMDs."] pub high_va_offset: __u64, #[doc = " The maximum high virtual address"] pub high_va_max: __u64, pub pa_sc_tile_steering_override: __u32, pub tcc_disabled_mask: __u64, pub min_engine_clock: __u64, pub min_memory_clock: __u64, pub tcp_cache_size: __u32, pub num_sqc_per_wgp: __u32, pub sqc_data_cache_size: __u32, pub sqc_inst_cache_size: __u32, pub gl1c_cache_size: __u32, pub gl2c_cache_size: __u32, pub mall_size: __u64, pub enabled_rb_pipes_mask_hi: __u32, pub shadow_size: __u32, pub shadow_alignment: __u32, pub csa_size: __u32, pub csa_alignment: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_device() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 440usize, concat!("Size of: ", stringify!(drm_amdgpu_info_device)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_device)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).device_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(device_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).chip_rev) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(chip_rev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).external_rev) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(external_rev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pci_rev) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(pci_rev) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).family) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(family) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_shader_engines) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_shader_engines) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_shader_arrays_per_engine) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_shader_arrays_per_engine) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpu_counter_freq) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(gpu_counter_freq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_engine_clock) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(max_engine_clock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_memory_clock) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(max_memory_clock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_active_number) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(cu_active_number) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_ao_mask) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(cu_ao_mask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_bitmap) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(cu_bitmap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enabled_rb_pipes_mask) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(enabled_rb_pipes_mask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_rb_pipes) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_rb_pipes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_hw_gfx_contexts) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_hw_gfx_contexts) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_gen) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(pcie_gen) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ids_flags) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(ids_flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).virtual_address_offset) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(virtual_address_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).virtual_address_max) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(virtual_address_max) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).virtual_address_alignment) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(virtual_address_alignment) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pte_fragment_size) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(pte_fragment_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gart_page_size) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(gart_page_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ce_ram_size) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(ce_ram_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_type) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(vram_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_bit_width) as usize - ptr as usize }, 180usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(vram_bit_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vce_harvest_config) as usize - ptr as usize }, 184usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(vce_harvest_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_double_offchip_lds_buf) as usize - ptr as usize }, 188usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(gc_double_offchip_lds_buf) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prim_buf_gpu_addr) as usize - ptr as usize }, 192usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(prim_buf_gpu_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pos_buf_gpu_addr) as usize - ptr as usize }, 200usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(pos_buf_gpu_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cntl_sb_buf_gpu_addr) as usize - ptr as usize }, 208usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(cntl_sb_buf_gpu_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param_buf_gpu_addr) as usize - ptr as usize }, 216usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(param_buf_gpu_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).prim_buf_size) as usize - ptr as usize }, 224usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(prim_buf_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pos_buf_size) as usize - ptr as usize }, 228usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(pos_buf_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cntl_sb_buf_size) as usize - ptr as usize }, 232usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(cntl_sb_buf_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param_buf_size) as usize - ptr as usize }, 236usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(param_buf_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).wave_front_size) as usize - ptr as usize }, 240usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(wave_front_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_shader_visible_vgprs) as usize - ptr as usize }, 244usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_shader_visible_vgprs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_cu_per_sh) as usize - ptr as usize }, 248usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_tcc_blocks) as usize - ptr as usize }, 252usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_tcc_blocks) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gs_vgt_table_depth) as usize - ptr as usize }, 256usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(gs_vgt_table_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gs_prim_buffer_depth) as usize - ptr as usize }, 260usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(gs_prim_buffer_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_gs_waves_per_vgt) as usize - ptr as usize }, 264usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(max_gs_waves_per_vgt) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_num_lanes) as usize - ptr as usize }, 268usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(pcie_num_lanes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_ao_bitmap) as usize - ptr as usize }, 272usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(cu_ao_bitmap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).high_va_offset) as usize - ptr as usize }, 336usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(high_va_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).high_va_max) as usize - ptr as usize }, 344usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(high_va_max) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pa_sc_tile_steering_override) as usize - ptr as usize }, 352usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(pa_sc_tile_steering_override) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tcc_disabled_mask) as usize - ptr as usize }, 360usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(tcc_disabled_mask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_engine_clock) as usize - ptr as usize }, 368usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(min_engine_clock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_memory_clock) as usize - ptr as usize }, 376usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(min_memory_clock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tcp_cache_size) as usize - ptr as usize }, 384usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(tcp_cache_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_sqc_per_wgp) as usize - ptr as usize }, 388usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(num_sqc_per_wgp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sqc_data_cache_size) as usize - ptr as usize }, 392usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(sqc_data_cache_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sqc_inst_cache_size) as usize - ptr as usize }, 396usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(sqc_inst_cache_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gl1c_cache_size) as usize - ptr as usize }, 400usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(gl1c_cache_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gl2c_cache_size) as usize - ptr as usize }, 404usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(gl2c_cache_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mall_size) as usize - ptr as usize }, 408usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(mall_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enabled_rb_pipes_mask_hi) as usize - ptr as usize }, 416usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(enabled_rb_pipes_mask_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).shadow_size) as usize - ptr as usize }, 420usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(shadow_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).shadow_alignment) as usize - ptr as usize }, 424usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(shadow_alignment) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).csa_size) as usize - ptr as usize }, 428usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(csa_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).csa_alignment) as usize - ptr as usize }, 432usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_device), "::", stringify!(csa_alignment) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_hw_ip { #[doc = " Version of h/w IP"] pub hw_ip_version_major: __u32, pub hw_ip_version_minor: __u32, #[doc = " Capabilities"] pub capabilities_flags: __u64, #[doc = " command buffer address start alignment"] pub ib_start_alignment: __u32, #[doc = " command buffer size alignment"] pub ib_size_alignment: __u32, #[doc = " Bitmask of available rings. Bit 0 means ring 0, etc."] pub available_rings: __u32, #[doc = " version info: bits 23:16 major, 15:8 minor, 7:0 revision"] pub ip_discovery_version: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_hw_ip() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(drm_amdgpu_info_hw_ip)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_hw_ip)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_ip_version_major) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_hw_ip), "::", stringify!(hw_ip_version_major) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_ip_version_minor) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_hw_ip), "::", stringify!(hw_ip_version_minor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).capabilities_flags) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_hw_ip), "::", stringify!(capabilities_flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ib_start_alignment) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_hw_ip), "::", stringify!(ib_start_alignment) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ib_size_alignment) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_hw_ip), "::", stringify!(ib_size_alignment) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).available_rings) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_hw_ip), "::", stringify!(available_rings) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ip_discovery_version) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_hw_ip), "::", stringify!(ip_discovery_version) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_num_handles { #[doc = " Max handles as supported by firmware for UVD"] pub uvd_max_handles: __u32, #[doc = " Handles currently in use for UVD"] pub uvd_used_handles: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_num_handles() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(drm_amdgpu_info_num_handles)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_num_handles)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uvd_max_handles) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_num_handles), "::", stringify!(uvd_max_handles) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uvd_used_handles) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_num_handles), "::", stringify!(uvd_used_handles) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_vce_clock_table_entry { #[doc = " System clock"] pub sclk: __u32, #[doc = " Memory clock"] pub mclk: __u32, #[doc = " VCE clock"] pub eclk: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_vce_clock_table_entry() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!( "Size of: ", stringify!(drm_amdgpu_info_vce_clock_table_entry) ) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info_vce_clock_table_entry) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vce_clock_table_entry), "::", stringify!(sclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vce_clock_table_entry), "::", stringify!(mclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).eclk) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vce_clock_table_entry), "::", stringify!(eclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vce_clock_table_entry), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_vce_clock_table { pub entries: [drm_amdgpu_info_vce_clock_table_entry; 6usize], pub num_valid_entries: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_vce_clock_table() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 104usize, concat!("Size of: ", stringify!(drm_amdgpu_info_vce_clock_table)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_vce_clock_table)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).entries) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vce_clock_table), "::", stringify!(entries) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).num_valid_entries) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vce_clock_table), "::", stringify!(num_valid_entries) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_vce_clock_table), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_video_codec_info { pub valid: __u32, pub max_width: __u32, pub max_height: __u32, pub max_pixels_per_frame: __u32, pub max_level: __u32, pub pad: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_video_codec_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(drm_amdgpu_info_video_codec_info)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!( "Alignment of ", stringify!(drm_amdgpu_info_video_codec_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).valid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_video_codec_info), "::", stringify!(valid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_width) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_video_codec_info), "::", stringify!(max_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_height) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_video_codec_info), "::", stringify!(max_height) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_pixels_per_frame) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_video_codec_info), "::", stringify!(max_pixels_per_frame) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_level) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_video_codec_info), "::", stringify!(max_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pad) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_video_codec_info), "::", stringify!(pad) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_video_caps { pub codec_info: [drm_amdgpu_info_video_codec_info; 8usize], } #[test] fn bindgen_test_layout_drm_amdgpu_info_video_caps() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 192usize, concat!("Size of: ", stringify!(drm_amdgpu_info_video_caps)) ); assert_eq!( ::core::mem::align_of::(), 4usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_video_caps)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).codec_info) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_video_caps), "::", stringify!(codec_info) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct drm_amdgpu_info_gpuvm_fault { pub addr: __u64, pub status: __u32, pub vmhub: __u32, } #[test] fn bindgen_test_layout_drm_amdgpu_info_gpuvm_fault() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(drm_amdgpu_info_gpuvm_fault)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(drm_amdgpu_info_gpuvm_fault)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).addr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gpuvm_fault), "::", stringify!(addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).status) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gpuvm_fault), "::", stringify!(status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vmhub) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(drm_amdgpu_info_gpuvm_fault), "::", stringify!(vmhub) ) ); } pub const atom_bios_header_version_def_ATOM_MAJOR_VERSION: atom_bios_header_version_def = 3; pub const atom_bios_header_version_def_ATOM_MINOR_VERSION: atom_bios_header_version_def = 3; pub type atom_bios_header_version_def = ::core::ffi::c_uint; pub const atom_crtc_def_ATOM_CRTC1: atom_crtc_def = 0; pub const atom_crtc_def_ATOM_CRTC2: atom_crtc_def = 1; pub const atom_crtc_def_ATOM_CRTC3: atom_crtc_def = 2; pub const atom_crtc_def_ATOM_CRTC4: atom_crtc_def = 3; pub const atom_crtc_def_ATOM_CRTC5: atom_crtc_def = 4; pub const atom_crtc_def_ATOM_CRTC6: atom_crtc_def = 5; pub const atom_crtc_def_ATOM_CRTC_INVALID: atom_crtc_def = 255; pub type atom_crtc_def = ::core::ffi::c_uint; pub const atom_ppll_def_ATOM_PPLL0: atom_ppll_def = 2; pub const atom_ppll_def_ATOM_GCK_DFS: atom_ppll_def = 8; pub const atom_ppll_def_ATOM_FCH_CLK: atom_ppll_def = 9; pub const atom_ppll_def_ATOM_DP_DTO: atom_ppll_def = 11; pub const atom_ppll_def_ATOM_COMBOPHY_PLL0: atom_ppll_def = 20; pub const atom_ppll_def_ATOM_COMBOPHY_PLL1: atom_ppll_def = 21; pub const atom_ppll_def_ATOM_COMBOPHY_PLL2: atom_ppll_def = 22; pub const atom_ppll_def_ATOM_COMBOPHY_PLL3: atom_ppll_def = 23; pub const atom_ppll_def_ATOM_COMBOPHY_PLL4: atom_ppll_def = 24; pub const atom_ppll_def_ATOM_COMBOPHY_PLL5: atom_ppll_def = 25; pub const atom_ppll_def_ATOM_PPLL_INVALID: atom_ppll_def = 255; pub type atom_ppll_def = ::core::ffi::c_uint; pub const atom_dig_def_ASIC_INT_DIG1_ENCODER_ID: atom_dig_def = 3; pub const atom_dig_def_ASIC_INT_DIG2_ENCODER_ID: atom_dig_def = 9; pub const atom_dig_def_ASIC_INT_DIG3_ENCODER_ID: atom_dig_def = 10; pub const atom_dig_def_ASIC_INT_DIG4_ENCODER_ID: atom_dig_def = 11; pub const atom_dig_def_ASIC_INT_DIG5_ENCODER_ID: atom_dig_def = 12; pub const atom_dig_def_ASIC_INT_DIG6_ENCODER_ID: atom_dig_def = 13; pub const atom_dig_def_ASIC_INT_DIG7_ENCODER_ID: atom_dig_def = 14; pub type atom_dig_def = ::core::ffi::c_uint; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_DP: atom_encode_mode_def = 0; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_DP_SST: atom_encode_mode_def = 0; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_LVDS: atom_encode_mode_def = 1; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_DVI: atom_encode_mode_def = 2; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_HDMI: atom_encode_mode_def = 3; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_DP_AUDIO: atom_encode_mode_def = 5; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_DP_MST: atom_encode_mode_def = 5; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_CRT: atom_encode_mode_def = 15; pub const atom_encode_mode_def_ATOM_ENCODER_MODE_DVO: atom_encode_mode_def = 16; pub type atom_encode_mode_def = ::core::ffi::c_uint; pub const atom_encoder_refclk_src_def_ENCODER_REFCLK_SRC_P1PLL: atom_encoder_refclk_src_def = 0; pub const atom_encoder_refclk_src_def_ENCODER_REFCLK_SRC_P2PLL: atom_encoder_refclk_src_def = 1; pub const atom_encoder_refclk_src_def_ENCODER_REFCLK_SRC_P3PLL: atom_encoder_refclk_src_def = 2; pub const atom_encoder_refclk_src_def_ENCODER_REFCLK_SRC_EXTCLK: atom_encoder_refclk_src_def = 3; pub const atom_encoder_refclk_src_def_ENCODER_REFCLK_SRC_INVALID: atom_encoder_refclk_src_def = 255; pub type atom_encoder_refclk_src_def = ::core::ffi::c_uint; pub const atom_scaler_def_ATOM_SCALER_DISABLE: atom_scaler_def = 0; pub const atom_scaler_def_ATOM_SCALER_CENTER: atom_scaler_def = 1; pub const atom_scaler_def_ATOM_SCALER_EXPANSION: atom_scaler_def = 2; pub type atom_scaler_def = ::core::ffi::c_uint; pub const atom_operation_def_ATOM_DISABLE: atom_operation_def = 0; pub const atom_operation_def_ATOM_ENABLE: atom_operation_def = 1; pub const atom_operation_def_ATOM_INIT: atom_operation_def = 7; pub const atom_operation_def_ATOM_GET_STATUS: atom_operation_def = 8; pub type atom_operation_def = ::core::ffi::c_uint; pub const atom_embedded_display_op_def_ATOM_LCD_BL_OFF: atom_embedded_display_op_def = 2; pub const atom_embedded_display_op_def_ATOM_LCD_BL_OM: atom_embedded_display_op_def = 3; pub const atom_embedded_display_op_def_ATOM_LCD_BL_BRIGHTNESS_CONTROL: atom_embedded_display_op_def = 4; pub const atom_embedded_display_op_def_ATOM_LCD_SELFTEST_START: atom_embedded_display_op_def = 5; pub const atom_embedded_display_op_def_ATOM_LCD_SELFTEST_STOP: atom_embedded_display_op_def = 6; pub type atom_embedded_display_op_def = ::core::ffi::c_uint; pub const atom_spread_spectrum_mode_ATOM_SS_CENTER_OR_DOWN_MODE_MASK: atom_spread_spectrum_mode = 1; pub const atom_spread_spectrum_mode_ATOM_SS_DOWN_SPREAD_MODE: atom_spread_spectrum_mode = 0; pub const atom_spread_spectrum_mode_ATOM_SS_CENTRE_SPREAD_MODE: atom_spread_spectrum_mode = 1; pub const atom_spread_spectrum_mode_ATOM_INT_OR_EXT_SS_MASK: atom_spread_spectrum_mode = 2; pub const atom_spread_spectrum_mode_ATOM_INTERNAL_SS_MASK: atom_spread_spectrum_mode = 0; pub const atom_spread_spectrum_mode_ATOM_EXTERNAL_SS_MASK: atom_spread_spectrum_mode = 2; pub type atom_spread_spectrum_mode = ::core::ffi::c_uint; pub const atom_panel_bit_per_color_PANEL_BPC_UNDEFINE: atom_panel_bit_per_color = 0; pub const atom_panel_bit_per_color_PANEL_6BIT_PER_COLOR: atom_panel_bit_per_color = 1; pub const atom_panel_bit_per_color_PANEL_8BIT_PER_COLOR: atom_panel_bit_per_color = 2; pub const atom_panel_bit_per_color_PANEL_10BIT_PER_COLOR: atom_panel_bit_per_color = 3; pub const atom_panel_bit_per_color_PANEL_12BIT_PER_COLOR: atom_panel_bit_per_color = 4; pub const atom_panel_bit_per_color_PANEL_16BIT_PER_COLOR: atom_panel_bit_per_color = 5; pub type atom_panel_bit_per_color = ::core::ffi::c_uint; pub const atom_voltage_type_VOLTAGE_TYPE_VDDC: atom_voltage_type = 1; pub const atom_voltage_type_VOLTAGE_TYPE_MVDDC: atom_voltage_type = 2; pub const atom_voltage_type_VOLTAGE_TYPE_MVDDQ: atom_voltage_type = 3; pub const atom_voltage_type_VOLTAGE_TYPE_VDDCI: atom_voltage_type = 4; pub const atom_voltage_type_VOLTAGE_TYPE_VDDGFX: atom_voltage_type = 5; pub const atom_voltage_type_VOLTAGE_TYPE_PCC: atom_voltage_type = 6; pub const atom_voltage_type_VOLTAGE_TYPE_MVPP: atom_voltage_type = 7; pub const atom_voltage_type_VOLTAGE_TYPE_LEDDPM: atom_voltage_type = 8; pub const atom_voltage_type_VOLTAGE_TYPE_PCC_MVDD: atom_voltage_type = 9; pub const atom_voltage_type_VOLTAGE_TYPE_PCIE_VDDC: atom_voltage_type = 10; pub const atom_voltage_type_VOLTAGE_TYPE_PCIE_VDDR: atom_voltage_type = 11; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_1: atom_voltage_type = 17; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_2: atom_voltage_type = 18; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_3: atom_voltage_type = 19; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_4: atom_voltage_type = 20; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_5: atom_voltage_type = 21; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_6: atom_voltage_type = 22; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_7: atom_voltage_type = 23; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_8: atom_voltage_type = 24; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_9: atom_voltage_type = 25; pub const atom_voltage_type_VOLTAGE_TYPE_GENERIC_I2C_10: atom_voltage_type = 26; pub type atom_voltage_type = ::core::ffi::c_uint; pub const atom_dgpu_vram_type_ATOM_DGPU_VRAM_TYPE_GDDR5: atom_dgpu_vram_type = 80; pub const atom_dgpu_vram_type_ATOM_DGPU_VRAM_TYPE_HBM2: atom_dgpu_vram_type = 96; pub const atom_dgpu_vram_type_ATOM_DGPU_VRAM_TYPE_HBM2E: atom_dgpu_vram_type = 97; pub const atom_dgpu_vram_type_ATOM_DGPU_VRAM_TYPE_GDDR6: atom_dgpu_vram_type = 112; pub const atom_dgpu_vram_type_ATOM_DGPU_VRAM_TYPE_HBM3: atom_dgpu_vram_type = 128; pub type atom_dgpu_vram_type = ::core::ffi::c_uint; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL0_PREEMPH_LEVEL0: atom_dp_vs_preemph_def = 0; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL1_PREEMPH_LEVEL0: atom_dp_vs_preemph_def = 1; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL2_PREEMPH_LEVEL0: atom_dp_vs_preemph_def = 2; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL3_PREEMPH_LEVEL0: atom_dp_vs_preemph_def = 3; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL0_PREEMPH_LEVEL1: atom_dp_vs_preemph_def = 8; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL1_PREEMPH_LEVEL1: atom_dp_vs_preemph_def = 9; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL2_PREEMPH_LEVEL1: atom_dp_vs_preemph_def = 10; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL0_PREEMPH_LEVEL2: atom_dp_vs_preemph_def = 16; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL1_PREEMPH_LEVEL2: atom_dp_vs_preemph_def = 17; pub const atom_dp_vs_preemph_def_DP_VS_LEVEL0_PREEMPH_LEVEL3: atom_dp_vs_preemph_def = 24; pub type atom_dp_vs_preemph_def = ::core::ffi::c_uint; pub const atombios_image_offset_OFFSET_TO_ATOM_ROM_HEADER_POINTER: atombios_image_offset = 72; pub const atombios_image_offset_OFFSET_TO_ATOM_ROM_IMAGE_SIZE: atombios_image_offset = 2; pub const atombios_image_offset_OFFSET_TO_ATOMBIOS_ASIC_BUS_MEM_TYPE: atombios_image_offset = 148; pub const atombios_image_offset_MAXSIZE_OF_ATOMBIOS_ASIC_BUS_MEM_TYPE: atombios_image_offset = 20; pub const atombios_image_offset_OFFSET_TO_GET_ATOMBIOS_NUMBER_OF_STRINGS: atombios_image_offset = 47; pub const atombios_image_offset_OFFSET_TO_GET_ATOMBIOS_STRING_START: atombios_image_offset = 110; pub const atombios_image_offset_OFFSET_TO_VBIOS_PART_NUMBER: atombios_image_offset = 128; pub const atombios_image_offset_OFFSET_TO_VBIOS_DATE: atombios_image_offset = 80; pub type atombios_image_offset = ::core::ffi::c_uint; #[doc = " Common header for all tables (Data table, Command function).\n Every table pointed in _ATOM_MASTER_DATA_TABLE has this common header.\n And the pointer actually points to this header."] #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_common_table_header { pub structuresize: u16, pub format_revision: u8, pub content_revision: u8, } #[test] fn bindgen_test_layout_atom_common_table_header() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_common_table_header)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_common_table_header)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).structuresize) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_common_table_header), "::", stringify!(structuresize) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).format_revision) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_common_table_header), "::", stringify!(format_revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).content_revision) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_common_table_header), "::", stringify!(content_revision) ) ); } #[doc = " Structure stores the ROM header."] #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_rom_header_v2_2 { pub table_header: atom_common_table_header, pub atom_bios_string: [u8; 4usize], pub bios_segment_address: u16, pub protectedmodeoffset: u16, pub configfilenameoffset: u16, pub crc_block_offset: u16, pub vbios_bootupmessageoffset: u16, pub int10_offset: u16, pub pcibusdevinitcode: u16, pub iobaseaddress: u16, pub subsystem_vendor_id: u16, pub subsystem_id: u16, pub pci_info_offset: u16, pub masterhwfunction_offset: u16, pub masterdatatable_offset: u16, pub reserved: u16, pub pspdirtableoffset: u32, } #[test] fn bindgen_test_layout_atom_rom_header_v2_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(atom_rom_header_v2_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_rom_header_v2_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).atom_bios_string) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(atom_bios_string) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bios_segment_address) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(bios_segment_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).protectedmodeoffset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(protectedmodeoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).configfilenameoffset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(configfilenameoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crc_block_offset) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(crc_block_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_bootupmessageoffset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(vbios_bootupmessageoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).int10_offset) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(int10_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcibusdevinitcode) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(pcibusdevinitcode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).iobaseaddress) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(iobaseaddress) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).subsystem_vendor_id) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(subsystem_vendor_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).subsystem_id) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(subsystem_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pci_info_offset) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(pci_info_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).masterhwfunction_offset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(masterhwfunction_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).masterdatatable_offset) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(masterdatatable_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pspdirtableoffset) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_rom_header_v2_2), "::", stringify!(pspdirtableoffset) ) ); } #[doc = " Structures used in Command.mtb, each function name is not given here since those function could change from time to time\n The real functionality of each function is associated with the parameter structure version when defined\n For all internal cmd function definitions, please reference to atomstruct.h"] #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_master_list_of_command_functions_v2_1 { pub asic_init: u16, pub cmd_function1: u16, pub cmd_function2: u16, pub cmd_function3: u16, pub digxencodercontrol: u16, pub cmd_function5: u16, pub cmd_function6: u16, pub cmd_function7: u16, pub cmd_function8: u16, pub cmd_function9: u16, pub setengineclock: u16, pub setmemoryclock: u16, pub setpixelclock: u16, pub enabledisppowergating: u16, pub cmd_function14: u16, pub cmd_function15: u16, pub cmd_function16: u16, pub cmd_function17: u16, pub cmd_function18: u16, pub cmd_function19: u16, pub cmd_function20: u16, pub cmd_function21: u16, pub cmd_function22: u16, pub cmd_function23: u16, pub cmd_function24: u16, pub cmd_function25: u16, pub cmd_function26: u16, pub cmd_function27: u16, pub cmd_function28: u16, pub cmd_function29: u16, pub cmd_function30: u16, pub cmd_function31: u16, pub cmd_function32: u16, pub cmd_function33: u16, pub blankcrtc: u16, pub enablecrtc: u16, pub cmd_function36: u16, pub cmd_function37: u16, pub cmd_function38: u16, pub cmd_function39: u16, pub cmd_function40: u16, pub getsmuclockinfo: u16, pub selectcrtc_source: u16, pub cmd_function43: u16, pub cmd_function44: u16, pub cmd_function45: u16, pub setdceclock: u16, pub getmemoryclock: u16, pub getengineclock: u16, pub setcrtc_usingdtdtiming: u16, pub externalencodercontrol: u16, pub cmd_function51: u16, pub cmd_function52: u16, pub cmd_function53: u16, pub processi2cchanneltransaction: u16, pub cmd_function55: u16, pub cmd_function56: u16, pub cmd_function57: u16, pub cmd_function58: u16, pub cmd_function59: u16, pub computegpuclockparam: u16, pub cmd_function61: u16, pub cmd_function62: u16, pub dynamicmemorysettings: u16, pub memorytraining: u16, pub cmd_function65: u16, pub cmd_function66: u16, pub setvoltage: u16, pub cmd_function68: u16, pub readefusevalue: u16, pub cmd_function70: u16, pub cmd_function71: u16, pub cmd_function72: u16, pub cmd_function73: u16, pub cmd_function74: u16, pub cmd_function75: u16, pub dig1transmittercontrol: u16, pub cmd_function77: u16, pub processauxchanneltransaction: u16, pub cmd_function79: u16, pub getvoltageinfo: u16, } #[test] fn bindgen_test_layout_atom_master_list_of_command_functions_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 162usize, concat!( "Size of: ", stringify!(atom_master_list_of_command_functions_v2_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_master_list_of_command_functions_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).asic_init) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(asic_init) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function1) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function2) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function3) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digxencodercontrol) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(digxencodercontrol) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function5) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function6) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function6) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function7) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function7) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function8) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function8) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function9) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function9) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).setengineclock) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(setengineclock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).setmemoryclock) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(setmemoryclock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).setpixelclock) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(setpixelclock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enabledisppowergating) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(enabledisppowergating) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function14) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function14) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function15) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function15) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function16) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function16) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function17) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function17) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function18) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function18) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function19) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function19) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function20) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function20) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function21) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function21) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function22) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function22) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function23) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function23) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function24) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function24) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function25) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function25) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function26) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function26) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function27) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function27) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function28) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function28) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function29) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function29) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function30) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function30) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function31) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function31) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function32) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function32) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function33) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function33) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blankcrtc) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(blankcrtc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enablecrtc) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(enablecrtc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function36) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function36) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function37) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function37) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function38) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function38) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function39) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function39) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function40) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function40) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).getsmuclockinfo) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(getsmuclockinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).selectcrtc_source) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(selectcrtc_source) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function43) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function43) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function44) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function44) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function45) as usize - ptr as usize }, 90usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function45) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).setdceclock) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(setdceclock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).getmemoryclock) as usize - ptr as usize }, 94usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(getmemoryclock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).getengineclock) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(getengineclock) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).setcrtc_usingdtdtiming) as usize - ptr as usize }, 98usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(setcrtc_usingdtdtiming) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).externalencodercontrol) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(externalencodercontrol) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function51) as usize - ptr as usize }, 102usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function51) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function52) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function52) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function53) as usize - ptr as usize }, 106usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function53) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).processi2cchanneltransaction) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(processi2cchanneltransaction) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function55) as usize - ptr as usize }, 110usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function55) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function56) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function56) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function57) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function57) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function58) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function58) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function59) as usize - ptr as usize }, 118usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function59) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).computegpuclockparam) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(computegpuclockparam) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function61) as usize - ptr as usize }, 122usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function61) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function62) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function62) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dynamicmemorysettings) as usize - ptr as usize }, 126usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(dynamicmemorysettings) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memorytraining) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(memorytraining) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function65) as usize - ptr as usize }, 130usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function65) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function66) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function66) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).setvoltage) as usize - ptr as usize }, 134usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(setvoltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function68) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function68) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).readefusevalue) as usize - ptr as usize }, 138usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(readefusevalue) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function70) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function70) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function71) as usize - ptr as usize }, 142usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function71) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function72) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function72) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function73) as usize - ptr as usize }, 146usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function73) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function74) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function74) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function75) as usize - ptr as usize }, 150usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function75) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dig1transmittercontrol) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(dig1transmittercontrol) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function77) as usize - ptr as usize }, 154usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function77) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).processauxchanneltransaction) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(processauxchanneltransaction) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_function79) as usize - ptr as usize }, 158usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(cmd_function79) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).getvoltageinfo) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_command_functions_v2_1), "::", stringify!(getvoltageinfo) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_master_command_function_v2_1 { pub table_header: atom_common_table_header, pub listofcmdfunctions: atom_master_list_of_command_functions_v2_1, } #[test] fn bindgen_test_layout_atom_master_command_function_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 166usize, concat!("Size of: ", stringify!(atom_master_command_function_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_master_command_function_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_master_command_function_v2_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).listofcmdfunctions) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_master_command_function_v2_1), "::", stringify!(listofcmdfunctions) ) ); } #[doc = " Structures used in every command function"] #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_function_attribute { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, } #[test] fn bindgen_test_layout_atom_function_attribute() { assert_eq!( ::core::mem::size_of::(), 2usize, concat!("Size of: ", stringify!(atom_function_attribute)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_function_attribute)) ); } impl atom_function_attribute { #[inline] pub fn ws_in_bytes(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 8u8) as u16) } } #[inline] pub fn set_ws_in_bytes(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 8u8, val as u64) } } #[inline] pub fn ps_in_bytes(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 7u8) as u16) } } #[inline] pub fn set_ps_in_bytes(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(8usize, 7u8, val as u64) } } #[inline] pub fn updated_by_util(&self) -> u16 { unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u16) } } #[inline] pub fn set_updated_by_util(&mut self, val: u16) { unsafe { let val: u16 = ::core::mem::transmute(val); self._bitfield_1.set(15usize, 1u8, val as u64) } } #[inline] pub fn new_bitfield_1( ws_in_bytes: u16, ps_in_bytes: u16, updated_by_util: u16, ) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 8u8, { let ws_in_bytes: u16 = unsafe { ::core::mem::transmute(ws_in_bytes) }; ws_in_bytes as u64 }); __bindgen_bitfield_unit.set(8usize, 7u8, { let ps_in_bytes: u16 = unsafe { ::core::mem::transmute(ps_in_bytes) }; ps_in_bytes as u64 }); __bindgen_bitfield_unit.set(15usize, 1u8, { let updated_by_util: u16 = unsafe { ::core::mem::transmute(updated_by_util) }; updated_by_util as u64 }); __bindgen_bitfield_unit } } #[doc = " Common header for all hw functions.\n Every function pointed by _master_list_of_hw_function has this common header.\n And the pointer actually points to this header."] #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_rom_hw_function_header { pub func_header: atom_common_table_header, pub func_attrib: atom_function_attribute, } #[test] fn bindgen_test_layout_atom_rom_hw_function_header() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 6usize, concat!("Size of: ", stringify!(atom_rom_hw_function_header)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_rom_hw_function_header)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).func_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_rom_hw_function_header), "::", stringify!(func_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).func_attrib) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_rom_hw_function_header), "::", stringify!(func_attrib) ) ); } #[doc = " Structures used in data.mtb, each data table name is not given here since those data table could change from time to time\n The real name of each table is given when its data structure version is defined"] #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_master_list_of_data_tables_v2_1 { pub utilitypipeline: u16, pub multimedia_info: u16, pub smc_dpm_info: u16, pub sw_datatable3: u16, pub firmwareinfo: u16, pub sw_datatable5: u16, pub lcd_info: u16, pub sw_datatable7: u16, pub smu_info: u16, pub sw_datatable9: u16, pub sw_datatable10: u16, pub vram_usagebyfirmware: u16, pub gpio_pin_lut: u16, pub sw_datatable13: u16, pub gfx_info: u16, pub powerplayinfo: u16, pub sw_datatable16: u16, pub sw_datatable17: u16, pub sw_datatable18: u16, pub sw_datatable19: u16, pub sw_datatable20: u16, pub sw_datatable21: u16, pub displayobjectinfo: u16, pub indirectioaccess: u16, pub umc_info: u16, pub sw_datatable25: u16, pub sw_datatable26: u16, pub dce_info: u16, pub vram_info: u16, pub sw_datatable29: u16, pub integratedsysteminfo: u16, pub asic_profiling_info: u16, pub voltageobject_info: u16, pub sw_datatable33: u16, pub sw_datatable34: u16, } #[test] fn bindgen_test_layout_atom_master_list_of_data_tables_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 70usize, concat!( "Size of: ", stringify!(atom_master_list_of_data_tables_v2_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_master_list_of_data_tables_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).utilitypipeline) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(utilitypipeline) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).multimedia_info) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(multimedia_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smc_dpm_info) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(smc_dpm_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable3) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmwareinfo) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(firmwareinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable5) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lcd_info) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(lcd_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable7) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable7) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_info) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(smu_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable9) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable9) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable10) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable10) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_usagebyfirmware) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(vram_usagebyfirmware) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_pin_lut) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(gpio_pin_lut) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable13) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable13) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfx_info) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(gfx_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).powerplayinfo) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(powerplayinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable16) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable16) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable17) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable17) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable18) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable18) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable19) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable19) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable20) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable20) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable21) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable21) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).displayobjectinfo) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(displayobjectinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).indirectioaccess) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(indirectioaccess) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_info) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(umc_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable25) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable25) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable26) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable26) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dce_info) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(dce_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_info) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(vram_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable29) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable29) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).integratedsysteminfo) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(integratedsysteminfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).asic_profiling_info) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(asic_profiling_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltageobject_info) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(voltageobject_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable33) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable33) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sw_datatable34) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_master_list_of_data_tables_v2_1), "::", stringify!(sw_datatable34) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_master_data_table_v2_1 { pub table_header: atom_common_table_header, pub listOfdatatables: atom_master_list_of_data_tables_v2_1, } #[test] fn bindgen_test_layout_atom_master_data_table_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 74usize, concat!("Size of: ", stringify!(atom_master_data_table_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_master_data_table_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_master_data_table_v2_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).listOfdatatables) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_master_data_table_v2_1), "::", stringify!(listOfdatatables) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_dtd_format { pub pixclk: u16, pub h_active: u16, pub h_blanking_time: u16, pub v_active: u16, pub v_blanking_time: u16, pub h_sync_offset: u16, pub h_sync_width: u16, pub v_sync_offset: u16, pub v_syncwidth: u16, pub reserved: u16, pub reserved0: u16, pub h_border: u8, pub v_border: u8, pub miscinfo: u16, pub atom_mode_id: u8, pub refreshrate: u8, } #[test] fn bindgen_test_layout_atom_dtd_format() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(atom_dtd_format)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_dtd_format)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(pixclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_active) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(h_active) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_blanking_time) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(h_blanking_time) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_active) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(v_active) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_blanking_time) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(v_blanking_time) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_sync_offset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(h_sync_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_sync_width) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(h_sync_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_sync_offset) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(v_sync_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_syncwidth) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(v_syncwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved0) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(reserved0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_border) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(h_border) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_border) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(v_border) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).miscinfo) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(miscinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).atom_mode_id) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(atom_mode_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).refreshrate) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_dtd_format), "::", stringify!(refreshrate) ) ); } pub const atom_dtd_format_modemiscinfo_ATOM_HSYNC_POLARITY: atom_dtd_format_modemiscinfo = 2; pub const atom_dtd_format_modemiscinfo_ATOM_VSYNC_POLARITY: atom_dtd_format_modemiscinfo = 4; pub const atom_dtd_format_modemiscinfo_ATOM_H_REPLICATIONBY2: atom_dtd_format_modemiscinfo = 16; pub const atom_dtd_format_modemiscinfo_ATOM_V_REPLICATIONBY2: atom_dtd_format_modemiscinfo = 32; pub const atom_dtd_format_modemiscinfo_ATOM_INTERLACE: atom_dtd_format_modemiscinfo = 128; pub const atom_dtd_format_modemiscinfo_ATOM_COMPOSITESYNC: atom_dtd_format_modemiscinfo = 64; pub type atom_dtd_format_modemiscinfo = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_firmware_info_v3_1 { pub table_header: atom_common_table_header, pub firmware_revision: u32, pub bootup_sclk_in10khz: u32, pub bootup_mclk_in10khz: u32, pub firmware_capability: u32, pub main_call_parser_entry: u32, pub bios_scratch_reg_startaddr: u32, pub bootup_vddc_mv: u16, pub bootup_vddci_mv: u16, pub bootup_mvddc_mv: u16, pub bootup_vddgfx_mv: u16, pub mem_module_id: u8, pub coolingsolution_id: u8, pub reserved1: [u8; 2usize], pub mc_baseaddr_high: u32, pub mc_baseaddr_low: u32, pub reserved2: [u32; 6usize], } #[test] fn bindgen_test_layout_atom_firmware_info_v3_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 72usize, concat!("Size of: ", stringify!(atom_firmware_info_v3_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_firmware_info_v3_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_revision) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(firmware_revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_sclk_in10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(bootup_sclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mclk_in10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(bootup_mclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_capability) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(firmware_capability) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).main_call_parser_entry) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(main_call_parser_entry) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bios_scratch_reg_startaddr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(bios_scratch_reg_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddc_mv) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(bootup_vddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddci_mv) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(bootup_vddci_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvddc_mv) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(bootup_mvddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddgfx_mv) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(bootup_vddgfx_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_module_id) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(mem_module_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).coolingsolution_id) as usize - ptr as usize }, 37usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(coolingsolution_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_high) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(mc_baseaddr_high) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_low) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(mc_baseaddr_low) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_1), "::", stringify!(reserved2) ) ); } pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_FIRMWARE_POSTED: atombios_firmware_capability = 1; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_GPU_VIRTUALIZATION: atombios_firmware_capability = 2; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_WMI_SUPPORT: atombios_firmware_capability = 64; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_HWEMU_ENABLE: atombios_firmware_capability = 128; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_HWEMU_UMC_CFG: atombios_firmware_capability = 256; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_SRAM_ECC: atombios_firmware_capability = 512; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_ENABLE_2STAGE_BIST_TRAINING: atombios_firmware_capability = 1024; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_ENABLE_2ND_USB20PORT: atombios_firmware_capability = 32768; pub const atombios_firmware_capability_ATOM_FIRMWARE_CAP_DYNAMIC_BOOT_CFG_ENABLE: atombios_firmware_capability = 131072; pub type atombios_firmware_capability = ::core::ffi::c_uint; pub const atom_cooling_solution_id_AIR_COOLING: atom_cooling_solution_id = 0; pub const atom_cooling_solution_id_LIQUID_COOLING: atom_cooling_solution_id = 1; pub type atom_cooling_solution_id = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_firmware_info_v3_2 { pub table_header: atom_common_table_header, pub firmware_revision: u32, pub bootup_sclk_in10khz: u32, pub bootup_mclk_in10khz: u32, pub firmware_capability: u32, pub main_call_parser_entry: u32, pub bios_scratch_reg_startaddr: u32, pub bootup_vddc_mv: u16, pub bootup_vddci_mv: u16, pub bootup_mvddc_mv: u16, pub bootup_vddgfx_mv: u16, pub mem_module_id: u8, pub coolingsolution_id: u8, pub reserved1: [u8; 2usize], pub mc_baseaddr_high: u32, pub mc_baseaddr_low: u32, pub board_i2c_feature_id: u8, pub board_i2c_feature_gpio_id: u8, pub board_i2c_feature_slave_addr: u8, pub reserved3: u8, pub bootup_mvddq_mv: u16, pub bootup_mvpp_mv: u16, pub zfbstartaddrin16mb: u32, pub reserved2: [u32; 3usize], } #[test] fn bindgen_test_layout_atom_firmware_info_v3_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 72usize, concat!("Size of: ", stringify!(atom_firmware_info_v3_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_firmware_info_v3_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_revision) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(firmware_revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_sclk_in10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_sclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mclk_in10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_mclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_capability) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(firmware_capability) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).main_call_parser_entry) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(main_call_parser_entry) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bios_scratch_reg_startaddr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bios_scratch_reg_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddc_mv) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_vddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddci_mv) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_vddci_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvddc_mv) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_mvddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddgfx_mv) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_vddgfx_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_module_id) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(mem_module_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).coolingsolution_id) as usize - ptr as usize }, 37usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(coolingsolution_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_high) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(mc_baseaddr_high) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_low) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(mc_baseaddr_low) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_id) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(board_i2c_feature_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_gpio_id) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(board_i2c_feature_gpio_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_slave_addr) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(board_i2c_feature_slave_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvddq_mv) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_mvddq_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvpp_mv) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(bootup_mvpp_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).zfbstartaddrin16mb) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(zfbstartaddrin16mb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_2), "::", stringify!(reserved2) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_firmware_info_v3_3 { pub table_header: atom_common_table_header, pub firmware_revision: u32, pub bootup_sclk_in10khz: u32, pub bootup_mclk_in10khz: u32, pub firmware_capability: u32, pub main_call_parser_entry: u32, pub bios_scratch_reg_startaddr: u32, pub bootup_vddc_mv: u16, pub bootup_vddci_mv: u16, pub bootup_mvddc_mv: u16, pub bootup_vddgfx_mv: u16, pub mem_module_id: u8, pub coolingsolution_id: u8, pub reserved1: [u8; 2usize], pub mc_baseaddr_high: u32, pub mc_baseaddr_low: u32, pub board_i2c_feature_id: u8, pub board_i2c_feature_gpio_id: u8, pub board_i2c_feature_slave_addr: u8, pub reserved3: u8, pub bootup_mvddq_mv: u16, pub bootup_mvpp_mv: u16, pub zfbstartaddrin16mb: u32, pub pplib_pptable_id: u32, pub reserved2: [u32; 2usize], } #[test] fn bindgen_test_layout_atom_firmware_info_v3_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 72usize, concat!("Size of: ", stringify!(atom_firmware_info_v3_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_firmware_info_v3_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_revision) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(firmware_revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_sclk_in10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_sclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mclk_in10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_mclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_capability) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(firmware_capability) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).main_call_parser_entry) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(main_call_parser_entry) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bios_scratch_reg_startaddr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bios_scratch_reg_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddc_mv) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_vddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddci_mv) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_vddci_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvddc_mv) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_mvddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddgfx_mv) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_vddgfx_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_module_id) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(mem_module_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).coolingsolution_id) as usize - ptr as usize }, 37usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(coolingsolution_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_high) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(mc_baseaddr_high) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_low) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(mc_baseaddr_low) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_id) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(board_i2c_feature_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_gpio_id) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(board_i2c_feature_gpio_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_slave_addr) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(board_i2c_feature_slave_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvddq_mv) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_mvddq_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvpp_mv) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(bootup_mvpp_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).zfbstartaddrin16mb) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(zfbstartaddrin16mb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pplib_pptable_id) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(pplib_pptable_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_3), "::", stringify!(reserved2) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_firmware_info_v3_4 { pub table_header: atom_common_table_header, pub firmware_revision: u32, pub bootup_sclk_in10khz: u32, pub bootup_mclk_in10khz: u32, pub firmware_capability: u32, pub main_call_parser_entry: u32, pub bios_scratch_reg_startaddr: u32, pub bootup_vddc_mv: u16, pub bootup_vddci_mv: u16, pub bootup_mvddc_mv: u16, pub bootup_vddgfx_mv: u16, pub mem_module_id: u8, pub coolingsolution_id: u8, pub reserved1: [u8; 2usize], pub mc_baseaddr_high: u32, pub mc_baseaddr_low: u32, pub board_i2c_feature_id: u8, pub board_i2c_feature_gpio_id: u8, pub board_i2c_feature_slave_addr: u8, pub ras_rom_i2c_slave_addr: u8, pub bootup_mvddq_mv: u16, pub bootup_mvpp_mv: u16, pub zfbstartaddrin16mb: u32, pub pplib_pptable_id: u32, pub mvdd_ratio: u32, pub hw_bootup_vddgfx_mv: u16, pub hw_bootup_vddc_mv: u16, pub hw_bootup_mvddc_mv: u16, pub hw_bootup_vddci_mv: u16, pub maco_pwrlimit_mw: u32, pub usb_pwrlimit_mw: u32, pub fw_reserved_size_in_kb: u32, pub pspbl_init_done_reg_addr: u32, pub pspbl_init_done_value: u32, pub pspbl_init_done_check_timeout: u32, pub reserved: [u32; 2usize], } #[test] fn bindgen_test_layout_atom_firmware_info_v3_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 108usize, concat!("Size of: ", stringify!(atom_firmware_info_v3_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_firmware_info_v3_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_revision) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(firmware_revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_sclk_in10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_sclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mclk_in10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_mclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_capability) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(firmware_capability) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).main_call_parser_entry) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(main_call_parser_entry) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bios_scratch_reg_startaddr) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bios_scratch_reg_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddc_mv) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_vddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddci_mv) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_vddci_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvddc_mv) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_mvddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddgfx_mv) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_vddgfx_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_module_id) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(mem_module_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).coolingsolution_id) as usize - ptr as usize }, 37usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(coolingsolution_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_high) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(mc_baseaddr_high) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_baseaddr_low) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(mc_baseaddr_low) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_id) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(board_i2c_feature_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_gpio_id) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(board_i2c_feature_gpio_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).board_i2c_feature_slave_addr) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(board_i2c_feature_slave_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ras_rom_i2c_slave_addr) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(ras_rom_i2c_slave_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvddq_mv) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_mvddq_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mvpp_mv) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(bootup_mvpp_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).zfbstartaddrin16mb) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(zfbstartaddrin16mb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pplib_pptable_id) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(pplib_pptable_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mvdd_ratio) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(mvdd_ratio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_bootup_vddgfx_mv) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(hw_bootup_vddgfx_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_bootup_vddc_mv) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(hw_bootup_vddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_bootup_mvddc_mv) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(hw_bootup_mvddc_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_bootup_vddci_mv) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(hw_bootup_vddci_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maco_pwrlimit_mw) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(maco_pwrlimit_mw) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).usb_pwrlimit_mw) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(usb_pwrlimit_mw) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_reserved_size_in_kb) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(fw_reserved_size_in_kb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pspbl_init_done_reg_addr) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(pspbl_init_done_reg_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pspbl_init_done_value) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(pspbl_init_done_value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pspbl_init_done_check_timeout) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(pspbl_init_done_check_timeout) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_firmware_info_v3_4), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct lcd_info_v2_1 { pub table_header: atom_common_table_header, pub lcd_timing: atom_dtd_format, pub backlight_pwm: u16, pub special_handle_cap: u16, pub panel_misc: u16, pub lvds_max_slink_pclk: u16, pub lvds_ss_percentage: u16, pub lvds_ss_rate_10hz: u16, pub pwr_on_digon_to_de: u8, pub pwr_on_de_to_vary_bl: u8, pub pwr_down_vary_bloff_to_de: u8, pub pwr_down_de_to_digoff: u8, pub pwr_off_delay: u8, pub pwr_on_vary_bl_to_blon: u8, pub pwr_down_bloff_to_vary_bloff: u8, pub panel_bpc: u8, pub dpcd_edp_config_cap: u8, pub dpcd_max_link_rate: u8, pub dpcd_max_lane_count: u8, pub dpcd_max_downspread: u8, pub min_allowed_bl_level: u8, pub max_allowed_bl_level: u8, pub bootup_bl_level: u8, pub dplvdsrxid: u8, pub reserved1: [u32; 8usize], } #[test] fn bindgen_test_layout_lcd_info_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 92usize, concat!("Size of: ", stringify!(lcd_info_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(lcd_info_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lcd_timing) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(lcd_timing) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).backlight_pwm) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(backlight_pwm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).special_handle_cap) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(special_handle_cap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).panel_misc) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(panel_misc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_max_slink_pclk) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(lvds_max_slink_pclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_ss_percentage) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(lvds_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_ss_rate_10hz) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(lvds_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_digon_to_de) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(pwr_on_digon_to_de) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_de_to_vary_bl) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(pwr_on_de_to_vary_bl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_vary_bloff_to_de) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(pwr_down_vary_bloff_to_de) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_de_to_digoff) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(pwr_down_de_to_digoff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_off_delay) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(pwr_off_delay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_vary_bl_to_blon) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(pwr_on_vary_bl_to_blon) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_bloff_to_vary_bloff) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(pwr_down_bloff_to_vary_bloff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).panel_bpc) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(panel_bpc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpcd_edp_config_cap) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(dpcd_edp_config_cap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpcd_max_link_rate) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(dpcd_max_link_rate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpcd_max_lane_count) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(dpcd_max_lane_count) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpcd_max_downspread) as usize - ptr as usize }, 55usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(dpcd_max_downspread) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_allowed_bl_level) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(min_allowed_bl_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_allowed_bl_level) as usize - ptr as usize }, 57usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(max_allowed_bl_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_bl_level) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(bootup_bl_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dplvdsrxid) as usize - ptr as usize }, 59usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(dplvdsrxid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(lcd_info_v2_1), "::", stringify!(reserved1) ) ); } pub const atom_lcd_info_panel_misc_ATOM_PANEL_MISC_FPDI: atom_lcd_info_panel_misc = 2; pub type atom_lcd_info_panel_misc = ::core::ffi::c_uint; pub const atom_lcd_info_dptolvds_rx_id_eDP_TO_LVDS_RX_DISABLE: atom_lcd_info_dptolvds_rx_id = 0; pub const atom_lcd_info_dptolvds_rx_id_eDP_TO_LVDS_COMMON_ID: atom_lcd_info_dptolvds_rx_id = 1; pub const atom_lcd_info_dptolvds_rx_id_eDP_TO_LVDS_REALTEK_ID: atom_lcd_info_dptolvds_rx_id = 2; pub type atom_lcd_info_dptolvds_rx_id = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gpio_pin_assignment { pub data_a_reg_index: u32, pub gpio_bitshift: u8, pub gpio_mask_bitshift: u8, pub gpio_id: u8, pub reserved: u8, } #[test] fn bindgen_test_layout_atom_gpio_pin_assignment() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(atom_gpio_pin_assignment)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gpio_pin_assignment)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).data_a_reg_index) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_assignment), "::", stringify!(data_a_reg_index) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_bitshift) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_assignment), "::", stringify!(gpio_bitshift) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_mask_bitshift) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_assignment), "::", stringify!(gpio_mask_bitshift) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_id) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_assignment), "::", stringify!(gpio_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_assignment), "::", stringify!(reserved) ) ); } pub const atom_gpio_pin_assignment_gpio_id_I2C_HW_LANE_MUX: atom_gpio_pin_assignment_gpio_id = 15; pub const atom_gpio_pin_assignment_gpio_id_I2C_HW_ENGINE_ID_MASK: atom_gpio_pin_assignment_gpio_id = 112; pub const atom_gpio_pin_assignment_gpio_id_I2C_HW_CAP: atom_gpio_pin_assignment_gpio_id = 128; pub const atom_gpio_pin_assignment_gpio_id_PCIE_VDDC_CONTROL_GPIO_PINID: atom_gpio_pin_assignment_gpio_id = 56; pub const atom_gpio_pin_assignment_gpio_id_PP_AC_DC_SWITCH_GPIO_PINID: atom_gpio_pin_assignment_gpio_id = 60; pub const atom_gpio_pin_assignment_gpio_id_VDDC_VRHOT_GPIO_PINID: atom_gpio_pin_assignment_gpio_id = 61; pub const atom_gpio_pin_assignment_gpio_id_VDDC_PCC_GPIO_PINID: atom_gpio_pin_assignment_gpio_id = 62; pub const atom_gpio_pin_assignment_gpio_id_EFUSE_CUT_ENABLE_GPIO_PINID: atom_gpio_pin_assignment_gpio_id = 63; pub const atom_gpio_pin_assignment_gpio_id_DRAM_SELF_REFRESH_GPIO_PINID: atom_gpio_pin_assignment_gpio_id = 64; pub const atom_gpio_pin_assignment_gpio_id_THERMAL_INT_OUTPUT_GPIO_PINID: atom_gpio_pin_assignment_gpio_id = 65; pub type atom_gpio_pin_assignment_gpio_id = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_gpio_pin_lut_v2_1 { pub table_header: atom_common_table_header, pub gpio_pin: [atom_gpio_pin_assignment; 8usize], } #[test] fn bindgen_test_layout_atom_gpio_pin_lut_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 68usize, concat!("Size of: ", stringify!(atom_gpio_pin_lut_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gpio_pin_lut_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_lut_v2_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_pin) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_lut_v2_1), "::", stringify!(gpio_pin) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct vram_usagebyfirmware_v2_1 { pub table_header: atom_common_table_header, pub start_address_in_kb: u32, pub used_by_firmware_in_kb: u16, pub used_by_driver_in_kb: u16, } #[test] fn bindgen_test_layout_vram_usagebyfirmware_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(vram_usagebyfirmware_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(vram_usagebyfirmware_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).start_address_in_kb) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_1), "::", stringify!(start_address_in_kb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).used_by_firmware_in_kb) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_1), "::", stringify!(used_by_firmware_in_kb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).used_by_driver_in_kb) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_1), "::", stringify!(used_by_driver_in_kb) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct vram_usagebyfirmware_v2_2 { pub table_header: atom_common_table_header, pub fw_region_start_address_in_kb: u32, pub used_by_firmware_in_kb: u16, pub reserved: u16, pub driver_region0_start_address_in_kb: u32, pub used_by_driver_region0_in_kb: u32, pub reserved32: [u32; 7usize], } #[test] fn bindgen_test_layout_vram_usagebyfirmware_v2_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 48usize, concat!("Size of: ", stringify!(vram_usagebyfirmware_v2_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(vram_usagebyfirmware_v2_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_region_start_address_in_kb) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_2), "::", stringify!(fw_region_start_address_in_kb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).used_by_firmware_in_kb) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_2), "::", stringify!(used_by_firmware_in_kb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_2), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).driver_region0_start_address_in_kb) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_2), "::", stringify!(driver_region0_start_address_in_kb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).used_by_driver_region0_in_kb) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_2), "::", stringify!(used_by_driver_region0_in_kb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved32) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(vram_usagebyfirmware_v2_2), "::", stringify!(reserved32) ) ); } pub const atom_object_record_type_id_ATOM_I2C_RECORD_TYPE: atom_object_record_type_id = 1; pub const atom_object_record_type_id_ATOM_HPD_INT_RECORD_TYPE: atom_object_record_type_id = 2; pub const atom_object_record_type_id_ATOM_CONNECTOR_CAP_RECORD_TYPE: atom_object_record_type_id = 3; pub const atom_object_record_type_id_ATOM_CONNECTOR_SPEED_UPTO: atom_object_record_type_id = 4; pub const atom_object_record_type_id_ATOM_OBJECT_GPIO_CNTL_RECORD_TYPE: atom_object_record_type_id = 9; pub const atom_object_record_type_id_ATOM_CONNECTOR_HPDPIN_LUT_RECORD_TYPE: atom_object_record_type_id = 16; pub const atom_object_record_type_id_ATOM_CONNECTOR_AUXDDC_LUT_RECORD_TYPE: atom_object_record_type_id = 17; pub const atom_object_record_type_id_ATOM_ENCODER_CAP_RECORD_TYPE: atom_object_record_type_id = 20; pub const atom_object_record_type_id_ATOM_BRACKET_LAYOUT_RECORD_TYPE: atom_object_record_type_id = 21; pub const atom_object_record_type_id_ATOM_CONNECTOR_FORCED_TMDS_CAP_RECORD_TYPE: atom_object_record_type_id = 22; pub const atom_object_record_type_id_ATOM_DISP_CONNECTOR_CAPS_RECORD_TYPE: atom_object_record_type_id = 23; pub const atom_object_record_type_id_ATOM_BRACKET_LAYOUT_V2_RECORD_TYPE: atom_object_record_type_id = 25; pub const atom_object_record_type_id_ATOM_RECORD_END_TYPE: atom_object_record_type_id = 255; pub type atom_object_record_type_id = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_common_record_header { pub record_type: u8, pub record_size: u8, } #[test] fn bindgen_test_layout_atom_common_record_header() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 2usize, concat!("Size of: ", stringify!(atom_common_record_header)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_common_record_header)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_type) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_common_record_header), "::", stringify!(record_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_size) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_common_record_header), "::", stringify!(record_size) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_i2c_record { pub record_header: atom_common_record_header, pub i2c_id: u8, pub i2c_slave_addr: u8, } #[test] fn bindgen_test_layout_atom_i2c_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_i2c_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_i2c_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_i2c_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_id) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_i2c_record), "::", stringify!(i2c_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_slave_addr) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_i2c_record), "::", stringify!(i2c_slave_addr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_hpd_int_record { pub record_header: atom_common_record_header, pub pin_id: u8, pub plugin_pin_state: u8, } #[test] fn bindgen_test_layout_atom_hpd_int_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_hpd_int_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_hpd_int_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_hpd_int_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pin_id) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_hpd_int_record), "::", stringify!(pin_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plugin_pin_state) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_hpd_int_record), "::", stringify!(plugin_pin_state) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_connector_caps_record { pub record_header: atom_common_record_header, pub connector_caps: u16, } #[test] fn bindgen_test_layout_atom_connector_caps_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_connector_caps_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_connector_caps_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_connector_caps_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_caps) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_connector_caps_record), "::", stringify!(connector_caps) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_connector_speed_record { pub record_header: atom_common_record_header, pub connector_max_speed: u32, pub reserved: u16, } #[test] fn bindgen_test_layout_atom_connector_speed_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(atom_connector_speed_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_connector_speed_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_connector_speed_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_max_speed) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_connector_speed_record), "::", stringify!(connector_max_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_connector_speed_record), "::", stringify!(reserved) ) ); } pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_HBR2: atom_encoder_caps_def = 1; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_MST_EN: atom_encoder_caps_def = 1; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_HBR2_EN: atom_encoder_caps_def = 2; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_HDMI6Gbps_EN: atom_encoder_caps_def = 4; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_HBR3_EN: atom_encoder_caps_def = 8; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_DP2: atom_encoder_caps_def = 16; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_UHBR10_EN: atom_encoder_caps_def = 32; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_UHBR13_5_EN: atom_encoder_caps_def = 64; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_UHBR20_EN: atom_encoder_caps_def = 128; pub const atom_encoder_caps_def_ATOM_ENCODER_CAP_RECORD_USB_C_TYPE: atom_encoder_caps_def = 256; pub type atom_encoder_caps_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_encoder_caps_record { pub record_header: atom_common_record_header, pub encodercaps: u32, } #[test] fn bindgen_test_layout_atom_encoder_caps_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 6usize, concat!("Size of: ", stringify!(atom_encoder_caps_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_encoder_caps_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_encoder_caps_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encodercaps) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_encoder_caps_record), "::", stringify!(encodercaps) ) ); } pub const atom_connector_caps_def_ATOM_CONNECTOR_CAP_INTERNAL_DISPLAY: atom_connector_caps_def = 1; pub const atom_connector_caps_def_ATOM_CONNECTOR_CAP_INTERNAL_DISPLAY_BL: atom_connector_caps_def = 2; pub type atom_connector_caps_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_disp_connector_caps_record { pub record_header: atom_common_record_header, pub connectcaps: u32, } #[test] fn bindgen_test_layout_atom_disp_connector_caps_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 6usize, concat!("Size of: ", stringify!(atom_disp_connector_caps_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_disp_connector_caps_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_disp_connector_caps_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connectcaps) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_disp_connector_caps_record), "::", stringify!(connectcaps) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_gpio_pin_control_pair { pub gpio_id: u8, pub gpio_pinstate: u8, } #[test] fn bindgen_test_layout_atom_gpio_pin_control_pair() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 2usize, concat!("Size of: ", stringify!(atom_gpio_pin_control_pair)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gpio_pin_control_pair)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_control_pair), "::", stringify!(gpio_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_pinstate) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_gpio_pin_control_pair), "::", stringify!(gpio_pinstate) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_object_gpio_cntl_record { pub record_header: atom_common_record_header, pub flag: u8, pub number_of_pins: u8, pub gpio: [atom_gpio_pin_control_pair; 1usize], } #[test] fn bindgen_test_layout_atom_object_gpio_cntl_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 6usize, concat!("Size of: ", stringify!(atom_object_gpio_cntl_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_object_gpio_cntl_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_object_gpio_cntl_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flag) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_object_gpio_cntl_record), "::", stringify!(flag) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).number_of_pins) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_object_gpio_cntl_record), "::", stringify!(number_of_pins) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_object_gpio_cntl_record), "::", stringify!(gpio) ) ); } pub const atom_gpio_pin_control_pinstate_def_GPIO_PIN_TYPE_INPUT: atom_gpio_pin_control_pinstate_def = 0; pub const atom_gpio_pin_control_pinstate_def_GPIO_PIN_TYPE_OUTPUT: atom_gpio_pin_control_pinstate_def = 16; pub const atom_gpio_pin_control_pinstate_def_GPIO_PIN_TYPE_HW_CONTROL: atom_gpio_pin_control_pinstate_def = 32; pub const atom_gpio_pin_control_pinstate_def_GPIO_PIN_OUTPUT_STATE_MASK: atom_gpio_pin_control_pinstate_def = 1; pub const atom_gpio_pin_control_pinstate_def_GPIO_PIN_OUTPUT_STATE_SHIFT: atom_gpio_pin_control_pinstate_def = 0; pub const atom_gpio_pin_control_pinstate_def_GPIO_PIN_STATE_ACTIVE_LOW: atom_gpio_pin_control_pinstate_def = 0; pub const atom_gpio_pin_control_pinstate_def_GPIO_PIN_STATE_ACTIVE_HIGH: atom_gpio_pin_control_pinstate_def = 1; pub type atom_gpio_pin_control_pinstate_def = ::core::ffi::c_uint; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_REFCLK: atom_glsync_record_gpio_index_def = 0; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_HSYNC: atom_glsync_record_gpio_index_def = 1; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_VSYNC: atom_glsync_record_gpio_index_def = 2; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_SWAP_REQ: atom_glsync_record_gpio_index_def = 3; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_SWAP_GNT: atom_glsync_record_gpio_index_def = 4; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_INTERRUPT: atom_glsync_record_gpio_index_def = 5; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_V_RESET: atom_glsync_record_gpio_index_def = 6; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_SWAP_CNTL: atom_glsync_record_gpio_index_def = 7; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_SWAP_SEL: atom_glsync_record_gpio_index_def = 8; pub const atom_glsync_record_gpio_index_def_ATOM_GPIO_INDEX_GLSYNC_MAX: atom_glsync_record_gpio_index_def = 9; pub type atom_glsync_record_gpio_index_def = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_connector_hpdpin_lut_record { pub record_header: atom_common_record_header, pub hpd_pin_map: [u8; 8usize], } #[test] fn bindgen_test_layout_atom_connector_hpdpin_lut_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 10usize, concat!("Size of: ", stringify!(atom_connector_hpdpin_lut_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_connector_hpdpin_lut_record) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_connector_hpdpin_lut_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hpd_pin_map) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_connector_hpdpin_lut_record), "::", stringify!(hpd_pin_map) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_connector_auxddc_lut_record { pub record_header: atom_common_record_header, pub aux_ddc_map: [u8; 8usize], } #[test] fn bindgen_test_layout_atom_connector_auxddc_lut_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 10usize, concat!("Size of: ", stringify!(atom_connector_auxddc_lut_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_connector_auxddc_lut_record) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_connector_auxddc_lut_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_ddc_map) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_connector_auxddc_lut_record), "::", stringify!(aux_ddc_map) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_connector_forced_tmds_cap_record { pub record_header: atom_common_record_header, pub maxtmdsclkrate_in2_5mhz: u8, pub reserved: u8, } #[test] fn bindgen_test_layout_atom_connector_forced_tmds_cap_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(atom_connector_forced_tmds_cap_record) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_connector_forced_tmds_cap_record) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_connector_forced_tmds_cap_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxtmdsclkrate_in2_5mhz) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_connector_forced_tmds_cap_record), "::", stringify!(maxtmdsclkrate_in2_5mhz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_connector_forced_tmds_cap_record), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_connector_layout_info { pub connectorobjid: u16, pub connector_type: u8, pub position: u8, } #[test] fn bindgen_test_layout_atom_connector_layout_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_connector_layout_info)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_connector_layout_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connectorobjid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_connector_layout_info), "::", stringify!(connectorobjid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connector_type) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_connector_layout_info), "::", stringify!(connector_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).position) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_connector_layout_info), "::", stringify!(position) ) ); } pub const atom_connector_layout_info_connector_type_def_CONNECTOR_TYPE_DVI_D: atom_connector_layout_info_connector_type_def = 1; pub const atom_connector_layout_info_connector_type_def_CONNECTOR_TYPE_HDMI: atom_connector_layout_info_connector_type_def = 4; pub const atom_connector_layout_info_connector_type_def_CONNECTOR_TYPE_DISPLAY_PORT: atom_connector_layout_info_connector_type_def = 5; pub const atom_connector_layout_info_connector_type_def_CONNECTOR_TYPE_MINI_DISPLAY_PORT: atom_connector_layout_info_connector_type_def = 6; pub type atom_connector_layout_info_connector_type_def = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_bracket_layout_record { pub record_header: atom_common_record_header, pub bracketlen: u8, pub bracketwidth: u8, pub conn_num: u8, pub reserved: u8, pub conn_info: [atom_connector_layout_info; 1usize], } #[test] fn bindgen_test_layout_atom_bracket_layout_record() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 10usize, concat!("Size of: ", stringify!(atom_bracket_layout_record)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_bracket_layout_record)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bracketlen) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record), "::", stringify!(bracketlen) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bracketwidth) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record), "::", stringify!(bracketwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).conn_num) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record), "::", stringify!(conn_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).conn_info) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record), "::", stringify!(conn_info) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_bracket_layout_record_v2 { pub record_header: atom_common_record_header, pub bracketlen: u8, pub bracketwidth: u8, pub conn_num: u8, pub mini_type: u8, pub reserved1: u8, pub reserved2: u8, } #[test] fn bindgen_test_layout_atom_bracket_layout_record_v2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(atom_bracket_layout_record_v2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_bracket_layout_record_v2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).record_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record_v2), "::", stringify!(record_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bracketlen) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record_v2), "::", stringify!(bracketlen) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bracketwidth) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record_v2), "::", stringify!(bracketwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).conn_num) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record_v2), "::", stringify!(conn_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mini_type) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record_v2), "::", stringify!(mini_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record_v2), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_bracket_layout_record_v2), "::", stringify!(reserved2) ) ); } pub const atom_connector_layout_info_mini_type_def_MINI_TYPE_NORMAL: atom_connector_layout_info_mini_type_def = 0; pub const atom_connector_layout_info_mini_type_def_MINI_TYPE_MINI: atom_connector_layout_info_mini_type_def = 1; pub type atom_connector_layout_info_mini_type_def = ::core::ffi::c_uint; pub const atom_display_device_tag_def_ATOM_DISPLAY_LCD1_SUPPORT: atom_display_device_tag_def = 2; pub const atom_display_device_tag_def_ATOM_DISPLAY_LCD2_SUPPORT: atom_display_device_tag_def = 32; pub const atom_display_device_tag_def_ATOM_DISPLAY_DFP1_SUPPORT: atom_display_device_tag_def = 8; pub const atom_display_device_tag_def_ATOM_DISPLAY_DFP2_SUPPORT: atom_display_device_tag_def = 128; pub const atom_display_device_tag_def_ATOM_DISPLAY_DFP3_SUPPORT: atom_display_device_tag_def = 512; pub const atom_display_device_tag_def_ATOM_DISPLAY_DFP4_SUPPORT: atom_display_device_tag_def = 1024; pub const atom_display_device_tag_def_ATOM_DISPLAY_DFP5_SUPPORT: atom_display_device_tag_def = 2048; pub const atom_display_device_tag_def_ATOM_DISPLAY_DFP6_SUPPORT: atom_display_device_tag_def = 64; pub const atom_display_device_tag_def_ATOM_DISPLAY_DFPx_SUPPORT: atom_display_device_tag_def = 3784; pub type atom_display_device_tag_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_display_object_path_v2 { pub display_objid: u16, pub disp_recordoffset: u16, pub encoderobjid: u16, pub extencoderobjid: u16, pub encoder_recordoffset: u16, pub extencoder_recordoffset: u16, pub device_tag: u16, pub priority_id: u8, pub reserved: u8, } #[test] fn bindgen_test_layout_atom_display_object_path_v2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(atom_display_object_path_v2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_display_object_path_v2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_objid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(display_objid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).disp_recordoffset) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(disp_recordoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoderobjid) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(encoderobjid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).extencoderobjid) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(extencoderobjid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_recordoffset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(encoder_recordoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).extencoder_recordoffset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(extencoder_recordoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).device_tag) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(device_tag) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).priority_id) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(priority_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v2), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_display_object_path_v3 { pub display_objid: u16, pub disp_recordoffset: u16, pub encoderobjid: u16, pub reserved1: u16, pub reserved2: u16, pub reserved3: u16, pub device_tag: u16, pub reserved4: u16, } #[test] fn bindgen_test_layout_atom_display_object_path_v3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(atom_display_object_path_v3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_display_object_path_v3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_objid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(display_objid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).disp_recordoffset) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(disp_recordoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoderobjid) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(encoderobjid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).device_tag) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(device_tag) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_display_object_path_v3), "::", stringify!(reserved4) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct display_object_info_table_v1_4 { pub table_header: atom_common_table_header, pub supporteddevices: u16, pub number_of_path: u8, pub reserved: u8, pub display_path: [atom_display_object_path_v2; 8usize], } #[test] fn bindgen_test_layout_display_object_info_table_v1_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 136usize, concat!("Size of: ", stringify!(display_object_info_table_v1_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(display_object_info_table_v1_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_4), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).supporteddevices) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_4), "::", stringify!(supporteddevices) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).number_of_path) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_4), "::", stringify!(number_of_path) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_4), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_path) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_4), "::", stringify!(display_path) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct display_object_info_table_v1_5 { pub table_header: atom_common_table_header, pub supporteddevices: u16, pub number_of_path: u8, pub reserved: u8, pub display_path: [atom_display_object_path_v3; 8usize], } #[test] fn bindgen_test_layout_display_object_info_table_v1_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 136usize, concat!("Size of: ", stringify!(display_object_info_table_v1_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(display_object_info_table_v1_5)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_5), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).supporteddevices) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_5), "::", stringify!(supporteddevices) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).number_of_path) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_5), "::", stringify!(number_of_path) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_5), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_path) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(display_object_info_table_v1_5), "::", stringify!(display_path) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_display_controller_info_v4_1 { pub table_header: atom_common_table_header, pub display_caps: u32, pub bootup_dispclk_10khz: u32, pub dce_refclk_10khz: u16, pub i2c_engine_refclk_10khz: u16, pub dvi_ss_percentage: u16, pub dvi_ss_rate_10hz: u16, pub hdmi_ss_percentage: u16, pub hdmi_ss_rate_10hz: u16, pub dp_ss_percentage: u16, pub dp_ss_rate_10hz: u16, pub dvi_ss_mode: u8, pub hdmi_ss_mode: u8, pub dp_ss_mode: u8, pub ss_reserved: u8, pub hardcode_mode_num: u8, pub reserved1: [u8; 3usize], pub dpphy_refclk_10khz: u16, pub reserved2: u16, pub dceip_min_ver: u8, pub dceip_max_ver: u8, pub max_disp_pipe_num: u8, pub max_vbios_active_disp_pipe_num: u8, pub max_ppll_num: u8, pub max_disp_phy_num: u8, pub max_aux_pairs: u8, pub remotedisplayconfig: u8, pub reserved3: [u8; 8usize], } #[test] fn bindgen_test_layout_atom_display_controller_info_v4_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(atom_display_controller_info_v4_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_display_controller_info_v4_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_caps) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(display_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dispclk_10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(bootup_dispclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dce_refclk_10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dce_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_engine_refclk_10khz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(i2c_engine_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_percentage) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dvi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_rate_10hz) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dvi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(hdmi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(hdmi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_percentage) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dp_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_rate_10hz) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dp_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_mode) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dvi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_mode) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(hdmi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_mode) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dp_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ss_reserved) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(ss_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hardcode_mode_num) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_refclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dpphy_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dceip_min_ver) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dceip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dceip_max_ver) as usize - ptr as usize }, 41usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(dceip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_pipe_num) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(max_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_vbios_active_disp_pipe_num) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(max_vbios_active_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_ppll_num) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(max_ppll_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_phy_num) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(max_disp_phy_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_aux_pairs) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(max_aux_pairs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).remotedisplayconfig) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(remotedisplayconfig) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_1), "::", stringify!(reserved3) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_display_controller_info_v4_2 { pub table_header: atom_common_table_header, pub display_caps: u32, pub bootup_dispclk_10khz: u32, pub dce_refclk_10khz: u16, pub i2c_engine_refclk_10khz: u16, pub dvi_ss_percentage: u16, pub dvi_ss_rate_10hz: u16, pub hdmi_ss_percentage: u16, pub hdmi_ss_rate_10hz: u16, pub dp_ss_percentage: u16, pub dp_ss_rate_10hz: u16, pub dvi_ss_mode: u8, pub hdmi_ss_mode: u8, pub dp_ss_mode: u8, pub ss_reserved: u8, pub dfp_hardcode_mode_num: u8, pub dfp_hardcode_refreshrate: u8, pub vga_hardcode_mode_num: u8, pub vga_hardcode_refreshrate: u8, pub dpphy_refclk_10khz: u16, pub reserved2: u16, pub dcnip_min_ver: u8, pub dcnip_max_ver: u8, pub max_disp_pipe_num: u8, pub max_vbios_active_disp_pipe_num: u8, pub max_ppll_num: u8, pub max_disp_phy_num: u8, pub max_aux_pairs: u8, pub remotedisplayconfig: u8, pub reserved3: [u8; 8usize], } #[test] fn bindgen_test_layout_atom_display_controller_info_v4_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(atom_display_controller_info_v4_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_display_controller_info_v4_2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_caps) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(display_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dispclk_10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(bootup_dispclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dce_refclk_10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dce_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_engine_refclk_10khz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(i2c_engine_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_percentage) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dvi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_rate_10hz) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dvi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(hdmi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(hdmi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_percentage) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dp_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_rate_10hz) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dp_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_mode) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dvi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_mode) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(hdmi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_mode) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dp_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ss_reserved) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(ss_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_mode_num) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dfp_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_refreshrate) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dfp_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_mode_num) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(vga_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_refreshrate) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(vga_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_refclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dpphy_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_min_ver) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dcnip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_max_ver) as usize - ptr as usize }, 41usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(dcnip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_pipe_num) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(max_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_vbios_active_disp_pipe_num) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(max_vbios_active_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_ppll_num) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(max_ppll_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_phy_num) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(max_disp_phy_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_aux_pairs) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(max_aux_pairs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).remotedisplayconfig) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(remotedisplayconfig) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_2), "::", stringify!(reserved3) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_display_controller_info_v4_3 { pub table_header: atom_common_table_header, pub display_caps: u32, pub bootup_dispclk_10khz: u32, pub dce_refclk_10khz: u16, pub i2c_engine_refclk_10khz: u16, pub dvi_ss_percentage: u16, pub dvi_ss_rate_10hz: u16, pub hdmi_ss_percentage: u16, pub hdmi_ss_rate_10hz: u16, pub dp_ss_percentage: u16, pub dp_ss_rate_10hz: u16, pub dvi_ss_mode: u8, pub hdmi_ss_mode: u8, pub dp_ss_mode: u8, pub ss_reserved: u8, pub dfp_hardcode_mode_num: u8, pub dfp_hardcode_refreshrate: u8, pub vga_hardcode_mode_num: u8, pub vga_hardcode_refreshrate: u8, pub dpphy_refclk_10khz: u16, pub reserved2: u16, pub dcnip_min_ver: u8, pub dcnip_max_ver: u8, pub max_disp_pipe_num: u8, pub max_vbios_active_disp_pipe_num: u8, pub max_ppll_num: u8, pub max_disp_phy_num: u8, pub max_aux_pairs: u8, pub remotedisplayconfig: u8, pub reserved3: [u8; 8usize], } #[test] fn bindgen_test_layout_atom_display_controller_info_v4_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(atom_display_controller_info_v4_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_display_controller_info_v4_3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_caps) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(display_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dispclk_10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(bootup_dispclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dce_refclk_10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dce_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_engine_refclk_10khz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(i2c_engine_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_percentage) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dvi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_rate_10hz) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dvi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(hdmi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(hdmi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_percentage) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dp_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_rate_10hz) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dp_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_mode) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dvi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_mode) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(hdmi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_mode) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dp_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ss_reserved) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(ss_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_mode_num) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dfp_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_refreshrate) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dfp_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_mode_num) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(vga_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_refreshrate) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(vga_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_refclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dpphy_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_min_ver) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dcnip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_max_ver) as usize - ptr as usize }, 41usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(dcnip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_pipe_num) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(max_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_vbios_active_disp_pipe_num) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(max_vbios_active_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_ppll_num) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(max_ppll_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_phy_num) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(max_disp_phy_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_aux_pairs) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(max_aux_pairs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).remotedisplayconfig) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(remotedisplayconfig) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_3), "::", stringify!(reserved3) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_display_controller_info_v4_4 { pub table_header: atom_common_table_header, pub display_caps: u32, pub bootup_dispclk_10khz: u32, pub dce_refclk_10khz: u16, pub i2c_engine_refclk_10khz: u16, pub dvi_ss_percentage: u16, pub dvi_ss_rate_10hz: u16, pub hdmi_ss_percentage: u16, pub hdmi_ss_rate_10hz: u16, pub dp_ss_percentage: u16, pub dp_ss_rate_10hz: u16, pub dvi_ss_mode: u8, pub hdmi_ss_mode: u8, pub dp_ss_mode: u8, pub ss_reserved: u8, pub dfp_hardcode_mode_num: u8, pub dfp_hardcode_refreshrate: u8, pub vga_hardcode_mode_num: u8, pub vga_hardcode_refreshrate: u8, pub dpphy_refclk_10khz: u16, pub hw_chip_id: u16, pub dcnip_min_ver: u8, pub dcnip_max_ver: u8, pub max_disp_pipe_num: u8, pub max_vbios_active_disp_pipum: u8, pub max_ppll_num: u8, pub max_disp_phy_num: u8, pub max_aux_pairs: u8, pub remotedisplayconfig: u8, pub dispclk_pll_vco_freq: u32, pub dp_ref_clk_freq: u32, pub max_mclk_chg_lat: u32, pub max_sr_exit_lat: u32, pub max_sr_enter_exit_lat: u32, pub dc_golden_table_offset: u16, pub dc_golden_table_ver: u16, pub reserved3: [u32; 3usize], } #[test] fn bindgen_test_layout_atom_display_controller_info_v4_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 84usize, concat!("Size of: ", stringify!(atom_display_controller_info_v4_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_display_controller_info_v4_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_caps) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(display_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dispclk_10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(bootup_dispclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dce_refclk_10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dce_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_engine_refclk_10khz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(i2c_engine_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_percentage) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dvi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_rate_10hz) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dvi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(hdmi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(hdmi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_percentage) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dp_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_rate_10hz) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dp_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_mode) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dvi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_mode) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(hdmi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_mode) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dp_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ss_reserved) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(ss_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_mode_num) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dfp_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_refreshrate) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dfp_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_mode_num) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(vga_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_refreshrate) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(vga_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_refclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dpphy_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_chip_id) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(hw_chip_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_min_ver) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dcnip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_max_ver) as usize - ptr as usize }, 41usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dcnip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_pipe_num) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_vbios_active_disp_pipum) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_vbios_active_disp_pipum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_ppll_num) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_ppll_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_phy_num) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_disp_phy_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_aux_pairs) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_aux_pairs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).remotedisplayconfig) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(remotedisplayconfig) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk_pll_vco_freq) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dispclk_pll_vco_freq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ref_clk_freq) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dp_ref_clk_freq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_mclk_chg_lat) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_mclk_chg_lat) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sr_exit_lat) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_sr_exit_lat) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sr_enter_exit_lat) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(max_sr_enter_exit_lat) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_golden_table_offset) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dc_golden_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_golden_table_ver) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(dc_golden_table_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_4), "::", stringify!(reserved3) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_dc_golden_table_v1 { pub aux_dphy_rx_control0_val: u32, pub aux_dphy_tx_control_val: u32, pub aux_dphy_rx_control1_val: u32, pub dc_gpio_aux_ctrl_0_val: u32, pub dc_gpio_aux_ctrl_1_val: u32, pub dc_gpio_aux_ctrl_2_val: u32, pub dc_gpio_aux_ctrl_3_val: u32, pub dc_gpio_aux_ctrl_4_val: u32, pub dc_gpio_aux_ctrl_5_val: u32, pub reserved: [u32; 23usize], } #[test] fn bindgen_test_layout_atom_dc_golden_table_v1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 128usize, concat!("Size of: ", stringify!(atom_dc_golden_table_v1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_dc_golden_table_v1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_dphy_rx_control0_val) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(aux_dphy_rx_control0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_dphy_tx_control_val) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(aux_dphy_tx_control_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_dphy_rx_control1_val) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(aux_dphy_rx_control1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_0_val) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(dc_gpio_aux_ctrl_0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_1_val) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(dc_gpio_aux_ctrl_1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_2_val) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(dc_gpio_aux_ctrl_2_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_3_val) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(dc_gpio_aux_ctrl_3_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_4_val) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(dc_gpio_aux_ctrl_4_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_5_val) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(dc_gpio_aux_ctrl_5_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_dc_golden_table_v1), "::", stringify!(reserved) ) ); } pub const dce_info_caps_def_DCE_INFO_CAPS_FORCE_DISPDEV_CONNECTED: dce_info_caps_def = 2; pub const dce_info_caps_def_DCE_INFO_CAPS_DISABLE_DFP_DP_HBR2: dce_info_caps_def = 4; pub const dce_info_caps_def_DCE_INFO_CAPS_ENABLE_INTERLAC_TIMING: dce_info_caps_def = 8; pub const dce_info_caps_def_DCE_INFO_CAPS_LTTPR_SUPPORT_ENABLE: dce_info_caps_def = 32; pub const dce_info_caps_def_DCE_INFO_CAPS_VBIOS_LTTPR_TRANSPARENT_ENABLE: dce_info_caps_def = 64; pub type dce_info_caps_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_display_controller_info_v4_5 { pub table_header: atom_common_table_header, pub display_caps: u32, pub bootup_dispclk_10khz: u32, pub dce_refclk_10khz: u16, pub i2c_engine_refclk_10khz: u16, pub dvi_ss_percentage: u16, pub dvi_ss_rate_10hz: u16, pub hdmi_ss_percentage: u16, pub hdmi_ss_rate_10hz: u16, pub dp_ss_percentage: u16, pub dp_ss_rate_10hz: u16, pub dvi_ss_mode: u8, pub hdmi_ss_mode: u8, pub dp_ss_mode: u8, pub ss_reserved: u8, pub dfp_hardcode_mode_num: u8, pub dfp_hardcode_refreshrate: u8, pub vga_hardcode_mode_num: u8, pub vga_hardcode_refreshrate: u8, pub dpphy_refclk_10khz: u16, pub hw_chip_id: u16, pub dcnip_min_ver: u8, pub dcnip_max_ver: u8, pub max_disp_pipe_num: u8, pub max_vbios_active_disp_pipe_num: u8, pub max_ppll_num: u8, pub max_disp_phy_num: u8, pub max_aux_pairs: u8, pub remotedisplayconfig: u8, pub dispclk_pll_vco_freq: u32, pub dp_ref_clk_freq: u32, pub max_mclk_chg_lat: u32, pub max_sr_exit_lat: u32, pub max_sr_enter_exit_lat: u32, pub dc_golden_table_offset: u16, pub dc_golden_table_ver: u16, pub aux_dphy_rx_control0_val: u32, pub aux_dphy_tx_control_val: u32, pub aux_dphy_rx_control1_val: u32, pub dc_gpio_aux_ctrl_0_val: u32, pub dc_gpio_aux_ctrl_1_val: u32, pub dc_gpio_aux_ctrl_2_val: u32, pub dc_gpio_aux_ctrl_3_val: u32, pub dc_gpio_aux_ctrl_4_val: u32, pub dc_gpio_aux_ctrl_5_val: u32, pub reserved: [u32; 26usize], } #[test] fn bindgen_test_layout_atom_display_controller_info_v4_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 212usize, concat!("Size of: ", stringify!(atom_display_controller_info_v4_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_display_controller_info_v4_5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_caps) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(display_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dispclk_10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(bootup_dispclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dce_refclk_10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dce_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_engine_refclk_10khz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(i2c_engine_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_percentage) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dvi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_rate_10hz) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dvi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(hdmi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(hdmi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_percentage) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dp_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_rate_10hz) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dp_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_mode) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dvi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_mode) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(hdmi_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ss_mode) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dp_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ss_reserved) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(ss_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_mode_num) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dfp_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfp_hardcode_refreshrate) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dfp_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_mode_num) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(vga_hardcode_mode_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vga_hardcode_refreshrate) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(vga_hardcode_refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_refclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dpphy_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hw_chip_id) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(hw_chip_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_min_ver) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dcnip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcnip_max_ver) as usize - ptr as usize }, 41usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dcnip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_pipe_num) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_vbios_active_disp_pipe_num) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_vbios_active_disp_pipe_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_ppll_num) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_ppll_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_disp_phy_num) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_disp_phy_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_aux_pairs) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_aux_pairs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).remotedisplayconfig) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(remotedisplayconfig) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk_pll_vco_freq) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dispclk_pll_vco_freq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_ref_clk_freq) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dp_ref_clk_freq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_mclk_chg_lat) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_mclk_chg_lat) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sr_exit_lat) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_sr_exit_lat) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sr_enter_exit_lat) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(max_sr_enter_exit_lat) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_golden_table_offset) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_golden_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_golden_table_ver) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_golden_table_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_dphy_rx_control0_val) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(aux_dphy_rx_control0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_dphy_tx_control_val) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(aux_dphy_tx_control_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_dphy_rx_control1_val) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(aux_dphy_rx_control1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_0_val) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_gpio_aux_ctrl_0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_1_val) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_gpio_aux_ctrl_1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_2_val) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_gpio_aux_ctrl_2_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_3_val) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_gpio_aux_ctrl_3_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_4_val) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_gpio_aux_ctrl_4_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dc_gpio_aux_ctrl_5_val) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(dc_gpio_aux_ctrl_5_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_display_controller_info_v4_5), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_ext_display_path { pub device_tag: u16, pub device_acpi_enum: u16, pub connectorobjid: u16, pub auxddclut_index: u8, pub hpdlut_index: u8, pub ext_encoder_objid: u16, pub channelmapping: u8, pub chpninvert: u8, pub caps: u16, pub reserved: u16, } #[test] fn bindgen_test_layout_atom_ext_display_path() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(atom_ext_display_path)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_ext_display_path)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).device_tag) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(device_tag) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).device_acpi_enum) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(device_acpi_enum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connectorobjid) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(connectorobjid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).auxddclut_index) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(auxddclut_index) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hpdlut_index) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(hpdlut_index) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ext_encoder_objid) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(ext_encoder_objid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channelmapping) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(channelmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).chpninvert) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(chpninvert) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).caps) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_ext_display_path), "::", stringify!(reserved) ) ); } pub const ext_display_path_cap_def_EXT_DISPLAY_PATH_CAPS__HBR2_DISABLE: ext_display_path_cap_def = 1; pub const ext_display_path_cap_def_EXT_DISPLAY_PATH_CAPS__DP_FIXED_VS_EN: ext_display_path_cap_def = 2; pub const ext_display_path_cap_def_EXT_DISPLAY_PATH_CAPS__EXT_CHIP_MASK: ext_display_path_cap_def = 124; pub const ext_display_path_cap_def_EXT_DISPLAY_PATH_CAPS__HDMI20_PI3EQX1204: ext_display_path_cap_def = 4; pub const ext_display_path_cap_def_EXT_DISPLAY_PATH_CAPS__HDMI20_TISN65DP159RSBT: ext_display_path_cap_def = 8; pub const ext_display_path_cap_def_EXT_DISPLAY_PATH_CAPS__HDMI20_PARADE_PS175: ext_display_path_cap_def = 12; pub type ext_display_path_cap_def = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_external_display_connection_info { pub table_header: atom_common_table_header, pub guid: [u8; 16usize], pub path: [atom_ext_display_path; 7usize], pub checksum: u8, pub stereopinid: u8, pub remotedisplayconfig: u8, pub edptolvdsrxid: u8, pub fixdpvoltageswing: u8, pub reserved: [u8; 3usize], } #[test] fn bindgen_test_layout_atom_external_display_connection_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 140usize, concat!( "Size of: ", stringify!(atom_external_display_connection_info) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_external_display_connection_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).guid) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(guid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(path) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).checksum) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(checksum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).stereopinid) as usize - ptr as usize }, 133usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(stereopinid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).remotedisplayconfig) as usize - ptr as usize }, 134usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(remotedisplayconfig) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edptolvdsrxid) as usize - ptr as usize }, 135usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(edptolvdsrxid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fixdpvoltageswing) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(fixdpvoltageswing) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 137usize, concat!( "Offset of field: ", stringify!(atom_external_display_connection_info), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_camera_dphy_timing_param { pub profile_id: u8, pub param: u32, } #[test] fn bindgen_test_layout_atom_camera_dphy_timing_param() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 5usize, concat!("Size of: ", stringify!(atom_camera_dphy_timing_param)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_camera_dphy_timing_param)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).profile_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_camera_dphy_timing_param), "::", stringify!(profile_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_camera_dphy_timing_param), "::", stringify!(param) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_camera_dphy_elec_param { pub param: [u16; 3usize], } #[test] fn bindgen_test_layout_atom_camera_dphy_elec_param() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 6usize, concat!("Size of: ", stringify!(atom_camera_dphy_elec_param)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_camera_dphy_elec_param)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_camera_dphy_elec_param), "::", stringify!(param) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_camera_module_info { pub module_id: u8, pub module_name: [u8; 8usize], pub timingparam: [atom_camera_dphy_timing_param; 6usize], } #[test] fn bindgen_test_layout_atom_camera_module_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 39usize, concat!("Size of: ", stringify!(atom_camera_module_info)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_camera_module_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).module_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_camera_module_info), "::", stringify!(module_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).module_name) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_camera_module_info), "::", stringify!(module_name) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).timingparam) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_camera_module_info), "::", stringify!(timingparam) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_camera_flashlight_info { pub flashlight_id: u8, pub name: [u8; 8usize], } #[test] fn bindgen_test_layout_atom_camera_flashlight_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 9usize, concat!("Size of: ", stringify!(atom_camera_flashlight_info)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_camera_flashlight_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flashlight_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_camera_flashlight_info), "::", stringify!(flashlight_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_camera_flashlight_info), "::", stringify!(name) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_camera_data { pub versionCode: u32, pub cameraInfo: [atom_camera_module_info; 3usize], pub flashInfo: atom_camera_flashlight_info, pub dphy_param: atom_camera_dphy_elec_param, pub crc_val: u32, } #[test] fn bindgen_test_layout_atom_camera_data() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 140usize, concat!("Size of: ", stringify!(atom_camera_data)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_camera_data)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).versionCode) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_camera_data), "::", stringify!(versionCode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cameraInfo) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_camera_data), "::", stringify!(cameraInfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flashInfo) as usize - ptr as usize }, 121usize, concat!( "Offset of field: ", stringify!(atom_camera_data), "::", stringify!(flashInfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dphy_param) as usize - ptr as usize }, 130usize, concat!( "Offset of field: ", stringify!(atom_camera_data), "::", stringify!(dphy_param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crc_val) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_camera_data), "::", stringify!(crc_val) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_14nm_dpphy_dvihdmi_tuningset { pub max_symclk_in10khz: u32, pub encoder_mode: u8, pub phy_sel: u8, pub margindeemph: u16, pub deemph_6db_4: u8, pub boostadj: u8, pub tx_driver_fifty_ohms: u8, pub deemph_sel: u8, } #[test] fn bindgen_test_layout_atom_14nm_dpphy_dvihdmi_tuningset() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_symclk_in10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(max_symclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_mode) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(encoder_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phy_sel) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(phy_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).margindeemph) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(margindeemph) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deemph_6db_4) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(deemph_6db_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boostadj) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(boostadj) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_driver_fifty_ohms) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(tx_driver_fifty_ohms) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deemph_sel) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dvihdmi_tuningset), "::", stringify!(deemph_sel) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_14nm_dpphy_dp_setting { pub dp_vs_pemph_level: u8, pub margindeemph: u16, pub deemph_6db_4: u8, pub boostadj: u8, } #[test] fn bindgen_test_layout_atom_14nm_dpphy_dp_setting() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 5usize, concat!("Size of: ", stringify!(atom_14nm_dpphy_dp_setting)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_14nm_dpphy_dp_setting)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_vs_pemph_level) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_setting), "::", stringify!(dp_vs_pemph_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).margindeemph) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_setting), "::", stringify!(margindeemph) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deemph_6db_4) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_setting), "::", stringify!(deemph_6db_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boostadj) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_setting), "::", stringify!(boostadj) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_14nm_dpphy_dp_tuningset { pub phy_sel: u8, pub version: u8, pub table_size: u16, pub reserved: u16, pub dptuning: [atom_14nm_dpphy_dp_setting; 10usize], } #[test] fn bindgen_test_layout_atom_14nm_dpphy_dp_tuningset() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(atom_14nm_dpphy_dp_tuningset)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_14nm_dpphy_dp_tuningset)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phy_sel) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_tuningset), "::", stringify!(phy_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_tuningset), "::", stringify!(version) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_size) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_tuningset), "::", stringify!(table_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_tuningset), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dptuning) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_14nm_dpphy_dp_tuningset), "::", stringify!(dptuning) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_14nm_dig_transmitter_info_header_v4_0 { pub table_header: atom_common_table_header, pub pcie_phy_tmds_hdmi_macro_settings_offset: u16, pub uniphy_vs_emph_lookup_table_offset: u16, pub uniphy_xbar_settings_table_offset: u16, } #[test] fn bindgen_test_layout_atom_14nm_dig_transmitter_info_header_v4_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 10usize, concat!( "Size of: ", stringify!(atom_14nm_dig_transmitter_info_header_v4_0) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_14nm_dig_transmitter_info_header_v4_0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_14nm_dig_transmitter_info_header_v4_0), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_phy_tmds_hdmi_macro_settings_offset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_14nm_dig_transmitter_info_header_v4_0), "::", stringify!(pcie_phy_tmds_hdmi_macro_settings_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uniphy_vs_emph_lookup_table_offset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_14nm_dig_transmitter_info_header_v4_0), "::", stringify!(uniphy_vs_emph_lookup_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uniphy_xbar_settings_table_offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_14nm_dig_transmitter_info_header_v4_0), "::", stringify!(uniphy_xbar_settings_table_offset) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_14nm_combphy_tmds_vs_set { pub sym_clk: u8, pub dig_mode: u8, pub phy_sel: u8, pub common_mar_deemph_nom__margin_deemph_val: u16, pub common_seldeemph60__deemph_6db_4_val: u8, pub cmd_bus_global_for_tx_lane0__boostadj_val: u8, pub common_zcalcode_ctrl__tx_driver_fifty_ohms_val: u8, pub margin_deemph_lane0__deemph_sel_val: u8, } #[test] fn bindgen_test_layout_atom_14nm_combphy_tmds_vs_set() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 9usize, concat!("Size of: ", stringify!(atom_14nm_combphy_tmds_vs_set)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_14nm_combphy_tmds_vs_set)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sym_clk) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(sym_clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dig_mode) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(dig_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phy_sel) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(phy_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_mar_deemph_nom__margin_deemph_val) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(common_mar_deemph_nom__margin_deemph_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_seldeemph60__deemph_6db_4_val) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(common_seldeemph60__deemph_6db_4_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_bus_global_for_tx_lane0__boostadj_val) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(cmd_bus_global_for_tx_lane0__boostadj_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_zcalcode_ctrl__tx_driver_fifty_ohms_val) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(common_zcalcode_ctrl__tx_driver_fifty_ohms_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).margin_deemph_lane0__deemph_sel_val) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_14nm_combphy_tmds_vs_set), "::", stringify!(margin_deemph_lane0__deemph_sel_val) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_DCN_dpphy_dvihdmi_tuningset { pub max_symclk_in10khz: u32, pub encoder_mode: u8, pub phy_sel: u8, pub tx_eq_main: u8, pub tx_eq_pre: u8, pub tx_eq_post: u8, pub reserved1: u8, pub tx_vboost_lvl: u8, pub reserved2: u8, } #[test] fn bindgen_test_layout_atom_DCN_dpphy_dvihdmi_tuningset() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_symclk_in10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(max_symclk_in10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_mode) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(encoder_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phy_sel) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(phy_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_main) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(tx_eq_main) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_pre) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(tx_eq_pre) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_post) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(tx_eq_post) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_vboost_lvl) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(tx_vboost_lvl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dvihdmi_tuningset), "::", stringify!(reserved2) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_DCN_dpphy_dp_setting { pub dp_vs_pemph_level: u8, pub tx_eq_main: u8, pub tx_eq_pre: u8, pub tx_eq_post: u8, pub tx_vboost_lvl: u8, } #[test] fn bindgen_test_layout_atom_DCN_dpphy_dp_setting() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 5usize, concat!("Size of: ", stringify!(atom_DCN_dpphy_dp_setting)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_DCN_dpphy_dp_setting)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_vs_pemph_level) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_setting), "::", stringify!(dp_vs_pemph_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_main) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_setting), "::", stringify!(tx_eq_main) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_pre) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_setting), "::", stringify!(tx_eq_pre) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_post) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_setting), "::", stringify!(tx_eq_post) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_vboost_lvl) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_setting), "::", stringify!(tx_vboost_lvl) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_DCN_dpphy_dp_tuningset { pub phy_sel: u8, pub version: u8, pub table_size: u16, pub reserved: u16, pub dptunings: [atom_DCN_dpphy_dp_setting; 10usize], } #[test] fn bindgen_test_layout_atom_DCN_dpphy_dp_tuningset() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 56usize, concat!("Size of: ", stringify!(atom_DCN_dpphy_dp_tuningset)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_DCN_dpphy_dp_tuningset)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phy_sel) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_tuningset), "::", stringify!(phy_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_tuningset), "::", stringify!(version) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_size) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_tuningset), "::", stringify!(table_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_tuningset), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dptunings) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_DCN_dpphy_dp_tuningset), "::", stringify!(dptunings) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_i2c_reg_info { pub ucI2cRegIndex: u8, pub ucI2cRegVal: u8, } #[test] fn bindgen_test_layout_atom_i2c_reg_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 2usize, concat!("Size of: ", stringify!(atom_i2c_reg_info)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_i2c_reg_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucI2cRegIndex) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_i2c_reg_info), "::", stringify!(ucI2cRegIndex) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucI2cRegVal) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_i2c_reg_info), "::", stringify!(ucI2cRegVal) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_hdmi_retimer_redriver_set { pub HdmiSlvAddr: u8, pub HdmiRegNum: u8, pub Hdmi6GRegNum: u8, pub HdmiRegSetting: [atom_i2c_reg_info; 9usize], pub Hdmi6GhzRegSetting: [atom_i2c_reg_info; 3usize], } #[test] fn bindgen_test_layout_atom_hdmi_retimer_redriver_set() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 27usize, concat!("Size of: ", stringify!(atom_hdmi_retimer_redriver_set)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_hdmi_retimer_redriver_set)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).HdmiSlvAddr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_hdmi_retimer_redriver_set), "::", stringify!(HdmiSlvAddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).HdmiRegNum) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_hdmi_retimer_redriver_set), "::", stringify!(HdmiRegNum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Hdmi6GRegNum) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_hdmi_retimer_redriver_set), "::", stringify!(Hdmi6GRegNum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).HdmiRegSetting) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_hdmi_retimer_redriver_set), "::", stringify!(HdmiRegSetting) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Hdmi6GhzRegSetting) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_hdmi_retimer_redriver_set), "::", stringify!(Hdmi6GhzRegSetting) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_integrated_system_info_v1_11 { pub table_header: atom_common_table_header, pub vbios_misc: u32, pub gpucapinfo: u32, pub system_config: u32, pub cpucapinfo: u32, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_type: u16, pub lvds_ss_percentage: u16, pub lvds_ss_rate_10hz: u16, pub hdmi_ss_percentage: u16, pub hdmi_ss_rate_10hz: u16, pub dvi_ss_percentage: u16, pub dvi_ss_rate_10hz: u16, pub dpphy_override: u16, pub lvds_misc: u16, pub backlight_pwm_hz: u16, pub memorytype: u8, pub umachannelnumber: u8, pub pwr_on_digon_to_de: u8, pub pwr_on_de_to_vary_bl: u8, pub pwr_down_vary_bloff_to_de: u8, pub pwr_down_de_to_digoff: u8, pub pwr_off_delay: u8, pub pwr_on_vary_bl_to_blon: u8, pub pwr_down_bloff_to_vary_bloff: u8, pub min_allowed_bl_level: u8, pub htc_hyst_limit: u8, pub htc_tmp_limit: u8, pub reserved1: u8, pub reserved2: u8, pub extdispconninfo: atom_external_display_connection_info, pub dvi_tuningset: atom_14nm_dpphy_dvihdmi_tuningset, pub hdmi_tuningset: atom_14nm_dpphy_dvihdmi_tuningset, pub hdmi6g_tuningset: atom_14nm_dpphy_dvihdmi_tuningset, pub dp_tuningset: atom_14nm_dpphy_dp_tuningset, pub dp_hbr3_tuningset: atom_14nm_dpphy_dp_tuningset, pub camera_info: atom_camera_data, pub dp0_retimer_set: atom_hdmi_retimer_redriver_set, pub dp1_retimer_set: atom_hdmi_retimer_redriver_set, pub dp2_retimer_set: atom_hdmi_retimer_redriver_set, pub dp3_retimer_set: atom_hdmi_retimer_redriver_set, pub dp_hbr_tuningset: atom_14nm_dpphy_dp_tuningset, pub dp_hbr2_tuningset: atom_14nm_dpphy_dp_tuningset, pub edp_tuningset: atom_14nm_dpphy_dp_tuningset, pub reserved: [u32; 66usize], } #[test] fn bindgen_test_layout_atom_integrated_system_info_v1_11() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1024usize, concat!("Size of: ", stringify!(atom_integrated_system_info_v1_11)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_integrated_system_info_v1_11) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_misc) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(vbios_misc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpucapinfo) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(gpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_config) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(system_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cpucapinfo) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(cpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_type) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(gpuclk_ss_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_ss_percentage) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(lvds_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_ss_rate_10hz) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(lvds_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_percentage) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(hdmi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_rate_10hz) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(hdmi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_percentage) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dvi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_rate_10hz) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dvi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_override) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dpphy_override) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_misc) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(lvds_misc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).backlight_pwm_hz) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(backlight_pwm_hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memorytype) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(memorytype) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umachannelnumber) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(umachannelnumber) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_digon_to_de) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(pwr_on_digon_to_de) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_de_to_vary_bl) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(pwr_on_de_to_vary_bl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_vary_bloff_to_de) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(pwr_down_vary_bloff_to_de) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_de_to_digoff) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(pwr_down_de_to_digoff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_off_delay) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(pwr_off_delay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_vary_bl_to_blon) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(pwr_on_vary_bl_to_blon) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_bloff_to_vary_bloff) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(pwr_down_bloff_to_vary_bloff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_allowed_bl_level) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(min_allowed_bl_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_hyst_limit) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(htc_hyst_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_tmp_limit) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(htc_tmp_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 55usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).extdispconninfo) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(extdispconninfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_tuningset) as usize - ptr as usize }, 196usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dvi_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_tuningset) as usize - ptr as usize }, 208usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(hdmi_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi6g_tuningset) as usize - ptr as usize }, 220usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(hdmi6g_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_tuningset) as usize - ptr as usize }, 232usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_hbr3_tuningset) as usize - ptr as usize }, 288usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp_hbr3_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).camera_info) as usize - ptr as usize }, 344usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(camera_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp0_retimer_set) as usize - ptr as usize }, 484usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp0_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp1_retimer_set) as usize - ptr as usize }, 511usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp1_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp2_retimer_set) as usize - ptr as usize }, 538usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp2_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp3_retimer_set) as usize - ptr as usize }, 565usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp3_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_hbr_tuningset) as usize - ptr as usize }, 592usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp_hbr_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp_hbr2_tuningset) as usize - ptr as usize }, 648usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(dp_hbr2_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_tuningset) as usize - ptr as usize }, 704usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(edp_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 760usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_11), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_integrated_system_info_v1_12 { pub table_header: atom_common_table_header, pub vbios_misc: u32, pub gpucapinfo: u32, pub system_config: u32, pub cpucapinfo: u32, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_type: u16, pub lvds_ss_percentage: u16, pub lvds_ss_rate_10hz: u16, pub hdmi_ss_percentage: u16, pub hdmi_ss_rate_10hz: u16, pub dvi_ss_percentage: u16, pub dvi_ss_rate_10hz: u16, pub dpphy_override: u16, pub lvds_misc: u16, pub backlight_pwm_hz: u16, pub memorytype: u8, pub umachannelnumber: u8, pub pwr_on_digon_to_de: u8, pub pwr_on_de_to_vary_bl: u8, pub pwr_down_vary_bloff_to_de: u8, pub pwr_down_de_to_digoff: u8, pub pwr_off_delay: u8, pub pwr_on_vary_bl_to_blon: u8, pub pwr_down_bloff_to_vary_bloff: u8, pub min_allowed_bl_level: u8, pub htc_hyst_limit: u8, pub htc_tmp_limit: u8, pub reserved1: u8, pub reserved2: u8, pub extdispconninfo: atom_external_display_connection_info, pub TMDS_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub hdmiCLK5_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub hdmiCLK8_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub rbr_tuningset: atom_DCN_dpphy_dp_tuningset, pub hbr3_tuningset: atom_DCN_dpphy_dp_tuningset, pub camera_info: atom_camera_data, pub dp0_retimer_set: atom_hdmi_retimer_redriver_set, pub dp1_retimer_set: atom_hdmi_retimer_redriver_set, pub dp2_retimer_set: atom_hdmi_retimer_redriver_set, pub dp3_retimer_set: atom_hdmi_retimer_redriver_set, pub hbr_tuningset: atom_DCN_dpphy_dp_tuningset, pub hbr2_tuningset: atom_DCN_dpphy_dp_tuningset, pub edp_tunings: atom_DCN_dpphy_dp_tuningset, pub hdmiCLK6_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub reserved: [u32; 63usize], } #[test] fn bindgen_test_layout_atom_integrated_system_info_v1_12() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1024usize, concat!("Size of: ", stringify!(atom_integrated_system_info_v1_12)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_integrated_system_info_v1_12) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_misc) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(vbios_misc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpucapinfo) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(gpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_config) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(system_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cpucapinfo) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(cpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_type) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(gpuclk_ss_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_ss_percentage) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(lvds_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_ss_rate_10hz) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(lvds_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_percentage) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hdmi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmi_ss_rate_10hz) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hdmi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_percentage) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(dvi_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dvi_ss_rate_10hz) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(dvi_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_override) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(dpphy_override) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lvds_misc) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(lvds_misc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).backlight_pwm_hz) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(backlight_pwm_hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memorytype) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(memorytype) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umachannelnumber) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(umachannelnumber) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_digon_to_de) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(pwr_on_digon_to_de) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_de_to_vary_bl) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(pwr_on_de_to_vary_bl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_vary_bloff_to_de) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(pwr_down_vary_bloff_to_de) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_de_to_digoff) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(pwr_down_de_to_digoff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_off_delay) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(pwr_off_delay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_on_vary_bl_to_blon) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(pwr_on_vary_bl_to_blon) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_down_bloff_to_vary_bloff) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(pwr_down_bloff_to_vary_bloff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).min_allowed_bl_level) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(min_allowed_bl_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_hyst_limit) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(htc_hyst_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_tmp_limit) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(htc_tmp_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 55usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).extdispconninfo) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(extdispconninfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).TMDS_tuningset) as usize - ptr as usize }, 196usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(TMDS_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmiCLK5_tuningset) as usize - ptr as usize }, 208usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hdmiCLK5_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmiCLK8_tuningset) as usize - ptr as usize }, 220usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hdmiCLK8_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rbr_tuningset) as usize - ptr as usize }, 232usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(rbr_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hbr3_tuningset) as usize - ptr as usize }, 288usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hbr3_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).camera_info) as usize - ptr as usize }, 344usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(camera_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp0_retimer_set) as usize - ptr as usize }, 484usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(dp0_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp1_retimer_set) as usize - ptr as usize }, 511usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(dp1_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp2_retimer_set) as usize - ptr as usize }, 538usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(dp2_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp3_retimer_set) as usize - ptr as usize }, 565usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(dp3_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hbr_tuningset) as usize - ptr as usize }, 592usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hbr_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hbr2_tuningset) as usize - ptr as usize }, 648usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hbr2_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_tunings) as usize - ptr as usize }, 704usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(edp_tunings) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmiCLK6_tuningset) as usize - ptr as usize }, 760usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(hdmiCLK6_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 772usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v1_12), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct edp_info_table { pub edp_backlight_pwm_hz: u16, pub edp_ss_percentage: u16, pub edp_ss_rate_10hz: u16, pub reserved1: u16, pub reserved2: u32, pub edp_pwr_on_off_delay: u8, pub edp_pwr_on_vary_bl_to_blon: u8, pub edp_pwr_down_bloff_to_vary_bloff: u8, pub edp_panel_bpc: u8, pub edp_bootup_bl_level: u8, pub reserved3: [u8; 3usize], pub reserved4: [u32; 3usize], } #[test] fn bindgen_test_layout_edp_info_table() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(edp_info_table)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(edp_info_table)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_backlight_pwm_hz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_backlight_pwm_hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_ss_percentage) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_ss_rate_10hz) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_pwr_on_off_delay) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_pwr_on_off_delay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_pwr_on_vary_bl_to_blon) as usize - ptr as usize }, 13usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_pwr_on_vary_bl_to_blon) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_pwr_down_bloff_to_vary_bloff) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_pwr_down_bloff_to_vary_bloff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_panel_bpc) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_panel_bpc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_bootup_bl_level) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(edp_bootup_bl_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 17usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(edp_info_table), "::", stringify!(reserved4) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_integrated_system_info_v2_1 { pub table_header: atom_common_table_header, pub vbios_misc: u32, pub gpucapinfo: u32, pub system_config: u32, pub cpucapinfo: u32, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_type: u16, pub dpphy_override: u16, pub memorytype: u8, pub umachannelnumber: u8, pub htc_hyst_limit: u8, pub htc_tmp_limit: u8, pub reserved1: u8, pub reserved2: u8, pub edp1_info: edp_info_table, pub edp2_info: edp_info_table, pub reserved3: [u32; 8usize], pub extdispconninfo: atom_external_display_connection_info, pub TMDS_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub hdmiCLK5_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub hdmiCLK6_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub hdmiCLK8_tuningset: atom_DCN_dpphy_dvihdmi_tuningset, pub reserved4: [u32; 6usize], pub rbr_tuningset: atom_DCN_dpphy_dp_tuningset, pub hbr_tuningset: atom_DCN_dpphy_dp_tuningset, pub hbr2_tuningset: atom_DCN_dpphy_dp_tuningset, pub hbr3_tuningset: atom_DCN_dpphy_dp_tuningset, pub edp_tunings: atom_DCN_dpphy_dp_tuningset, pub reserved5: [u32; 28usize], pub dp0_retimer_set: atom_hdmi_retimer_redriver_set, pub dp1_retimer_set: atom_hdmi_retimer_redriver_set, pub dp2_retimer_set: atom_hdmi_retimer_redriver_set, pub dp3_retimer_set: atom_hdmi_retimer_redriver_set, pub reserved6: [u32; 30usize], pub reserved7: [u32; 32usize], } #[test] fn bindgen_test_layout_atom_integrated_system_info_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1088usize, concat!("Size of: ", stringify!(atom_integrated_system_info_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_integrated_system_info_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_misc) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(vbios_misc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpucapinfo) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(gpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_config) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(system_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cpucapinfo) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(cpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_type) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(gpuclk_ss_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_override) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(dpphy_override) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memorytype) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(memorytype) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umachannelnumber) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(umachannelnumber) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_hyst_limit) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(htc_hyst_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_tmp_limit) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(htc_tmp_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp1_info) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(edp1_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp2_info) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(edp2_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).extdispconninfo) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(extdispconninfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).TMDS_tuningset) as usize - ptr as usize }, 268usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(TMDS_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmiCLK5_tuningset) as usize - ptr as usize }, 280usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(hdmiCLK5_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmiCLK6_tuningset) as usize - ptr as usize }, 292usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(hdmiCLK6_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hdmiCLK8_tuningset) as usize - ptr as usize }, 304usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(hdmiCLK8_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize }, 316usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(reserved4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rbr_tuningset) as usize - ptr as usize }, 340usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(rbr_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hbr_tuningset) as usize - ptr as usize }, 396usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(hbr_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hbr2_tuningset) as usize - ptr as usize }, 452usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(hbr2_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hbr3_tuningset) as usize - ptr as usize }, 508usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(hbr3_tuningset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp_tunings) as usize - ptr as usize }, 564usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(edp_tunings) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved5) as usize - ptr as usize }, 620usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(reserved5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp0_retimer_set) as usize - ptr as usize }, 732usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(dp0_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp1_retimer_set) as usize - ptr as usize }, 759usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(dp1_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp2_retimer_set) as usize - ptr as usize }, 786usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(dp2_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dp3_retimer_set) as usize - ptr as usize }, 813usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(dp3_retimer_set) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved6) as usize - ptr as usize }, 840usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(reserved6) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved7) as usize - ptr as usize }, 960usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_1), "::", stringify!(reserved7) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_n6_display_phy_tuning_set { pub display_signal_type: u8, pub phy_sel: u8, pub preset_level: u8, pub reserved1: u8, pub reserved2: u32, pub speed_upto: u32, pub tx_vboost_level: u8, pub tx_vreg_v2i: u8, pub tx_vregdrv_byp: u8, pub tx_term_cntl: u8, pub tx_peak_level: u8, pub tx_slew_en: u8, pub tx_eq_pre: u8, pub tx_eq_main: u8, pub tx_eq_post: u8, pub tx_en_inv_pre: u8, pub tx_en_inv_post: u8, pub reserved3: u8, pub reserved4: u32, pub reserved5: u32, pub reserved6: u32, } #[test] fn bindgen_test_layout_atom_n6_display_phy_tuning_set() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 36usize, concat!("Size of: ", stringify!(atom_n6_display_phy_tuning_set)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_n6_display_phy_tuning_set)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).display_signal_type) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(display_signal_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phy_sel) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(phy_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).preset_level) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(preset_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).speed_upto) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(speed_upto) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_vboost_level) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_vboost_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_vreg_v2i) as usize - ptr as usize }, 13usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_vreg_v2i) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_vregdrv_byp) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_vregdrv_byp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_term_cntl) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_term_cntl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_peak_level) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_peak_level) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_slew_en) as usize - ptr as usize }, 17usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_slew_en) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_pre) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_eq_pre) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_main) as usize - ptr as usize }, 19usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_eq_main) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_eq_post) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_eq_post) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_en_inv_pre) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_en_inv_pre) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tx_en_inv_post) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(tx_en_inv_post) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(reserved4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved5) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(reserved5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved6) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_n6_display_phy_tuning_set), "::", stringify!(reserved6) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_display_phy_tuning_info { pub table_header: atom_common_table_header, pub disp_phy_tuning: [atom_n6_display_phy_tuning_set; 1usize], } #[test] fn bindgen_test_layout_atom_display_phy_tuning_info() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 40usize, concat!("Size of: ", stringify!(atom_display_phy_tuning_info)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_display_phy_tuning_info)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_display_phy_tuning_info), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).disp_phy_tuning) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_display_phy_tuning_info), "::", stringify!(disp_phy_tuning) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_integrated_system_info_v2_2 { pub table_header: atom_common_table_header, pub vbios_misc: u32, pub gpucapinfo: u32, pub system_config: u32, pub cpucapinfo: u32, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_type: u16, pub dpphy_override: u16, pub memorytype: u8, pub umachannelnumber: u8, pub htc_hyst_limit: u8, pub htc_tmp_limit: u8, pub reserved1: u8, pub reserved2: u8, pub edp1_info: edp_info_table, pub edp2_info: edp_info_table, pub reserved3: [u32; 8usize], pub extdispconninfo: atom_external_display_connection_info, pub reserved4: [u32; 189usize], } #[test] fn bindgen_test_layout_atom_integrated_system_info_v2_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1024usize, concat!("Size of: ", stringify!(atom_integrated_system_info_v2_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_integrated_system_info_v2_2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbios_misc) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(vbios_misc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpucapinfo) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(gpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_config) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(system_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cpucapinfo) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(cpucapinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_type) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(gpuclk_ss_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dpphy_override) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(dpphy_override) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memorytype) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(memorytype) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umachannelnumber) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(umachannelnumber) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_hyst_limit) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(htc_hyst_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).htc_tmp_limit) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(htc_tmp_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp1_info) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(edp1_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).edp2_info) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(edp2_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).extdispconninfo) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(extdispconninfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize }, 268usize, concat!( "Offset of field: ", stringify!(atom_integrated_system_info_v2_2), "::", stringify!(reserved4) ) ); } pub const atom_system_vbiosmisc_def_INTEGRATED_SYSTEM_INFO__GET_EDID_CALLBACK_FUNC_SUPPORT: atom_system_vbiosmisc_def = 1; pub type atom_system_vbiosmisc_def = ::core::ffi::c_uint; pub const atom_system_gpucapinf_def_SYS_INFO_GPUCAPS__ENABEL_DFS_BYPASS: atom_system_gpucapinf_def = 16; pub type atom_system_gpucapinf_def = ::core::ffi::c_uint; pub const atom_sysinfo_dpphy_override_def_ATOM_ENABLE_DVI_TUNINGSET: atom_sysinfo_dpphy_override_def = 1; pub const atom_sysinfo_dpphy_override_def_ATOM_ENABLE_HDMI_TUNINGSET: atom_sysinfo_dpphy_override_def = 2; pub const atom_sysinfo_dpphy_override_def_ATOM_ENABLE_HDMI6G_TUNINGSET: atom_sysinfo_dpphy_override_def = 4; pub const atom_sysinfo_dpphy_override_def_ATOM_ENABLE_DP_TUNINGSET: atom_sysinfo_dpphy_override_def = 8; pub const atom_sysinfo_dpphy_override_def_ATOM_ENABLE_DP_HBR3_TUNINGSET: atom_sysinfo_dpphy_override_def = 16; pub type atom_sysinfo_dpphy_override_def = ::core::ffi::c_uint; pub const atom_sys_info_lvds_misc_def_SYS_INFO_LVDS_MISC_888_FPDI_MODE: atom_sys_info_lvds_misc_def = 1; pub const atom_sys_info_lvds_misc_def_SYS_INFO_LVDS_MISC_888_BPC_MODE: atom_sys_info_lvds_misc_def = 4; pub const atom_sys_info_lvds_misc_def_SYS_INFO_LVDS_MISC_OVERRIDE_EN: atom_sys_info_lvds_misc_def = 8; pub type atom_sys_info_lvds_misc_def = ::core::ffi::c_uint; #[doc = "< Assign 01 to Other"] pub const atom_dmi_t17_mem_type_def_OtherMemType: atom_dmi_t17_mem_type_def = 1; #[doc = "< Assign 02 to Unknown"] pub const atom_dmi_t17_mem_type_def_UnknownMemType: atom_dmi_t17_mem_type_def = 2; #[doc = "< Assign 03 to DRAM"] pub const atom_dmi_t17_mem_type_def_DramMemType: atom_dmi_t17_mem_type_def = 3; #[doc = "< Assign 04 to EDRAM"] pub const atom_dmi_t17_mem_type_def_EdramMemType: atom_dmi_t17_mem_type_def = 4; #[doc = "< Assign 05 to VRAM"] pub const atom_dmi_t17_mem_type_def_VramMemType: atom_dmi_t17_mem_type_def = 5; #[doc = "< Assign 06 to SRAM"] pub const atom_dmi_t17_mem_type_def_SramMemType: atom_dmi_t17_mem_type_def = 6; #[doc = "< Assign 07 to RAM"] pub const atom_dmi_t17_mem_type_def_RamMemType: atom_dmi_t17_mem_type_def = 7; #[doc = "< Assign 08 to ROM"] pub const atom_dmi_t17_mem_type_def_RomMemType: atom_dmi_t17_mem_type_def = 8; #[doc = "< Assign 09 to Flash"] pub const atom_dmi_t17_mem_type_def_FlashMemType: atom_dmi_t17_mem_type_def = 9; #[doc = "< Assign 10 to EEPROM"] pub const atom_dmi_t17_mem_type_def_EepromMemType: atom_dmi_t17_mem_type_def = 10; #[doc = "< Assign 11 to FEPROM"] pub const atom_dmi_t17_mem_type_def_FepromMemType: atom_dmi_t17_mem_type_def = 11; #[doc = "< Assign 12 to EPROM"] pub const atom_dmi_t17_mem_type_def_EpromMemType: atom_dmi_t17_mem_type_def = 12; #[doc = "< Assign 13 to CDRAM"] pub const atom_dmi_t17_mem_type_def_CdramMemType: atom_dmi_t17_mem_type_def = 13; #[doc = "< Assign 14 to 3DRAM"] pub const atom_dmi_t17_mem_type_def_ThreeDramMemType: atom_dmi_t17_mem_type_def = 14; #[doc = "< Assign 15 to SDRAM"] pub const atom_dmi_t17_mem_type_def_SdramMemType: atom_dmi_t17_mem_type_def = 15; #[doc = "< Assign 16 to SGRAM"] pub const atom_dmi_t17_mem_type_def_SgramMemType: atom_dmi_t17_mem_type_def = 16; #[doc = "< Assign 17 to RDRAM"] pub const atom_dmi_t17_mem_type_def_RdramMemType: atom_dmi_t17_mem_type_def = 17; #[doc = "< Assign 18 to DDR"] pub const atom_dmi_t17_mem_type_def_DdrMemType: atom_dmi_t17_mem_type_def = 18; #[doc = "< Assign 19 to DDR2"] pub const atom_dmi_t17_mem_type_def_Ddr2MemType: atom_dmi_t17_mem_type_def = 19; #[doc = "< Assign 20 to DDR2 FB-DIMM"] pub const atom_dmi_t17_mem_type_def_Ddr2FbdimmMemType: atom_dmi_t17_mem_type_def = 20; #[doc = "< Assign 24 to DDR3"] pub const atom_dmi_t17_mem_type_def_Ddr3MemType: atom_dmi_t17_mem_type_def = 24; #[doc = "< Assign 25 to FBD2"] pub const atom_dmi_t17_mem_type_def_Fbd2MemType: atom_dmi_t17_mem_type_def = 25; #[doc = "< Assign 26 to DDR4"] pub const atom_dmi_t17_mem_type_def_Ddr4MemType: atom_dmi_t17_mem_type_def = 26; #[doc = "< Assign 27 to LPDDR"] pub const atom_dmi_t17_mem_type_def_LpDdrMemType: atom_dmi_t17_mem_type_def = 27; #[doc = "< Assign 28 to LPDDR2"] pub const atom_dmi_t17_mem_type_def_LpDdr2MemType: atom_dmi_t17_mem_type_def = 28; #[doc = "< Assign 29 to LPDDR3"] pub const atom_dmi_t17_mem_type_def_LpDdr3MemType: atom_dmi_t17_mem_type_def = 29; #[doc = "< Assign 30 to LPDDR4"] pub const atom_dmi_t17_mem_type_def_LpDdr4MemType: atom_dmi_t17_mem_type_def = 30; #[doc = "< Assign 31 to GDDR6"] pub const atom_dmi_t17_mem_type_def_GDdr6MemType: atom_dmi_t17_mem_type_def = 31; #[doc = "< Assign 32 to HBM"] pub const atom_dmi_t17_mem_type_def_HbmMemType: atom_dmi_t17_mem_type_def = 32; #[doc = "< Assign 33 to HBM2"] pub const atom_dmi_t17_mem_type_def_Hbm2MemType: atom_dmi_t17_mem_type_def = 33; #[doc = "< Assign 34 to DDR5"] pub const atom_dmi_t17_mem_type_def_Ddr5MemType: atom_dmi_t17_mem_type_def = 34; #[doc = "< Assign 35 to LPDDR5"] pub const atom_dmi_t17_mem_type_def_LpDdr5MemType: atom_dmi_t17_mem_type_def = 35; pub type atom_dmi_t17_mem_type_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_fusion_system_info_v4 { pub sysinfo: atom_integrated_system_info_v1_11, pub powerplayinfo: [u32; 256usize], } #[test] fn bindgen_test_layout_atom_fusion_system_info_v4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 2048usize, concat!("Size of: ", stringify!(atom_fusion_system_info_v4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_fusion_system_info_v4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sysinfo) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_fusion_system_info_v4), "::", stringify!(sysinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).powerplayinfo) as usize - ptr as usize }, 1024usize, concat!( "Offset of field: ", stringify!(atom_fusion_system_info_v4), "::", stringify!(powerplayinfo) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gfx_info_v2_2 { pub table_header: atom_common_table_header, pub gfxip_min_ver: u8, pub gfxip_max_ver: u8, pub max_shader_engines: u8, pub max_tile_pipes: u8, pub max_cu_per_sh: u8, pub max_sh_per_se: u8, pub max_backends_per_se: u8, pub max_texture_channel_caches: u8, pub regaddr_cp_dma_src_addr: u32, pub regaddr_cp_dma_src_addr_hi: u32, pub regaddr_cp_dma_dst_addr: u32, pub regaddr_cp_dma_dst_addr_hi: u32, pub regaddr_cp_dma_command: u32, pub regaddr_cp_status: u32, pub regaddr_rlc_gpu_clock_32: u32, pub rlc_gpu_timer_refclk: u32, } #[test] fn bindgen_test_layout_atom_gfx_info_v2_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 44usize, concat!("Size of: ", stringify!(atom_gfx_info_v2_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gfx_info_v2_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(gfxip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(gfxip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_shader_engines) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(max_shader_engines) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_tile_pipes) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(max_tile_pipes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_cu_per_sh) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(max_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sh_per_se) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(max_sh_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_backends_per_se) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(max_backends_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_texture_channel_caches) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(max_texture_channel_caches) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(regaddr_cp_dma_src_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr_hi) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(regaddr_cp_dma_src_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(regaddr_cp_dma_dst_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr_hi) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(regaddr_cp_dma_dst_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_command) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(regaddr_cp_dma_command) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_status) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(regaddr_cp_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_rlc_gpu_clock_32) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(regaddr_rlc_gpu_clock_32) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rlc_gpu_timer_refclk) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_2), "::", stringify!(rlc_gpu_timer_refclk) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gfx_info_v2_3 { pub table_header: atom_common_table_header, pub gfxip_min_ver: u8, pub gfxip_max_ver: u8, pub max_shader_engines: u8, pub max_tile_pipes: u8, pub max_cu_per_sh: u8, pub max_sh_per_se: u8, pub max_backends_per_se: u8, pub max_texture_channel_caches: u8, pub regaddr_cp_dma_src_addr: u32, pub regaddr_cp_dma_src_addr_hi: u32, pub regaddr_cp_dma_dst_addr: u32, pub regaddr_cp_dma_dst_addr_hi: u32, pub regaddr_cp_dma_command: u32, pub regaddr_cp_status: u32, pub regaddr_rlc_gpu_clock_32: u32, pub rlc_gpu_timer_refclk: u32, pub active_cu_per_sh: u8, pub active_rb_per_se: u8, pub gcgoldenoffset: u16, pub rm21_sram_vmin_value: u32, } #[test] fn bindgen_test_layout_atom_gfx_info_v2_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 52usize, concat!("Size of: ", stringify!(atom_gfx_info_v2_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gfx_info_v2_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(gfxip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(gfxip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_shader_engines) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(max_shader_engines) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_tile_pipes) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(max_tile_pipes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_cu_per_sh) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(max_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sh_per_se) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(max_sh_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_backends_per_se) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(max_backends_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_texture_channel_caches) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(max_texture_channel_caches) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(regaddr_cp_dma_src_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr_hi) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(regaddr_cp_dma_src_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(regaddr_cp_dma_dst_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr_hi) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(regaddr_cp_dma_dst_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_command) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(regaddr_cp_dma_command) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_status) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(regaddr_cp_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_rlc_gpu_clock_32) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(regaddr_rlc_gpu_clock_32) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rlc_gpu_timer_refclk) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(rlc_gpu_timer_refclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_cu_per_sh) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(active_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_rb_per_se) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(active_rb_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gcgoldenoffset) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(gcgoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rm21_sram_vmin_value) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_3), "::", stringify!(rm21_sram_vmin_value) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gfx_info_v2_4 { pub table_header: atom_common_table_header, pub gfxip_min_ver: u8, pub gfxip_max_ver: u8, pub max_shader_engines: u8, pub reserved: u8, pub max_cu_per_sh: u8, pub max_sh_per_se: u8, pub max_backends_per_se: u8, pub max_texture_channel_caches: u8, pub regaddr_cp_dma_src_addr: u32, pub regaddr_cp_dma_src_addr_hi: u32, pub regaddr_cp_dma_dst_addr: u32, pub regaddr_cp_dma_dst_addr_hi: u32, pub regaddr_cp_dma_command: u32, pub regaddr_cp_status: u32, pub regaddr_rlc_gpu_clock_32: u32, pub rlc_gpu_timer_refclk: u32, pub active_cu_per_sh: u8, pub active_rb_per_se: u8, pub gcgoldenoffset: u16, pub gc_num_gprs: u16, pub gc_gsprim_buff_depth: u16, pub gc_parameter_cache_depth: u16, pub gc_wave_size: u16, pub gc_max_waves_per_simd: u16, pub gc_lds_size: u16, pub gc_num_max_gs_thds: u8, pub gc_gs_table_depth: u8, pub gc_double_offchip_lds_buffer: u8, pub gc_max_scratch_slots_per_cu: u8, pub sram_rm_fuses_val: u32, pub sram_custom_rm_fuses_val: u32, } #[test] fn bindgen_test_layout_atom_gfx_info_v2_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 72usize, concat!("Size of: ", stringify!(atom_gfx_info_v2_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gfx_info_v2_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gfxip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gfxip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_shader_engines) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(max_shader_engines) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_cu_per_sh) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(max_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sh_per_se) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(max_sh_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_backends_per_se) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(max_backends_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_texture_channel_caches) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(max_texture_channel_caches) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(regaddr_cp_dma_src_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr_hi) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(regaddr_cp_dma_src_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(regaddr_cp_dma_dst_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr_hi) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(regaddr_cp_dma_dst_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_command) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(regaddr_cp_dma_command) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_status) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(regaddr_cp_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_rlc_gpu_clock_32) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(regaddr_rlc_gpu_clock_32) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rlc_gpu_timer_refclk) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(rlc_gpu_timer_refclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_cu_per_sh) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(active_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_rb_per_se) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(active_rb_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gcgoldenoffset) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gcgoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_num_gprs) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_num_gprs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_gsprim_buff_depth) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_gsprim_buff_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_parameter_cache_depth) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_parameter_cache_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_wave_size) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_wave_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_max_waves_per_simd) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_max_waves_per_simd) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_lds_size) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_lds_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_num_max_gs_thds) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_num_max_gs_thds) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_gs_table_depth) as usize - ptr as usize }, 61usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_gs_table_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_double_offchip_lds_buffer) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_double_offchip_lds_buffer) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_max_scratch_slots_per_cu) as usize - ptr as usize }, 63usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(gc_max_scratch_slots_per_cu) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sram_rm_fuses_val) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(sram_rm_fuses_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sram_custom_rm_fuses_val) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_4), "::", stringify!(sram_custom_rm_fuses_val) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gfx_info_v2_7 { pub table_header: atom_common_table_header, pub gfxip_min_ver: u8, pub gfxip_max_ver: u8, pub max_shader_engines: u8, pub reserved: u8, pub max_cu_per_sh: u8, pub max_sh_per_se: u8, pub max_backends_per_se: u8, pub max_texture_channel_caches: u8, pub regaddr_cp_dma_src_addr: u32, pub regaddr_cp_dma_src_addr_hi: u32, pub regaddr_cp_dma_dst_addr: u32, pub regaddr_cp_dma_dst_addr_hi: u32, pub regaddr_cp_dma_command: u32, pub regaddr_cp_status: u32, pub regaddr_rlc_gpu_clock_32: u32, pub rlc_gpu_timer_refclk: u32, pub active_cu_per_sh: u8, pub active_rb_per_se: u8, pub gcgoldenoffset: u16, pub gc_num_gprs: u16, pub gc_gsprim_buff_depth: u16, pub gc_parameter_cache_depth: u16, pub gc_wave_size: u16, pub gc_max_waves_per_simd: u16, pub gc_lds_size: u16, pub gc_num_max_gs_thds: u8, pub gc_gs_table_depth: u8, pub gc_double_offchip_lds_buffer: u8, pub gc_max_scratch_slots_per_cu: u8, pub sram_rm_fuses_val: u32, pub sram_custom_rm_fuses_val: u32, pub cut_cu: u8, pub active_cu_total: u8, pub cu_reserved: [u8; 2usize], pub gc_config: u32, pub inactive_cu_per_se: [u8; 8usize], pub reserved2: [u32; 6usize], } #[test] fn bindgen_test_layout_atom_gfx_info_v2_7() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 112usize, concat!("Size of: ", stringify!(atom_gfx_info_v2_7)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gfx_info_v2_7)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gfxip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gfxip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_shader_engines) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(max_shader_engines) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_cu_per_sh) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(max_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sh_per_se) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(max_sh_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_backends_per_se) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(max_backends_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_texture_channel_caches) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(max_texture_channel_caches) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(regaddr_cp_dma_src_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_src_addr_hi) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(regaddr_cp_dma_src_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(regaddr_cp_dma_dst_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_dst_addr_hi) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(regaddr_cp_dma_dst_addr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_dma_command) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(regaddr_cp_dma_command) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_cp_status) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(regaddr_cp_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_rlc_gpu_clock_32) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(regaddr_rlc_gpu_clock_32) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).rlc_gpu_timer_refclk) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(rlc_gpu_timer_refclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_cu_per_sh) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(active_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_rb_per_se) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(active_rb_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gcgoldenoffset) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gcgoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_num_gprs) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_num_gprs) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_gsprim_buff_depth) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_gsprim_buff_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_parameter_cache_depth) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_parameter_cache_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_wave_size) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_wave_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_max_waves_per_simd) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_max_waves_per_simd) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_lds_size) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_lds_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_num_max_gs_thds) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_num_max_gs_thds) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_gs_table_depth) as usize - ptr as usize }, 61usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_gs_table_depth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_double_offchip_lds_buffer) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_double_offchip_lds_buffer) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_max_scratch_slots_per_cu) as usize - ptr as usize }, 63usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_max_scratch_slots_per_cu) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sram_rm_fuses_val) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(sram_rm_fuses_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sram_custom_rm_fuses_val) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(sram_custom_rm_fuses_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cut_cu) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(cut_cu) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_cu_total) as usize - ptr as usize }, 73usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(active_cu_total) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cu_reserved) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(cu_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_config) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(gc_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).inactive_cu_per_se) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(inactive_cu_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v2_7), "::", stringify!(reserved2) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gfx_info_v3_0 { pub table_header: atom_common_table_header, pub gfxip_min_ver: u8, pub gfxip_max_ver: u8, pub max_shader_engines: u8, pub max_tile_pipes: u8, pub max_cu_per_sh: u8, pub max_sh_per_se: u8, pub max_backends_per_se: u8, pub max_texture_channel_caches: u8, pub regaddr_lsdma_queue0_rb_rptr: u32, pub regaddr_lsdma_queue0_rb_rptr_hi: u32, pub regaddr_lsdma_queue0_rb_wptr: u32, pub regaddr_lsdma_queue0_rb_wptr_hi: u32, pub regaddr_lsdma_command: u32, pub regaddr_lsdma_status: u32, pub regaddr_golden_tsc_count_lower: u32, pub golden_tsc_count_lower_refclk: u32, pub active_wgp_per_se: u8, pub active_rb_per_se: u8, pub active_se: u8, pub reserved1: u8, pub sram_rm_fuses_val: u32, pub sram_custom_rm_fuses_val: u32, pub inactive_sa_mask: u32, pub gc_config: u32, pub inactive_wgp: [u8; 16usize], pub inactive_rb: [u8; 16usize], pub gdfll_as_wait_ctrl_val: u32, pub gdfll_as_step_ctrl_val: u32, pub reserved: [u32; 8usize], } #[test] fn bindgen_test_layout_atom_gfx_info_v3_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 136usize, concat!("Size of: ", stringify!(atom_gfx_info_v3_0)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gfx_info_v3_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(gfxip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(gfxip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_shader_engines) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(max_shader_engines) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_tile_pipes) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(max_tile_pipes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_cu_per_sh) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(max_cu_per_sh) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_sh_per_se) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(max_sh_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_backends_per_se) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(max_backends_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_texture_channel_caches) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(max_texture_channel_caches) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_lsdma_queue0_rb_rptr) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(regaddr_lsdma_queue0_rb_rptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_lsdma_queue0_rb_rptr_hi) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(regaddr_lsdma_queue0_rb_rptr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_lsdma_queue0_rb_wptr) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(regaddr_lsdma_queue0_rb_wptr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_lsdma_queue0_rb_wptr_hi) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(regaddr_lsdma_queue0_rb_wptr_hi) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_lsdma_command) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(regaddr_lsdma_command) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_lsdma_status) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(regaddr_lsdma_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regaddr_golden_tsc_count_lower) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(regaddr_golden_tsc_count_lower) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).golden_tsc_count_lower_refclk) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(golden_tsc_count_lower_refclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_wgp_per_se) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(active_wgp_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_rb_per_se) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(active_rb_per_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).active_se) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(active_se) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sram_rm_fuses_val) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(sram_rm_fuses_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sram_custom_rm_fuses_val) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(sram_custom_rm_fuses_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).inactive_sa_mask) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(inactive_sa_mask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gc_config) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(gc_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).inactive_wgp) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(inactive_wgp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).inactive_rb) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(inactive_rb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_wait_ctrl_val) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(gdfll_as_wait_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_step_ctrl_val) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(gdfll_as_step_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_gfx_info_v3_0), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smu_info_v3_1 { pub table_header: atom_common_table_header, pub smuip_min_ver: u8, pub smuip_max_ver: u8, pub smu_rsd1: u8, pub gpuclk_ss_mode: u8, pub sclk_ss_percentage: u16, pub sclk_ss_rate_10hz: u16, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_rate_10hz: u16, pub core_refclk_10khz: u32, pub ac_dc_gpio_bit: u8, pub ac_dc_polarity: u8, pub vr0hot_gpio_bit: u8, pub vr0hot_polarity: u8, pub vr1hot_gpio_bit: u8, pub vr1hot_polarity: u8, pub fw_ctf_gpio_bit: u8, pub fw_ctf_polarity: u8, } #[test] fn bindgen_test_layout_atom_smu_info_v3_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(atom_smu_info_v3_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smu_info_v3_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(smuip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(smuip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_rsd1) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(smu_rsd1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_mode) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(gpuclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_percentage) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(sclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_rate_10hz) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(sclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_rate_10hz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(gpuclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).core_refclk_10khz) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(core_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ac_dc_gpio_bit) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(ac_dc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ac_dc_polarity) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(ac_dc_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hot_gpio_bit) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(vr0hot_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hot_polarity) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(vr0hot_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hot_gpio_bit) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(vr1hot_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hot_polarity) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(vr1hot_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_ctf_gpio_bit) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(fw_ctf_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_ctf_polarity) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_1), "::", stringify!(fw_ctf_polarity) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smu_info_v3_2 { pub table_header: atom_common_table_header, pub smuip_min_ver: u8, pub smuip_max_ver: u8, pub smu_rsd1: u8, pub gpuclk_ss_mode: u8, pub sclk_ss_percentage: u16, pub sclk_ss_rate_10hz: u16, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_rate_10hz: u16, pub core_refclk_10khz: u32, pub ac_dc_gpio_bit: u8, pub ac_dc_polarity: u8, pub vr0hot_gpio_bit: u8, pub vr0hot_polarity: u8, pub vr1hot_gpio_bit: u8, pub vr1hot_polarity: u8, pub fw_ctf_gpio_bit: u8, pub fw_ctf_polarity: u8, pub pcc_gpio_bit: u8, pub pcc_gpio_polarity: u8, pub smugoldenoffset: u16, pub gpupll_vco_freq_10khz: u32, pub bootup_smnclk_10khz: u32, pub bootup_socclk_10khz: u32, pub bootup_mp0clk_10khz: u32, pub bootup_mp1clk_10khz: u32, pub bootup_lclk_10khz: u32, pub bootup_dcefclk_10khz: u32, pub ctf_threshold_override_value: u32, pub reserved: [u32; 5usize], } #[test] fn bindgen_test_layout_atom_smu_info_v3_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 84usize, concat!("Size of: ", stringify!(atom_smu_info_v3_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smu_info_v3_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(smuip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(smuip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_rsd1) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(smu_rsd1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_mode) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(gpuclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_percentage) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(sclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_rate_10hz) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(sclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_rate_10hz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(gpuclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).core_refclk_10khz) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(core_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ac_dc_gpio_bit) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(ac_dc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ac_dc_polarity) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(ac_dc_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hot_gpio_bit) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(vr0hot_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hot_polarity) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(vr0hot_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hot_gpio_bit) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(vr1hot_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hot_polarity) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(vr1hot_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_ctf_gpio_bit) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(fw_ctf_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_ctf_polarity) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(fw_ctf_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_bit) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(pcc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_polarity) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(pcc_gpio_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smugoldenoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(smugoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpupll_vco_freq_10khz) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(gpupll_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_smnclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(bootup_smnclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_socclk_10khz) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(bootup_socclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp0clk_10khz) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(bootup_mp0clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp1clk_10khz) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(bootup_mp1clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_lclk_10khz) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(bootup_lclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dcefclk_10khz) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(bootup_dcefclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctf_threshold_override_value) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(ctf_threshold_override_value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_2), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smu_info_v3_3 { pub table_header: atom_common_table_header, pub smuip_min_ver: u8, pub smuip_max_ver: u8, pub waflclk_ss_mode: u8, pub gpuclk_ss_mode: u8, pub sclk_ss_percentage: u16, pub sclk_ss_rate_10hz: u16, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_rate_10hz: u16, pub core_refclk_10khz: u32, pub ac_dc_gpio_bit: u8, pub ac_dc_polarity: u8, pub vr0hot_gpio_bit: u8, pub vr0hot_polarity: u8, pub vr1hot_gpio_bit: u8, pub vr1hot_polarity: u8, pub fw_ctf_gpio_bit: u8, pub fw_ctf_polarity: u8, pub pcc_gpio_bit: u8, pub pcc_gpio_polarity: u8, pub smugoldenoffset: u16, pub gpupll_vco_freq_10khz: u32, pub bootup_smnclk_10khz: u32, pub bootup_socclk_10khz: u32, pub bootup_mp0clk_10khz: u32, pub bootup_mp1clk_10khz: u32, pub bootup_lclk_10khz: u32, pub bootup_dcefclk_10khz: u32, pub ctf_threshold_override_value: u32, pub syspll3_0_vco_freq_10khz: u32, pub syspll3_1_vco_freq_10khz: u32, pub bootup_fclk_10khz: u32, pub bootup_waflclk_10khz: u32, pub smu_info_caps: u32, pub waflclk_ss_percentage: u16, pub smuinitoffset: u16, pub reserved: u32, } #[test] fn bindgen_test_layout_atom_smu_info_v3_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 92usize, concat!("Size of: ", stringify!(atom_smu_info_v3_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smu_info_v3_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(smuip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(smuip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).waflclk_ss_mode) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(waflclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_mode) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(gpuclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_percentage) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(sclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_rate_10hz) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(sclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_rate_10hz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(gpuclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).core_refclk_10khz) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(core_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ac_dc_gpio_bit) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(ac_dc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ac_dc_polarity) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(ac_dc_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hot_gpio_bit) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(vr0hot_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hot_polarity) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(vr0hot_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hot_gpio_bit) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(vr1hot_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hot_polarity) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(vr1hot_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_ctf_gpio_bit) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(fw_ctf_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fw_ctf_polarity) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(fw_ctf_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_bit) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(pcc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_polarity) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(pcc_gpio_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smugoldenoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(smugoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpupll_vco_freq_10khz) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(gpupll_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_smnclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_smnclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_socclk_10khz) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_socclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp0clk_10khz) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_mp0clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp1clk_10khz) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_mp1clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_lclk_10khz) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_lclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dcefclk_10khz) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_dcefclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctf_threshold_override_value) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(ctf_threshold_override_value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll3_0_vco_freq_10khz) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(syspll3_0_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll3_1_vco_freq_10khz) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(syspll3_1_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_fclk_10khz) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_fclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_waflclk_10khz) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(bootup_waflclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_info_caps) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(smu_info_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).waflclk_ss_percentage) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(waflclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuinitoffset) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(smuinitoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_3), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smu_info_v3_5 { pub table_header: atom_common_table_header, pub smuip_min_ver: u8, pub smuip_max_ver: u8, pub waflclk_ss_mode: u8, pub gpuclk_ss_mode: u8, pub sclk_ss_percentage: u16, pub sclk_ss_rate_10hz: u16, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_rate_10hz: u16, pub core_refclk_10khz: u32, pub syspll0_1_vco_freq_10khz: u32, pub syspll0_2_vco_freq_10khz: u32, pub pcc_gpio_bit: u8, pub pcc_gpio_polarity: u8, pub smugoldenoffset: u16, pub syspll0_0_vco_freq_10khz: u32, pub bootup_smnclk_10khz: u32, pub bootup_socclk_10khz: u32, pub bootup_mp0clk_10khz: u32, pub bootup_mp1clk_10khz: u32, pub bootup_lclk_10khz: u32, pub bootup_dcefclk_10khz: u32, pub ctf_threshold_override_value: u32, pub syspll3_0_vco_freq_10khz: u32, pub syspll3_1_vco_freq_10khz: u32, pub bootup_fclk_10khz: u32, pub bootup_waflclk_10khz: u32, pub smu_info_caps: u32, pub waflclk_ss_percentage: u16, pub smuinitoffset: u16, pub bootup_dprefclk_10khz: u32, pub bootup_usbclk_10khz: u32, pub smb_slave_address: u32, pub cg_fdo_ctrl0_val: u32, pub cg_fdo_ctrl1_val: u32, pub cg_fdo_ctrl2_val: u32, pub gdfll_as_wait_ctrl_val: u32, pub gdfll_as_step_ctrl_val: u32, pub bootup_dtbclk_10khz: u32, pub fclk_syspll_refclk_10khz: u32, pub smusvi_svc0_val: u32, pub smusvi_svc1_val: u32, pub smusvi_svd0_val: u32, pub smusvi_svd1_val: u32, pub smusvi_svt0_val: u32, pub smusvi_svt1_val: u32, pub cg_tach_ctrl_val: u32, pub cg_pump_ctrl1_val: u32, pub cg_pump_tach_ctrl_val: u32, pub thm_ctf_delay_val: u32, pub thm_thermal_int_ctrl_val: u32, pub thm_tmon_config_val: u32, pub reserved: [u32; 16usize], } #[test] fn bindgen_test_layout_atom_smu_info_v3_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 240usize, concat!("Size of: ", stringify!(atom_smu_info_v3_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smu_info_v3_5)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smuip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smuip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).waflclk_ss_mode) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(waflclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_mode) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(gpuclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_percentage) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(sclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_rate_10hz) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(sclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_rate_10hz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(gpuclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).core_refclk_10khz) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(core_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll0_1_vco_freq_10khz) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(syspll0_1_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll0_2_vco_freq_10khz) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(syspll0_2_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_bit) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(pcc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_polarity) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(pcc_gpio_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smugoldenoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smugoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll0_0_vco_freq_10khz) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(syspll0_0_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_smnclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_smnclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_socclk_10khz) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_socclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp0clk_10khz) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_mp0clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp1clk_10khz) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_mp1clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_lclk_10khz) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_lclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dcefclk_10khz) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_dcefclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctf_threshold_override_value) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(ctf_threshold_override_value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll3_0_vco_freq_10khz) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(syspll3_0_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll3_1_vco_freq_10khz) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(syspll3_1_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_fclk_10khz) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_fclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_waflclk_10khz) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_waflclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_info_caps) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smu_info_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).waflclk_ss_percentage) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(waflclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuinitoffset) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smuinitoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dprefclk_10khz) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_dprefclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_usbclk_10khz) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_usbclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smb_slave_address) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smb_slave_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl0_val) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(cg_fdo_ctrl0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl1_val) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(cg_fdo_ctrl1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl2_val) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(cg_fdo_ctrl2_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_wait_ctrl_val) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(gdfll_as_wait_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_step_ctrl_val) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(gdfll_as_step_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dtbclk_10khz) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(bootup_dtbclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclk_syspll_refclk_10khz) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(fclk_syspll_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svc0_val) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smusvi_svc0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svc1_val) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smusvi_svc1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svd0_val) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smusvi_svd0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svd1_val) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smusvi_svd1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svt0_val) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smusvi_svt0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svt1_val) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(smusvi_svt1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_tach_ctrl_val) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(cg_tach_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_pump_ctrl1_val) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(cg_pump_ctrl1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_pump_tach_ctrl_val) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(cg_pump_tach_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_ctf_delay_val) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(thm_ctf_delay_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_thermal_int_ctrl_val) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(thm_thermal_int_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_tmon_config_val) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(thm_tmon_config_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_5), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smu_info_v3_6 { pub table_header: atom_common_table_header, pub smuip_min_ver: u8, pub smuip_max_ver: u8, pub waflclk_ss_mode: u8, pub gpuclk_ss_mode: u8, pub sclk_ss_percentage: u16, pub sclk_ss_rate_10hz: u16, pub gpuclk_ss_percentage: u16, pub gpuclk_ss_rate_10hz: u16, pub core_refclk_10khz: u32, pub syspll0_1_vco_freq_10khz: u32, pub syspll0_2_vco_freq_10khz: u32, pub pcc_gpio_bit: u8, pub pcc_gpio_polarity: u8, pub smugoldenoffset: u16, pub syspll0_0_vco_freq_10khz: u32, pub bootup_smnclk_10khz: u32, pub bootup_socclk_10khz: u32, pub bootup_mp0clk_10khz: u32, pub bootup_mp1clk_10khz: u32, pub bootup_lclk_10khz: u32, pub bootup_dxioclk_10khz: u32, pub ctf_threshold_override_value: u32, pub syspll3_0_vco_freq_10khz: u32, pub syspll3_1_vco_freq_10khz: u32, pub bootup_fclk_10khz: u32, pub bootup_waflclk_10khz: u32, pub smu_info_caps: u32, pub waflclk_ss_percentage: u16, pub smuinitoffset: u16, pub bootup_gfxavsclk_10khz: u32, pub bootup_mpioclk_10khz: u32, pub smb_slave_address: u32, pub cg_fdo_ctrl0_val: u32, pub cg_fdo_ctrl1_val: u32, pub cg_fdo_ctrl2_val: u32, pub gdfll_as_wait_ctrl_val: u32, pub gdfll_as_step_ctrl_val: u32, pub reserved_clk: u32, pub fclk_syspll_refclk_10khz: u32, pub smusvi_svc0_val: u32, pub smusvi_svc1_val: u32, pub smusvi_svd0_val: u32, pub smusvi_svd1_val: u32, pub smusvi_svt0_val: u32, pub smusvi_svt1_val: u32, pub cg_tach_ctrl_val: u32, pub cg_pump_ctrl1_val: u32, pub cg_pump_tach_ctrl_val: u32, pub thm_ctf_delay_val: u32, pub thm_thermal_int_ctrl_val: u32, pub thm_tmon_config_val: u32, pub bootup_vclk_10khz: u32, pub bootup_dclk_10khz: u32, pub smu_gpiopad_pu_en_val: u32, pub smu_gpiopad_pd_en_val: u32, pub reserved: [u32; 12usize], } #[test] fn bindgen_test_layout_atom_smu_info_v3_6() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 240usize, concat!("Size of: ", stringify!(atom_smu_info_v3_6)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smu_info_v3_6)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smuip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smuip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).waflclk_ss_mode) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(waflclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_mode) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(gpuclk_ss_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_percentage) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(sclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_ss_rate_10hz) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(sclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_percentage) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(gpuclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpuclk_ss_rate_10hz) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(gpuclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).core_refclk_10khz) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(core_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll0_1_vco_freq_10khz) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(syspll0_1_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll0_2_vco_freq_10khz) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(syspll0_2_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_bit) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(pcc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_polarity) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(pcc_gpio_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smugoldenoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smugoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll0_0_vco_freq_10khz) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(syspll0_0_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_smnclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_smnclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_socclk_10khz) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_socclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp0clk_10khz) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_mp0clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp1clk_10khz) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_mp1clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_lclk_10khz) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_lclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dxioclk_10khz) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_dxioclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctf_threshold_override_value) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(ctf_threshold_override_value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll3_0_vco_freq_10khz) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(syspll3_0_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll3_1_vco_freq_10khz) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(syspll3_1_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_fclk_10khz) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_fclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_waflclk_10khz) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_waflclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_info_caps) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smu_info_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).waflclk_ss_percentage) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(waflclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuinitoffset) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smuinitoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_gfxavsclk_10khz) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_gfxavsclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mpioclk_10khz) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_mpioclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smb_slave_address) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smb_slave_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl0_val) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(cg_fdo_ctrl0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl1_val) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(cg_fdo_ctrl1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl2_val) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(cg_fdo_ctrl2_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_wait_ctrl_val) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(gdfll_as_wait_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_step_ctrl_val) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(gdfll_as_step_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved_clk) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(reserved_clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclk_syspll_refclk_10khz) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(fclk_syspll_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svc0_val) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smusvi_svc0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svc1_val) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smusvi_svc1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svd0_val) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smusvi_svd0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svd1_val) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smusvi_svd1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svt0_val) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smusvi_svt0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svt1_val) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smusvi_svt1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_tach_ctrl_val) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(cg_tach_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_pump_ctrl1_val) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(cg_pump_ctrl1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_pump_tach_ctrl_val) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(cg_pump_tach_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_ctf_delay_val) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(thm_ctf_delay_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_thermal_int_ctrl_val) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(thm_thermal_int_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_tmon_config_val) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(thm_tmon_config_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vclk_10khz) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_vclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dclk_10khz) as usize - ptr as usize }, 180usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(bootup_dclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_gpiopad_pu_en_val) as usize - ptr as usize }, 184usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smu_gpiopad_pu_en_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_gpiopad_pd_en_val) as usize - ptr as usize }, 188usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(smu_gpiopad_pd_en_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 192usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v3_6), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smu_info_v4_0 { pub table_header: atom_common_table_header, pub bootup_gfxclk_bypass_10khz: u32, pub bootup_usrclk_10khz: u32, pub bootup_csrclk_10khz: u32, pub core_refclk_10khz: u32, pub syspll1_vco_freq_10khz: u32, pub syspll2_vco_freq_10khz: u32, pub pcc_gpio_bit: u8, pub pcc_gpio_polarity: u8, pub bootup_vddusr_mv: u16, pub syspll0_vco_freq_10khz: u32, pub bootup_smnclk_10khz: u32, pub bootup_socclk_10khz: u32, pub bootup_mp0clk_10khz: u32, pub bootup_mp1clk_10khz: u32, pub bootup_lclk_10khz: u32, pub bootup_dcefclk_10khz: u32, pub ctf_threshold_override_value: u32, pub syspll3_vco_freq_10khz: u32, pub mm_syspll_vco_freq_10khz: u32, pub bootup_fclk_10khz: u32, pub bootup_waflclk_10khz: u32, pub smu_info_caps: u32, pub waflclk_ss_percentage: u16, pub smuinitoffset: u16, pub bootup_dprefclk_10khz: u32, pub bootup_usbclk_10khz: u32, pub smb_slave_address: u32, pub cg_fdo_ctrl0_val: u32, pub cg_fdo_ctrl1_val: u32, pub cg_fdo_ctrl2_val: u32, pub gdfll_as_wait_ctrl_val: u32, pub gdfll_as_step_ctrl_val: u32, pub bootup_dtbclk_10khz: u32, pub fclk_syspll_refclk_10khz: u32, pub smusvi_svc0_val: u32, pub smusvi_svc1_val: u32, pub smusvi_svd0_val: u32, pub smusvi_svd1_val: u32, pub smusvi_svt0_val: u32, pub smusvi_svt1_val: u32, pub cg_tach_ctrl_val: u32, pub cg_pump_ctrl1_val: u32, pub cg_pump_tach_ctrl_val: u32, pub thm_ctf_delay_val: u32, pub thm_thermal_int_ctrl_val: u32, pub thm_tmon_config_val: u32, pub smbus_timing_cntrl0_val: u32, pub smbus_timing_cntrl1_val: u32, pub smbus_timing_cntrl2_val: u32, pub pwr_disp_timer_global_control_val: u32, pub bootup_mpioclk_10khz: u32, pub bootup_dclk0_10khz: u32, pub bootup_vclk0_10khz: u32, pub bootup_dclk1_10khz: u32, pub bootup_vclk1_10khz: u32, pub bootup_baco400clk_10khz: u32, pub bootup_baco1200clk_bypass_10khz: u32, pub bootup_baco700clk_bypass_10khz: u32, pub reserved: [u32; 16usize], } #[test] fn bindgen_test_layout_atom_smu_info_v4_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 288usize, concat!("Size of: ", stringify!(atom_smu_info_v4_0)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smu_info_v4_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_gfxclk_bypass_10khz) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_gfxclk_bypass_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_usrclk_10khz) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_usrclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_csrclk_10khz) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_csrclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).core_refclk_10khz) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(core_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll1_vco_freq_10khz) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(syspll1_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll2_vco_freq_10khz) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(syspll2_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_bit) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(pcc_gpio_bit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcc_gpio_polarity) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(pcc_gpio_polarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vddusr_mv) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_vddusr_mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll0_vco_freq_10khz) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(syspll0_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_smnclk_10khz) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_smnclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_socclk_10khz) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_socclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp0clk_10khz) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_mp0clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mp1clk_10khz) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_mp1clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_lclk_10khz) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_lclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dcefclk_10khz) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_dcefclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ctf_threshold_override_value) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(ctf_threshold_override_value) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll3_vco_freq_10khz) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(syspll3_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mm_syspll_vco_freq_10khz) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(mm_syspll_vco_freq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_fclk_10khz) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_fclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_waflclk_10khz) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_waflclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_info_caps) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smu_info_caps) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).waflclk_ss_percentage) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(waflclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smuinitoffset) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smuinitoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dprefclk_10khz) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_dprefclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_usbclk_10khz) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_usbclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smb_slave_address) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smb_slave_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl0_val) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(cg_fdo_ctrl0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl1_val) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(cg_fdo_ctrl1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_fdo_ctrl2_val) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(cg_fdo_ctrl2_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_wait_ctrl_val) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(gdfll_as_wait_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gdfll_as_step_ctrl_val) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(gdfll_as_step_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dtbclk_10khz) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_dtbclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclk_syspll_refclk_10khz) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(fclk_syspll_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svc0_val) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smusvi_svc0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svc1_val) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smusvi_svc1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svd0_val) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smusvi_svd0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svd1_val) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smusvi_svd1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svt0_val) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smusvi_svt0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smusvi_svt1_val) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smusvi_svt1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_tach_ctrl_val) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(cg_tach_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_pump_ctrl1_val) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(cg_pump_ctrl1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cg_pump_tach_ctrl_val) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(cg_pump_tach_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_ctf_delay_val) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(thm_ctf_delay_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_thermal_int_ctrl_val) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(thm_thermal_int_ctrl_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thm_tmon_config_val) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(thm_tmon_config_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smbus_timing_cntrl0_val) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smbus_timing_cntrl0_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smbus_timing_cntrl1_val) as usize - ptr as usize }, 180usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smbus_timing_cntrl1_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smbus_timing_cntrl2_val) as usize - ptr as usize }, 184usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(smbus_timing_cntrl2_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pwr_disp_timer_global_control_val) as usize - ptr as usize }, 188usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(pwr_disp_timer_global_control_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_mpioclk_10khz) as usize - ptr as usize }, 192usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_mpioclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dclk0_10khz) as usize - ptr as usize }, 196usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_dclk0_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vclk0_10khz) as usize - ptr as usize }, 200usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_vclk0_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_dclk1_10khz) as usize - ptr as usize }, 204usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_dclk1_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_vclk1_10khz) as usize - ptr as usize }, 208usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_vclk1_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_baco400clk_10khz) as usize - ptr as usize }, 212usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_baco400clk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_baco1200clk_bypass_10khz) as usize - ptr as usize }, 216usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_baco1200clk_bypass_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bootup_baco700clk_bypass_10khz) as usize - ptr as usize }, 220usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(bootup_baco700clk_bypass_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 224usize, concat!( "Offset of field: ", stringify!(atom_smu_info_v4_0), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_1 { pub table_header: atom_common_table_header, pub liquid1_i2c_address: u8, pub liquid2_i2c_address: u8, pub vr_i2c_address: u8, pub plx_i2c_address: u8, pub liquid_i2c_linescl: u8, pub liquid_i2c_linesda: u8, pub vr_i2c_linescl: u8, pub vr_i2c_linesda: u8, pub plx_i2c_linescl: u8, pub plx_i2c_linesda: u8, pub vrsensorpresent: u8, pub liquidsensorpresent: u8, pub maxvoltagestepgfx: u16, pub maxvoltagestepsoc: u16, pub vddgfxvrmapping: u8, pub vddsocvrmapping: u8, pub vddmem0vrmapping: u8, pub vddmem1vrmapping: u8, pub gfxulvphasesheddingmask: u8, pub soculvphasesheddingmask: u8, pub padding8_v: [u8; 2usize], pub gfxmaxcurrent: u16, pub gfxoffset: u8, pub padding_telemetrygfx: u8, pub socmaxcurrent: u16, pub socoffset: u8, pub padding_telemetrysoc: u8, pub mem0maxcurrent: u16, pub mem0offset: u8, pub padding_telemetrymem0: u8, pub mem1maxcurrent: u16, pub mem1offset: u8, pub padding_telemetrymem1: u8, pub acdcgpio: u8, pub acdcpolarity: u8, pub vr0hotgpio: u8, pub vr0hotpolarity: u8, pub vr1hotgpio: u8, pub vr1hotpolarity: u8, pub padding1: u8, pub padding2: u8, pub ledpin0: u8, pub ledpin1: u8, pub ledpin2: u8, pub padding8_4: u8, pub pllgfxclkspreadenabled: u8, pub pllgfxclkspreadpercent: u8, pub pllgfxclkspreadfreq: u16, pub uclkspreadenabled: u8, pub uclkspreadpercent: u8, pub uclkspreadfreq: u16, pub socclkspreadenabled: u8, pub socclkspreadpercent: u8, pub socclkspreadfreq: u16, pub acggfxclkspreadenabled: u8, pub acggfxclkspreadpercent: u8, pub acggfxclkspreadfreq: u16, pub Vr2_I2C_address: u8, pub padding_vr2: [u8; 3usize], pub boardreserved: [u32; 9usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 112usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid1_i2c_address) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(liquid1_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid2_i2c_address) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(liquid2_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr_i2c_address) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vr_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plx_i2c_address) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(plx_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid_i2c_linescl) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(liquid_i2c_linescl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid_i2c_linesda) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(liquid_i2c_linesda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr_i2c_linescl) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vr_i2c_linescl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr_i2c_linesda) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vr_i2c_linesda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plx_i2c_linescl) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(plx_i2c_linescl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plx_i2c_linesda) as usize - ptr as usize }, 13usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(plx_i2c_linesda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vrsensorpresent) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vrsensorpresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquidsensorpresent) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(liquidsensorpresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepgfx) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(maxvoltagestepgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepsoc) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(maxvoltagestepsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddgfxvrmapping) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vddgfxvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddsocvrmapping) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vddsocvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddmem0vrmapping) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vddmem0vrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddmem1vrmapping) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vddmem1vrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxulvphasesheddingmask) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(gfxulvphasesheddingmask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).soculvphasesheddingmask) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(soculvphasesheddingmask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_v) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding8_v) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxmaxcurrent) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(gfxmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(gfxoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrygfx) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding_telemetrygfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socmaxcurrent) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(socmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socoffset) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(socoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrysoc) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding_telemetrysoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem0maxcurrent) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(mem0maxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem0offset) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(mem0offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrymem0) as usize - ptr as usize }, 39usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding_telemetrymem0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem1maxcurrent) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(mem1maxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem1offset) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(mem1offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrymem1) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding_telemetrymem1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acdcgpio) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(acdcgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acdcpolarity) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(acdcpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotgpio) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vr0hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotpolarity) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vr0hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotgpio) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vr1hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotpolarity) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(vr1hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding1) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding2) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin0) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(ledpin0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin1) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(ledpin1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin2) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(ledpin2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_4) as usize - ptr as usize }, 55usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding8_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadenabled) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(pllgfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadpercent) as usize - ptr as usize }, 57usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(pllgfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadfreq) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(pllgfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadenabled) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(uclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadpercent) as usize - ptr as usize }, 61usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(uclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadfreq) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(uclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socclkspreadenabled) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(socclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socclkspreadpercent) as usize - ptr as usize }, 65usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(socclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socclkspreadfreq) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(socclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acggfxclkspreadenabled) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(acggfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acggfxclkspreadpercent) as usize - ptr as usize }, 69usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(acggfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acggfxclkspreadfreq) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(acggfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Vr2_I2C_address) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(Vr2_I2C_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_vr2) as usize - ptr as usize }, 73usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(padding_vr2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardreserved) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_1), "::", stringify!(boardreserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_3 { pub table_header: atom_common_table_header, pub liquid1_i2c_address: u8, pub liquid2_i2c_address: u8, pub vr_i2c_address: u8, pub plx_i2c_address: u8, pub liquid_i2c_linescl: u8, pub liquid_i2c_linesda: u8, pub vr_i2c_linescl: u8, pub vr_i2c_linesda: u8, pub plx_i2c_linescl: u8, pub plx_i2c_linesda: u8, pub vrsensorpresent: u8, pub liquidsensorpresent: u8, pub maxvoltagestepgfx: u16, pub maxvoltagestepsoc: u16, pub vddgfxvrmapping: u8, pub vddsocvrmapping: u8, pub vddmem0vrmapping: u8, pub vddmem1vrmapping: u8, pub gfxulvphasesheddingmask: u8, pub soculvphasesheddingmask: u8, pub externalsensorpresent: u8, pub padding8_v: u8, pub gfxmaxcurrent: u16, pub gfxoffset: u8, pub padding_telemetrygfx: u8, pub socmaxcurrent: u16, pub socoffset: u8, pub padding_telemetrysoc: u8, pub mem0maxcurrent: u16, pub mem0offset: u8, pub padding_telemetrymem0: u8, pub mem1maxcurrent: u16, pub mem1offset: u8, pub padding_telemetrymem1: u8, pub acdcgpio: u8, pub acdcpolarity: u8, pub vr0hotgpio: u8, pub vr0hotpolarity: u8, pub vr1hotgpio: u8, pub vr1hotpolarity: u8, pub padding1: u8, pub padding2: u8, pub ledpin0: u8, pub ledpin1: u8, pub ledpin2: u8, pub padding8_4: u8, pub pllgfxclkspreadenabled: u8, pub pllgfxclkspreadpercent: u8, pub pllgfxclkspreadfreq: u16, pub uclkspreadenabled: u8, pub uclkspreadpercent: u8, pub uclkspreadfreq: u16, pub fclkspreadenabled: u8, pub fclkspreadpercent: u8, pub fclkspreadfreq: u16, pub fllgfxclkspreadenabled: u8, pub fllgfxclkspreadpercent: u8, pub fllgfxclkspreadfreq: u16, pub boardreserved: [u32; 10usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 112usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid1_i2c_address) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(liquid1_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid2_i2c_address) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(liquid2_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr_i2c_address) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vr_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plx_i2c_address) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(plx_i2c_address) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid_i2c_linescl) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(liquid_i2c_linescl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquid_i2c_linesda) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(liquid_i2c_linesda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr_i2c_linescl) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vr_i2c_linescl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr_i2c_linesda) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vr_i2c_linesda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plx_i2c_linescl) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(plx_i2c_linescl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).plx_i2c_linesda) as usize - ptr as usize }, 13usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(plx_i2c_linesda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vrsensorpresent) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vrsensorpresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).liquidsensorpresent) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(liquidsensorpresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepgfx) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(maxvoltagestepgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepsoc) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(maxvoltagestepsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddgfxvrmapping) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vddgfxvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddsocvrmapping) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vddsocvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddmem0vrmapping) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vddmem0vrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddmem1vrmapping) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vddmem1vrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxulvphasesheddingmask) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(gfxulvphasesheddingmask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).soculvphasesheddingmask) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(soculvphasesheddingmask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).externalsensorpresent) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(externalsensorpresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_v) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding8_v) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxmaxcurrent) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(gfxmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(gfxoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrygfx) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding_telemetrygfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socmaxcurrent) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(socmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socoffset) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(socoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrysoc) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding_telemetrysoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem0maxcurrent) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(mem0maxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem0offset) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(mem0offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrymem0) as usize - ptr as usize }, 39usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding_telemetrymem0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem1maxcurrent) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(mem1maxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem1offset) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(mem1offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrymem1) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding_telemetrymem1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acdcgpio) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(acdcgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acdcpolarity) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(acdcpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotgpio) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vr0hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotpolarity) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vr0hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotgpio) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vr1hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotpolarity) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(vr1hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding1) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding2) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin0) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(ledpin0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin1) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(ledpin1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin2) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(ledpin2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_4) as usize - ptr as usize }, 55usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(padding8_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadenabled) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(pllgfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadpercent) as usize - ptr as usize }, 57usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(pllgfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadfreq) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(pllgfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadenabled) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(uclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadpercent) as usize - ptr as usize }, 61usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(uclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadfreq) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(uclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadenabled) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(fclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadpercent) as usize - ptr as usize }, 65usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(fclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadfreq) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(fclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadenabled) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(fllgfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadpercent) as usize - ptr as usize }, 69usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(fllgfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadfreq) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(fllgfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardreserved) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_3), "::", stringify!(boardreserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct smudpm_i2ccontrollerconfig_t { pub enabled: u32, pub slaveaddress: u32, pub controllerport: u32, pub controllername: u32, pub thermalthrottler: u32, pub i2cprotocol: u32, pub i2cspeed: u32, } #[test] fn bindgen_test_layout_smudpm_i2ccontrollerconfig_t() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(smudpm_i2ccontrollerconfig_t)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(smudpm_i2ccontrollerconfig_t)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enabled) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(smudpm_i2ccontrollerconfig_t), "::", stringify!(enabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).slaveaddress) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(smudpm_i2ccontrollerconfig_t), "::", stringify!(slaveaddress) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).controllerport) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(smudpm_i2ccontrollerconfig_t), "::", stringify!(controllerport) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).controllername) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(smudpm_i2ccontrollerconfig_t), "::", stringify!(controllername) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).thermalthrottler) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(smudpm_i2ccontrollerconfig_t), "::", stringify!(thermalthrottler) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2cprotocol) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(smudpm_i2ccontrollerconfig_t), "::", stringify!(i2cprotocol) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2cspeed) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(smudpm_i2ccontrollerconfig_t), "::", stringify!(i2cspeed) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_4 { pub table_header: atom_common_table_header, pub i2c_padding: [u32; 3usize], pub maxvoltagestepgfx: u16, pub maxvoltagestepsoc: u16, pub vddgfxvrmapping: u8, pub vddsocvrmapping: u8, pub vddmem0vrmapping: u8, pub vddmem1vrmapping: u8, pub gfxulvphasesheddingmask: u8, pub soculvphasesheddingmask: u8, pub externalsensorpresent: u8, pub padding8_v: u8, pub gfxmaxcurrent: u16, pub gfxoffset: u8, pub padding_telemetrygfx: u8, pub socmaxcurrent: u16, pub socoffset: u8, pub padding_telemetrysoc: u8, pub mem0maxcurrent: u16, pub mem0offset: u8, pub padding_telemetrymem0: u8, pub mem1maxcurrent: u16, pub mem1offset: u8, pub padding_telemetrymem1: u8, pub acdcgpio: u8, pub acdcpolarity: u8, pub vr0hotgpio: u8, pub vr0hotpolarity: u8, pub vr1hotgpio: u8, pub vr1hotpolarity: u8, pub padding1: u8, pub padding2: u8, pub ledpin0: u8, pub ledpin1: u8, pub ledpin2: u8, pub padding8_4: u8, pub pllgfxclkspreadenabled: u8, pub pllgfxclkspreadpercent: u8, pub pllgfxclkspreadfreq: u16, pub uclkspreadenabled: u8, pub uclkspreadpercent: u8, pub uclkspreadfreq: u16, pub fclkspreadenabled: u8, pub fclkspreadpercent: u8, pub fclkspreadfreq: u16, pub fllgfxclkspreadenabled: u8, pub fllgfxclkspreadpercent: u8, pub fllgfxclkspreadfreq: u16, pub i2ccontrollers: [smudpm_i2ccontrollerconfig_t; 7usize], pub boardreserved: [u32; 10usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 308usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_padding) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(i2c_padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepgfx) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(maxvoltagestepgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepsoc) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(maxvoltagestepsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddgfxvrmapping) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vddgfxvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddsocvrmapping) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vddsocvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddmem0vrmapping) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vddmem0vrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddmem1vrmapping) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vddmem1vrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxulvphasesheddingmask) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(gfxulvphasesheddingmask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).soculvphasesheddingmask) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(soculvphasesheddingmask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).externalsensorpresent) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(externalsensorpresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_v) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding8_v) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxmaxcurrent) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(gfxmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(gfxoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrygfx) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding_telemetrygfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socmaxcurrent) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(socmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socoffset) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(socoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrysoc) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding_telemetrysoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem0maxcurrent) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(mem0maxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem0offset) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(mem0offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrymem0) as usize - ptr as usize }, 39usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding_telemetrymem0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem1maxcurrent) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(mem1maxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem1offset) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(mem1offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrymem1) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding_telemetrymem1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acdcgpio) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(acdcgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acdcpolarity) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(acdcpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotgpio) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vr0hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotpolarity) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vr0hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotgpio) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vr1hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotpolarity) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(vr1hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding1) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding2) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin0) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(ledpin0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin1) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(ledpin1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ledpin2) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(ledpin2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_4) as usize - ptr as usize }, 55usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(padding8_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadenabled) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(pllgfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadpercent) as usize - ptr as usize }, 57usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(pllgfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadfreq) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(pllgfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadenabled) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(uclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadpercent) as usize - ptr as usize }, 61usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(uclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadfreq) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(uclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadenabled) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(fclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadpercent) as usize - ptr as usize }, 65usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(fclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadfreq) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(fclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadenabled) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(fllgfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadpercent) as usize - ptr as usize }, 69usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(fllgfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadfreq) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(fllgfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2ccontrollers) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(i2ccontrollers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardreserved) as usize - ptr as usize }, 268usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_4), "::", stringify!(boardreserved) ) ); } pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_VR_GFX: smudpm_v4_5_i2ccontrollername_e = 0; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_VR_SOC: smudpm_v4_5_i2ccontrollername_e = 1; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_VR_VDDCI: smudpm_v4_5_i2ccontrollername_e = 2; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_VR_MVDD: smudpm_v4_5_i2ccontrollername_e = 3; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_LIQUID0: smudpm_v4_5_i2ccontrollername_e = 4; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_LIQUID1: smudpm_v4_5_i2ccontrollername_e = 5; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_PLX: smudpm_v4_5_i2ccontrollername_e = 6; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_SPARE: smudpm_v4_5_i2ccontrollername_e = 7; pub const smudpm_v4_5_i2ccontrollername_e_SMC_V4_5_I2C_CONTROLLER_NAME_COUNT: smudpm_v4_5_i2ccontrollername_e = 8; pub type smudpm_v4_5_i2ccontrollername_e = ::core::ffi::c_uint; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_TYPE_NONE: smudpm_v4_5_i2ccontrollerthrottler_e = 0; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_VR_GFX: smudpm_v4_5_i2ccontrollerthrottler_e = 1; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_VR_SOC: smudpm_v4_5_i2ccontrollerthrottler_e = 2; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_VR_VDDCI: smudpm_v4_5_i2ccontrollerthrottler_e = 3; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_VR_MVDD: smudpm_v4_5_i2ccontrollerthrottler_e = 4; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_LIQUID0: smudpm_v4_5_i2ccontrollerthrottler_e = 5; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_LIQUID1: smudpm_v4_5_i2ccontrollerthrottler_e = 6; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_PLX: smudpm_v4_5_i2ccontrollerthrottler_e = 7; pub const smudpm_v4_5_i2ccontrollerthrottler_e_SMC_V4_5_I2C_CONTROLLER_THROTTLER_COUNT: smudpm_v4_5_i2ccontrollerthrottler_e = 8; pub type smudpm_v4_5_i2ccontrollerthrottler_e = ::core::ffi::c_uint; pub const smudpm_v4_5_i2ccontrollerprotocol_e_SMC_V4_5_I2C_CONTROLLER_PROTOCOL_VR_0: smudpm_v4_5_i2ccontrollerprotocol_e = 0; pub const smudpm_v4_5_i2ccontrollerprotocol_e_SMC_V4_5_I2C_CONTROLLER_PROTOCOL_VR_1: smudpm_v4_5_i2ccontrollerprotocol_e = 1; pub const smudpm_v4_5_i2ccontrollerprotocol_e_SMC_V4_5_I2C_CONTROLLER_PROTOCOL_TMP_0: smudpm_v4_5_i2ccontrollerprotocol_e = 2; pub const smudpm_v4_5_i2ccontrollerprotocol_e_SMC_V4_5_I2C_CONTROLLER_PROTOCOL_TMP_1: smudpm_v4_5_i2ccontrollerprotocol_e = 3; pub const smudpm_v4_5_i2ccontrollerprotocol_e_SMC_V4_5_I2C_CONTROLLER_PROTOCOL_SPARE_0: smudpm_v4_5_i2ccontrollerprotocol_e = 4; pub const smudpm_v4_5_i2ccontrollerprotocol_e_SMC_V4_5_I2C_CONTROLLER_PROTOCOL_SPARE_1: smudpm_v4_5_i2ccontrollerprotocol_e = 5; pub const smudpm_v4_5_i2ccontrollerprotocol_e_SMC_V4_5_I2C_CONTROLLER_PROTOCOL_COUNT: smudpm_v4_5_i2ccontrollerprotocol_e = 6; pub type smudpm_v4_5_i2ccontrollerprotocol_e = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct smudpm_i2c_controller_config_v2 { pub Enabled: u8, pub Speed: u8, pub Padding: [u8; 2usize], pub SlaveAddress: u32, pub ControllerPort: u8, pub ControllerName: u8, pub ThermalThrotter: u8, pub I2cProtocol: u8, } #[test] fn bindgen_test_layout_smudpm_i2c_controller_config_v2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(smudpm_i2c_controller_config_v2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(smudpm_i2c_controller_config_v2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Enabled) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(Enabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Speed) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(Speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(Padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SlaveAddress) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(SlaveAddress) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ControllerPort) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(ControllerPort) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ControllerName) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(ControllerName) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ThermalThrotter) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(ThermalThrotter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).I2cProtocol) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v2), "::", stringify!(I2cProtocol) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_5 { pub table_header: atom_common_table_header, pub I2cControllers: [smudpm_i2c_controller_config_v2; 8usize], pub MaxVoltageStepGfx: u16, pub MaxVoltageStepSoc: u16, pub VddGfxVrMapping: u8, pub VddSocVrMapping: u8, pub VddMem0VrMapping: u8, pub VddMem1VrMapping: u8, pub GfxUlvPhaseSheddingMask: u8, pub SocUlvPhaseSheddingMask: u8, pub ExternalSensorPresent: u8, pub Padding8_V: u8, pub GfxMaxCurrent: u16, pub GfxOffset: u8, pub Padding_TelemetryGfx: u8, pub SocMaxCurrent: u16, pub SocOffset: u8, pub Padding_TelemetrySoc: u8, pub Mem0MaxCurrent: u16, pub Mem0Offset: u8, pub Padding_TelemetryMem0: u8, pub Mem1MaxCurrent: u16, pub Mem1Offset: u8, pub Padding_TelemetryMem1: u8, pub AcDcGpio: u8, pub AcDcPolarity: u8, pub VR0HotGpio: u8, pub VR0HotPolarity: u8, pub VR1HotGpio: u8, pub VR1HotPolarity: u8, pub GthrGpio: u8, pub GthrPolarity: u8, pub LedPin0: u8, pub LedPin1: u8, pub LedPin2: u8, pub padding8_4: u8, pub PllGfxclkSpreadEnabled: u8, pub PllGfxclkSpreadPercent: u8, pub PllGfxclkSpreadFreq: u16, pub DfllGfxclkSpreadEnabled: u8, pub DfllGfxclkSpreadPercent: u8, pub DfllGfxclkSpreadFreq: u16, pub UclkSpreadEnabled: u8, pub UclkSpreadPercent: u8, pub UclkSpreadFreq: u16, pub SoclkSpreadEnabled: u8, pub SocclkSpreadPercent: u8, pub SocclkSpreadFreq: u16, pub TotalBoardPower: u16, pub BoardPadding: u16, pub MvddRatio: u32, pub BoardReserved: [u32; 9usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 200usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_5)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).I2cControllers) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(I2cControllers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MaxVoltageStepGfx) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(MaxVoltageStepGfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MaxVoltageStepSoc) as usize - ptr as usize }, 102usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(MaxVoltageStepSoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddGfxVrMapping) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VddGfxVrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddSocVrMapping) as usize - ptr as usize }, 105usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VddSocVrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddMem0VrMapping) as usize - ptr as usize }, 106usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VddMem0VrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddMem1VrMapping) as usize - ptr as usize }, 107usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VddMem1VrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxUlvPhaseSheddingMask) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(GfxUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocUlvPhaseSheddingMask) as usize - ptr as usize }, 109usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(SocUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ExternalSensorPresent) as usize - ptr as usize }, 110usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(ExternalSensorPresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding8_V) as usize - ptr as usize }, 111usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Padding8_V) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxMaxCurrent) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(GfxMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxOffset) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(GfxOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryGfx) as usize - ptr as usize }, 115usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Padding_TelemetryGfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocMaxCurrent) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(SocMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocOffset) as usize - ptr as usize }, 118usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(SocOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetrySoc) as usize - ptr as usize }, 119usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Padding_TelemetrySoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem0MaxCurrent) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Mem0MaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem0Offset) as usize - ptr as usize }, 122usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Mem0Offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryMem0) as usize - ptr as usize }, 123usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Padding_TelemetryMem0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem1MaxCurrent) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Mem1MaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem1Offset) as usize - ptr as usize }, 126usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Mem1Offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryMem1) as usize - ptr as usize }, 127usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(Padding_TelemetryMem1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).AcDcGpio) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(AcDcGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).AcDcPolarity) as usize - ptr as usize }, 129usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(AcDcPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotGpio) as usize - ptr as usize }, 130usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VR0HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotPolarity) as usize - ptr as usize }, 131usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VR0HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotGpio) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VR1HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotPolarity) as usize - ptr as usize }, 133usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(VR1HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GthrGpio) as usize - ptr as usize }, 134usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(GthrGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GthrPolarity) as usize - ptr as usize }, 135usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(GthrPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin0) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(LedPin0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin1) as usize - ptr as usize }, 137usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(LedPin1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin2) as usize - ptr as usize }, 138usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(LedPin2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_4) as usize - ptr as usize }, 139usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(padding8_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadEnabled) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(PllGfxclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadPercent) as usize - ptr as usize }, 141usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(PllGfxclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadFreq) as usize - ptr as usize }, 142usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(PllGfxclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadEnabled) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(DfllGfxclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadPercent) as usize - ptr as usize }, 145usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(DfllGfxclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadFreq) as usize - ptr as usize }, 146usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(DfllGfxclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadEnabled) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(UclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadPercent) as usize - ptr as usize }, 149usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(UclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadFreq) as usize - ptr as usize }, 150usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(UclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SoclkSpreadEnabled) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(SoclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocclkSpreadPercent) as usize - ptr as usize }, 153usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(SocclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocclkSpreadFreq) as usize - ptr as usize }, 154usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(SocclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).TotalBoardPower) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(TotalBoardPower) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardPadding) as usize - ptr as usize }, 158usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(BoardPadding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MvddRatio) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(MvddRatio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardReserved) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_5), "::", stringify!(BoardReserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_6 { pub table_header: atom_common_table_header, pub i2c_padding: [u32; 3usize], pub maxvoltagestepgfx: u16, pub maxvoltagestepsoc: u16, pub vddgfxvrmapping: u8, pub vddsocvrmapping: u8, pub vddmemvrmapping: u8, pub boardvrmapping: u8, pub gfxulvphasesheddingmask: u8, pub externalsensorpresent: u8, pub padding8_v: [u8; 2usize], pub gfxmaxcurrent: u16, pub gfxoffset: u8, pub padding_telemetrygfx: u8, pub socmaxcurrent: u16, pub socoffset: u8, pub padding_telemetrysoc: u8, pub memmaxcurrent: u16, pub memoffset: u8, pub padding_telemetrymem: u8, pub boardmaxcurrent: u16, pub boardoffset: u8, pub padding_telemetryboardinput: u8, pub vr0hotgpio: u8, pub vr0hotpolarity: u8, pub vr1hotgpio: u8, pub vr1hotpolarity: u8, pub pllgfxclkspreadenabled: u8, pub pllgfxclkspreadpercent: u8, pub pllgfxclkspreadfreq: u16, pub uclkspreadenabled: u8, pub uclkspreadpercent: u8, pub uclkspreadfreq: u16, pub fclkspreadenabled: u8, pub fclkspreadpercent: u8, pub fclkspreadfreq: u16, pub fllgfxclkspreadenabled: u8, pub fllgfxclkspreadpercent: u8, pub fllgfxclkspreadfreq: u16, pub i2ccontrollers: [smudpm_i2c_controller_config_v2; 8usize], pub memorychannelenabled: u32, pub drambitwidth: u8, pub paddingmem: [u8; 3usize], pub totalboardpower: u16, pub boardpadding: u16, pub xgmilinkspeed: [u8; 4usize], pub xgmilinkwidth: [u8; 4usize], pub xgmifclkfreq: [u16; 4usize], pub xgmisocvoltage: [u16; 4usize], pub boardreserved: [u32; 10usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_6() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 236usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_6)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_6)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_padding) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(i2c_padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepgfx) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(maxvoltagestepgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvoltagestepsoc) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(maxvoltagestepsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddgfxvrmapping) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(vddgfxvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddsocvrmapping) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(vddsocvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vddmemvrmapping) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(vddmemvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardvrmapping) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(boardvrmapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxulvphasesheddingmask) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(gfxulvphasesheddingmask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).externalsensorpresent) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(externalsensorpresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_v) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(padding8_v) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxmaxcurrent) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(gfxmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxoffset) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(gfxoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrygfx) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(padding_telemetrygfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socmaxcurrent) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(socmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).socoffset) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(socoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrysoc) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(padding_telemetrysoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memmaxcurrent) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(memmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memoffset) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(memoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetrymem) as usize - ptr as usize }, 39usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(padding_telemetrymem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardmaxcurrent) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(boardmaxcurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardoffset) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(boardoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding_telemetryboardinput) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(padding_telemetryboardinput) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotgpio) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(vr0hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr0hotpolarity) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(vr0hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotgpio) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(vr1hotgpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vr1hotpolarity) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(vr1hotpolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadenabled) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(pllgfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadpercent) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(pllgfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pllgfxclkspreadfreq) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(pllgfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadenabled) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(uclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadpercent) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(uclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uclkspreadfreq) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(uclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadenabled) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(fclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadpercent) as usize - ptr as usize }, 57usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(fclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fclkspreadfreq) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(fclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadenabled) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(fllgfxclkspreadenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadpercent) as usize - ptr as usize }, 61usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(fllgfxclkspreadpercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fllgfxclkspreadfreq) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(fllgfxclkspreadfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2ccontrollers) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(i2ccontrollers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memorychannelenabled) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(memorychannelenabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).drambitwidth) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(drambitwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).paddingmem) as usize - ptr as usize }, 165usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(paddingmem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).totalboardpower) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(totalboardpower) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardpadding) as usize - ptr as usize }, 170usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(boardpadding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmilinkspeed) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(xgmilinkspeed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmilinkwidth) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(xgmilinkwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmifclkfreq) as usize - ptr as usize }, 180usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(xgmifclkfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmisocvoltage) as usize - ptr as usize }, 188usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(xgmisocvoltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).boardreserved) as usize - ptr as usize }, 196usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_6), "::", stringify!(boardreserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_7 { pub table_header: atom_common_table_header, pub I2cControllers: [smudpm_i2c_controller_config_v2; 8usize], pub MaxVoltageStepGfx: u16, pub MaxVoltageStepSoc: u16, pub VddGfxVrMapping: u8, pub VddSocVrMapping: u8, pub VddMem0VrMapping: u8, pub VddMem1VrMapping: u8, pub GfxUlvPhaseSheddingMask: u8, pub SocUlvPhaseSheddingMask: u8, pub ExternalSensorPresent: u8, pub Padding8_V: u8, pub GfxMaxCurrent: u16, pub GfxOffset: u8, pub Padding_TelemetryGfx: u8, pub SocMaxCurrent: u16, pub SocOffset: u8, pub Padding_TelemetrySoc: u8, pub Mem0MaxCurrent: u16, pub Mem0Offset: u8, pub Padding_TelemetryMem0: u8, pub Mem1MaxCurrent: u16, pub Mem1Offset: u8, pub Padding_TelemetryMem1: u8, pub AcDcGpio: u8, pub AcDcPolarity: u8, pub VR0HotGpio: u8, pub VR0HotPolarity: u8, pub VR1HotGpio: u8, pub VR1HotPolarity: u8, pub GthrGpio: u8, pub GthrPolarity: u8, pub LedPin0: u8, pub LedPin1: u8, pub LedPin2: u8, pub padding8_4: u8, pub PllGfxclkSpreadEnabled: u8, pub PllGfxclkSpreadPercent: u8, pub PllGfxclkSpreadFreq: u16, pub DfllGfxclkSpreadEnabled: u8, pub DfllGfxclkSpreadPercent: u8, pub DfllGfxclkSpreadFreq: u16, pub UclkSpreadEnabled: u8, pub UclkSpreadPercent: u8, pub UclkSpreadFreq: u16, pub SoclkSpreadEnabled: u8, pub SocclkSpreadPercent: u8, pub SocclkSpreadFreq: u16, pub TotalBoardPower: u16, pub BoardPadding: u16, pub MvddRatio: u32, pub GpioI2cScl: u8, pub GpioI2cSda: u8, pub GpioPadding: u16, pub LedPin3: u8, pub LedPin4: u8, pub LedEnableMask: u16, pub PowerLimitScalar: [u8; 4usize], pub MvddUlvPhaseSheddingMask: u8, pub VddciUlvPhaseSheddingMask: u8, pub Padding8_Psi1: u8, pub Padding8_Psi2: u8, pub BoardReserved: [u32; 5usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_7() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 200usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_7)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_7)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).I2cControllers) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(I2cControllers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MaxVoltageStepGfx) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(MaxVoltageStepGfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MaxVoltageStepSoc) as usize - ptr as usize }, 102usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(MaxVoltageStepSoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddGfxVrMapping) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VddGfxVrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddSocVrMapping) as usize - ptr as usize }, 105usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VddSocVrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddMem0VrMapping) as usize - ptr as usize }, 106usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VddMem0VrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddMem1VrMapping) as usize - ptr as usize }, 107usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VddMem1VrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxUlvPhaseSheddingMask) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GfxUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocUlvPhaseSheddingMask) as usize - ptr as usize }, 109usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(SocUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ExternalSensorPresent) as usize - ptr as usize }, 110usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(ExternalSensorPresent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding8_V) as usize - ptr as usize }, 111usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Padding8_V) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxMaxCurrent) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GfxMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxOffset) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GfxOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryGfx) as usize - ptr as usize }, 115usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Padding_TelemetryGfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocMaxCurrent) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(SocMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocOffset) as usize - ptr as usize }, 118usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(SocOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetrySoc) as usize - ptr as usize }, 119usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Padding_TelemetrySoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem0MaxCurrent) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Mem0MaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem0Offset) as usize - ptr as usize }, 122usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Mem0Offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryMem0) as usize - ptr as usize }, 123usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Padding_TelemetryMem0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem1MaxCurrent) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Mem1MaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem1Offset) as usize - ptr as usize }, 126usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Mem1Offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryMem1) as usize - ptr as usize }, 127usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Padding_TelemetryMem1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).AcDcGpio) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(AcDcGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).AcDcPolarity) as usize - ptr as usize }, 129usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(AcDcPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotGpio) as usize - ptr as usize }, 130usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VR0HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotPolarity) as usize - ptr as usize }, 131usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VR0HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotGpio) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VR1HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotPolarity) as usize - ptr as usize }, 133usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VR1HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GthrGpio) as usize - ptr as usize }, 134usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GthrGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GthrPolarity) as usize - ptr as usize }, 135usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GthrPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin0) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(LedPin0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin1) as usize - ptr as usize }, 137usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(LedPin1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin2) as usize - ptr as usize }, 138usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(LedPin2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding8_4) as usize - ptr as usize }, 139usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(padding8_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadEnabled) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(PllGfxclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadPercent) as usize - ptr as usize }, 141usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(PllGfxclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadFreq) as usize - ptr as usize }, 142usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(PllGfxclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadEnabled) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(DfllGfxclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadPercent) as usize - ptr as usize }, 145usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(DfllGfxclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadFreq) as usize - ptr as usize }, 146usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(DfllGfxclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadEnabled) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(UclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadPercent) as usize - ptr as usize }, 149usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(UclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadFreq) as usize - ptr as usize }, 150usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(UclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SoclkSpreadEnabled) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(SoclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocclkSpreadPercent) as usize - ptr as usize }, 153usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(SocclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocclkSpreadFreq) as usize - ptr as usize }, 154usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(SocclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).TotalBoardPower) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(TotalBoardPower) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardPadding) as usize - ptr as usize }, 158usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(BoardPadding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MvddRatio) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(MvddRatio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GpioI2cScl) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GpioI2cScl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GpioI2cSda) as usize - ptr as usize }, 165usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GpioI2cSda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GpioPadding) as usize - ptr as usize }, 166usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(GpioPadding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin3) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(LedPin3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin4) as usize - ptr as usize }, 169usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(LedPin4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedEnableMask) as usize - ptr as usize }, 170usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(LedEnableMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PowerLimitScalar) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(PowerLimitScalar) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MvddUlvPhaseSheddingMask) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(MvddUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddciUlvPhaseSheddingMask) as usize - ptr as usize }, 177usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(VddciUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding8_Psi1) as usize - ptr as usize }, 178usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Padding8_Psi1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding8_Psi2) as usize - ptr as usize }, 179usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(Padding8_Psi2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardReserved) as usize - ptr as usize }, 180usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_7), "::", stringify!(BoardReserved) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct smudpm_i2c_controller_config_v3 { pub Enabled: u8, pub Speed: u8, pub SlaveAddress: u8, pub ControllerPort: u8, pub ControllerName: u8, pub ThermalThrotter: u8, pub I2cProtocol: u8, pub PaddingConfig: u8, } #[test] fn bindgen_test_layout_smudpm_i2c_controller_config_v3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(smudpm_i2c_controller_config_v3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(smudpm_i2c_controller_config_v3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Enabled) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(Enabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Speed) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(Speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SlaveAddress) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(SlaveAddress) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ControllerPort) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(ControllerPort) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ControllerName) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(ControllerName) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ThermalThrotter) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(ThermalThrotter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).I2cProtocol) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(I2cProtocol) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PaddingConfig) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(smudpm_i2c_controller_config_v3), "::", stringify!(PaddingConfig) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_9 { pub table_header: atom_common_table_header, pub I2cControllers: [smudpm_i2c_controller_config_v3; 16usize], pub GpioScl: u8, pub GpioSda: u8, pub FchUsbPdSlaveAddr: u8, pub I2cSpare: u8, pub VddGfxVrMapping: u8, pub VddSocVrMapping: u8, pub VddMem0VrMapping: u8, pub VddMem1VrMapping: u8, pub GfxUlvPhaseSheddingMask: u8, pub SocUlvPhaseSheddingMask: u8, pub VddciUlvPhaseSheddingMask: u8, pub MvddUlvPhaseSheddingMask: u8, pub GfxMaxCurrent: u16, pub GfxOffset: u8, pub Padding_TelemetryGfx: u8, pub SocMaxCurrent: u16, pub SocOffset: u8, pub Padding_TelemetrySoc: u8, pub Mem0MaxCurrent: u16, pub Mem0Offset: u8, pub Padding_TelemetryMem0: u8, pub Mem1MaxCurrent: u16, pub Mem1Offset: u8, pub Padding_TelemetryMem1: u8, pub MvddRatio: u32, pub AcDcGpio: u8, pub AcDcPolarity: u8, pub VR0HotGpio: u8, pub VR0HotPolarity: u8, pub VR1HotGpio: u8, pub VR1HotPolarity: u8, pub GthrGpio: u8, pub GthrPolarity: u8, pub LedPin0: u8, pub LedPin1: u8, pub LedPin2: u8, pub LedEnableMask: u8, pub LedPcie: u8, pub LedError: u8, pub LedSpare1: [u8; 2usize], pub PllGfxclkSpreadEnabled: u8, pub PllGfxclkSpreadPercent: u8, pub PllGfxclkSpreadFreq: u16, pub DfllGfxclkSpreadEnabled: u8, pub DfllGfxclkSpreadPercent: u8, pub DfllGfxclkSpreadFreq: u16, pub UclkSpreadEnabled: u8, pub UclkSpreadPercent: u8, pub UclkSpreadFreq: u16, pub FclkSpreadEnabled: u8, pub FclkSpreadPercent: u8, pub FclkSpreadFreq: u16, pub MemoryChannelEnabled: u32, pub DramBitWidth: u8, pub PaddingMem1: [u8; 3usize], pub TotalBoardPower: u16, pub BoardPowerPadding: u16, pub XgmiLinkSpeed: [u8; 4usize], pub XgmiLinkWidth: [u8; 4usize], pub XgmiFclkFreq: [u16; 4usize], pub XgmiSocVoltage: [u16; 4usize], pub BoardReserved: [u32; 16usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_9() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 296usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_9)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_9)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).I2cControllers) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(I2cControllers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GpioScl) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(GpioScl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GpioSda) as usize - ptr as usize }, 133usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(GpioSda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).FchUsbPdSlaveAddr) as usize - ptr as usize }, 134usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(FchUsbPdSlaveAddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).I2cSpare) as usize - ptr as usize }, 135usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(I2cSpare) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddGfxVrMapping) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VddGfxVrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddSocVrMapping) as usize - ptr as usize }, 137usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VddSocVrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddMem0VrMapping) as usize - ptr as usize }, 138usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VddMem0VrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddMem1VrMapping) as usize - ptr as usize }, 139usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VddMem1VrMapping) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxUlvPhaseSheddingMask) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(GfxUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocUlvPhaseSheddingMask) as usize - ptr as usize }, 141usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(SocUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VddciUlvPhaseSheddingMask) as usize - ptr as usize }, 142usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VddciUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MvddUlvPhaseSheddingMask) as usize - ptr as usize }, 143usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(MvddUlvPhaseSheddingMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxMaxCurrent) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(GfxMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxOffset) as usize - ptr as usize }, 146usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(GfxOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryGfx) as usize - ptr as usize }, 147usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Padding_TelemetryGfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocMaxCurrent) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(SocMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocOffset) as usize - ptr as usize }, 150usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(SocOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetrySoc) as usize - ptr as usize }, 151usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Padding_TelemetrySoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem0MaxCurrent) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Mem0MaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem0Offset) as usize - ptr as usize }, 154usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Mem0Offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryMem0) as usize - ptr as usize }, 155usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Padding_TelemetryMem0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem1MaxCurrent) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Mem1MaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Mem1Offset) as usize - ptr as usize }, 158usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Mem1Offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryMem1) as usize - ptr as usize }, 159usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(Padding_TelemetryMem1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MvddRatio) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(MvddRatio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).AcDcGpio) as usize - ptr as usize }, 164usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(AcDcGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).AcDcPolarity) as usize - ptr as usize }, 165usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(AcDcPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotGpio) as usize - ptr as usize }, 166usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VR0HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotPolarity) as usize - ptr as usize }, 167usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VR0HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotGpio) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VR1HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotPolarity) as usize - ptr as usize }, 169usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(VR1HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GthrGpio) as usize - ptr as usize }, 170usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(GthrGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GthrPolarity) as usize - ptr as usize }, 171usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(GthrPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin0) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(LedPin0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin1) as usize - ptr as usize }, 173usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(LedPin1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPin2) as usize - ptr as usize }, 174usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(LedPin2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedEnableMask) as usize - ptr as usize }, 175usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(LedEnableMask) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedPcie) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(LedPcie) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedError) as usize - ptr as usize }, 177usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(LedError) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).LedSpare1) as usize - ptr as usize }, 178usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(LedSpare1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadEnabled) as usize - ptr as usize }, 180usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(PllGfxclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadPercent) as usize - ptr as usize }, 181usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(PllGfxclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PllGfxclkSpreadFreq) as usize - ptr as usize }, 182usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(PllGfxclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadEnabled) as usize - ptr as usize }, 184usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(DfllGfxclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadPercent) as usize - ptr as usize }, 185usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(DfllGfxclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DfllGfxclkSpreadFreq) as usize - ptr as usize }, 186usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(DfllGfxclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadEnabled) as usize - ptr as usize }, 188usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(UclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadPercent) as usize - ptr as usize }, 189usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(UclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadFreq) as usize - ptr as usize }, 190usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(UclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).FclkSpreadEnabled) as usize - ptr as usize }, 192usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(FclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).FclkSpreadPercent) as usize - ptr as usize }, 193usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(FclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).FclkSpreadFreq) as usize - ptr as usize }, 194usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(FclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MemoryChannelEnabled) as usize - ptr as usize }, 196usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(MemoryChannelEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).DramBitWidth) as usize - ptr as usize }, 200usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(DramBitWidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).PaddingMem1) as usize - ptr as usize }, 201usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(PaddingMem1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).TotalBoardPower) as usize - ptr as usize }, 204usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(TotalBoardPower) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardPowerPadding) as usize - ptr as usize }, 206usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(BoardPowerPadding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).XgmiLinkSpeed) as usize - ptr as usize }, 208usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(XgmiLinkSpeed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).XgmiLinkWidth) as usize - ptr as usize }, 212usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(XgmiLinkWidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).XgmiFclkFreq) as usize - ptr as usize }, 216usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(XgmiFclkFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).XgmiSocVoltage) as usize - ptr as usize }, 224usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(XgmiSocVoltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardReserved) as usize - ptr as usize }, 232usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_9), "::", stringify!(BoardReserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_smc_dpm_info_v4_10 { pub table_header: atom_common_table_header, pub GfxMaxCurrent: u16, pub GfxOffset: u8, pub Padding_TelemetryGfx: u8, pub SocMaxCurrent: u16, pub SocOffset: u8, pub Padding_TelemetrySoc: u8, pub MemMaxCurrent: u16, pub MemOffset: u8, pub Padding_TelemetryMem: u8, pub BoardMaxCurrent: u16, pub BoardOffset: u8, pub Padding_TelemetryBoardInput: u8, pub BoardVoltageCoeffA: u32, pub BoardVoltageCoeffB: u32, pub VR0HotGpio: u8, pub VR0HotPolarity: u8, pub VR1HotGpio: u8, pub VR1HotPolarity: u8, pub UclkSpreadEnabled: u8, pub UclkSpreadPercent: u8, pub UclkSpreadFreq: u16, pub FclkSpreadEnabled: u8, pub FclkSpreadPercent: u8, pub FclkSpreadFreq: u16, pub I2cControllers: [smudpm_i2c_controller_config_v3; 8usize], pub GpioI2cScl: u8, pub GpioI2cSda: u8, pub spare5: u16, pub reserved: [u32; 16usize], } #[test] fn bindgen_test_layout_atom_smc_dpm_info_v4_10() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 172usize, concat!("Size of: ", stringify!(atom_smc_dpm_info_v4_10)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_smc_dpm_info_v4_10)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxMaxCurrent) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(GfxMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GfxOffset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(GfxOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryGfx) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(Padding_TelemetryGfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocMaxCurrent) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(SocMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).SocOffset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(SocOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetrySoc) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(Padding_TelemetrySoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MemMaxCurrent) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(MemMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).MemOffset) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(MemOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryMem) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(Padding_TelemetryMem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardMaxCurrent) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(BoardMaxCurrent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardOffset) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(BoardOffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).Padding_TelemetryBoardInput) as usize - ptr as usize }, 19usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(Padding_TelemetryBoardInput) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardVoltageCoeffA) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(BoardVoltageCoeffA) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).BoardVoltageCoeffB) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(BoardVoltageCoeffB) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotGpio) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(VR0HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR0HotPolarity) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(VR0HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotGpio) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(VR1HotGpio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VR1HotPolarity) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(VR1HotPolarity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadEnabled) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(UclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadPercent) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(UclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).UclkSpreadFreq) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(UclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).FclkSpreadEnabled) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(FclkSpreadEnabled) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).FclkSpreadPercent) as usize - ptr as usize }, 37usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(FclkSpreadPercent) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).FclkSpreadFreq) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(FclkSpreadFreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).I2cControllers) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(I2cControllers) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GpioI2cScl) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(GpioI2cScl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).GpioI2cSda) as usize - ptr as usize }, 105usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(GpioI2cSda) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).spare5) as usize - ptr as usize }, 106usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(spare5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_smc_dpm_info_v4_10), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_asic_profiling_info_v4_1 { pub table_header: atom_common_table_header, pub maxvddc: u32, pub minvddc: u32, pub avfs_meannsigma_acontant0: u32, pub avfs_meannsigma_acontant1: u32, pub avfs_meannsigma_acontant2: u32, pub avfs_meannsigma_dc_tol_sigma: u16, pub avfs_meannsigma_platform_mean: u16, pub avfs_meannsigma_platform_sigma: u16, pub gb_vdroop_table_cksoff_a0: u32, pub gb_vdroop_table_cksoff_a1: u32, pub gb_vdroop_table_cksoff_a2: u32, pub gb_vdroop_table_ckson_a0: u32, pub gb_vdroop_table_ckson_a1: u32, pub gb_vdroop_table_ckson_a2: u32, pub avfsgb_fuse_table_cksoff_m1: u32, pub avfsgb_fuse_table_cksoff_m2: u32, pub avfsgb_fuse_table_cksoff_b: u32, pub avfsgb_fuse_table_ckson_m1: u32, pub avfsgb_fuse_table_ckson_m2: u32, pub avfsgb_fuse_table_ckson_b: u32, pub max_voltage_0_25mv: u16, pub enable_gb_vdroop_table_cksoff: u8, pub enable_gb_vdroop_table_ckson: u8, pub enable_gb_fuse_table_cksoff: u8, pub enable_gb_fuse_table_ckson: u8, pub psm_age_comfactor: u16, pub enable_apply_avfs_cksoff_voltage: u8, pub reserved: u8, pub dispclk2gfxclk_a: u32, pub dispclk2gfxclk_b: u32, pub dispclk2gfxclk_c: u32, pub pixclk2gfxclk_a: u32, pub pixclk2gfxclk_b: u32, pub pixclk2gfxclk_c: u32, pub dcefclk2gfxclk_a: u32, pub dcefclk2gfxclk_b: u32, pub dcefclk2gfxclk_c: u32, pub phyclk2gfxclk_a: u32, pub phyclk2gfxclk_b: u32, pub phyclk2gfxclk_c: u32, } #[test] fn bindgen_test_layout_atom_asic_profiling_info_v4_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 136usize, concat!("Size of: ", stringify!(atom_asic_profiling_info_v4_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_asic_profiling_info_v4_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvddc) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(maxvddc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).minvddc) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(minvddc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_acontant0) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfs_meannsigma_acontant0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_acontant1) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfs_meannsigma_acontant1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_acontant2) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfs_meannsigma_acontant2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_dc_tol_sigma) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfs_meannsigma_dc_tol_sigma) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_platform_mean) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfs_meannsigma_platform_mean) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_platform_sigma) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfs_meannsigma_platform_sigma) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_cksoff_a0) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(gb_vdroop_table_cksoff_a0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_cksoff_a1) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(gb_vdroop_table_cksoff_a1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_cksoff_a2) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(gb_vdroop_table_cksoff_a2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_ckson_a0) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(gb_vdroop_table_ckson_a0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_ckson_a1) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(gb_vdroop_table_ckson_a1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_ckson_a2) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(gb_vdroop_table_ckson_a2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_cksoff_m1) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfsgb_fuse_table_cksoff_m1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_cksoff_m2) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfsgb_fuse_table_cksoff_m2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_cksoff_b) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfsgb_fuse_table_cksoff_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_ckson_m1) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfsgb_fuse_table_ckson_m1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_ckson_m2) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfsgb_fuse_table_ckson_m2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_ckson_b) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(avfsgb_fuse_table_ckson_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_voltage_0_25mv) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(max_voltage_0_25mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_vdroop_table_cksoff) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(enable_gb_vdroop_table_cksoff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_vdroop_table_ckson) as usize - ptr as usize }, 81usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(enable_gb_vdroop_table_ckson) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_fuse_table_cksoff) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(enable_gb_fuse_table_cksoff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_fuse_table_ckson) as usize - ptr as usize }, 83usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(enable_gb_fuse_table_ckson) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).psm_age_comfactor) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(psm_age_comfactor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_apply_avfs_cksoff_voltage) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(enable_apply_avfs_cksoff_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 87usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk2gfxclk_a) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(dispclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk2gfxclk_b) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(dispclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk2gfxclk_c) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(dispclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk2gfxclk_a) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(pixclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk2gfxclk_b) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(pixclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk2gfxclk_c) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(pixclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcefclk2gfxclk_a) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(dcefclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcefclk2gfxclk_b) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(dcefclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcefclk2gfxclk_c) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(dcefclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyclk2gfxclk_a) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(phyclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyclk2gfxclk_b) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(phyclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyclk2gfxclk_c) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_1), "::", stringify!(phyclk2gfxclk_c) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_asic_profiling_info_v4_2 { pub table_header: atom_common_table_header, pub maxvddc: u32, pub minvddc: u32, pub avfs_meannsigma_acontant0: u32, pub avfs_meannsigma_acontant1: u32, pub avfs_meannsigma_acontant2: u32, pub avfs_meannsigma_dc_tol_sigma: u16, pub avfs_meannsigma_platform_mean: u16, pub avfs_meannsigma_platform_sigma: u16, pub gb_vdroop_table_cksoff_a0: u32, pub gb_vdroop_table_cksoff_a1: u32, pub gb_vdroop_table_cksoff_a2: u32, pub gb_vdroop_table_ckson_a0: u32, pub gb_vdroop_table_ckson_a1: u32, pub gb_vdroop_table_ckson_a2: u32, pub avfsgb_fuse_table_cksoff_m1: u32, pub avfsgb_fuse_table_cksoff_m2: u32, pub avfsgb_fuse_table_cksoff_b: u32, pub avfsgb_fuse_table_ckson_m1: u32, pub avfsgb_fuse_table_ckson_m2: u32, pub avfsgb_fuse_table_ckson_b: u32, pub max_voltage_0_25mv: u16, pub enable_gb_vdroop_table_cksoff: u8, pub enable_gb_vdroop_table_ckson: u8, pub enable_gb_fuse_table_cksoff: u8, pub enable_gb_fuse_table_ckson: u8, pub psm_age_comfactor: u16, pub enable_apply_avfs_cksoff_voltage: u8, pub reserved: u8, pub dispclk2gfxclk_a: u32, pub dispclk2gfxclk_b: u32, pub dispclk2gfxclk_c: u32, pub pixclk2gfxclk_a: u32, pub pixclk2gfxclk_b: u32, pub pixclk2gfxclk_c: u32, pub dcefclk2gfxclk_a: u32, pub dcefclk2gfxclk_b: u32, pub dcefclk2gfxclk_c: u32, pub phyclk2gfxclk_a: u32, pub phyclk2gfxclk_b: u32, pub phyclk2gfxclk_c: u32, pub acg_gb_vdroop_table_a0: u32, pub acg_gb_vdroop_table_a1: u32, pub acg_gb_vdroop_table_a2: u32, pub acg_avfsgb_fuse_table_m1: u32, pub acg_avfsgb_fuse_table_m2: u32, pub acg_avfsgb_fuse_table_b: u32, pub enable_acg_gb_vdroop_table: u8, pub enable_acg_gb_fuse_table: u8, pub acg_dispclk2gfxclk_a: u32, pub acg_dispclk2gfxclk_b: u32, pub acg_dispclk2gfxclk_c: u32, pub acg_pixclk2gfxclk_a: u32, pub acg_pixclk2gfxclk_b: u32, pub acg_pixclk2gfxclk_c: u32, pub acg_dcefclk2gfxclk_a: u32, pub acg_dcefclk2gfxclk_b: u32, pub acg_dcefclk2gfxclk_c: u32, pub acg_phyclk2gfxclk_a: u32, pub acg_phyclk2gfxclk_b: u32, pub acg_phyclk2gfxclk_c: u32, } #[test] fn bindgen_test_layout_atom_asic_profiling_info_v4_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 210usize, concat!("Size of: ", stringify!(atom_asic_profiling_info_v4_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_asic_profiling_info_v4_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvddc) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(maxvddc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).minvddc) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(minvddc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_acontant0) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfs_meannsigma_acontant0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_acontant1) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfs_meannsigma_acontant1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_acontant2) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfs_meannsigma_acontant2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_dc_tol_sigma) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfs_meannsigma_dc_tol_sigma) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_platform_mean) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfs_meannsigma_platform_mean) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfs_meannsigma_platform_sigma) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfs_meannsigma_platform_sigma) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_cksoff_a0) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(gb_vdroop_table_cksoff_a0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_cksoff_a1) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(gb_vdroop_table_cksoff_a1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_cksoff_a2) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(gb_vdroop_table_cksoff_a2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_ckson_a0) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(gb_vdroop_table_ckson_a0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_ckson_a1) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(gb_vdroop_table_ckson_a1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gb_vdroop_table_ckson_a2) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(gb_vdroop_table_ckson_a2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_cksoff_m1) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfsgb_fuse_table_cksoff_m1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_cksoff_m2) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfsgb_fuse_table_cksoff_m2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_cksoff_b) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfsgb_fuse_table_cksoff_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_ckson_m1) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfsgb_fuse_table_ckson_m1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_ckson_m2) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfsgb_fuse_table_ckson_m2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).avfsgb_fuse_table_ckson_b) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(avfsgb_fuse_table_ckson_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_voltage_0_25mv) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(max_voltage_0_25mv) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_vdroop_table_cksoff) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(enable_gb_vdroop_table_cksoff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_vdroop_table_ckson) as usize - ptr as usize }, 81usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(enable_gb_vdroop_table_ckson) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_fuse_table_cksoff) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(enable_gb_fuse_table_cksoff) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_gb_fuse_table_ckson) as usize - ptr as usize }, 83usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(enable_gb_fuse_table_ckson) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).psm_age_comfactor) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(psm_age_comfactor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_apply_avfs_cksoff_voltage) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(enable_apply_avfs_cksoff_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 87usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk2gfxclk_a) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(dispclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk2gfxclk_b) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(dispclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dispclk2gfxclk_c) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(dispclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk2gfxclk_a) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(pixclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk2gfxclk_b) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(pixclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk2gfxclk_c) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(pixclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcefclk2gfxclk_a) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(dcefclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcefclk2gfxclk_b) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(dcefclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dcefclk2gfxclk_c) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(dcefclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyclk2gfxclk_a) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(phyclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyclk2gfxclk_b) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(phyclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyclk2gfxclk_c) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(phyclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_gb_vdroop_table_a0) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_gb_vdroop_table_a0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_gb_vdroop_table_a1) as usize - ptr as usize }, 140usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_gb_vdroop_table_a1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_gb_vdroop_table_a2) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_gb_vdroop_table_a2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_avfsgb_fuse_table_m1) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_avfsgb_fuse_table_m1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_avfsgb_fuse_table_m2) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_avfsgb_fuse_table_m2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_avfsgb_fuse_table_b) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_avfsgb_fuse_table_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_acg_gb_vdroop_table) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(enable_acg_gb_vdroop_table) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable_acg_gb_fuse_table) as usize - ptr as usize }, 161usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(enable_acg_gb_fuse_table) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_dispclk2gfxclk_a) as usize - ptr as usize }, 162usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_dispclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_dispclk2gfxclk_b) as usize - ptr as usize }, 166usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_dispclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_dispclk2gfxclk_c) as usize - ptr as usize }, 170usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_dispclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_pixclk2gfxclk_a) as usize - ptr as usize }, 174usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_pixclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_pixclk2gfxclk_b) as usize - ptr as usize }, 178usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_pixclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_pixclk2gfxclk_c) as usize - ptr as usize }, 182usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_pixclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_dcefclk2gfxclk_a) as usize - ptr as usize }, 186usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_dcefclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_dcefclk2gfxclk_b) as usize - ptr as usize }, 190usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_dcefclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_dcefclk2gfxclk_c) as usize - ptr as usize }, 194usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_dcefclk2gfxclk_c) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_phyclk2gfxclk_a) as usize - ptr as usize }, 198usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_phyclk2gfxclk_a) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_phyclk2gfxclk_b) as usize - ptr as usize }, 202usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_phyclk2gfxclk_b) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).acg_phyclk2gfxclk_c) as usize - ptr as usize }, 206usize, concat!( "Offset of field: ", stringify!(atom_asic_profiling_info_v4_2), "::", stringify!(acg_phyclk2gfxclk_c) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_multimedia_info_v2_1 { pub table_header: atom_common_table_header, pub uvdip_min_ver: u8, pub uvdip_max_ver: u8, pub vceip_min_ver: u8, pub vceip_max_ver: u8, pub uvd_enc_max_input_width_pixels: u16, pub uvd_enc_max_input_height_pixels: u16, pub vce_enc_max_input_width_pixels: u16, pub vce_enc_max_input_height_pixels: u16, pub uvd_enc_max_bandwidth: u32, pub vce_enc_max_bandwidth: u32, } #[test] fn bindgen_test_layout_atom_multimedia_info_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(atom_multimedia_info_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_multimedia_info_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uvdip_min_ver) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(uvdip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uvdip_max_ver) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(uvdip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vceip_min_ver) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(vceip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vceip_max_ver) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(vceip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uvd_enc_max_input_width_pixels) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(uvd_enc_max_input_width_pixels) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uvd_enc_max_input_height_pixels) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(uvd_enc_max_input_height_pixels) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vce_enc_max_input_width_pixels) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(vce_enc_max_input_width_pixels) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vce_enc_max_input_height_pixels) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(vce_enc_max_input_height_pixels) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).uvd_enc_max_bandwidth) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(uvd_enc_max_bandwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vce_enc_max_bandwidth) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_multimedia_info_v2_1), "::", stringify!(vce_enc_max_bandwidth) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_umc_info_v3_1 { pub table_header: atom_common_table_header, pub ucode_version: u32, pub ucode_rom_startaddr: u32, pub ucode_length: u32, pub umc_reg_init_offset: u16, pub customer_ucode_name_offset: u16, pub mclk_ss_percentage: u16, pub mclk_ss_rate_10hz: u16, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub vram_type: u8, pub umc_config: u8, pub mem_refclk_10khz: u32, } #[test] fn bindgen_test_layout_atom_umc_info_v3_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!("Size of: ", stringify!(atom_umc_info_v3_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_info_v3_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_version) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(ucode_version) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_rom_startaddr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(ucode_rom_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_length) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(ucode_length) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_reg_init_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(umc_reg_init_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).customer_ucode_name_offset) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(customer_ucode_name_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(mclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(mclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_type) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(vram_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_config) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(umc_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_refclk_10khz) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_1), "::", stringify!(mem_refclk_10khz) ) ); } pub const atom_umc_config_def_UMC_CONFIG__ENABLE_1KB_INTERLEAVE_MODE: atom_umc_config_def = 1; pub const atom_umc_config_def_UMC_CONFIG__DEFAULT_MEM_ECC_ENABLE: atom_umc_config_def = 2; pub const atom_umc_config_def_UMC_CONFIG__ENABLE_HBM_LANE_REPAIR: atom_umc_config_def = 4; pub const atom_umc_config_def_UMC_CONFIG__ENABLE_BANK_HARVESTING: atom_umc_config_def = 8; pub const atom_umc_config_def_UMC_CONFIG__ENABLE_PHY_REINIT: atom_umc_config_def = 16; pub const atom_umc_config_def_UMC_CONFIG__DISABLE_UCODE_CHKSTATUS: atom_umc_config_def = 32; pub type atom_umc_config_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_umc_info_v3_2 { pub table_header: atom_common_table_header, pub ucode_version: u32, pub ucode_rom_startaddr: u32, pub ucode_length: u32, pub umc_reg_init_offset: u16, pub customer_ucode_name_offset: u16, pub mclk_ss_percentage: u16, pub mclk_ss_rate_10hz: u16, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub vram_type: u8, pub umc_config: u8, pub mem_refclk_10khz: u32, pub pstate_uclk_10khz: [u32; 4usize], pub umcgoldenoffset: u16, pub densitygoldenoffset: u16, } #[test] fn bindgen_test_layout_atom_umc_info_v3_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 52usize, concat!("Size of: ", stringify!(atom_umc_info_v3_2)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_info_v3_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_version) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(ucode_version) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_rom_startaddr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(ucode_rom_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_length) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(ucode_length) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_reg_init_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(umc_reg_init_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).customer_ucode_name_offset) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(customer_ucode_name_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(mclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(mclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_type) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(vram_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_config) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(umc_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_refclk_10khz) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(mem_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pstate_uclk_10khz) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(pstate_uclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcgoldenoffset) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(umcgoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).densitygoldenoffset) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_2), "::", stringify!(densitygoldenoffset) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_umc_info_v3_3 { pub table_header: atom_common_table_header, pub ucode_reserved: u32, pub ucode_rom_startaddr: u32, pub ucode_length: u32, pub umc_reg_init_offset: u16, pub customer_ucode_name_offset: u16, pub mclk_ss_percentage: u16, pub mclk_ss_rate_10hz: u16, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub vram_type: u8, pub umc_config: u8, pub mem_refclk_10khz: u32, pub pstate_uclk_10khz: [u32; 4usize], pub umcgoldenoffset: u16, pub densitygoldenoffset: u16, pub umc_config1: u32, pub bist_data_startaddr: u32, pub reserved: [u32; 2usize], } #[test] fn bindgen_test_layout_atom_umc_info_v3_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 68usize, concat!("Size of: ", stringify!(atom_umc_info_v3_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_info_v3_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(ucode_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_rom_startaddr) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(ucode_rom_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_length) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(ucode_length) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_reg_init_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(umc_reg_init_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).customer_ucode_name_offset) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(customer_ucode_name_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_ss_percentage) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(mclk_ss_percentage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_ss_rate_10hz) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(mclk_ss_rate_10hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_type) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(vram_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_config) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(umc_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_refclk_10khz) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(mem_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pstate_uclk_10khz) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(pstate_uclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcgoldenoffset) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(umcgoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).densitygoldenoffset) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(densitygoldenoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_config1) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(umc_config1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bist_data_startaddr) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(bist_data_startaddr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v3_3), "::", stringify!(reserved) ) ); } pub const atom_umc_config1_def_UMC_CONFIG1__ENABLE_PSTATE_PHASE_STORE_TRAIN: atom_umc_config1_def = 1; pub const atom_umc_config1_def_UMC_CONFIG1__ENABLE_AUTO_FRAMING: atom_umc_config1_def = 2; pub const atom_umc_config1_def_UMC_CONFIG1__ENABLE_RESTORE_BIST_DATA: atom_umc_config1_def = 4; pub const atom_umc_config1_def_UMC_CONFIG1__DISABLE_STROBE_MODE: atom_umc_config1_def = 8; pub const atom_umc_config1_def_UMC_CONFIG1__DEBUG_DATA_PARITY_EN: atom_umc_config1_def = 16; pub const atom_umc_config1_def_UMC_CONFIG1__ENABLE_ECC_CAPABLE: atom_umc_config1_def = 65536; pub type atom_umc_config1_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_umc_info_v4_0 { pub table_header: atom_common_table_header, pub ucode_reserved: [u32; 5usize], pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub vram_type: u8, pub umc_config: u8, pub mem_refclk_10khz: u32, pub clk_reserved: [u32; 4usize], pub golden_reserved: u32, pub umc_config1: u32, pub reserved: [u32; 2usize], pub channel_num: u8, pub channel_width: u8, pub channel_reserve: [u8; 2usize], pub umc_info_reserved: [u8; 16usize], } #[test] fn bindgen_test_layout_atom_umc_info_v4_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 84usize, concat!("Size of: ", stringify!(atom_umc_info_v4_0)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_info_v4_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(ucode_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_type) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(vram_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_config) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(umc_config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_refclk_10khz) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(mem_refclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).clk_reserved) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(clk_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).golden_reserved) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(golden_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_config1) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(umc_config1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_num) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(channel_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_width) as usize - ptr as usize }, 65usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(channel_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_reserve) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(channel_reserve) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_info_reserved) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(atom_umc_info_v4_0), "::", stringify!(umc_info_reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_module_v9 { pub memory_size: u32, pub channel_enable: u32, pub max_mem_clk: u32, pub reserved: [u16; 3usize], pub mem_voltage: u16, pub vram_module_size: u16, pub ext_memory_id: u8, pub memory_type: u8, pub channel_num: u8, pub channel_width: u8, pub density: u8, pub tunningset_id: u8, pub vender_rev_id: u8, pub refreshrate: u8, pub hbm_ven_rev_id: u8, pub vram_rsd2: u8, pub dram_pnstring: [::core::ffi::c_char; 20usize], } #[test] fn bindgen_test_layout_atom_vram_module_v9() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 52usize, concat!("Size of: ", stringify!(atom_vram_module_v9)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_module_v9)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(memory_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_enable) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(channel_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_mem_clk) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(max_mem_clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_voltage) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(mem_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_size) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(vram_module_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ext_memory_id) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(ext_memory_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_type) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(memory_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_num) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(channel_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_width) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(channel_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).density) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(density) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tunningset_id) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(tunningset_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vender_rev_id) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(vender_rev_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).refreshrate) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hbm_ven_rev_id) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(hbm_ven_rev_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_rsd2) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(vram_rsd2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_pnstring) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v9), "::", stringify!(dram_pnstring) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_info_header_v2_3 { pub table_header: atom_common_table_header, pub mem_adjust_tbloffset: u16, pub mem_clk_patch_tbloffset: u16, pub mc_adjust_pertile_tbloffset: u16, pub mc_phyinit_tbloffset: u16, pub dram_data_remap_tbloffset: u16, pub tmrs_seq_offset: u16, pub post_ucode_init_offset: u16, pub vram_rsd2: u16, pub vram_module_num: u8, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub mc_phy_tile_num: u8, pub vram_module: [atom_vram_module_v9; 16usize], } #[test] fn bindgen_test_layout_atom_vram_info_header_v2_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 856usize, concat!("Size of: ", stringify!(atom_vram_info_header_v2_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_info_header_v2_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_adjust_tbloffset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(mem_adjust_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_clk_patch_tbloffset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(mem_clk_patch_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_adjust_pertile_tbloffset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(mc_adjust_pertile_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phyinit_tbloffset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(mc_phyinit_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_data_remap_tbloffset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(dram_data_remap_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tmrs_seq_offset) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(tmrs_seq_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).post_ucode_init_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(post_ucode_init_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_rsd2) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(vram_rsd2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_num) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(vram_module_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phy_tile_num) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(mc_phy_tile_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_3), "::", stringify!(vram_module) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_module_v3_0 { pub density: u8, pub tunningset_id: u8, pub ext_memory_id: u8, pub dram_vendor_id: u8, pub dram_info_offset: u16, pub mem_tuning_offset: u16, pub tmrs_seq_offset: u16, pub reserved1: u16, pub dram_size_per_ch: u32, pub reserved: [u32; 3usize], pub dram_pnstring: [::core::ffi::c_char; 40usize], } #[test] fn bindgen_test_layout_atom_vram_module_v3_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 68usize, concat!("Size of: ", stringify!(atom_vram_module_v3_0)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_module_v3_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).density) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(density) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tunningset_id) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(tunningset_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ext_memory_id) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(ext_memory_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_vendor_id) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(dram_vendor_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_info_offset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(dram_info_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_tuning_offset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(mem_tuning_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tmrs_seq_offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(tmrs_seq_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_size_per_ch) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(dram_size_per_ch) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_pnstring) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v3_0), "::", stringify!(dram_pnstring) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_info_header_v3_0 { pub table_header: atom_common_table_header, pub mem_tuning_table_offset: u16, pub dram_info_table_offset: u16, pub tmrs_table_offset: u16, pub mc_init_table_offset: u16, pub dram_data_remap_table_offset: u16, pub umc_emuinittable_offset: u16, pub reserved_sub_table_offset: [u16; 2usize], pub vram_module_num: u8, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub mc_phy_tile_num: u8, pub memory_type: u8, pub channel_num: u8, pub channel_width: u8, pub reserved1: u8, pub channel_enable: u32, pub channel1_enable: u32, pub feature_enable: u32, pub feature1_enable: u32, pub hardcode_mem_size: u32, pub reserved4: [u32; 4usize], pub vram_module: [atom_vram_module_v3_0; 8usize], } #[test] fn bindgen_test_layout_atom_vram_info_header_v3_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 608usize, concat!("Size of: ", stringify!(atom_vram_info_header_v3_0)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_info_header_v3_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_tuning_table_offset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(mem_tuning_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_info_table_offset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(dram_info_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tmrs_table_offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(tmrs_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_init_table_offset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(mc_init_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_data_remap_table_offset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(dram_data_remap_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_emuinittable_offset) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(umc_emuinittable_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved_sub_table_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(reserved_sub_table_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_num) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(vram_module_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phy_tile_num) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(mc_phy_tile_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_type) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(memory_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_num) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(channel_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_width) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(channel_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_enable) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(channel_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel1_enable) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(channel1_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).feature_enable) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(feature_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).feature1_enable) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(feature1_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hardcode_mem_size) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(hardcode_mem_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved4) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(reserved4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v3_0), "::", stringify!(vram_module) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_umc_register_addr_info { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, } #[test] fn bindgen_test_layout_atom_umc_register_addr_info() { assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_umc_register_addr_info)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_register_addr_info)) ); } impl atom_umc_register_addr_info { #[inline] pub fn umc_register_addr(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_umc_register_addr(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn umc_reg_type_ind(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) } } #[inline] pub fn set_umc_reg_type_ind(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 1u8, val as u64) } } #[inline] pub fn umc_reg_rsvd(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 7u8) as u32) } } #[inline] pub fn set_umc_reg_rsvd(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(25usize, 7u8, val as u64) } } #[inline] pub fn new_bitfield_1( umc_register_addr: u32, umc_reg_type_ind: u32, umc_reg_rsvd: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let umc_register_addr: u32 = unsafe { ::core::mem::transmute(umc_register_addr) }; umc_register_addr as u64 }); __bindgen_bitfield_unit.set(24usize, 1u8, { let umc_reg_type_ind: u32 = unsafe { ::core::mem::transmute(umc_reg_type_ind) }; umc_reg_type_ind as u64 }); __bindgen_bitfield_unit.set(25usize, 7u8, { let umc_reg_rsvd: u32 = unsafe { ::core::mem::transmute(umc_reg_rsvd) }; umc_reg_rsvd as u64 }); __bindgen_bitfield_unit } } pub const atom_umc_register_addr_info_flag_b3ATOM_UMC_REG_ADD_INFO_INDIRECT_ACCESS: atom_umc_register_addr_info_flag = 1; pub type atom_umc_register_addr_info_flag = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Copy, Clone)] pub union atom_umc_register_addr_info_access { pub umc_reg_addr: atom_umc_register_addr_info, pub u32umc_reg_addr: u32, } #[test] fn bindgen_test_layout_atom_umc_register_addr_info_access() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_umc_register_addr_info_access)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_umc_register_addr_info_access) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_reg_addr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_register_addr_info_access), "::", stringify!(umc_reg_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).u32umc_reg_addr) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_register_addr_info_access), "::", stringify!(u32umc_reg_addr) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_umc_reg_setting_id_config { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, } #[test] fn bindgen_test_layout_atom_umc_reg_setting_id_config() { assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_umc_reg_setting_id_config)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_reg_setting_id_config)) ); } impl atom_umc_reg_setting_id_config { #[inline] pub fn memclockrange(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_memclockrange(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn mem_blk_id(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_mem_blk_id(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1( memclockrange: u32, mem_blk_id: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let memclockrange: u32 = unsafe { ::core::mem::transmute(memclockrange) }; memclockrange as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let mem_blk_id: u32 = unsafe { ::core::mem::transmute(mem_blk_id) }; mem_blk_id as u64 }); __bindgen_bitfield_unit } } #[repr(C, packed)] #[derive(Copy, Clone)] pub union atom_umc_reg_setting_id_config_access { pub umc_id_access: atom_umc_reg_setting_id_config, pub u32umc_id_access: u32, } #[test] fn bindgen_test_layout_atom_umc_reg_setting_id_config_access() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(atom_umc_reg_setting_id_config_access) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_umc_reg_setting_id_config_access) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_id_access) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_reg_setting_id_config_access), "::", stringify!(umc_id_access) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).u32umc_id_access) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_reg_setting_id_config_access), "::", stringify!(u32umc_id_access) ) ); } #[repr(C, packed)] #[derive(Copy, Clone)] pub struct atom_umc_reg_setting_data_block { pub block_id: atom_umc_reg_setting_id_config_access, pub u32umc_reg_data: [u32; 1usize], } #[test] fn bindgen_test_layout_atom_umc_reg_setting_data_block() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(atom_umc_reg_setting_data_block)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_reg_setting_data_block)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).block_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_reg_setting_data_block), "::", stringify!(block_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).u32umc_reg_data) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_umc_reg_setting_data_block), "::", stringify!(u32umc_reg_data) ) ); } #[repr(C, packed)] #[derive(Copy, Clone)] pub struct atom_umc_init_reg_block { pub umc_reg_num: u16, pub reserved: u16, pub umc_reg_list: [atom_umc_register_addr_info_access; 1usize], pub umc_reg_setting_list: [atom_umc_reg_setting_data_block; 1usize], } #[test] fn bindgen_test_layout_atom_umc_init_reg_block() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(atom_umc_init_reg_block)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_umc_init_reg_block)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_reg_num) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_umc_init_reg_block), "::", stringify!(umc_reg_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_umc_init_reg_block), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_reg_list) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_umc_init_reg_block), "::", stringify!(umc_reg_list) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umc_reg_setting_list) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_umc_init_reg_block), "::", stringify!(umc_reg_setting_list) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_module_v10 { pub memory_size: u32, pub channel_enable: u32, pub max_mem_clk: u32, pub reserved: [u16; 3usize], pub mem_voltage: u16, pub vram_module_size: u16, pub ext_memory_id: u8, pub memory_type: u8, pub channel_num: u8, pub channel_width: u8, pub density: u8, pub tunningset_id: u8, pub vender_rev_id: u8, pub refreshrate: u8, pub vram_flags: u8, pub vram_rsd2: u8, pub gddr6_mr10: u16, pub gddr6_mr1: u16, pub gddr6_mr2: u16, pub gddr6_mr7: u16, pub dram_pnstring: [::core::ffi::c_char; 20usize], } #[test] fn bindgen_test_layout_atom_vram_module_v10() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 60usize, concat!("Size of: ", stringify!(atom_vram_module_v10)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_module_v10)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(memory_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_enable) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(channel_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).max_mem_clk) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(max_mem_clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_voltage) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(mem_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_size) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(vram_module_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ext_memory_id) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(ext_memory_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_type) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(memory_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_num) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(channel_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_width) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(channel_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).density) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(density) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tunningset_id) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(tunningset_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vender_rev_id) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(vender_rev_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).refreshrate) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_flags) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(vram_flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_rsd2) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(vram_rsd2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr10) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(gddr6_mr10) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr1) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(gddr6_mr1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr2) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(gddr6_mr2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr7) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(gddr6_mr7) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_pnstring) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v10), "::", stringify!(dram_pnstring) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_info_header_v2_4 { pub table_header: atom_common_table_header, pub mem_adjust_tbloffset: u16, pub mem_clk_patch_tbloffset: u16, pub mc_adjust_pertile_tbloffset: u16, pub mc_phyinit_tbloffset: u16, pub dram_data_remap_tbloffset: u16, pub reserved: u16, pub post_ucode_init_offset: u16, pub vram_rsd2: u16, pub vram_module_num: u8, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub mc_phy_tile_num: u8, pub vram_module: [atom_vram_module_v10; 16usize], } #[test] fn bindgen_test_layout_atom_vram_info_header_v2_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 984usize, concat!("Size of: ", stringify!(atom_vram_info_header_v2_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_info_header_v2_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_adjust_tbloffset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(mem_adjust_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_clk_patch_tbloffset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(mem_clk_patch_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_adjust_pertile_tbloffset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(mc_adjust_pertile_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phyinit_tbloffset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(mc_phyinit_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_data_remap_tbloffset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(dram_data_remap_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).post_ucode_init_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(post_ucode_init_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_rsd2) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(vram_rsd2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_num) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(vram_module_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phy_tile_num) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(mc_phy_tile_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_4), "::", stringify!(vram_module) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_module_v11 { pub memory_size: u32, pub channel_enable: u32, pub mem_voltage: u16, pub vram_module_size: u16, pub ext_memory_id: u8, pub memory_type: u8, pub channel_num: u8, pub channel_width: u8, pub density: u8, pub tunningset_id: u8, pub reserved: [u16; 4usize], pub vender_rev_id: u8, pub refreshrate: u8, pub vram_flags: u8, pub vram_rsd2: u8, pub gddr6_mr10: u16, pub gddr6_mr0: u16, pub gddr6_mr1: u16, pub gddr6_mr2: u16, pub gddr6_mr4: u16, pub gddr6_mr7: u16, pub gddr6_mr8: u16, pub dram_pnstring: [::core::ffi::c_char; 40usize], } #[test] fn bindgen_test_layout_atom_vram_module_v11() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 84usize, concat!("Size of: ", stringify!(atom_vram_module_v11)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_module_v11)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(memory_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_enable) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(channel_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_voltage) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(mem_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_size) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(vram_module_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ext_memory_id) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(ext_memory_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memory_type) as usize - ptr as usize }, 13usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(memory_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_num) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(channel_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channel_width) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(channel_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).density) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(density) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tunningset_id) as usize - ptr as usize }, 17usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(tunningset_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vender_rev_id) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(vender_rev_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).refreshrate) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(refreshrate) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_flags) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(vram_flags) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_rsd2) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(vram_rsd2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr10) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(gddr6_mr10) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr0) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(gddr6_mr0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr1) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(gddr6_mr1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr2) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(gddr6_mr2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr4) as usize - ptr as usize }, 38usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(gddr6_mr4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr7) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(gddr6_mr7) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_mr8) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(gddr6_mr8) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_pnstring) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_vram_module_v11), "::", stringify!(dram_pnstring) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gddr6_ac_timing_v2_5 { pub u32umc_id_access: u32, pub RL: u8, pub WL: u8, pub tRAS: u8, pub tRC: u8, pub tREFI: u16, pub tRFC: u8, pub tRFCpb: u8, pub tRREFD: u8, pub tRCDRD: u8, pub tRCDWR: u8, pub tRP: u8, pub tRRDS: u8, pub tRRDL: u8, pub tWR: u8, pub tWTRS: u8, pub tWTRL: u8, pub tFAW: u8, pub tCCDS: u8, pub tCCDL: u8, pub tCRCRL: u8, pub tCRCWL: u8, pub tCKE: u8, pub tCKSRE: u8, pub tCKSRX: u8, pub tRTPS: u8, pub tRTPL: u8, pub tMRD: u8, pub tMOD: u8, pub tXS: u8, pub tXHP: u8, pub tXSMRS: u8, pub tXSH: u32, pub tPD: u8, pub tXP: u8, pub tCPDED: u8, pub tACTPDE: u8, pub tPREPDE: u8, pub tREFPDE: u8, pub tMRSPDEN: u8, pub tRDSRE: u8, pub tWRSRE: u8, pub tPPD: u8, pub tCCDMW: u8, pub tWTRTR: u8, pub tLTLTR: u8, pub tREFTR: u8, pub VNDR: u8, pub reserved: [u8; 9usize], } #[test] fn bindgen_test_layout_atom_gddr6_ac_timing_v2_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 64usize, concat!("Size of: ", stringify!(atom_gddr6_ac_timing_v2_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gddr6_ac_timing_v2_5)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).u32umc_id_access) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(u32umc_id_access) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).RL) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(RL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).WL) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(WL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRAS) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRAS) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRC) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRC) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tREFI) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tREFI) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRFC) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRFC) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRFCpb) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRFCpb) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRREFD) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRREFD) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRCDRD) as usize - ptr as usize }, 13usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRCDRD) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRCDWR) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRCDWR) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRP) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRP) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRRDS) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRRDS) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRRDL) as usize - ptr as usize }, 17usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRRDL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tWR) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tWR) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tWTRS) as usize - ptr as usize }, 19usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tWTRS) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tWTRL) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tWTRL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tFAW) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tFAW) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCCDS) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCCDS) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCCDL) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCCDL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCRCRL) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCRCRL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCRCWL) as usize - ptr as usize }, 25usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCRCWL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCKE) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCKE) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCKSRE) as usize - ptr as usize }, 27usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCKSRE) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCKSRX) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCKSRX) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRTPS) as usize - ptr as usize }, 29usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRTPS) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRTPL) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRTPL) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tMRD) as usize - ptr as usize }, 31usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tMRD) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tMOD) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tMOD) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tXS) as usize - ptr as usize }, 33usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tXS) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tXHP) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tXHP) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tXSMRS) as usize - ptr as usize }, 35usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tXSMRS) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tXSH) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tXSH) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tPD) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tPD) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tXP) as usize - ptr as usize }, 41usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tXP) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCPDED) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCPDED) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tACTPDE) as usize - ptr as usize }, 43usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tACTPDE) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tPREPDE) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tPREPDE) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tREFPDE) as usize - ptr as usize }, 45usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tREFPDE) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tMRSPDEN) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tMRSPDEN) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tRDSRE) as usize - ptr as usize }, 47usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tRDSRE) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tWRSRE) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tWRSRE) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tPPD) as usize - ptr as usize }, 49usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tPPD) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tCCDMW) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tCCDMW) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tWTRTR) as usize - ptr as usize }, 51usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tWTRTR) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tLTLTR) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tLTLTR) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tREFTR) as usize - ptr as usize }, 53usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(tREFTR) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).VNDR) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(VNDR) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 55usize, concat!( "Offset of field: ", stringify!(atom_gddr6_ac_timing_v2_5), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gddr6_bit_byte_remap { pub dphy_byteremap: u32, pub dphy_bitremap0: u32, pub dphy_bitremap1: u32, pub dphy_bitremap2: u32, pub aphy_bitremap0: u32, pub aphy_bitremap1: u32, pub phy_dram: u32, } #[test] fn bindgen_test_layout_atom_gddr6_bit_byte_remap() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(atom_gddr6_bit_byte_remap)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gddr6_bit_byte_remap)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dphy_byteremap) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gddr6_bit_byte_remap), "::", stringify!(dphy_byteremap) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dphy_bitremap0) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gddr6_bit_byte_remap), "::", stringify!(dphy_bitremap0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dphy_bitremap1) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gddr6_bit_byte_remap), "::", stringify!(dphy_bitremap1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dphy_bitremap2) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gddr6_bit_byte_remap), "::", stringify!(dphy_bitremap2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aphy_bitremap0) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_gddr6_bit_byte_remap), "::", stringify!(aphy_bitremap0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aphy_bitremap1) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_gddr6_bit_byte_remap), "::", stringify!(aphy_bitremap1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phy_dram) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_gddr6_bit_byte_remap), "::", stringify!(phy_dram) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gddr6_dram_data_remap { pub table_size: u32, pub phyintf_ck_inverted: [u8; 8usize], pub bit_byte_remap: [atom_gddr6_bit_byte_remap; 16usize], } #[test] fn bindgen_test_layout_atom_gddr6_dram_data_remap() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 460usize, concat!("Size of: ", stringify!(atom_gddr6_dram_data_remap)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gddr6_dram_data_remap)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gddr6_dram_data_remap), "::", stringify!(table_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyintf_ck_inverted) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gddr6_dram_data_remap), "::", stringify!(phyintf_ck_inverted) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bit_byte_remap) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gddr6_dram_data_remap), "::", stringify!(bit_byte_remap) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_info_header_v2_5 { pub table_header: atom_common_table_header, pub mem_adjust_tbloffset: u16, pub gddr6_ac_timing_offset: u16, pub mc_adjust_pertile_tbloffset: u16, pub mc_phyinit_tbloffset: u16, pub dram_data_remap_tbloffset: u16, pub reserved: u16, pub post_ucode_init_offset: u16, pub strobe_mode_patch_tbloffset: u16, pub vram_module_num: u8, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub mc_phy_tile_num: u8, pub vram_module: [atom_vram_module_v11; 16usize], } #[test] fn bindgen_test_layout_atom_vram_info_header_v2_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1368usize, concat!("Size of: ", stringify!(atom_vram_info_header_v2_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_info_header_v2_5)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_adjust_tbloffset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(mem_adjust_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gddr6_ac_timing_offset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(gddr6_ac_timing_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_adjust_pertile_tbloffset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(mc_adjust_pertile_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phyinit_tbloffset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(mc_phyinit_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_data_remap_tbloffset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(dram_data_remap_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).post_ucode_init_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(post_ucode_init_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).strobe_mode_patch_tbloffset) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(strobe_mode_patch_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_num) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(vram_module_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phy_tile_num) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(mc_phy_tile_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_5), "::", stringify!(vram_module) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_vram_info_header_v2_6 { pub table_header: atom_common_table_header, pub mem_adjust_tbloffset: u16, pub mem_clk_patch_tbloffset: u16, pub mc_adjust_pertile_tbloffset: u16, pub mc_phyinit_tbloffset: u16, pub dram_data_remap_tbloffset: u16, pub tmrs_seq_offset: u16, pub post_ucode_init_offset: u16, pub vram_rsd2: u16, pub vram_module_num: u8, pub umcip_min_ver: u8, pub umcip_max_ver: u8, pub mc_phy_tile_num: u8, pub vram_module: [atom_vram_module_v9; 16usize], } #[test] fn bindgen_test_layout_atom_vram_info_header_v2_6() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 856usize, concat!("Size of: ", stringify!(atom_vram_info_header_v2_6)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_vram_info_header_v2_6)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_adjust_tbloffset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(mem_adjust_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_clk_patch_tbloffset) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(mem_clk_patch_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_adjust_pertile_tbloffset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(mc_adjust_pertile_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phyinit_tbloffset) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(mc_phyinit_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dram_data_remap_tbloffset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(dram_data_remap_tbloffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tmrs_seq_offset) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(tmrs_seq_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).post_ucode_init_offset) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(post_ucode_init_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_rsd2) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(vram_rsd2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module_num) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(vram_module_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_min_ver) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(umcip_min_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).umcip_max_ver) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(umcip_max_ver) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mc_phy_tile_num) as usize - ptr as usize }, 23usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(mc_phy_tile_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vram_module) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(atom_vram_info_header_v2_6), "::", stringify!(vram_module) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_i2c_data_entry { pub i2c_reg_index: u16, pub i2c_reg_data: u16, } #[test] fn bindgen_test_layout_atom_i2c_data_entry() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_i2c_data_entry)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_i2c_data_entry)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_reg_index) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_i2c_data_entry), "::", stringify!(i2c_reg_index) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_reg_data) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_i2c_data_entry), "::", stringify!(i2c_reg_data) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_voltage_object_header_v4 { pub voltage_type: u8, pub voltage_mode: u8, pub object_size: u16, } #[test] fn bindgen_test_layout_atom_voltage_object_header_v4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(atom_voltage_object_header_v4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_voltage_object_header_v4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_type) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_voltage_object_header_v4), "::", stringify!(voltage_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_mode) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_voltage_object_header_v4), "::", stringify!(voltage_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).object_size) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_voltage_object_header_v4), "::", stringify!(object_size) ) ); } pub const atom_voltage_object_mode_VOLTAGE_OBJ_GPIO_LUT: atom_voltage_object_mode = 0; pub const atom_voltage_object_mode_VOLTAGE_OBJ_VR_I2C_INIT_SEQ: atom_voltage_object_mode = 3; pub const atom_voltage_object_mode_VOLTAGE_OBJ_PHASE_LUT: atom_voltage_object_mode = 4; pub const atom_voltage_object_mode_VOLTAGE_OBJ_SVID2: atom_voltage_object_mode = 7; pub const atom_voltage_object_mode_VOLTAGE_OBJ_EVV: atom_voltage_object_mode = 8; pub const atom_voltage_object_mode_VOLTAGE_OBJ_MERGED_POWER: atom_voltage_object_mode = 9; pub type atom_voltage_object_mode = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_i2c_voltage_object_v4 { pub header: atom_voltage_object_header_v4, pub regulator_id: u8, pub i2c_id: u8, pub i2c_slave_addr: u8, pub i2c_control_offset: u8, pub i2c_flag: u8, pub i2c_speed: u8, pub reserved: [u8; 2usize], pub i2cdatalut: [atom_i2c_data_entry; 1usize], } #[test] fn bindgen_test_layout_atom_i2c_voltage_object_v4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(atom_i2c_voltage_object_v4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_i2c_voltage_object_v4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regulator_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(regulator_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_id) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(i2c_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_slave_addr) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(i2c_slave_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_control_offset) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(i2c_control_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_flag) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(i2c_flag) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_speed) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(i2c_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2cdatalut) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_i2c_voltage_object_v4), "::", stringify!(i2cdatalut) ) ); } pub const atom_i2c_voltage_control_flag_VOLTAGE_DATA_ONE_BYTE: atom_i2c_voltage_control_flag = 0; pub const atom_i2c_voltage_control_flag_VOLTAGE_DATA_TWO_BYTE: atom_i2c_voltage_control_flag = 1; pub type atom_i2c_voltage_control_flag = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_voltage_gpio_map_lut { pub voltage_gpio_reg_val: u32, pub voltage_level_mv: u16, } #[test] fn bindgen_test_layout_atom_voltage_gpio_map_lut() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 6usize, concat!("Size of: ", stringify!(atom_voltage_gpio_map_lut)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_voltage_gpio_map_lut)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_gpio_reg_val) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_voltage_gpio_map_lut), "::", stringify!(voltage_gpio_reg_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_level_mv) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_voltage_gpio_map_lut), "::", stringify!(voltage_level_mv) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_gpio_voltage_object_v4 { pub header: atom_voltage_object_header_v4, pub gpio_control_id: u8, pub gpio_entry_num: u8, pub phase_delay_us: u8, pub reserved: u8, pub gpio_mask_val: u32, pub voltage_gpio_lut: [atom_voltage_gpio_map_lut; 1usize], } #[test] fn bindgen_test_layout_atom_gpio_voltage_object_v4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 18usize, concat!("Size of: ", stringify!(atom_gpio_voltage_object_v4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_gpio_voltage_object_v4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_gpio_voltage_object_v4), "::", stringify!(header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_control_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_gpio_voltage_object_v4), "::", stringify!(gpio_control_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_entry_num) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_gpio_voltage_object_v4), "::", stringify!(gpio_entry_num) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phase_delay_us) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_gpio_voltage_object_v4), "::", stringify!(phase_delay_us) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_gpio_voltage_object_v4), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_mask_val) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_gpio_voltage_object_v4), "::", stringify!(gpio_mask_val) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_gpio_lut) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(atom_gpio_voltage_object_v4), "::", stringify!(voltage_gpio_lut) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct atom_svid2_voltage_object_v4 { pub header: atom_voltage_object_header_v4, pub loadline_psi1: u8, pub psi0_l_vid_thresd: u8, pub psi0_enable: u8, pub maxvstep: u8, pub telemetry_offset: u8, pub telemetry_gain: u8, pub reserved1: u16, } #[test] fn bindgen_test_layout_atom_svid2_voltage_object_v4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(atom_svid2_voltage_object_v4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_svid2_voltage_object_v4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).loadline_psi1) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(loadline_psi1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).psi0_l_vid_thresd) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(psi0_l_vid_thresd) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).psi0_enable) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(psi0_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).maxvstep) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(maxvstep) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).telemetry_offset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(telemetry_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).telemetry_gain) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(telemetry_gain) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(atom_svid2_voltage_object_v4), "::", stringify!(reserved1) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_merged_voltage_object_v4 { pub header: atom_voltage_object_header_v4, pub merged_powerrail_type: u8, pub reserved: [u8; 3usize], } #[test] fn bindgen_test_layout_atom_merged_voltage_object_v4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(atom_merged_voltage_object_v4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_merged_voltage_object_v4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_merged_voltage_object_v4), "::", stringify!(header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).merged_powerrail_type) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_merged_voltage_object_v4), "::", stringify!(merged_powerrail_type) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(atom_merged_voltage_object_v4), "::", stringify!(reserved) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union atom_voltage_object_v4 { pub gpio_voltage_obj: atom_gpio_voltage_object_v4, pub i2c_voltage_obj: atom_i2c_voltage_object_v4, pub svid2_voltage_obj: atom_svid2_voltage_object_v4, pub merged_voltage_obj: atom_merged_voltage_object_v4, } #[test] fn bindgen_test_layout_atom_voltage_object_v4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 18usize, concat!("Size of: ", stringify!(atom_voltage_object_v4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_voltage_object_v4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gpio_voltage_obj) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_voltage_object_v4), "::", stringify!(gpio_voltage_obj) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_voltage_obj) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_voltage_object_v4), "::", stringify!(i2c_voltage_obj) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).svid2_voltage_obj) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_voltage_object_v4), "::", stringify!(svid2_voltage_obj) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).merged_voltage_obj) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_voltage_object_v4), "::", stringify!(merged_voltage_obj) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct atom_voltage_objects_info_v4_1 { pub table_header: atom_common_table_header, pub voltage_object: [atom_voltage_object_v4; 1usize], } #[test] fn bindgen_test_layout_atom_voltage_objects_info_v4_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 22usize, concat!("Size of: ", stringify!(atom_voltage_objects_info_v4_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(atom_voltage_objects_info_v4_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).table_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_voltage_objects_info_v4_1), "::", stringify!(table_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_object) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(atom_voltage_objects_info_v4_1), "::", stringify!(voltage_object) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct asic_init_engine_parameters { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, } #[test] fn bindgen_test_layout_asic_init_engine_parameters() { assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(asic_init_engine_parameters)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(asic_init_engine_parameters)) ); } impl asic_init_engine_parameters { #[inline] pub fn sclkfreqin10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_sclkfreqin10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn engineflag(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_engineflag(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1( sclkfreqin10khz: u32, engineflag: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let sclkfreqin10khz: u32 = unsafe { ::core::mem::transmute(sclkfreqin10khz) }; sclkfreqin10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let engineflag: u32 = unsafe { ::core::mem::transmute(engineflag) }; engineflag as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct asic_init_mem_parameters { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, } #[test] fn bindgen_test_layout_asic_init_mem_parameters() { assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(asic_init_mem_parameters)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(asic_init_mem_parameters)) ); } impl asic_init_mem_parameters { #[inline] pub fn mclkfreqin10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_mclkfreqin10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn memflag(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_memflag(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1( mclkfreqin10khz: u32, memflag: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let mclkfreqin10khz: u32 = unsafe { ::core::mem::transmute(mclkfreqin10khz) }; mclkfreqin10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let memflag: u32 = unsafe { ::core::mem::transmute(memflag) }; memflag as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct asic_init_parameters_v2_1 { pub engineparam: asic_init_engine_parameters, pub memparam: asic_init_mem_parameters, } #[test] fn bindgen_test_layout_asic_init_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(asic_init_parameters_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(asic_init_parameters_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).engineparam) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(asic_init_parameters_v2_1), "::", stringify!(engineparam) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).memparam) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(asic_init_parameters_v2_1), "::", stringify!(memparam) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct asic_init_ps_allocation_v2_1 { pub param: asic_init_parameters_v2_1, pub reserved: [u32; 16usize], } #[test] fn bindgen_test_layout_asic_init_ps_allocation_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 72usize, concat!("Size of: ", stringify!(asic_init_ps_allocation_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(asic_init_ps_allocation_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(asic_init_ps_allocation_v2_1), "::", stringify!(param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(asic_init_ps_allocation_v2_1), "::", stringify!(reserved) ) ); } pub const atom_asic_init_engine_flag_b3NORMAL_ENGINE_INIT: atom_asic_init_engine_flag = 0; pub const atom_asic_init_engine_flag_b3SRIOV_SKIP_ASIC_INIT: atom_asic_init_engine_flag = 2; pub const atom_asic_init_engine_flag_b3SRIOV_LOAD_UCODE: atom_asic_init_engine_flag = 64; pub type atom_asic_init_engine_flag = ::core::ffi::c_uint; pub const atom_asic_init_mem_flag_b3NORMAL_MEM_INIT: atom_asic_init_mem_flag = 0; pub const atom_asic_init_mem_flag_b3DRAM_SELF_REFRESH_EXIT: atom_asic_init_mem_flag = 32; pub type atom_asic_init_mem_flag = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_engine_clock_parameters_v2_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub reserved: [u32; 10usize], } #[test] fn bindgen_test_layout_set_engine_clock_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 44usize, concat!("Size of: ", stringify!(set_engine_clock_parameters_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(set_engine_clock_parameters_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(set_engine_clock_parameters_v2_1), "::", stringify!(reserved) ) ); } impl set_engine_clock_parameters_v2_1 { #[inline] pub fn sclkfreqin10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_sclkfreqin10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn sclkflag(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_sclkflag(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1( sclkfreqin10khz: u32, sclkflag: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let sclkfreqin10khz: u32 = unsafe { ::core::mem::transmute(sclkfreqin10khz) }; sclkfreqin10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let sclkflag: u32 = unsafe { ::core::mem::transmute(sclkflag) }; sclkflag as u64 }); __bindgen_bitfield_unit } } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_engine_clock_ps_allocation_v2_1 { pub clockinfo: set_engine_clock_parameters_v2_1, pub reserved: [u32; 10usize], } #[test] fn bindgen_test_layout_set_engine_clock_ps_allocation_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 84usize, concat!("Size of: ", stringify!(set_engine_clock_ps_allocation_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(set_engine_clock_ps_allocation_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).clockinfo) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_engine_clock_ps_allocation_v2_1), "::", stringify!(clockinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(set_engine_clock_ps_allocation_v2_1), "::", stringify!(reserved) ) ); } pub const atom_set_engine_mem_clock_flag_b3NORMAL_CHANGE_CLOCK: atom_set_engine_mem_clock_flag = 0; pub const atom_set_engine_mem_clock_flag_b3FIRST_TIME_CHANGE_CLOCK: atom_set_engine_mem_clock_flag = 8; pub const atom_set_engine_mem_clock_flag_b3STORE_DPM_TRAINGING: atom_set_engine_mem_clock_flag = 64; pub type atom_set_engine_mem_clock_flag = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct get_engine_clock_parameter { pub sclk_10khz: u32, pub reserved: u32, } #[test] fn bindgen_test_layout_get_engine_clock_parameter() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(get_engine_clock_parameter)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(get_engine_clock_parameter)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(get_engine_clock_parameter), "::", stringify!(sclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(get_engine_clock_parameter), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_memory_clock_parameters_v2_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub reserved: [u32; 10usize], } #[test] fn bindgen_test_layout_set_memory_clock_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 44usize, concat!("Size of: ", stringify!(set_memory_clock_parameters_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(set_memory_clock_parameters_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(set_memory_clock_parameters_v2_1), "::", stringify!(reserved) ) ); } impl set_memory_clock_parameters_v2_1 { #[inline] pub fn mclkfreqin10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_mclkfreqin10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn mclkflag(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_mclkflag(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1( mclkfreqin10khz: u32, mclkflag: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let mclkfreqin10khz: u32 = unsafe { ::core::mem::transmute(mclkfreqin10khz) }; mclkfreqin10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let mclkflag: u32 = unsafe { ::core::mem::transmute(mclkflag) }; mclkflag as u64 }); __bindgen_bitfield_unit } } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_memory_clock_ps_allocation_v2_1 { pub clockinfo: set_memory_clock_parameters_v2_1, pub reserved: [u32; 10usize], } #[test] fn bindgen_test_layout_set_memory_clock_ps_allocation_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 84usize, concat!("Size of: ", stringify!(set_memory_clock_ps_allocation_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(set_memory_clock_ps_allocation_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).clockinfo) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_memory_clock_ps_allocation_v2_1), "::", stringify!(clockinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(set_memory_clock_ps_allocation_v2_1), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct get_memory_clock_parameter { pub mclk_10khz: u32, pub reserved: u32, } #[test] fn bindgen_test_layout_get_memory_clock_parameter() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(get_memory_clock_parameter)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(get_memory_clock_parameter)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(get_memory_clock_parameter), "::", stringify!(mclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(get_memory_clock_parameter), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_voltage_parameters_v1_4 { pub voltagetype: u8, pub command: u8, pub vlevel_mv: u16, } #[test] fn bindgen_test_layout_set_voltage_parameters_v1_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(set_voltage_parameters_v1_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(set_voltage_parameters_v1_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltagetype) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_voltage_parameters_v1_4), "::", stringify!(voltagetype) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).command) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(set_voltage_parameters_v1_4), "::", stringify!(command) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vlevel_mv) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(set_voltage_parameters_v1_4), "::", stringify!(vlevel_mv) ) ); } pub const atom_set_voltage_command_ATOM_SET_VOLTAGE: atom_set_voltage_command = 0; pub const atom_set_voltage_command_ATOM_INIT_VOLTAGE_REGULATOR: atom_set_voltage_command = 3; pub const atom_set_voltage_command_ATOM_SET_VOLTAGE_PHASE: atom_set_voltage_command = 4; pub const atom_set_voltage_command_ATOM_GET_LEAKAGE_ID: atom_set_voltage_command = 8; pub type atom_set_voltage_command = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_voltage_ps_allocation_v1_4 { pub setvoltageparam: set_voltage_parameters_v1_4, pub reserved: [u32; 10usize], } #[test] fn bindgen_test_layout_set_voltage_ps_allocation_v1_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 44usize, concat!("Size of: ", stringify!(set_voltage_ps_allocation_v1_4)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(set_voltage_ps_allocation_v1_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).setvoltageparam) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_voltage_ps_allocation_v1_4), "::", stringify!(setvoltageparam) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(set_voltage_ps_allocation_v1_4), "::", stringify!(reserved) ) ); } pub const atom_gpu_clock_type_COMPUTE_GPUCLK_INPUT_FLAG_DEFAULT_GPUCLK: atom_gpu_clock_type = 0; pub const atom_gpu_clock_type_COMPUTE_GPUCLK_INPUT_FLAG_GFXCLK: atom_gpu_clock_type = 1; pub const atom_gpu_clock_type_COMPUTE_GPUCLK_INPUT_FLAG_UCLK: atom_gpu_clock_type = 2; pub type atom_gpu_clock_type = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct compute_gpu_clock_input_parameter_v1_8 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub reserved: [u32; 5usize], } #[test] fn bindgen_test_layout_compute_gpu_clock_input_parameter_v1_8() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!( "Size of: ", stringify!(compute_gpu_clock_input_parameter_v1_8) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(compute_gpu_clock_input_parameter_v1_8) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(compute_gpu_clock_input_parameter_v1_8), "::", stringify!(reserved) ) ); } impl compute_gpu_clock_input_parameter_v1_8 { #[inline] pub fn gpuclock_10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_gpuclock_10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn gpu_clock_type(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_gpu_clock_type(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1( gpuclock_10khz: u32, gpu_clock_type: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let gpuclock_10khz: u32 = unsafe { ::core::mem::transmute(gpuclock_10khz) }; gpuclock_10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let gpu_clock_type: u32 = unsafe { ::core::mem::transmute(gpu_clock_type) }; gpu_clock_type as u64 }); __bindgen_bitfield_unit } } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct compute_gpu_clock_output_parameter_v1_8 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub pll_fb_mult: u32, pub pll_ss_fbsmult: u32, pub pll_ss_slew_frac: u16, pub pll_ss_enable: u8, pub reserved: u8, pub reserved1: [u32; 2usize], } #[test] fn bindgen_test_layout_compute_gpu_clock_output_parameter_v1_8() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!( "Size of: ", stringify!(compute_gpu_clock_output_parameter_v1_8) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(compute_gpu_clock_output_parameter_v1_8) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pll_fb_mult) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(compute_gpu_clock_output_parameter_v1_8), "::", stringify!(pll_fb_mult) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pll_ss_fbsmult) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(compute_gpu_clock_output_parameter_v1_8), "::", stringify!(pll_ss_fbsmult) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pll_ss_slew_frac) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(compute_gpu_clock_output_parameter_v1_8), "::", stringify!(pll_ss_slew_frac) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pll_ss_enable) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(compute_gpu_clock_output_parameter_v1_8), "::", stringify!(pll_ss_enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 15usize, concat!( "Offset of field: ", stringify!(compute_gpu_clock_output_parameter_v1_8), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(compute_gpu_clock_output_parameter_v1_8), "::", stringify!(reserved1) ) ); } impl compute_gpu_clock_output_parameter_v1_8 { #[inline] pub fn gpuclock_10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_gpuclock_10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn dfs_did(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_dfs_did(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1( gpuclock_10khz: u32, dfs_did: u32, ) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let gpuclock_10khz: u32 = unsafe { ::core::mem::transmute(gpuclock_10khz) }; gpuclock_10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let dfs_did: u32 = unsafe { ::core::mem::transmute(dfs_did) }; dfs_did as u64 }); __bindgen_bitfield_unit } } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct read_efuse_input_parameters_v3_1 { pub efuse_start_index: u16, pub reserved: u8, pub bitslen: u8, } #[test] fn bindgen_test_layout_read_efuse_input_parameters_v3_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(read_efuse_input_parameters_v3_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(read_efuse_input_parameters_v3_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).efuse_start_index) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(read_efuse_input_parameters_v3_1), "::", stringify!(efuse_start_index) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(read_efuse_input_parameters_v3_1), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bitslen) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(read_efuse_input_parameters_v3_1), "::", stringify!(bitslen) ) ); } #[repr(C, packed)] #[derive(Copy, Clone)] pub union read_efuse_value_parameters_v3_1 { pub efuse_info: read_efuse_input_parameters_v3_1, pub efusevalue: u32, } #[test] fn bindgen_test_layout_read_efuse_value_parameters_v3_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(read_efuse_value_parameters_v3_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(read_efuse_value_parameters_v3_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).efuse_info) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(read_efuse_value_parameters_v3_1), "::", stringify!(efuse_info) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).efusevalue) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(read_efuse_value_parameters_v3_1), "::", stringify!(efusevalue) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct atom_get_smu_clock_info_parameters_v3_1 { pub syspll_id: u8, pub clk_id: u8, pub command: u8, pub dfsdid: u8, } #[test] fn bindgen_test_layout_atom_get_smu_clock_info_parameters_v3_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(atom_get_smu_clock_info_parameters_v3_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_get_smu_clock_info_parameters_v3_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspll_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_parameters_v3_1), "::", stringify!(syspll_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).clk_id) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_parameters_v3_1), "::", stringify!(clk_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).command) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_parameters_v3_1), "::", stringify!(command) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dfsdid) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_parameters_v3_1), "::", stringify!(dfsdid) ) ); } pub const atom_get_smu_clock_info_command_GET_SMU_CLOCK_INFO_V3_1_GET_CLOCK_FREQ: atom_get_smu_clock_info_command = 0; pub const atom_get_smu_clock_info_command_GET_SMU_CLOCK_INFO_V3_1_GET_PLLVCO_FREQ: atom_get_smu_clock_info_command = 1; pub const atom_get_smu_clock_info_command_GET_SMU_CLOCK_INFO_V3_1_GET_PLLREFCLK_FREQ: atom_get_smu_clock_info_command = 2; pub type atom_get_smu_clock_info_command = ::core::ffi::c_uint; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_SMNCLK_ID: atom_smu9_syspll0_clock_id = 0; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_SOCCLK_ID: atom_smu9_syspll0_clock_id = 1; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_MP0CLK_ID: atom_smu9_syspll0_clock_id = 2; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_MP1CLK_ID: atom_smu9_syspll0_clock_id = 3; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_LCLK_ID: atom_smu9_syspll0_clock_id = 4; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_DCLK_ID: atom_smu9_syspll0_clock_id = 5; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_VCLK_ID: atom_smu9_syspll0_clock_id = 6; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_ECLK_ID: atom_smu9_syspll0_clock_id = 7; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_DCEFCLK_ID: atom_smu9_syspll0_clock_id = 8; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_DPREFCLK_ID: atom_smu9_syspll0_clock_id = 10; pub const atom_smu9_syspll0_clock_id_SMU9_SYSPLL0_DISPCLK_ID: atom_smu9_syspll0_clock_id = 11; pub type atom_smu9_syspll0_clock_id = ::core::ffi::c_uint; pub const atom_smu11_syspll_id_SMU11_SYSPLL0_ID: atom_smu11_syspll_id = 0; pub const atom_smu11_syspll_id_SMU11_SYSPLL1_0_ID: atom_smu11_syspll_id = 1; pub const atom_smu11_syspll_id_SMU11_SYSPLL1_1_ID: atom_smu11_syspll_id = 2; pub const atom_smu11_syspll_id_SMU11_SYSPLL1_2_ID: atom_smu11_syspll_id = 3; pub const atom_smu11_syspll_id_SMU11_SYSPLL2_ID: atom_smu11_syspll_id = 4; pub const atom_smu11_syspll_id_SMU11_SYSPLL3_0_ID: atom_smu11_syspll_id = 5; pub const atom_smu11_syspll_id_SMU11_SYSPLL3_1_ID: atom_smu11_syspll_id = 6; pub type atom_smu11_syspll_id = ::core::ffi::c_uint; pub const atom_smu11_syspll0_clock_id_SMU11_SYSPLL0_ECLK_ID: atom_smu11_syspll0_clock_id = 0; pub const atom_smu11_syspll0_clock_id_SMU11_SYSPLL0_SOCCLK_ID: atom_smu11_syspll0_clock_id = 1; pub const atom_smu11_syspll0_clock_id_SMU11_SYSPLL0_MP0CLK_ID: atom_smu11_syspll0_clock_id = 2; pub const atom_smu11_syspll0_clock_id_SMU11_SYSPLL0_DCLK_ID: atom_smu11_syspll0_clock_id = 3; pub const atom_smu11_syspll0_clock_id_SMU11_SYSPLL0_VCLK_ID: atom_smu11_syspll0_clock_id = 4; pub const atom_smu11_syspll0_clock_id_SMU11_SYSPLL0_DCEFCLK_ID: atom_smu11_syspll0_clock_id = 5; pub type atom_smu11_syspll0_clock_id = ::core::ffi::c_uint; pub const atom_smu11_syspll1_0_clock_id_SMU11_SYSPLL1_0_UCLKA_ID: atom_smu11_syspll1_0_clock_id = 0; pub type atom_smu11_syspll1_0_clock_id = ::core::ffi::c_uint; pub const atom_smu11_syspll1_1_clock_id_SMU11_SYSPLL1_0_UCLKB_ID: atom_smu11_syspll1_1_clock_id = 0; pub type atom_smu11_syspll1_1_clock_id = ::core::ffi::c_uint; pub const atom_smu11_syspll1_2_clock_id_SMU11_SYSPLL1_0_FCLK_ID: atom_smu11_syspll1_2_clock_id = 0; pub type atom_smu11_syspll1_2_clock_id = ::core::ffi::c_uint; pub const atom_smu11_syspll2_clock_id_SMU11_SYSPLL2_GFXCLK_ID: atom_smu11_syspll2_clock_id = 0; pub type atom_smu11_syspll2_clock_id = ::core::ffi::c_uint; pub const atom_smu11_syspll3_0_clock_id_SMU11_SYSPLL3_0_WAFCLK_ID: atom_smu11_syspll3_0_clock_id = 0; pub const atom_smu11_syspll3_0_clock_id_SMU11_SYSPLL3_0_DISPCLK_ID: atom_smu11_syspll3_0_clock_id = 1; pub const atom_smu11_syspll3_0_clock_id_SMU11_SYSPLL3_0_DPREFCLK_ID: atom_smu11_syspll3_0_clock_id = 2; pub type atom_smu11_syspll3_0_clock_id = ::core::ffi::c_uint; pub const atom_smu11_syspll3_1_clock_id_SMU11_SYSPLL3_1_MP1CLK_ID: atom_smu11_syspll3_1_clock_id = 0; pub const atom_smu11_syspll3_1_clock_id_SMU11_SYSPLL3_1_SMNCLK_ID: atom_smu11_syspll3_1_clock_id = 1; pub const atom_smu11_syspll3_1_clock_id_SMU11_SYSPLL3_1_LCLK_ID: atom_smu11_syspll3_1_clock_id = 2; pub type atom_smu11_syspll3_1_clock_id = ::core::ffi::c_uint; pub const atom_smu12_syspll_id_SMU12_SYSPLL0_ID: atom_smu12_syspll_id = 0; pub const atom_smu12_syspll_id_SMU12_SYSPLL1_ID: atom_smu12_syspll_id = 1; pub const atom_smu12_syspll_id_SMU12_SYSPLL2_ID: atom_smu12_syspll_id = 2; pub const atom_smu12_syspll_id_SMU12_SYSPLL3_0_ID: atom_smu12_syspll_id = 3; pub const atom_smu12_syspll_id_SMU12_SYSPLL3_1_ID: atom_smu12_syspll_id = 4; pub type atom_smu12_syspll_id = ::core::ffi::c_uint; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_SMNCLK_ID: atom_smu12_syspll0_clock_id = 0; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_SOCCLK_ID: atom_smu12_syspll0_clock_id = 1; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_MP0CLK_ID: atom_smu12_syspll0_clock_id = 2; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_MP1CLK_ID: atom_smu12_syspll0_clock_id = 3; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_MP2CLK_ID: atom_smu12_syspll0_clock_id = 4; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_VCLK_ID: atom_smu12_syspll0_clock_id = 5; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_LCLK_ID: atom_smu12_syspll0_clock_id = 6; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_DCLK_ID: atom_smu12_syspll0_clock_id = 7; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_ACLK_ID: atom_smu12_syspll0_clock_id = 8; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_ISPCLK_ID: atom_smu12_syspll0_clock_id = 9; pub const atom_smu12_syspll0_clock_id_SMU12_SYSPLL0_SHUBCLK_ID: atom_smu12_syspll0_clock_id = 10; pub type atom_smu12_syspll0_clock_id = ::core::ffi::c_uint; pub const atom_smu12_syspll1_clock_id_SMU12_SYSPLL1_DISPCLK_ID: atom_smu12_syspll1_clock_id = 0; pub const atom_smu12_syspll1_clock_id_SMU12_SYSPLL1_DPPCLK_ID: atom_smu12_syspll1_clock_id = 1; pub const atom_smu12_syspll1_clock_id_SMU12_SYSPLL1_DPREFCLK_ID: atom_smu12_syspll1_clock_id = 2; pub const atom_smu12_syspll1_clock_id_SMU12_SYSPLL1_DCFCLK_ID: atom_smu12_syspll1_clock_id = 3; pub type atom_smu12_syspll1_clock_id = ::core::ffi::c_uint; pub const atom_smu12_syspll2_clock_id_SMU12_SYSPLL2_Pre_GFXCLK_ID: atom_smu12_syspll2_clock_id = 0; pub type atom_smu12_syspll2_clock_id = ::core::ffi::c_uint; pub const atom_smu12_syspll3_0_clock_id_SMU12_SYSPLL3_0_FCLK_ID: atom_smu12_syspll3_0_clock_id = 0; pub type atom_smu12_syspll3_0_clock_id = ::core::ffi::c_uint; pub const atom_smu12_syspll3_1_clock_id_SMU12_SYSPLL3_1_UMCCLK_ID: atom_smu12_syspll3_1_clock_id = 0; pub type atom_smu12_syspll3_1_clock_id = ::core::ffi::c_uint; #[repr(C)] #[derive(Copy, Clone)] pub struct atom_get_smu_clock_info_output_parameters_v3_1 { pub atom_smu_outputclkfreq: atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1, } #[repr(C, packed)] #[derive(Copy, Clone)] pub union atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1 { pub smu_clock_freq_hz: u32, pub syspllvcofreq_10khz: u32, pub sysspllrefclk_10khz: u32, } #[test] fn bindgen_test_layout_atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit< atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1, > = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).smu_clock_freq_hz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1), "::", stringify!(smu_clock_freq_hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).syspllvcofreq_10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1), "::", stringify!(syspllvcofreq_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sysspllrefclk_10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1__bindgen_ty_1), "::", stringify!(sysspllrefclk_10khz) ) ); } #[test] fn bindgen_test_layout_atom_get_smu_clock_info_output_parameters_v3_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).atom_smu_outputclkfreq) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(atom_get_smu_clock_info_output_parameters_v3_1), "::", stringify!(atom_smu_outputclkfreq) ) ); } pub const atom_dynamic_memory_setting_command_COMPUTE_MEMORY_PLL_PARAM: atom_dynamic_memory_setting_command = 1; pub const atom_dynamic_memory_setting_command_COMPUTE_ENGINE_PLL_PARAM: atom_dynamic_memory_setting_command = 2; pub const atom_dynamic_memory_setting_command_ADJUST_MC_SETTING_PARAM: atom_dynamic_memory_setting_command = 3; pub type atom_dynamic_memory_setting_command = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct dynamic_mclk_settings_parameters_v2_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub reserved: u32, } #[test] fn bindgen_test_layout_dynamic_mclk_settings_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!( "Size of: ", stringify!(dynamic_mclk_settings_parameters_v2_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dynamic_mclk_settings_parameters_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(dynamic_mclk_settings_parameters_v2_1), "::", stringify!(reserved) ) ); } impl dynamic_mclk_settings_parameters_v2_1 { #[inline] pub fn mclk_10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_mclk_10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn command(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_command(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1(mclk_10khz: u32, command: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let mclk_10khz: u32 = unsafe { ::core::mem::transmute(mclk_10khz) }; mclk_10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let command: u32 = unsafe { ::core::mem::transmute(command) }; command as u64 }); __bindgen_bitfield_unit } } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct dynamic_sclk_settings_parameters_v2_1 { pub _bitfield_align_1: [u8; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, pub mclk_10khz: u32, pub reserved: u32, } #[test] fn bindgen_test_layout_dynamic_sclk_settings_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!( "Size of: ", stringify!(dynamic_sclk_settings_parameters_v2_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dynamic_sclk_settings_parameters_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_10khz) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(dynamic_sclk_settings_parameters_v2_1), "::", stringify!(mclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(dynamic_sclk_settings_parameters_v2_1), "::", stringify!(reserved) ) ); } impl dynamic_sclk_settings_parameters_v2_1 { #[inline] pub fn sclk_10khz(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 24u8) as u32) } } #[inline] pub fn set_sclk_10khz(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(0usize, 24u8, val as u64) } } #[inline] pub fn command(&self) -> u32 { unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 8u8) as u32) } } #[inline] pub fn set_command(&mut self, val: u32) { unsafe { let val: u32 = ::core::mem::transmute(val); self._bitfield_1.set(24usize, 8u8, val as u64) } } #[inline] pub fn new_bitfield_1(sclk_10khz: u32, command: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); __bindgen_bitfield_unit.set(0usize, 24u8, { let sclk_10khz: u32 = unsafe { ::core::mem::transmute(sclk_10khz) }; sclk_10khz as u64 }); __bindgen_bitfield_unit.set(24usize, 8u8, { let command: u32 = unsafe { ::core::mem::transmute(command) }; command as u64 }); __bindgen_bitfield_unit } } #[repr(C)] #[derive(Copy, Clone)] pub union dynamic_memory_settings_parameters_v2_1 { pub mclk_setting: dynamic_mclk_settings_parameters_v2_1, pub sclk_setting: dynamic_sclk_settings_parameters_v2_1, } #[test] fn bindgen_test_layout_dynamic_memory_settings_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!( "Size of: ", stringify!(dynamic_memory_settings_parameters_v2_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dynamic_memory_settings_parameters_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mclk_setting) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dynamic_memory_settings_parameters_v2_1), "::", stringify!(mclk_setting) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sclk_setting) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dynamic_memory_settings_parameters_v2_1), "::", stringify!(sclk_setting) ) ); } pub const atom_umc6_0_ucode_function_call_enum_id_UMC60_UCODE_FUNC_ID_REINIT: atom_umc6_0_ucode_function_call_enum_id = 0; pub const atom_umc6_0_ucode_function_call_enum_id_UMC60_UCODE_FUNC_ID_ENTER_SELFREFRESH: atom_umc6_0_ucode_function_call_enum_id = 1; pub const atom_umc6_0_ucode_function_call_enum_id_UMC60_UCODE_FUNC_ID_EXIT_SELFREFRESH: atom_umc6_0_ucode_function_call_enum_id = 2; pub type atom_umc6_0_ucode_function_call_enum_id = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct memory_training_parameters_v2_1 { pub ucode_func_id: u8, pub ucode_reserved: [u8; 3usize], pub reserved: [u32; 5usize], } #[test] fn bindgen_test_layout_memory_training_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(memory_training_parameters_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(memory_training_parameters_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_func_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(memory_training_parameters_v2_1), "::", stringify!(ucode_func_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ucode_reserved) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(memory_training_parameters_v2_1), "::", stringify!(ucode_reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(memory_training_parameters_v2_1), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_pixel_clock_parameter_v1_7 { pub pixclk_100hz: u32, pub pll_id: u8, pub encoderobjid: u8, pub encoder_mode: u8, pub miscinfo: u8, pub crtc_id: u8, pub deep_color_ratio: u8, pub reserved1: [u8; 2usize], pub reserved2: u32, } #[test] fn bindgen_test_layout_set_pixel_clock_parameter_v1_7() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(set_pixel_clock_parameter_v1_7)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(set_pixel_clock_parameter_v1_7)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixclk_100hz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(pixclk_100hz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pll_id) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(pll_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoderobjid) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(encoderobjid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_mode) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(encoder_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).miscinfo) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(miscinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deep_color_ratio) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(deep_color_ratio) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(set_pixel_clock_parameter_v1_7), "::", stringify!(reserved2) ) ); } pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_FORCE_PROG_PPLL: atom_set_pixel_clock_v1_7_misc_info = 1; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_PROG_PHYPLL: atom_set_pixel_clock_v1_7_misc_info = 2; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_YUV420_MODE: atom_set_pixel_clock_v1_7_misc_info = 4; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_DVI_DUALLINK_EN: atom_set_pixel_clock_v1_7_misc_info = 8; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_REF_DIV_SRC: atom_set_pixel_clock_v1_7_misc_info = 48; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_REF_DIV_SRC_XTALIN: atom_set_pixel_clock_v1_7_misc_info = 0; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_REF_DIV_SRC_PCIE: atom_set_pixel_clock_v1_7_misc_info = 16; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_REF_DIV_SRC_GENLK: atom_set_pixel_clock_v1_7_misc_info = 32; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_REF_DIV_SRC_REFPAD: atom_set_pixel_clock_v1_7_misc_info = 48; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_ATOMIC_UPDATE: atom_set_pixel_clock_v1_7_misc_info = 64; pub const atom_set_pixel_clock_v1_7_misc_info_PIXEL_CLOCK_V7_MISC_FORCE_SS_DIS: atom_set_pixel_clock_v1_7_misc_info = 128; pub type atom_set_pixel_clock_v1_7_misc_info = ::core::ffi::c_uint; pub const atom_set_pixel_clock_v1_7_deepcolor_ratio_PIXEL_CLOCK_V7_DEEPCOLOR_RATIO_DIS: atom_set_pixel_clock_v1_7_deepcolor_ratio = 0; pub const atom_set_pixel_clock_v1_7_deepcolor_ratio_PIXEL_CLOCK_V7_DEEPCOLOR_RATIO_5_4: atom_set_pixel_clock_v1_7_deepcolor_ratio = 1; pub const atom_set_pixel_clock_v1_7_deepcolor_ratio_PIXEL_CLOCK_V7_DEEPCOLOR_RATIO_3_2: atom_set_pixel_clock_v1_7_deepcolor_ratio = 2; pub const atom_set_pixel_clock_v1_7_deepcolor_ratio_PIXEL_CLOCK_V7_DEEPCOLOR_RATIO_2_1: atom_set_pixel_clock_v1_7_deepcolor_ratio = 3; pub type atom_set_pixel_clock_v1_7_deepcolor_ratio = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_dce_clock_parameters_v2_1 { pub dceclk_10khz: u32, pub dceclktype: u8, pub dceclksrc: u8, pub dceclkflag: u8, pub crtc_id: u8, } #[test] fn bindgen_test_layout_set_dce_clock_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(set_dce_clock_parameters_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(set_dce_clock_parameters_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dceclk_10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_dce_clock_parameters_v2_1), "::", stringify!(dceclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dceclktype) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(set_dce_clock_parameters_v2_1), "::", stringify!(dceclktype) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dceclksrc) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(set_dce_clock_parameters_v2_1), "::", stringify!(dceclksrc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dceclkflag) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(set_dce_clock_parameters_v2_1), "::", stringify!(dceclkflag) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(set_dce_clock_parameters_v2_1), "::", stringify!(crtc_id) ) ); } pub const atom_set_dce_clock_clock_type_DCE_CLOCK_TYPE_DISPCLK: atom_set_dce_clock_clock_type = 0; pub const atom_set_dce_clock_clock_type_DCE_CLOCK_TYPE_DPREFCLK: atom_set_dce_clock_clock_type = 1; pub const atom_set_dce_clock_clock_type_DCE_CLOCK_TYPE_PIXELCLK: atom_set_dce_clock_clock_type = 2; pub type atom_set_dce_clock_clock_type = ::core::ffi::c_uint; pub const atom_set_dce_clock_dprefclk_flag_DCE_CLOCK_FLAG_PLL_REFCLK_SRC_MASK: atom_set_dce_clock_dprefclk_flag = 3; pub const atom_set_dce_clock_dprefclk_flag_DCE_CLOCK_FLAG_PLL_REFCLK_SRC_GENERICA: atom_set_dce_clock_dprefclk_flag = 0; pub const atom_set_dce_clock_dprefclk_flag_DCE_CLOCK_FLAG_PLL_REFCLK_SRC_GENLK: atom_set_dce_clock_dprefclk_flag = 1; pub const atom_set_dce_clock_dprefclk_flag_DCE_CLOCK_FLAG_PLL_REFCLK_SRC_PCIE: atom_set_dce_clock_dprefclk_flag = 2; pub const atom_set_dce_clock_dprefclk_flag_DCE_CLOCK_FLAG_PLL_REFCLK_SRC_XTALIN: atom_set_dce_clock_dprefclk_flag = 3; pub type atom_set_dce_clock_dprefclk_flag = ::core::ffi::c_uint; pub const atom_set_dce_clock_pixclk_flag_DCE_CLOCK_FLAG_PCLK_DEEPCOLOR_RATIO_MASK: atom_set_dce_clock_pixclk_flag = 3; pub const atom_set_dce_clock_pixclk_flag_DCE_CLOCK_FLAG_PCLK_DEEPCOLOR_RATIO_DIS: atom_set_dce_clock_pixclk_flag = 0; pub const atom_set_dce_clock_pixclk_flag_DCE_CLOCK_FLAG_PCLK_DEEPCOLOR_RATIO_5_4: atom_set_dce_clock_pixclk_flag = 1; pub const atom_set_dce_clock_pixclk_flag_DCE_CLOCK_FLAG_PCLK_DEEPCOLOR_RATIO_3_2: atom_set_dce_clock_pixclk_flag = 2; pub const atom_set_dce_clock_pixclk_flag_DCE_CLOCK_FLAG_PCLK_DEEPCOLOR_RATIO_2_1: atom_set_dce_clock_pixclk_flag = 3; pub const atom_set_dce_clock_pixclk_flag_DCE_CLOCK_FLAG_PIXCLK_YUV420_MODE: atom_set_dce_clock_pixclk_flag = 4; pub type atom_set_dce_clock_pixclk_flag = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_dce_clock_ps_allocation_v2_1 { pub param: set_dce_clock_parameters_v2_1, pub ulReserved: [u32; 2usize], } #[test] fn bindgen_test_layout_set_dce_clock_ps_allocation_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(set_dce_clock_ps_allocation_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(set_dce_clock_ps_allocation_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_dce_clock_ps_allocation_v2_1), "::", stringify!(param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ulReserved) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(set_dce_clock_ps_allocation_v2_1), "::", stringify!(ulReserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct blank_crtc_parameters { pub crtc_id: u8, pub blanking: u8, pub reserved: u16, pub reserved1: u32, } #[test] fn bindgen_test_layout_blank_crtc_parameters() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(blank_crtc_parameters)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(blank_crtc_parameters)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(blank_crtc_parameters), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).blanking) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(blank_crtc_parameters), "::", stringify!(blanking) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(blank_crtc_parameters), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(blank_crtc_parameters), "::", stringify!(reserved1) ) ); } pub const atom_blank_crtc_command_ATOM_BLANKING: atom_blank_crtc_command = 1; pub const atom_blank_crtc_command_ATOM_BLANKING_OFF: atom_blank_crtc_command = 0; pub type atom_blank_crtc_command = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct enable_crtc_parameters { pub crtc_id: u8, pub enable: u8, pub padding: [u8; 2usize], } #[test] fn bindgen_test_layout_enable_crtc_parameters() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(enable_crtc_parameters)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(enable_crtc_parameters)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(enable_crtc_parameters), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(enable_crtc_parameters), "::", stringify!(enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(enable_crtc_parameters), "::", stringify!(padding) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct enable_disp_power_gating_parameters_v2_1 { pub disp_pipe_id: u8, pub enable: u8, pub padding: [u8; 2usize], } #[test] fn bindgen_test_layout_enable_disp_power_gating_parameters_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!( "Size of: ", stringify!(enable_disp_power_gating_parameters_v2_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(enable_disp_power_gating_parameters_v2_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).disp_pipe_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(enable_disp_power_gating_parameters_v2_1), "::", stringify!(disp_pipe_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).enable) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(enable_disp_power_gating_parameters_v2_1), "::", stringify!(enable) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(enable_disp_power_gating_parameters_v2_1), "::", stringify!(padding) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct enable_disp_power_gating_ps_allocation { pub param: enable_disp_power_gating_parameters_v2_1, pub ulReserved: [u32; 4usize], } #[test] fn bindgen_test_layout_enable_disp_power_gating_ps_allocation() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 20usize, concat!( "Size of: ", stringify!(enable_disp_power_gating_ps_allocation) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(enable_disp_power_gating_ps_allocation) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(enable_disp_power_gating_ps_allocation), "::", stringify!(param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ulReserved) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(enable_disp_power_gating_ps_allocation), "::", stringify!(ulReserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct set_crtc_using_dtd_timing_parameters { pub h_size: u16, pub h_blanking_time: u16, pub v_size: u16, pub v_blanking_time: u16, pub h_syncoffset: u16, pub h_syncwidth: u16, pub v_syncoffset: u16, pub v_syncwidth: u16, pub modemiscinfo: u16, pub h_border: u8, pub v_border: u8, pub crtc_id: u8, pub encoder_mode: u8, pub padding: [u8; 2usize], } #[test] fn bindgen_test_layout_set_crtc_using_dtd_timing_parameters() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 24usize, concat!( "Size of: ", stringify!(set_crtc_using_dtd_timing_parameters) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(set_crtc_using_dtd_timing_parameters) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(h_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_blanking_time) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(h_blanking_time) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_size) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(v_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_blanking_time) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(v_blanking_time) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_syncoffset) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(h_syncoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_syncwidth) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(h_syncwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_syncoffset) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(v_syncoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_syncwidth) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(v_syncwidth) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).modemiscinfo) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(modemiscinfo) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).h_border) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(h_border) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).v_border) as usize - ptr as usize }, 19usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(v_border) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_mode) as usize - ptr as usize }, 21usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(encoder_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(set_crtc_using_dtd_timing_parameters), "::", stringify!(padding) ) ); } #[repr(C, packed)] #[derive(Copy, Clone)] pub struct process_i2c_channel_transaction_parameters { pub i2cspeed_khz: u8, pub regind_status: process_i2c_channel_transaction_parameters__bindgen_ty_1, pub i2c_data_out: u16, pub flag: u8, pub trans_bytes: u8, pub slave_addr: u8, pub i2c_id: u8, } #[repr(C)] #[derive(Copy, Clone)] pub union process_i2c_channel_transaction_parameters__bindgen_ty_1 { pub regindex: u8, pub status: u8, } #[test] fn bindgen_test_layout_process_i2c_channel_transaction_parameters__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit< process_i2c_channel_transaction_parameters__bindgen_ty_1, > = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1usize, concat!( "Size of: ", stringify!(process_i2c_channel_transaction_parameters__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(process_i2c_channel_transaction_parameters__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regindex) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters__bindgen_ty_1), "::", stringify!(regindex) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).status) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters__bindgen_ty_1), "::", stringify!(status) ) ); } #[test] fn bindgen_test_layout_process_i2c_channel_transaction_parameters() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!( "Size of: ", stringify!(process_i2c_channel_transaction_parameters) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(process_i2c_channel_transaction_parameters) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2cspeed_khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters), "::", stringify!(i2cspeed_khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).regind_status) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters), "::", stringify!(regind_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_data_out) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters), "::", stringify!(i2c_data_out) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).flag) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters), "::", stringify!(flag) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).trans_bytes) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters), "::", stringify!(trans_bytes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).slave_addr) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters), "::", stringify!(slave_addr) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).i2c_id) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(process_i2c_channel_transaction_parameters), "::", stringify!(i2c_id) ) ); } pub const atom_process_i2c_flag_HW_I2C_WRITE: atom_process_i2c_flag = 1; pub const atom_process_i2c_flag_HW_I2C_READ: atom_process_i2c_flag = 0; pub const atom_process_i2c_flag_I2C_2BYTE_ADDR: atom_process_i2c_flag = 2; pub const atom_process_i2c_flag_HW_I2C_SMBUS_BYTE_WR: atom_process_i2c_flag = 4; pub type atom_process_i2c_flag = ::core::ffi::c_uint; pub const atom_process_i2c_status_HW_ASSISTED_I2C_STATUS_FAILURE: atom_process_i2c_status = 2; pub const atom_process_i2c_status_HW_ASSISTED_I2C_STATUS_SUCCESS: atom_process_i2c_status = 1; pub type atom_process_i2c_status = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Copy, Clone)] pub struct process_aux_channel_transaction_parameters_v1_2 { pub aux_request: u16, pub dataout: u16, pub channelid: u8, pub aux_status_delay: process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1, pub dataout_len: u8, pub hpd_id: u8, } #[repr(C)] #[derive(Copy, Clone)] pub union process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1 { pub reply_status: u8, pub aux_delay: u8, } #[test] fn bindgen_test_layout_process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit< process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1, > = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1usize, concat!( "Size of: ", stringify!(process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reply_status) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1), "::", stringify!(reply_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_delay) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2__bindgen_ty_1), "::", stringify!(aux_delay) ) ); } #[test] fn bindgen_test_layout_process_aux_channel_transaction_parameters_v1_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!( "Size of: ", stringify!(process_aux_channel_transaction_parameters_v1_2) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(process_aux_channel_transaction_parameters_v1_2) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_request) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2), "::", stringify!(aux_request) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dataout) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2), "::", stringify!(dataout) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).channelid) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2), "::", stringify!(channelid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).aux_status_delay) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2), "::", stringify!(aux_status_delay) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dataout_len) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2), "::", stringify!(dataout_len) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hpd_id) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(process_aux_channel_transaction_parameters_v1_2), "::", stringify!(hpd_id) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct select_crtc_source_parameters_v2_3 { pub crtc_id: u8, pub encoder_id: u8, pub encode_mode: u8, pub dst_bpc: u8, } #[test] fn bindgen_test_layout_select_crtc_source_parameters_v2_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(select_crtc_source_parameters_v2_3)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(select_crtc_source_parameters_v2_3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).crtc_id) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(select_crtc_source_parameters_v2_3), "::", stringify!(crtc_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encoder_id) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(select_crtc_source_parameters_v2_3), "::", stringify!(encoder_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encode_mode) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(select_crtc_source_parameters_v2_3), "::", stringify!(encode_mode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dst_bpc) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(select_crtc_source_parameters_v2_3), "::", stringify!(dst_bpc) ) ); } pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DISABLE_DIG: atom_dig_encoder_control_action = 0; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_ENABLE_DIG: atom_dig_encoder_control_action = 1; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_LINK_TRAINING_START: atom_dig_encoder_control_action = 8; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_LINK_TRAINING_PATTERN1: atom_dig_encoder_control_action = 9; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_LINK_TRAINING_PATTERN2: atom_dig_encoder_control_action = 10; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_LINK_TRAINING_PATTERN3: atom_dig_encoder_control_action = 19; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_LINK_TRAINING_COMPLETE: atom_dig_encoder_control_action = 11; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_VIDEO_OFF: atom_dig_encoder_control_action = 12; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_VIDEO_ON: atom_dig_encoder_control_action = 13; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_SETUP_PANEL_MODE: atom_dig_encoder_control_action = 16; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_DP_LINK_TRAINING_PATTERN4: atom_dig_encoder_control_action = 20; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_STREAM_SETUP: atom_dig_encoder_control_action = 15; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_LINK_SETUP: atom_dig_encoder_control_action = 17; pub const atom_dig_encoder_control_action_ATOM_ENCODER_CMD_ENCODER_BLANK: atom_dig_encoder_control_action = 18; pub type atom_dig_encoder_control_action = ::core::ffi::c_uint; pub const atom_dig_encoder_control_panelmode_DP_PANEL_MODE_DISABLE: atom_dig_encoder_control_panelmode = 0; pub const atom_dig_encoder_control_panelmode_DP_PANEL_MODE_ENABLE_eDP_MODE: atom_dig_encoder_control_panelmode = 1; pub const atom_dig_encoder_control_panelmode_DP_PANEL_MODE_ENABLE_LVLINK_MODE: atom_dig_encoder_control_panelmode = 17; pub type atom_dig_encoder_control_panelmode = ::core::ffi::c_uint; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG0_ENCODER: atom_dig_encoder_control_v5_digid = 0; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG1_ENCODER: atom_dig_encoder_control_v5_digid = 1; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG2_ENCODER: atom_dig_encoder_control_v5_digid = 2; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG3_ENCODER: atom_dig_encoder_control_v5_digid = 3; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG4_ENCODER: atom_dig_encoder_control_v5_digid = 4; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG5_ENCODER: atom_dig_encoder_control_v5_digid = 5; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG6_ENCODER: atom_dig_encoder_control_v5_digid = 6; pub const atom_dig_encoder_control_v5_digid_ATOM_ENCODER_CONFIG_V5_DIG7_ENCODER: atom_dig_encoder_control_v5_digid = 7; pub type atom_dig_encoder_control_v5_digid = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct dig_encoder_stream_setup_parameters_v1_5 { pub digid: u8, pub action: u8, pub digmode: u8, pub lanenum: u8, pub pclk_10khz: u32, pub bitpercolor: u8, pub dplinkrate_270mhz: u8, pub reserved: [u8; 2usize], } #[test] fn bindgen_test_layout_dig_encoder_stream_setup_parameters_v1_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!( "Size of: ", stringify!(dig_encoder_stream_setup_parameters_v1_5) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dig_encoder_stream_setup_parameters_v1_5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(digid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).action) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(action) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digmode) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(digmode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lanenum) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(lanenum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pclk_10khz) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(pclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bitpercolor) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(bitpercolor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dplinkrate_270mhz) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(dplinkrate_270mhz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(dig_encoder_stream_setup_parameters_v1_5), "::", stringify!(reserved) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct dig_encoder_link_setup_parameters_v1_5 { pub digid: u8, pub action: u8, pub digmode: u8, pub lanenum: u8, pub symclk_10khz: u8, pub hpd_sel: u8, pub digfe_sel: u8, pub reserved: [u8; 2usize], } #[test] fn bindgen_test_layout_dig_encoder_link_setup_parameters_v1_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 9usize, concat!( "Size of: ", stringify!(dig_encoder_link_setup_parameters_v1_5) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dig_encoder_link_setup_parameters_v1_5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(digid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).action) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(action) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digmode) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(digmode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lanenum) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(lanenum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).symclk_10khz) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(symclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hpd_sel) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(hpd_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digfe_sel) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(digfe_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(dig_encoder_link_setup_parameters_v1_5), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct dp_panel_mode_set_parameters_v1_5 { pub digid: u8, pub action: u8, pub panelmode: u8, pub reserved1: u8, pub reserved2: [u32; 2usize], } #[test] fn bindgen_test_layout_dp_panel_mode_set_parameters_v1_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(dp_panel_mode_set_parameters_v1_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dp_panel_mode_set_parameters_v1_5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dp_panel_mode_set_parameters_v1_5), "::", stringify!(digid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).action) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(dp_panel_mode_set_parameters_v1_5), "::", stringify!(action) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).panelmode) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(dp_panel_mode_set_parameters_v1_5), "::", stringify!(panelmode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(dp_panel_mode_set_parameters_v1_5), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(dp_panel_mode_set_parameters_v1_5), "::", stringify!(reserved2) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct dig_encoder_generic_cmd_parameters_v1_5 { pub digid: u8, pub action: u8, pub reserved1: [u8; 2usize], pub reserved2: [u32; 2usize], } #[test] fn bindgen_test_layout_dig_encoder_generic_cmd_parameters_v1_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!( "Size of: ", stringify!(dig_encoder_generic_cmd_parameters_v1_5) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dig_encoder_generic_cmd_parameters_v1_5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_encoder_generic_cmd_parameters_v1_5), "::", stringify!(digid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).action) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(dig_encoder_generic_cmd_parameters_v1_5), "::", stringify!(action) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(dig_encoder_generic_cmd_parameters_v1_5), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(dig_encoder_generic_cmd_parameters_v1_5), "::", stringify!(reserved2) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub union dig_encoder_control_parameters_v1_5 { pub cmd_param: dig_encoder_generic_cmd_parameters_v1_5, pub stream_param: dig_encoder_stream_setup_parameters_v1_5, pub link_param: dig_encoder_link_setup_parameters_v1_5, pub dppanel_param: dp_panel_mode_set_parameters_v1_5, } #[test] fn bindgen_test_layout_dig_encoder_control_parameters_v1_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 12usize, concat!("Size of: ", stringify!(dig_encoder_control_parameters_v1_5)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dig_encoder_control_parameters_v1_5) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).cmd_param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_encoder_control_parameters_v1_5), "::", stringify!(cmd_param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).stream_param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_encoder_control_parameters_v1_5), "::", stringify!(stream_param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).link_param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_encoder_control_parameters_v1_5), "::", stringify!(link_param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dppanel_param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_encoder_control_parameters_v1_5), "::", stringify!(dppanel_param) ) ); } #[repr(C, packed)] #[derive(Copy, Clone)] pub struct dig_transmitter_control_parameters_v1_6 { pub phyid: u8, pub action: u8, pub mode_laneset: dig_transmitter_control_parameters_v1_6__bindgen_ty_1, pub lanenum: u8, pub symclk_10khz: u32, pub hpdsel: u8, pub digfe_sel: u8, pub connobj_id: u8, pub reserved: u8, pub reserved1: u32, } #[repr(C)] #[derive(Copy, Clone)] pub union dig_transmitter_control_parameters_v1_6__bindgen_ty_1 { pub digmode: u8, pub dplaneset: u8, } #[test] fn bindgen_test_layout_dig_transmitter_control_parameters_v1_6__bindgen_ty_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 1usize, concat!( "Size of: ", stringify!(dig_transmitter_control_parameters_v1_6__bindgen_ty_1) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dig_transmitter_control_parameters_v1_6__bindgen_ty_1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digmode) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6__bindgen_ty_1), "::", stringify!(digmode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).dplaneset) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6__bindgen_ty_1), "::", stringify!(dplaneset) ) ); } #[test] fn bindgen_test_layout_dig_transmitter_control_parameters_v1_6() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!( "Size of: ", stringify!(dig_transmitter_control_parameters_v1_6) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dig_transmitter_control_parameters_v1_6) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).phyid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(phyid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).action) as usize - ptr as usize }, 1usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(action) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mode_laneset) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(mode_laneset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lanenum) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(lanenum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).symclk_10khz) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(symclk_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hpdsel) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(hpdsel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).digfe_sel) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(digfe_sel) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).connobj_id) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(connobj_id) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 11usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(reserved) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_parameters_v1_6), "::", stringify!(reserved1) ) ); } #[repr(C, packed)] #[derive(Copy, Clone)] pub struct dig_transmitter_control_ps_allocation_v1_6 { pub param: dig_transmitter_control_parameters_v1_6, pub reserved: [u32; 4usize], } #[test] fn bindgen_test_layout_dig_transmitter_control_ps_allocation_v1_6() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 32usize, concat!( "Size of: ", stringify!(dig_transmitter_control_ps_allocation_v1_6) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(dig_transmitter_control_ps_allocation_v1_6) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).param) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_ps_allocation_v1_6), "::", stringify!(param) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(dig_transmitter_control_ps_allocation_v1_6), "::", stringify!(reserved) ) ); } pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_DISABLE: atom_dig_transmitter_control_action = 0; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_ENABLE: atom_dig_transmitter_control_action = 1; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_LCD_BLOFF: atom_dig_transmitter_control_action = 2; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_LCD_BLON: atom_dig_transmitter_control_action = 3; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_BL_BRIGHTNESS_CONTROL: atom_dig_transmitter_control_action = 4; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_LCD_SELFTEST_START: atom_dig_transmitter_control_action = 5; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_LCD_SELFTEST_STOP: atom_dig_transmitter_control_action = 6; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_INIT: atom_dig_transmitter_control_action = 7; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_DISABLE_OUTPUT: atom_dig_transmitter_control_action = 8; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_ENABLE_OUTPUT: atom_dig_transmitter_control_action = 9; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_SETUP: atom_dig_transmitter_control_action = 10; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_SETUP_VSEMPH: atom_dig_transmitter_control_action = 11; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_POWER_ON: atom_dig_transmitter_control_action = 12; pub const atom_dig_transmitter_control_action_ATOM_TRANSMITTER_ACTION_POWER_OFF: atom_dig_transmitter_control_action = 13; pub type atom_dig_transmitter_control_action = ::core::ffi::c_uint; pub const atom_dig_transmitter_control_digfe_sel_ATOM_TRANMSITTER_V6__DIGA_SEL: atom_dig_transmitter_control_digfe_sel = 1; pub const atom_dig_transmitter_control_digfe_sel_ATOM_TRANMSITTER_V6__DIGB_SEL: atom_dig_transmitter_control_digfe_sel = 2; pub const atom_dig_transmitter_control_digfe_sel_ATOM_TRANMSITTER_V6__DIGC_SEL: atom_dig_transmitter_control_digfe_sel = 4; pub const atom_dig_transmitter_control_digfe_sel_ATOM_TRANMSITTER_V6__DIGD_SEL: atom_dig_transmitter_control_digfe_sel = 8; pub const atom_dig_transmitter_control_digfe_sel_ATOM_TRANMSITTER_V6__DIGE_SEL: atom_dig_transmitter_control_digfe_sel = 16; pub const atom_dig_transmitter_control_digfe_sel_ATOM_TRANMSITTER_V6__DIGF_SEL: atom_dig_transmitter_control_digfe_sel = 32; pub const atom_dig_transmitter_control_digfe_sel_ATOM_TRANMSITTER_V6__DIGG_SEL: atom_dig_transmitter_control_digfe_sel = 64; pub type atom_dig_transmitter_control_digfe_sel = ::core::ffi::c_uint; pub const atom_dig_transmitter_control_hpd_sel_ATOM_TRANSMITTER_V6_NO_HPD_SEL: atom_dig_transmitter_control_hpd_sel = 0; pub const atom_dig_transmitter_control_hpd_sel_ATOM_TRANSMITTER_V6_HPD1_SEL: atom_dig_transmitter_control_hpd_sel = 1; pub const atom_dig_transmitter_control_hpd_sel_ATOM_TRANSMITTER_V6_HPD2_SEL: atom_dig_transmitter_control_hpd_sel = 2; pub const atom_dig_transmitter_control_hpd_sel_ATOM_TRANSMITTER_V6_HPD3_SEL: atom_dig_transmitter_control_hpd_sel = 3; pub const atom_dig_transmitter_control_hpd_sel_ATOM_TRANSMITTER_V6_HPD4_SEL: atom_dig_transmitter_control_hpd_sel = 4; pub const atom_dig_transmitter_control_hpd_sel_ATOM_TRANSMITTER_V6_HPD5_SEL: atom_dig_transmitter_control_hpd_sel = 5; pub const atom_dig_transmitter_control_hpd_sel_ATOM_TRANSMITTER_V6_HPD6_SEL: atom_dig_transmitter_control_hpd_sel = 6; pub type atom_dig_transmitter_control_hpd_sel = ::core::ffi::c_uint; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__0DB_0_4V: atom_dig_transmitter_control_dplaneset = 0; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__0DB_0_6V: atom_dig_transmitter_control_dplaneset = 1; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__0DB_0_8V: atom_dig_transmitter_control_dplaneset = 2; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__0DB_1_2V: atom_dig_transmitter_control_dplaneset = 3; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__3_5DB_0_4V: atom_dig_transmitter_control_dplaneset = 8; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__3_5DB_0_6V: atom_dig_transmitter_control_dplaneset = 9; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__3_5DB_0_8V: atom_dig_transmitter_control_dplaneset = 10; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__6DB_0_4V: atom_dig_transmitter_control_dplaneset = 16; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__6DB_0_6V: atom_dig_transmitter_control_dplaneset = 17; pub const atom_dig_transmitter_control_dplaneset_DP_LANE_SET__9_5DB_0_4V: atom_dig_transmitter_control_dplaneset = 24; pub type atom_dig_transmitter_control_dplaneset = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct external_encoder_control_parameters_v2_4 { pub pixelclock_10khz: u16, pub config: u8, pub action: u8, pub encodermode: u8, pub lanenum: u8, pub bitpercolor: u8, pub hpd_id: u8, } #[test] fn bindgen_test_layout_external_encoder_control_parameters_v2_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 8usize, concat!( "Size of: ", stringify!(external_encoder_control_parameters_v2_4) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(external_encoder_control_parameters_v2_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pixelclock_10khz) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(external_encoder_control_parameters_v2_4), "::", stringify!(pixelclock_10khz) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).config) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(external_encoder_control_parameters_v2_4), "::", stringify!(config) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).action) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(external_encoder_control_parameters_v2_4), "::", stringify!(action) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).encodermode) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(external_encoder_control_parameters_v2_4), "::", stringify!(encodermode) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lanenum) as usize - ptr as usize }, 5usize, concat!( "Offset of field: ", stringify!(external_encoder_control_parameters_v2_4), "::", stringify!(lanenum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).bitpercolor) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(external_encoder_control_parameters_v2_4), "::", stringify!(bitpercolor) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).hpd_id) as usize - ptr as usize }, 7usize, concat!( "Offset of field: ", stringify!(external_encoder_control_parameters_v2_4), "::", stringify!(hpd_id) ) ); } pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_DISABLE_OUTPUT: external_encoder_control_action_def = 0; pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_ENABLE_OUTPUT: external_encoder_control_action_def = 1; pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_ENCODER_INIT: external_encoder_control_action_def = 7; pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_ENCODER_SETUP: external_encoder_control_action_def = 15; pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_ENCODER_BLANKING_OFF: external_encoder_control_action_def = 16; pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_ENCODER_BLANKING: external_encoder_control_action_def = 17; pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_DACLOAD_DETECTION: external_encoder_control_action_def = 18; pub const external_encoder_control_action_def_EXTERNAL_ENCODER_ACTION_V3_DDC_SETUP: external_encoder_control_action_def = 20; pub type external_encoder_control_action_def = ::core::ffi::c_uint; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_DPLINKRATE_MASK: external_encoder_control_v2_4_config_def = 3; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_DPLINKRATE_1_62GHZ: external_encoder_control_v2_4_config_def = 0; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_DPLINKRATE_2_70GHZ: external_encoder_control_v2_4_config_def = 1; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_DPLINKRATE_5_40GHZ: external_encoder_control_v2_4_config_def = 2; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_DPLINKRATE_3_24GHZ: external_encoder_control_v2_4_config_def = 3; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_ENCODER_SEL_MAKS: external_encoder_control_v2_4_config_def = 112; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_ENCODER1: external_encoder_control_v2_4_config_def = 0; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_ENCODER2: external_encoder_control_v2_4_config_def = 16; pub const external_encoder_control_v2_4_config_def_EXTERNAL_ENCODER_CONFIG_V3_ENCODER3: external_encoder_control_v2_4_config_def = 32; pub type external_encoder_control_v2_4_config_def = ::core::ffi::c_uint; #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct external_encoder_control_ps_allocation_v2_4 { pub sExtEncoder: external_encoder_control_parameters_v2_4, pub reserved: [u32; 2usize], } #[test] fn bindgen_test_layout_external_encoder_control_ps_allocation_v2_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 16usize, concat!( "Size of: ", stringify!(external_encoder_control_ps_allocation_v2_4) ) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!( "Alignment of ", stringify!(external_encoder_control_ps_allocation_v2_4) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sExtEncoder) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(external_encoder_control_ps_allocation_v2_4), "::", stringify!(sExtEncoder) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(external_encoder_control_ps_allocation_v2_4), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct amd_acpi_description_header { pub signature: u32, pub tableLength: u32, pub revision: u8, pub checksum: u8, pub oemId: [u8; 6usize], pub oemTableId: [u8; 8usize], pub oemRevision: u32, pub creatorId: u32, pub creatorRevision: u32, } #[test] fn bindgen_test_layout_amd_acpi_description_header() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 36usize, concat!("Size of: ", stringify!(amd_acpi_description_header)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(amd_acpi_description_header)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).signature) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(signature) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tableLength) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(tableLength) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).revision) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).checksum) as usize - ptr as usize }, 9usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(checksum) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).oemId) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(oemId) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).oemTableId) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(oemTableId) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).oemRevision) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(oemRevision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).creatorId) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(creatorId) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).creatorRevision) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(amd_acpi_description_header), "::", stringify!(creatorRevision) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct uefi_acpi_vfct { pub sheader: amd_acpi_description_header, pub tableUUID: [u8; 16usize], pub vbiosimageoffset: u32, pub lib1Imageoffset: u32, pub reserved: [u32; 4usize], } #[test] fn bindgen_test_layout_uefi_acpi_vfct() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 76usize, concat!("Size of: ", stringify!(uefi_acpi_vfct)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(uefi_acpi_vfct)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).sheader) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(uefi_acpi_vfct), "::", stringify!(sheader) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).tableUUID) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(uefi_acpi_vfct), "::", stringify!(tableUUID) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbiosimageoffset) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(uefi_acpi_vfct), "::", stringify!(vbiosimageoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lib1Imageoffset) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(uefi_acpi_vfct), "::", stringify!(lib1Imageoffset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(uefi_acpi_vfct), "::", stringify!(reserved) ) ); } #[repr(C, packed)] #[derive(Debug, Copy, Clone)] pub struct vfct_image_header { pub pcibus: u32, pub pcidevice: u32, pub pcifunction: u32, pub vendorid: u16, pub deviceid: u16, pub ssvid: u16, pub ssid: u16, pub revision: u32, pub imagelength: u32, } #[test] fn bindgen_test_layout_vfct_image_header() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 28usize, concat!("Size of: ", stringify!(vfct_image_header)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(vfct_image_header)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcibus) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(pcibus) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcidevice) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(pcidevice) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcifunction) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(pcifunction) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vendorid) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(vendorid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).deviceid) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(deviceid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ssvid) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(ssvid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).ssid) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(ssid) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).revision) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).imagelength) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(vfct_image_header), "::", stringify!(imagelength) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gop_vbios_content { pub vbiosheader: vfct_image_header, pub vbioscontent: [u8; 1usize], } #[test] fn bindgen_test_layout_gop_vbios_content() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 29usize, concat!("Size of: ", stringify!(gop_vbios_content)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(gop_vbios_content)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbiosheader) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gop_vbios_content), "::", stringify!(vbiosheader) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vbioscontent) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(gop_vbios_content), "::", stringify!(vbioscontent) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gop_lib1_content { pub lib1header: vfct_image_header, pub lib1content: [u8; 1usize], } #[test] fn bindgen_test_layout_gop_lib1_content() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 29usize, concat!("Size of: ", stringify!(gop_lib1_content)) ); assert_eq!( ::core::mem::align_of::(), 1usize, concat!("Alignment of ", stringify!(gop_lib1_content)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lib1header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gop_lib1_content), "::", stringify!(lib1header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).lib1content) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(gop_lib1_content), "::", stringify!(lib1content) ) ); } pub const scratch_register_def_ATOM_DEVICE_CONNECT_INFO_DEF: scratch_register_def = 0; pub const scratch_register_def_ATOM_BL_BRI_LEVEL_INFO_DEF: scratch_register_def = 2; pub const scratch_register_def_ATOM_ACTIVE_INFO_DEF: scratch_register_def = 3; pub const scratch_register_def_ATOM_LCD_INFO_DEF: scratch_register_def = 4; pub const scratch_register_def_ATOM_DEVICE_REQ_INFO_DEF: scratch_register_def = 5; pub const scratch_register_def_ATOM_ACC_CHANGE_INFO_DEF: scratch_register_def = 6; pub const scratch_register_def_ATOM_PRE_OS_MODE_INFO_DEF: scratch_register_def = 7; pub const scratch_register_def_ATOM_PRE_OS_ASSERTION_DEF: scratch_register_def = 8; pub const scratch_register_def_ATOM_INTERNAL_TIMER_INFO_DEF: scratch_register_def = 10; pub type scratch_register_def = ::core::ffi::c_uint; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_LCD1_CONNECT: scratch_device_connect_info_bit_def = 2; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_DFP1_CONNECT: scratch_device_connect_info_bit_def = 8; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_DFP2_CONNECT: scratch_device_connect_info_bit_def = 128; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_DFP3_CONNECT: scratch_device_connect_info_bit_def = 512; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_DFP4_CONNECT: scratch_device_connect_info_bit_def = 1024; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_DFP5_CONNECT: scratch_device_connect_info_bit_def = 2048; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_DFP6_CONNECT: scratch_device_connect_info_bit_def = 64; pub const scratch_device_connect_info_bit_def_ATOM_DISPLAY_DFPx_CONNECT: scratch_device_connect_info_bit_def = 3784; pub const scratch_device_connect_info_bit_def_ATOM_CONNECT_INFO_DEVICE_MASK: scratch_device_connect_info_bit_def = 4095; pub type scratch_device_connect_info_bit_def = ::core::ffi::c_uint; pub const scratch_bl_bri_level_info_bit_def_ATOM_CURRENT_BL_LEVEL_SHIFT: scratch_bl_bri_level_info_bit_def = 8; pub const scratch_bl_bri_level_info_bit_def_ATOM_CURRENT_BL_LEVEL_MASK: scratch_bl_bri_level_info_bit_def = 65280; pub const scratch_bl_bri_level_info_bit_def_ATOM_DEVICE_DPMS_STATE: scratch_bl_bri_level_info_bit_def = 65536; pub type scratch_bl_bri_level_info_bit_def = ::core::ffi::c_uint; pub const scratch_active_info_bits_def_ATOM_DISPLAY_LCD1_ACTIVE: scratch_active_info_bits_def = 2; pub const scratch_active_info_bits_def_ATOM_DISPLAY_DFP1_ACTIVE: scratch_active_info_bits_def = 8; pub const scratch_active_info_bits_def_ATOM_DISPLAY_DFP2_ACTIVE: scratch_active_info_bits_def = 128; pub const scratch_active_info_bits_def_ATOM_DISPLAY_DFP3_ACTIVE: scratch_active_info_bits_def = 512; pub const scratch_active_info_bits_def_ATOM_DISPLAY_DFP4_ACTIVE: scratch_active_info_bits_def = 1024; pub const scratch_active_info_bits_def_ATOM_DISPLAY_DFP5_ACTIVE: scratch_active_info_bits_def = 2048; pub const scratch_active_info_bits_def_ATOM_DISPLAY_DFP6_ACTIVE: scratch_active_info_bits_def = 64; pub const scratch_active_info_bits_def_ATOM_ACTIVE_INFO_DEVICE_MASK: scratch_active_info_bits_def = 4095; pub type scratch_active_info_bits_def = ::core::ffi::c_uint; pub const scratch_device_req_info_bits_def_ATOM_DISPLAY_LCD1_REQ: scratch_device_req_info_bits_def = 2; pub const scratch_device_req_info_bits_def_ATOM_DISPLAY_DFP1_REQ: scratch_device_req_info_bits_def = 8; pub const scratch_device_req_info_bits_def_ATOM_DISPLAY_DFP2_REQ: scratch_device_req_info_bits_def = 128; pub const scratch_device_req_info_bits_def_ATOM_DISPLAY_DFP3_REQ: scratch_device_req_info_bits_def = 512; pub const scratch_device_req_info_bits_def_ATOM_DISPLAY_DFP4_REQ: scratch_device_req_info_bits_def = 1024; pub const scratch_device_req_info_bits_def_ATOM_DISPLAY_DFP5_REQ: scratch_device_req_info_bits_def = 2048; pub const scratch_device_req_info_bits_def_ATOM_DISPLAY_DFP6_REQ: scratch_device_req_info_bits_def = 64; pub const scratch_device_req_info_bits_def_ATOM_REQ_INFO_DEVICE_MASK: scratch_device_req_info_bits_def = 4095; pub type scratch_device_req_info_bits_def = ::core::ffi::c_uint; pub const scratch_acc_change_info_bitshift_def_ATOM_ACC_CHANGE_ACC_MODE_SHIFT: scratch_acc_change_info_bitshift_def = 4; pub const scratch_acc_change_info_bitshift_def_ATOM_ACC_CHANGE_LID_STATUS_SHIFT: scratch_acc_change_info_bitshift_def = 6; pub type scratch_acc_change_info_bitshift_def = ::core::ffi::c_uint; pub const scratch_acc_change_info_bits_def_ATOM_ACC_CHANGE_ACC_MODE: scratch_acc_change_info_bits_def = 16; pub const scratch_acc_change_info_bits_def_ATOM_ACC_CHANGE_LID_STATUS: scratch_acc_change_info_bits_def = 64; pub type scratch_acc_change_info_bits_def = ::core::ffi::c_uint; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_MASK: scratch_pre_os_mode_info_bits_def = 3; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_VGA: scratch_pre_os_mode_info_bits_def = 0; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_VESA: scratch_pre_os_mode_info_bits_def = 1; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_GOP: scratch_pre_os_mode_info_bits_def = 2; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_PIXEL_DEPTH: scratch_pre_os_mode_info_bits_def = 12; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_PIXEL_FORMAT_MASK: scratch_pre_os_mode_info_bits_def = 240; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_8BIT_PAL_EN: scratch_pre_os_mode_info_bits_def = 256; pub const scratch_pre_os_mode_info_bits_def_ATOM_ASIC_INIT_COMPLETE: scratch_pre_os_mode_info_bits_def = 512; pub const scratch_pre_os_mode_info_bits_def_ATOM_PRE_OS_MODE_NUMBER_MASK: scratch_pre_os_mode_info_bits_def = 4294901760; pub type scratch_pre_os_mode_info_bits_def = ::core::ffi::c_uint; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__UTILITY_PIPELINE: atom_master_data_table_id = 0; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__MULTIMEDIA_INF: atom_master_data_table_id = 1; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__FIRMWARE_INF: atom_master_data_table_id = 2; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__LCD_INF: atom_master_data_table_id = 3; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__SMU_INF: atom_master_data_table_id = 4; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__VRAM_USAGE_BY_FIRMWARE: atom_master_data_table_id = 5; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__GPIO_PIN_LUT: atom_master_data_table_id = 6; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__GFX_INF: atom_master_data_table_id = 7; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__POWER_PLAY_INF: atom_master_data_table_id = 8; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__DISPLAY_OBJECT_INF: atom_master_data_table_id = 9; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__INDIRECT_IO_ACCESS: atom_master_data_table_id = 10; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__UMC_INF: atom_master_data_table_id = 11; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__DCE_INF: atom_master_data_table_id = 12; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__VRAM_INF: atom_master_data_table_id = 13; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__INTEGRATED_SYS_INF: atom_master_data_table_id = 14; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__ASIC_PROFILING_INF: atom_master_data_table_id = 15; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__VOLTAGE_OBJ_INF: atom_master_data_table_id = 16; pub const atom_master_data_table_id_VBIOS_DATA_TBL_ID__UNDEFINED: atom_master_data_table_id = 17; pub type atom_master_data_table_id = ::core::ffi::c_uint; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__ASIC_INIT: atom_master_command_table_id = 0; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__DIGX_ENCODER_CONTROL: atom_master_command_table_id = 1; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__SET_ENGINE_CLOCK: atom_master_command_table_id = 2; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__SET_MEMORY_CLOCK: atom_master_command_table_id = 3; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__SET_PIXEL_CLOCK: atom_master_command_table_id = 4; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__ENABLE_DISP_POWER_GATING: atom_master_command_table_id = 5; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__BLANK_CRTC: atom_master_command_table_id = 6; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__ENABLE_CRTC: atom_master_command_table_id = 7; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__GET_SMU_CLOCK_INFO: atom_master_command_table_id = 8; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__SELECT_CRTC_SOURCE: atom_master_command_table_id = 9; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__SET_DCE_CLOCK: atom_master_command_table_id = 10; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__GET_MEMORY_CLOCK: atom_master_command_table_id = 11; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__GET_ENGINE_CLOCK: atom_master_command_table_id = 12; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__SET_CRTC_USING_DTD_TIMING: atom_master_command_table_id = 13; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__EXTENAL_ENCODER_CONTROL: atom_master_command_table_id = 14; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__PROCESS_I2C_CHANNEL_TRANSACTION: atom_master_command_table_id = 15; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__COMPUTE_GPU_CLOCK_PARAM: atom_master_command_table_id = 16; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__DYNAMIC_MEMORY_SETTINGS: atom_master_command_table_id = 17; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__MEMORY_TRAINING: atom_master_command_table_id = 18; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__SET_VOLTAGE: atom_master_command_table_id = 19; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__DIG1_TRANSMITTER_CONTROL: atom_master_command_table_id = 20; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__PROCESS_AUX_CHANNEL_TRANSACTION: atom_master_command_table_id = 21; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__GET_VOLTAGE_INF: atom_master_command_table_id = 22; pub const atom_master_command_table_id_VBIOS_CMD_TBL_ID__UNDEFINED: atom_master_command_table_id = 23; pub type atom_master_command_table_id = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct metrics_table_header { pub structure_size: u16, pub format_revision: u8, pub content_revision: u8, } #[test] fn bindgen_test_layout_metrics_table_header() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 4usize, concat!("Size of: ", stringify!(metrics_table_header)) ); assert_eq!( ::core::mem::align_of::(), 2usize, concat!("Alignment of ", stringify!(metrics_table_header)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).structure_size) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(metrics_table_header), "::", stringify!(structure_size) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).format_revision) as usize - ptr as usize }, 2usize, concat!( "Offset of field: ", stringify!(metrics_table_header), "::", stringify!(format_revision) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).content_revision) as usize - ptr as usize }, 3usize, concat!( "Offset of field: ", stringify!(metrics_table_header), "::", stringify!(content_revision) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v1_0 { pub common_header: metrics_table_header, pub system_clock_counter: u64, pub temperature_edge: u16, pub temperature_hotspot: u16, pub temperature_mem: u16, pub temperature_vrgfx: u16, pub temperature_vrsoc: u16, pub temperature_vrmem: u16, pub average_gfx_activity: u16, pub average_umc_activity: u16, pub average_mm_activity: u16, pub average_socket_power: u16, pub energy_accumulator: u32, pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_vclk0_frequency: u16, pub average_dclk0_frequency: u16, pub average_vclk1_frequency: u16, pub average_dclk1_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_vclk0: u16, pub current_dclk0: u16, pub current_vclk1: u16, pub current_dclk1: u16, pub throttle_status: u32, pub current_fan_speed: u16, pub pcie_link_width: u8, pub pcie_link_speed: u8, } #[test] fn bindgen_test_layout_gpu_metrics_v1_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 80usize, concat!("Size of: ", stringify!(gpu_metrics_v1_0)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v1_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_edge) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(temperature_edge) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hotspot) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(temperature_hotspot) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_mem) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(temperature_mem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrgfx) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(temperature_vrgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrsoc) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(temperature_vrsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrmem) as usize - ptr as usize }, 26usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(temperature_vrmem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_umc_activity) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_umc_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 34usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).energy_accumulator) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(energy_accumulator) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk0_frequency) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_vclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk0_frequency) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_dclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk1_frequency) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_vclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk1_frequency) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(average_dclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk0) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_vclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk0) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_dclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk1) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_vclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk1) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_dclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fan_speed) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(current_fan_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_width) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(pcie_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_speed) as usize - ptr as usize }, 75usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_0), "::", stringify!(pcie_link_speed) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v1_1 { pub common_header: metrics_table_header, pub temperature_edge: u16, pub temperature_hotspot: u16, pub temperature_mem: u16, pub temperature_vrgfx: u16, pub temperature_vrsoc: u16, pub temperature_vrmem: u16, pub average_gfx_activity: u16, pub average_umc_activity: u16, pub average_mm_activity: u16, pub average_socket_power: u16, pub energy_accumulator: u64, pub system_clock_counter: u64, pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_vclk0_frequency: u16, pub average_dclk0_frequency: u16, pub average_vclk1_frequency: u16, pub average_dclk1_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_vclk0: u16, pub current_dclk0: u16, pub current_vclk1: u16, pub current_dclk1: u16, pub throttle_status: u32, pub current_fan_speed: u16, pub pcie_link_width: u16, pub pcie_link_speed: u16, pub padding: u16, pub gfx_activity_acc: u32, pub mem_activity_acc: u32, pub temperature_hbm: [u16; 4usize], } #[test] fn bindgen_test_layout_gpu_metrics_v1_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 96usize, concat!("Size of: ", stringify!(gpu_metrics_v1_1)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v1_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_edge) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(temperature_edge) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hotspot) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(temperature_hotspot) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_mem) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(temperature_mem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrgfx) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(temperature_vrgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrsoc) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(temperature_vrsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrmem) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(temperature_vrmem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_umc_activity) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_umc_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).energy_accumulator) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(energy_accumulator) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk0_frequency) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_vclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk0_frequency) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_dclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk1_frequency) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_vclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk1_frequency) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(average_dclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk0) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_vclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk0) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_dclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk1) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_vclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk1) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_dclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fan_speed) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(current_fan_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_width) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(pcie_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_speed) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(pcie_link_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfx_activity_acc) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(gfx_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_activity_acc) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(mem_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hbm) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_1), "::", stringify!(temperature_hbm) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v1_2 { pub common_header: metrics_table_header, pub temperature_edge: u16, pub temperature_hotspot: u16, pub temperature_mem: u16, pub temperature_vrgfx: u16, pub temperature_vrsoc: u16, pub temperature_vrmem: u16, pub average_gfx_activity: u16, pub average_umc_activity: u16, pub average_mm_activity: u16, pub average_socket_power: u16, pub energy_accumulator: u64, pub system_clock_counter: u64, pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_vclk0_frequency: u16, pub average_dclk0_frequency: u16, pub average_vclk1_frequency: u16, pub average_dclk1_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_vclk0: u16, pub current_dclk0: u16, pub current_vclk1: u16, pub current_dclk1: u16, pub throttle_status: u32, pub current_fan_speed: u16, pub pcie_link_width: u16, pub pcie_link_speed: u16, pub padding: u16, pub gfx_activity_acc: u32, pub mem_activity_acc: u32, pub temperature_hbm: [u16; 4usize], pub firmware_timestamp: u64, } #[test] fn bindgen_test_layout_gpu_metrics_v1_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 104usize, concat!("Size of: ", stringify!(gpu_metrics_v1_2)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v1_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_edge) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(temperature_edge) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hotspot) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(temperature_hotspot) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_mem) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(temperature_mem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrgfx) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(temperature_vrgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrsoc) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(temperature_vrsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrmem) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(temperature_vrmem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_umc_activity) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_umc_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).energy_accumulator) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(energy_accumulator) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk0_frequency) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_vclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk0_frequency) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_dclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk1_frequency) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_vclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk1_frequency) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(average_dclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk0) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_vclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk0) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_dclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk1) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_vclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk1) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_dclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fan_speed) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(current_fan_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_width) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(pcie_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_speed) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(pcie_link_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfx_activity_acc) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(gfx_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_activity_acc) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(mem_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hbm) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(temperature_hbm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_timestamp) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_2), "::", stringify!(firmware_timestamp) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v1_3 { pub common_header: metrics_table_header, pub temperature_edge: u16, pub temperature_hotspot: u16, pub temperature_mem: u16, pub temperature_vrgfx: u16, pub temperature_vrsoc: u16, pub temperature_vrmem: u16, pub average_gfx_activity: u16, pub average_umc_activity: u16, pub average_mm_activity: u16, pub average_socket_power: u16, pub energy_accumulator: u64, pub system_clock_counter: u64, pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_vclk0_frequency: u16, pub average_dclk0_frequency: u16, pub average_vclk1_frequency: u16, pub average_dclk1_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_vclk0: u16, pub current_dclk0: u16, pub current_vclk1: u16, pub current_dclk1: u16, pub throttle_status: u32, pub current_fan_speed: u16, pub pcie_link_width: u16, pub pcie_link_speed: u16, pub padding: u16, pub gfx_activity_acc: u32, pub mem_activity_acc: u32, pub temperature_hbm: [u16; 4usize], pub firmware_timestamp: u64, pub voltage_soc: u16, pub voltage_gfx: u16, pub voltage_mem: u16, pub padding1: u16, pub indep_throttle_status: u64, } #[test] fn bindgen_test_layout_gpu_metrics_v1_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 120usize, concat!("Size of: ", stringify!(gpu_metrics_v1_3)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v1_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_edge) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(temperature_edge) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hotspot) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(temperature_hotspot) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_mem) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(temperature_mem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrgfx) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(temperature_vrgfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrsoc) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(temperature_vrsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrmem) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(temperature_vrmem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_umc_activity) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_umc_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 22usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).energy_accumulator) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(energy_accumulator) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk0_frequency) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_vclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk0_frequency) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_dclk0_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk1_frequency) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_vclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk1_frequency) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(average_dclk1_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 58usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk0) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_vclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk0) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_dclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk1) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_vclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk1) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_dclk1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fan_speed) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(current_fan_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_width) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(pcie_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_speed) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(pcie_link_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfx_activity_acc) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(gfx_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_activity_acc) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(mem_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hbm) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(temperature_hbm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_timestamp) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(firmware_timestamp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_soc) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(voltage_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_gfx) as usize - ptr as usize }, 106usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(voltage_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).voltage_mem) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(voltage_mem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding1) as usize - ptr as usize }, 110usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(padding1) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).indep_throttle_status) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_3), "::", stringify!(indep_throttle_status) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v1_4 { pub common_header: metrics_table_header, pub temperature_hotspot: u16, pub temperature_mem: u16, pub temperature_vrsoc: u16, pub curr_socket_power: u16, pub average_gfx_activity: u16, pub average_umc_activity: u16, pub vcn_activity: [u16; 4usize], pub energy_accumulator: u64, pub system_clock_counter: u64, pub throttle_status: u32, pub gfxclk_lock_status: u32, pub pcie_link_width: u16, pub pcie_link_speed: u16, pub xgmi_link_width: u16, pub xgmi_link_speed: u16, pub gfx_activity_acc: u32, pub mem_activity_acc: u32, pub pcie_bandwidth_acc: u64, pub pcie_bandwidth_inst: u64, pub pcie_l0_to_recov_count_acc: u64, pub pcie_replay_count_acc: u64, pub pcie_replay_rover_count_acc: u64, pub xgmi_read_data_acc: [u64; 8usize], pub xgmi_write_data_acc: [u64; 8usize], pub firmware_timestamp: u64, pub current_gfxclk: [u16; 8usize], pub current_socclk: [u16; 4usize], pub current_vclk0: [u16; 4usize], pub current_dclk0: [u16; 4usize], pub current_uclk: u16, pub padding: u16, } #[test] fn bindgen_test_layout_gpu_metrics_v1_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 288usize, concat!("Size of: ", stringify!(gpu_metrics_v1_4)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v1_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hotspot) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(temperature_hotspot) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_mem) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(temperature_mem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrsoc) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(temperature_vrsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).curr_socket_power) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(curr_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_umc_activity) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(average_umc_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vcn_activity) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(vcn_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).energy_accumulator) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(energy_accumulator) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxclk_lock_status) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(gfxclk_lock_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_width) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(pcie_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_speed) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(pcie_link_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_link_width) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(xgmi_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_link_speed) as usize - ptr as usize }, 54usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(xgmi_link_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfx_activity_acc) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(gfx_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_activity_acc) as usize - ptr as usize }, 60usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(mem_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_bandwidth_acc) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(pcie_bandwidth_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_bandwidth_inst) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(pcie_bandwidth_inst) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_l0_to_recov_count_acc) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(pcie_l0_to_recov_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_replay_count_acc) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(pcie_replay_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_replay_rover_count_acc) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(pcie_replay_rover_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_read_data_acc) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(xgmi_read_data_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_write_data_acc) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(xgmi_write_data_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_timestamp) as usize - ptr as usize }, 232usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(firmware_timestamp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 240usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 256usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk0) as usize - ptr as usize }, 264usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(current_vclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk0) as usize - ptr as usize }, 272usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(current_dclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 280usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 282usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_4), "::", stringify!(padding) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v1_5 { pub common_header: metrics_table_header, pub temperature_hotspot: u16, pub temperature_mem: u16, pub temperature_vrsoc: u16, pub curr_socket_power: u16, pub average_gfx_activity: u16, pub average_umc_activity: u16, pub vcn_activity: [u16; 4usize], pub jpeg_activity: [u16; 32usize], pub energy_accumulator: u64, pub system_clock_counter: u64, pub throttle_status: u32, pub gfxclk_lock_status: u32, pub pcie_link_width: u16, pub pcie_link_speed: u16, pub xgmi_link_width: u16, pub xgmi_link_speed: u16, pub gfx_activity_acc: u32, pub mem_activity_acc: u32, pub pcie_bandwidth_acc: u64, pub pcie_bandwidth_inst: u64, pub pcie_l0_to_recov_count_acc: u64, pub pcie_replay_count_acc: u64, pub pcie_replay_rover_count_acc: u64, pub pcie_nak_sent_count_acc: u32, pub pcie_nak_rcvd_count_acc: u32, pub xgmi_read_data_acc: [u64; 8usize], pub xgmi_write_data_acc: [u64; 8usize], pub firmware_timestamp: u64, pub current_gfxclk: [u16; 8usize], pub current_socclk: [u16; 4usize], pub current_vclk0: [u16; 4usize], pub current_dclk0: [u16; 4usize], pub current_uclk: u16, pub padding: u16, } #[test] fn bindgen_test_layout_gpu_metrics_v1_5() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 360usize, concat!("Size of: ", stringify!(gpu_metrics_v1_5)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v1_5)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_hotspot) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(temperature_hotspot) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_mem) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(temperature_mem) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_vrsoc) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(temperature_vrsoc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).curr_socket_power) as usize - ptr as usize }, 10usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(curr_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 12usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_umc_activity) as usize - ptr as usize }, 14usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(average_umc_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).vcn_activity) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(vcn_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).jpeg_activity) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(jpeg_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).energy_accumulator) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(energy_accumulator) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfxclk_lock_status) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(gfxclk_lock_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_width) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_link_speed) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_link_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_link_width) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(xgmi_link_width) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_link_speed) as usize - ptr as usize }, 118usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(xgmi_link_speed) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gfx_activity_acc) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(gfx_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).mem_activity_acc) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(mem_activity_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_bandwidth_acc) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_bandwidth_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_bandwidth_inst) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_bandwidth_inst) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_l0_to_recov_count_acc) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_l0_to_recov_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_replay_count_acc) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_replay_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_replay_rover_count_acc) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_replay_rover_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_nak_sent_count_acc) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_nak_sent_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).pcie_nak_rcvd_count_acc) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(pcie_nak_rcvd_count_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_read_data_acc) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(xgmi_read_data_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).xgmi_write_data_acc) as usize - ptr as usize }, 240usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(xgmi_write_data_acc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).firmware_timestamp) as usize - ptr as usize }, 304usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(firmware_timestamp) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 312usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 328usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk0) as usize - ptr as usize }, 336usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(current_vclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk0) as usize - ptr as usize }, 344usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(current_dclk0) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 352usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 354usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v1_5), "::", stringify!(padding) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v2_0 { pub common_header: metrics_table_header, pub system_clock_counter: u64, pub temperature_gfx: u16, pub temperature_soc: u16, pub temperature_core: [u16; 8usize], pub temperature_l3: [u16; 2usize], pub average_gfx_activity: u16, pub average_mm_activity: u16, pub average_socket_power: u16, pub average_cpu_power: u16, pub average_soc_power: u16, pub average_gfx_power: u16, pub average_core_power: [u16; 8usize], pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_fclk_frequency: u16, pub average_vclk_frequency: u16, pub average_dclk_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_fclk: u16, pub current_vclk: u16, pub current_dclk: u16, pub current_coreclk: [u16; 8usize], pub current_l3clk: [u16; 2usize], pub throttle_status: u32, pub fan_pwm: u16, pub padding: u16, } #[test] fn bindgen_test_layout_gpu_metrics_v2_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 120usize, concat!("Size of: ", stringify!(gpu_metrics_v2_0)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v2_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_gfx) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_soc) as usize - ptr as usize }, 18usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_core) as usize - ptr as usize }, 20usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_l3) as usize - ptr as usize }, 36usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(temperature_l3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_cpu_power) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_cpu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_soc_power) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_soc_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_power) as usize - ptr as usize }, 50usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_gfx_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_core_power) as usize - ptr as usize }, 52usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_core_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_fclk_frequency) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_fclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk_frequency) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_vclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk_frequency) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(average_dclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fclk) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_fclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_vclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk) as usize - ptr as usize }, 90usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_dclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_coreclk) as usize - ptr as usize }, 92usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_coreclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_l3clk) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(current_l3clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fan_pwm) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(fan_pwm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 118usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_0), "::", stringify!(padding) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v2_1 { pub common_header: metrics_table_header, pub temperature_gfx: u16, pub temperature_soc: u16, pub temperature_core: [u16; 8usize], pub temperature_l3: [u16; 2usize], pub average_gfx_activity: u16, pub average_mm_activity: u16, pub system_clock_counter: u64, pub average_socket_power: u16, pub average_cpu_power: u16, pub average_soc_power: u16, pub average_gfx_power: u16, pub average_core_power: [u16; 8usize], pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_fclk_frequency: u16, pub average_vclk_frequency: u16, pub average_dclk_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_fclk: u16, pub current_vclk: u16, pub current_dclk: u16, pub current_coreclk: [u16; 8usize], pub current_l3clk: [u16; 2usize], pub throttle_status: u32, pub fan_pwm: u16, pub padding: [u16; 3usize], } #[test] fn bindgen_test_layout_gpu_metrics_v2_1() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 120usize, concat!("Size of: ", stringify!(gpu_metrics_v2_1)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v2_1)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_gfx) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_soc) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_core) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_l3) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(temperature_l3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_cpu_power) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_cpu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_soc_power) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_soc_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_power) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_gfx_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_core_power) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_core_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_fclk_frequency) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_fclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk_frequency) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_vclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk_frequency) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(average_dclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fclk) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_fclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_vclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_dclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_coreclk) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_coreclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_l3clk) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(current_l3clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fan_pwm) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(fan_pwm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_1), "::", stringify!(padding) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v2_2 { pub common_header: metrics_table_header, pub temperature_gfx: u16, pub temperature_soc: u16, pub temperature_core: [u16; 8usize], pub temperature_l3: [u16; 2usize], pub average_gfx_activity: u16, pub average_mm_activity: u16, pub system_clock_counter: u64, pub average_socket_power: u16, pub average_cpu_power: u16, pub average_soc_power: u16, pub average_gfx_power: u16, pub average_core_power: [u16; 8usize], pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_fclk_frequency: u16, pub average_vclk_frequency: u16, pub average_dclk_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_fclk: u16, pub current_vclk: u16, pub current_dclk: u16, pub current_coreclk: [u16; 8usize], pub current_l3clk: [u16; 2usize], pub throttle_status: u32, pub fan_pwm: u16, pub padding: [u16; 3usize], pub indep_throttle_status: u64, } #[test] fn bindgen_test_layout_gpu_metrics_v2_2() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 128usize, concat!("Size of: ", stringify!(gpu_metrics_v2_2)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v2_2)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_gfx) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_soc) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_core) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_l3) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(temperature_l3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_cpu_power) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_cpu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_soc_power) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_soc_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_power) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_gfx_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_core_power) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_core_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_fclk_frequency) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_fclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk_frequency) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_vclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk_frequency) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(average_dclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fclk) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_fclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_vclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_dclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_coreclk) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_coreclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_l3clk) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(current_l3clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fan_pwm) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(fan_pwm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).indep_throttle_status) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_2), "::", stringify!(indep_throttle_status) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v2_3 { pub common_header: metrics_table_header, pub temperature_gfx: u16, pub temperature_soc: u16, pub temperature_core: [u16; 8usize], pub temperature_l3: [u16; 2usize], pub average_gfx_activity: u16, pub average_mm_activity: u16, pub system_clock_counter: u64, pub average_socket_power: u16, pub average_cpu_power: u16, pub average_soc_power: u16, pub average_gfx_power: u16, pub average_core_power: [u16; 8usize], pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_fclk_frequency: u16, pub average_vclk_frequency: u16, pub average_dclk_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_fclk: u16, pub current_vclk: u16, pub current_dclk: u16, pub current_coreclk: [u16; 8usize], pub current_l3clk: [u16; 2usize], pub throttle_status: u32, pub fan_pwm: u16, pub padding: [u16; 3usize], pub indep_throttle_status: u64, pub average_temperature_gfx: u16, pub average_temperature_soc: u16, pub average_temperature_core: [u16; 8usize], pub average_temperature_l3: [u16; 2usize], } #[test] fn bindgen_test_layout_gpu_metrics_v2_3() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 152usize, concat!("Size of: ", stringify!(gpu_metrics_v2_3)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v2_3)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_gfx) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_soc) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_core) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_l3) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(temperature_l3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_cpu_power) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_cpu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_soc_power) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_soc_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_power) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_gfx_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_core_power) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_core_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_fclk_frequency) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_fclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk_frequency) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_vclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk_frequency) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_dclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fclk) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_fclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_vclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_dclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_coreclk) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_coreclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_l3clk) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(current_l3clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fan_pwm) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(fan_pwm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).indep_throttle_status) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(indep_throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_gfx) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_soc) as usize - ptr as usize }, 130usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_core) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_l3) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_3), "::", stringify!(average_temperature_l3) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v2_4 { pub common_header: metrics_table_header, pub temperature_gfx: u16, pub temperature_soc: u16, pub temperature_core: [u16; 8usize], pub temperature_l3: [u16; 2usize], pub average_gfx_activity: u16, pub average_mm_activity: u16, pub system_clock_counter: u64, pub average_socket_power: u16, pub average_cpu_power: u16, pub average_soc_power: u16, pub average_gfx_power: u16, pub average_core_power: [u16; 8usize], pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_uclk_frequency: u16, pub average_fclk_frequency: u16, pub average_vclk_frequency: u16, pub average_dclk_frequency: u16, pub current_gfxclk: u16, pub current_socclk: u16, pub current_uclk: u16, pub current_fclk: u16, pub current_vclk: u16, pub current_dclk: u16, pub current_coreclk: [u16; 8usize], pub current_l3clk: [u16; 2usize], pub throttle_status: u32, pub fan_pwm: u16, pub padding: [u16; 3usize], pub indep_throttle_status: u64, pub average_temperature_gfx: u16, pub average_temperature_soc: u16, pub average_temperature_core: [u16; 8usize], pub average_temperature_l3: [u16; 2usize], pub average_cpu_voltage: u16, pub average_soc_voltage: u16, pub average_gfx_voltage: u16, pub average_cpu_current: u16, pub average_soc_current: u16, pub average_gfx_current: u16, } #[test] fn bindgen_test_layout_gpu_metrics_v2_4() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 168usize, concat!("Size of: ", stringify!(gpu_metrics_v2_4)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v2_4)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_gfx) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_soc) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_core) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_l3) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(temperature_l3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 28usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mm_activity) as usize - ptr as usize }, 30usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_mm_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_cpu_power) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_cpu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_soc_power) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_soc_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_power) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_gfx_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_core_power) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_core_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 66usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 68usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_fclk_frequency) as usize - ptr as usize }, 70usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_fclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk_frequency) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_vclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dclk_frequency) as usize - ptr as usize }, 74usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_dclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfxclk) as usize - ptr as usize }, 76usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_gfxclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_socclk) as usize - ptr as usize }, 78usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_socclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_uclk) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_uclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_fclk) as usize - ptr as usize }, 82usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_fclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_vclk) as usize - ptr as usize }, 84usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_vclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_dclk) as usize - ptr as usize }, 86usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_dclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_coreclk) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_coreclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_l3clk) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(current_l3clk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_status) as usize - ptr as usize }, 108usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fan_pwm) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(fan_pwm) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).padding) as usize - ptr as usize }, 114usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(padding) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).indep_throttle_status) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(indep_throttle_status) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_gfx) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_soc) as usize - ptr as usize }, 130usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_core) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_temperature_l3) as usize - ptr as usize }, 148usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_temperature_l3) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_cpu_voltage) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_cpu_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_soc_voltage) as usize - ptr as usize }, 154usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_soc_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_voltage) as usize - ptr as usize }, 156usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_gfx_voltage) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_cpu_current) as usize - ptr as usize }, 158usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_cpu_current) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_soc_current) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_soc_current) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_current) as usize - ptr as usize }, 162usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v2_4), "::", stringify!(average_gfx_current) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct gpu_metrics_v3_0 { pub common_header: metrics_table_header, pub temperature_gfx: u16, pub temperature_soc: u16, pub temperature_core: [u16; 16usize], pub temperature_skin: u16, pub average_gfx_activity: u16, pub average_vcn_activity: u16, pub average_ipu_activity: [u16; 8usize], pub average_core_c0_activity: [u16; 16usize], pub average_dram_reads: u16, pub average_dram_writes: u16, pub average_ipu_reads: u16, pub average_ipu_writes: u16, pub system_clock_counter: u64, pub average_socket_power: u32, pub average_ipu_power: u16, pub average_apu_power: u32, pub average_gfx_power: u32, pub average_dgpu_power: u32, pub average_all_core_power: u32, pub average_core_power: [u16; 16usize], pub average_sys_power: u16, pub stapm_power_limit: u16, pub current_stapm_power_limit: u16, pub average_gfxclk_frequency: u16, pub average_socclk_frequency: u16, pub average_vpeclk_frequency: u16, pub average_ipuclk_frequency: u16, pub average_fclk_frequency: u16, pub average_vclk_frequency: u16, pub average_uclk_frequency: u16, pub average_mpipu_frequency: u16, pub current_coreclk: [u16; 16usize], pub current_core_maxfreq: u16, pub current_gfx_maxfreq: u16, pub throttle_residency_prochot: u32, pub throttle_residency_spl: u32, pub throttle_residency_fppt: u32, pub throttle_residency_sppt: u32, pub throttle_residency_thm_core: u32, pub throttle_residency_thm_gfx: u32, pub throttle_residency_thm_soc: u32, pub time_filter_alphavalue: u32, } #[test] fn bindgen_test_layout_gpu_metrics_v3_0() { const UNINIT: ::core::mem::MaybeUninit = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::(), 264usize, concat!("Size of: ", stringify!(gpu_metrics_v3_0)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(gpu_metrics_v3_0)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).common_header) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(common_header) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_gfx) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(temperature_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_soc) as usize - ptr as usize }, 6usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(temperature_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_core) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(temperature_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).temperature_skin) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(temperature_skin) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_activity) as usize - ptr as usize }, 42usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_gfx_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vcn_activity) as usize - ptr as usize }, 44usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_vcn_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_ipu_activity) as usize - ptr as usize }, 46usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_ipu_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_core_c0_activity) as usize - ptr as usize }, 62usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_core_c0_activity) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dram_reads) as usize - ptr as usize }, 94usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_dram_reads) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dram_writes) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_dram_writes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_ipu_reads) as usize - ptr as usize }, 98usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_ipu_reads) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_ipu_writes) as usize - ptr as usize }, 100usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_ipu_writes) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).system_clock_counter) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(system_clock_counter) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socket_power) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_socket_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_ipu_power) as usize - ptr as usize }, 116usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_ipu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_apu_power) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_apu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfx_power) as usize - ptr as usize }, 124usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_gfx_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_dgpu_power) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_dgpu_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_all_core_power) as usize - ptr as usize }, 132usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_all_core_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_core_power) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_core_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_sys_power) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_sys_power) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).stapm_power_limit) as usize - ptr as usize }, 170usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(stapm_power_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_stapm_power_limit) as usize - ptr as usize }, 172usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(current_stapm_power_limit) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_gfxclk_frequency) as usize - ptr as usize }, 174usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_gfxclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_socclk_frequency) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_socclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vpeclk_frequency) as usize - ptr as usize }, 178usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_vpeclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_ipuclk_frequency) as usize - ptr as usize }, 180usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_ipuclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_fclk_frequency) as usize - ptr as usize }, 182usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_fclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_vclk_frequency) as usize - ptr as usize }, 184usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_vclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_uclk_frequency) as usize - ptr as usize }, 186usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_uclk_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).average_mpipu_frequency) as usize - ptr as usize }, 188usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(average_mpipu_frequency) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_coreclk) as usize - ptr as usize }, 190usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(current_coreclk) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_core_maxfreq) as usize - ptr as usize }, 222usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(current_core_maxfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).current_gfx_maxfreq) as usize - ptr as usize }, 224usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(current_gfx_maxfreq) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_residency_prochot) as usize - ptr as usize }, 228usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(throttle_residency_prochot) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_residency_spl) as usize - ptr as usize }, 232usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(throttle_residency_spl) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_residency_fppt) as usize - ptr as usize }, 236usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(throttle_residency_fppt) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_residency_sppt) as usize - ptr as usize }, 240usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(throttle_residency_sppt) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_residency_thm_core) as usize - ptr as usize }, 244usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(throttle_residency_thm_core) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_residency_thm_gfx) as usize - ptr as usize }, 248usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(throttle_residency_thm_gfx) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).throttle_residency_thm_soc) as usize - ptr as usize }, 252usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(throttle_residency_thm_soc) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).time_filter_alphavalue) as usize - ptr as usize }, 256usize, concat!( "Offset of field: ", stringify!(gpu_metrics_v3_0), "::", stringify!(time_filter_alphavalue) ) ); } pub type __builtin_va_list = [__va_list_tag; 1usize]; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __va_list_tag { pub gp_offset: ::core::ffi::c_uint, pub fp_offset: ::core::ffi::c_uint, pub overflow_arg_area: *mut ::core::ffi::c_void, pub reg_save_area: *mut ::core::ffi::c_void, } #[test] fn bindgen_test_layout___va_list_tag() { const UNINIT: ::core::mem::MaybeUninit<__va_list_tag> = ::core::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<__va_list_tag>(), 24usize, concat!("Size of: ", stringify!(__va_list_tag)) ); assert_eq!( ::core::mem::align_of::<__va_list_tag>(), 8usize, concat!("Alignment of ", stringify!(__va_list_tag)) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(__va_list_tag), "::", stringify!(gp_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, 4usize, concat!( "Offset of field: ", stringify!(__va_list_tag), "::", stringify!(fp_offset) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(__va_list_tag), "::", stringify!(overflow_arg_area) ) ); assert_eq!( unsafe { ::core::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(__va_list_tag), "::", stringify!(reg_save_area) ) ); }