/* automatically generated by rust-bindgen 0.71.1 */

#[repr(C)]
#[derive(Default)]
pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]);
impl<T> __IncompleteArrayField<T> {
    #[inline]
    pub const fn new() -> Self {
        __IncompleteArrayField(::std::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] {
        ::std::slice::from_raw_parts(self.as_ptr(), len)
    }
    #[inline]
    pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
        ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
    }
}
impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> {
    fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
        fmt.write_str("__IncompleteArrayField")
    }
}
pub const __BITS_PER_LONG: u32 = 64;
pub const __BITS_PER_LONG_LONG: u32 = 64;
pub const __FD_SETSIZE: u32 = 1024;
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 AMDXDNA_DRIVER_MAJOR: u32 = 1;
pub const AMDXDNA_DRIVER_MINOR: u32 = 0;
pub const AMDXDNA_INVALID_ADDR: i32 = -1;
pub const AMDXDNA_INVALID_CTX_HANDLE: u32 = 0;
pub const AMDXDNA_INVALID_BO_HANDLE: u32 = 0;
pub const AMDXDNA_INVALID_FENCE_HANDLE: u32 = 0;
pub const SYNC_DIRECT_TO_DEVICE: u32 = 0;
pub const SYNC_DIRECT_FROM_DEVICE: u32 = 1;
pub type __s8 = ::std::os::raw::c_schar;
pub type __u8 = ::std::os::raw::c_uchar;
pub type __s16 = ::std::os::raw::c_short;
pub type __u16 = ::std::os::raw::c_ushort;
pub type __s32 = ::std::os::raw::c_int;
pub type __u32 = ::std::os::raw::c_uint;
pub type __s64 = ::std::os::raw::c_longlong;
pub type __u64 = ::std::os::raw::c_ulonglong;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __kernel_fd_set {
    pub fds_bits: [::std::os::raw::c_ulong; 16usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of __kernel_fd_set"][::std::mem::size_of::<__kernel_fd_set>() - 128usize];
    ["Alignment of __kernel_fd_set"][::std::mem::align_of::<__kernel_fd_set>() - 8usize];
    ["Offset of field: __kernel_fd_set::fds_bits"]
        [::std::mem::offset_of!(__kernel_fd_set, fds_bits) - 0usize];
};
pub type __kernel_sighandler_t =
    ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
pub type __kernel_key_t = ::std::os::raw::c_int;
pub type __kernel_mqd_t = ::std::os::raw::c_int;
pub type __kernel_old_uid_t = ::std::os::raw::c_ushort;
pub type __kernel_old_gid_t = ::std::os::raw::c_ushort;
pub type __kernel_old_dev_t = ::std::os::raw::c_ulong;
pub type __kernel_long_t = ::std::os::raw::c_long;
pub type __kernel_ulong_t = ::std::os::raw::c_ulong;
pub type __kernel_ino_t = __kernel_ulong_t;
pub type __kernel_mode_t = ::std::os::raw::c_uint;
pub type __kernel_pid_t = ::std::os::raw::c_int;
pub type __kernel_ipc_pid_t = ::std::os::raw::c_int;
pub type __kernel_uid_t = ::std::os::raw::c_uint;
pub type __kernel_gid_t = ::std::os::raw::c_uint;
pub type __kernel_suseconds_t = __kernel_long_t;
pub type __kernel_daddr_t = ::std::os::raw::c_int;
pub type __kernel_uid32_t = ::std::os::raw::c_uint;
pub type __kernel_gid32_t = ::std::os::raw::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: [::std::os::raw::c_int; 2usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of __kernel_fsid_t"][::std::mem::size_of::<__kernel_fsid_t>() - 8usize];
    ["Alignment of __kernel_fsid_t"][::std::mem::align_of::<__kernel_fsid_t>() - 4usize];
    ["Offset of field: __kernel_fsid_t::val"]
        [::std::mem::offset_of!(__kernel_fsid_t, val) - 0usize];
};
pub type __kernel_off_t = __kernel_long_t;
pub type __kernel_loff_t = ::std::os::raw::c_longlong;
pub type __kernel_old_time_t = __kernel_long_t;
pub type __kernel_time_t = __kernel_long_t;
pub type __kernel_time64_t = ::std::os::raw::c_longlong;
pub type __kernel_clock_t = __kernel_long_t;
pub type __kernel_timer_t = ::std::os::raw::c_int;
pub type __kernel_clockid_t = ::std::os::raw::c_int;
pub type __kernel_caddr_t = *mut ::std::os::raw::c_char;
pub type __kernel_uid16_t = ::std::os::raw::c_ushort;
pub type __kernel_gid16_t = ::std::os::raw::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 = ::std::os::raw::c_uint;
pub type drm_handle_t = ::std::os::raw::c_uint;
pub type drm_context_t = ::std::os::raw::c_uint;
pub type drm_drawable_t = ::std::os::raw::c_uint;
pub type drm_magic_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_clip_rect {
    pub x1: ::std::os::raw::c_ushort,
    pub y1: ::std::os::raw::c_ushort,
    pub x2: ::std::os::raw::c_ushort,
    pub y2: ::std::os::raw::c_ushort,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_clip_rect"][::std::mem::size_of::<drm_clip_rect>() - 8usize];
    ["Alignment of drm_clip_rect"][::std::mem::align_of::<drm_clip_rect>() - 2usize];
    ["Offset of field: drm_clip_rect::x1"][::std::mem::offset_of!(drm_clip_rect, x1) - 0usize];
    ["Offset of field: drm_clip_rect::y1"][::std::mem::offset_of!(drm_clip_rect, y1) - 2usize];
    ["Offset of field: drm_clip_rect::x2"][::std::mem::offset_of!(drm_clip_rect, x2) - 4usize];
    ["Offset of field: drm_clip_rect::y2"][::std::mem::offset_of!(drm_clip_rect, y2) - 6usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_drawable_info {
    pub num_rects: ::std::os::raw::c_uint,
    pub rects: *mut drm_clip_rect,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_drawable_info"][::std::mem::size_of::<drm_drawable_info>() - 16usize];
    ["Alignment of drm_drawable_info"][::std::mem::align_of::<drm_drawable_info>() - 8usize];
    ["Offset of field: drm_drawable_info::num_rects"]
        [::std::mem::offset_of!(drm_drawable_info, num_rects) - 0usize];
    ["Offset of field: drm_drawable_info::rects"]
        [::std::mem::offset_of!(drm_drawable_info, rects) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_tex_region {
    pub next: ::std::os::raw::c_uchar,
    pub prev: ::std::os::raw::c_uchar,
    pub in_use: ::std::os::raw::c_uchar,
    pub padding: ::std::os::raw::c_uchar,
    pub age: ::std::os::raw::c_uint,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_tex_region"][::std::mem::size_of::<drm_tex_region>() - 8usize];
    ["Alignment of drm_tex_region"][::std::mem::align_of::<drm_tex_region>() - 4usize];
    ["Offset of field: drm_tex_region::next"]
        [::std::mem::offset_of!(drm_tex_region, next) - 0usize];
    ["Offset of field: drm_tex_region::prev"]
        [::std::mem::offset_of!(drm_tex_region, prev) - 1usize];
    ["Offset of field: drm_tex_region::in_use"]
        [::std::mem::offset_of!(drm_tex_region, in_use) - 2usize];
    ["Offset of field: drm_tex_region::padding"]
        [::std::mem::offset_of!(drm_tex_region, padding) - 3usize];
    ["Offset of field: drm_tex_region::age"][::std::mem::offset_of!(drm_tex_region, age) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_hw_lock {
    pub lock: ::std::os::raw::c_uint,
    pub padding: [::std::os::raw::c_char; 60usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_hw_lock"][::std::mem::size_of::<drm_hw_lock>() - 64usize];
    ["Alignment of drm_hw_lock"][::std::mem::align_of::<drm_hw_lock>() - 4usize];
    ["Offset of field: drm_hw_lock::lock"][::std::mem::offset_of!(drm_hw_lock, lock) - 0usize];
    ["Offset of field: drm_hw_lock::padding"]
        [::std::mem::offset_of!(drm_hw_lock, padding) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_version {
    pub version_major: ::std::os::raw::c_int,
    pub version_minor: ::std::os::raw::c_int,
    pub version_patchlevel: ::std::os::raw::c_int,
    pub name_len: __kernel_size_t,
    pub name: *mut ::std::os::raw::c_char,
    pub date_len: __kernel_size_t,
    pub date: *mut ::std::os::raw::c_char,
    pub desc_len: __kernel_size_t,
    pub desc: *mut ::std::os::raw::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_version"][::std::mem::size_of::<drm_version>() - 64usize];
    ["Alignment of drm_version"][::std::mem::align_of::<drm_version>() - 8usize];
    ["Offset of field: drm_version::version_major"]
        [::std::mem::offset_of!(drm_version, version_major) - 0usize];
    ["Offset of field: drm_version::version_minor"]
        [::std::mem::offset_of!(drm_version, version_minor) - 4usize];
    ["Offset of field: drm_version::version_patchlevel"]
        [::std::mem::offset_of!(drm_version, version_patchlevel) - 8usize];
    ["Offset of field: drm_version::name_len"]
        [::std::mem::offset_of!(drm_version, name_len) - 16usize];
    ["Offset of field: drm_version::name"][::std::mem::offset_of!(drm_version, name) - 24usize];
    ["Offset of field: drm_version::date_len"]
        [::std::mem::offset_of!(drm_version, date_len) - 32usize];
    ["Offset of field: drm_version::date"][::std::mem::offset_of!(drm_version, date) - 40usize];
    ["Offset of field: drm_version::desc_len"]
        [::std::mem::offset_of!(drm_version, desc_len) - 48usize];
    ["Offset of field: drm_version::desc"][::std::mem::offset_of!(drm_version, desc) - 56usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_unique {
    pub unique_len: __kernel_size_t,
    pub unique: *mut ::std::os::raw::c_char,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_unique"][::std::mem::size_of::<drm_unique>() - 16usize];
    ["Alignment of drm_unique"][::std::mem::align_of::<drm_unique>() - 8usize];
    ["Offset of field: drm_unique::unique_len"]
        [::std::mem::offset_of!(drm_unique, unique_len) - 0usize];
    ["Offset of field: drm_unique::unique"][::std::mem::offset_of!(drm_unique, unique) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_list {
    pub count: ::std::os::raw::c_int,
    pub version: *mut drm_version,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_list"][::std::mem::size_of::<drm_list>() - 16usize];
    ["Alignment of drm_list"][::std::mem::align_of::<drm_list>() - 8usize];
    ["Offset of field: drm_list::count"][::std::mem::offset_of!(drm_list, count) - 0usize];
    ["Offset of field: drm_list::version"][::std::mem::offset_of!(drm_list, version) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_block {
    pub unused: ::std::os::raw::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_block"][::std::mem::size_of::<drm_block>() - 4usize];
    ["Alignment of drm_block"][::std::mem::align_of::<drm_block>() - 4usize];
    ["Offset of field: drm_block::unused"][::std::mem::offset_of!(drm_block, unused) - 0usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_control {
    pub func: drm_control__bindgen_ty_1,
    pub irq: ::std::os::raw::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 = ::std::os::raw::c_uint;
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_control"][::std::mem::size_of::<drm_control>() - 8usize];
    ["Alignment of drm_control"][::std::mem::align_of::<drm_control>() - 4usize];
    ["Offset of field: drm_control::func"][::std::mem::offset_of!(drm_control, func) - 0usize];
    ["Offset of field: drm_control::irq"][::std::mem::offset_of!(drm_control, irq) - 4usize];
};
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 = ::std::os::raw::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 = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_ctx_priv_map {
    pub ctx_id: ::std::os::raw::c_uint,
    pub handle: *mut ::std::os::raw::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_ctx_priv_map"][::std::mem::size_of::<drm_ctx_priv_map>() - 16usize];
    ["Alignment of drm_ctx_priv_map"][::std::mem::align_of::<drm_ctx_priv_map>() - 8usize];
    ["Offset of field: drm_ctx_priv_map::ctx_id"]
        [::std::mem::offset_of!(drm_ctx_priv_map, ctx_id) - 0usize];
    ["Offset of field: drm_ctx_priv_map::handle"]
        [::std::mem::offset_of!(drm_ctx_priv_map, handle) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_map {
    pub offset: ::std::os::raw::c_ulong,
    pub size: ::std::os::raw::c_ulong,
    pub type_: drm_map_type,
    pub flags: drm_map_flags,
    pub handle: *mut ::std::os::raw::c_void,
    pub mtrr: ::std::os::raw::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_map"][::std::mem::size_of::<drm_map>() - 40usize];
    ["Alignment of drm_map"][::std::mem::align_of::<drm_map>() - 8usize];
    ["Offset of field: drm_map::offset"][::std::mem::offset_of!(drm_map, offset) - 0usize];
    ["Offset of field: drm_map::size"][::std::mem::offset_of!(drm_map, size) - 8usize];
    ["Offset of field: drm_map::type_"][::std::mem::offset_of!(drm_map, type_) - 16usize];
    ["Offset of field: drm_map::flags"][::std::mem::offset_of!(drm_map, flags) - 20usize];
    ["Offset of field: drm_map::handle"][::std::mem::offset_of!(drm_map, handle) - 24usize];
    ["Offset of field: drm_map::mtrr"][::std::mem::offset_of!(drm_map, mtrr) - 32usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_client {
    pub idx: ::std::os::raw::c_int,
    pub auth: ::std::os::raw::c_int,
    pub pid: ::std::os::raw::c_ulong,
    pub uid: ::std::os::raw::c_ulong,
    pub magic: ::std::os::raw::c_ulong,
    pub iocs: ::std::os::raw::c_ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_client"][::std::mem::size_of::<drm_client>() - 40usize];
    ["Alignment of drm_client"][::std::mem::align_of::<drm_client>() - 8usize];
    ["Offset of field: drm_client::idx"][::std::mem::offset_of!(drm_client, idx) - 0usize];
    ["Offset of field: drm_client::auth"][::std::mem::offset_of!(drm_client, auth) - 4usize];
    ["Offset of field: drm_client::pid"][::std::mem::offset_of!(drm_client, pid) - 8usize];
    ["Offset of field: drm_client::uid"][::std::mem::offset_of!(drm_client, uid) - 16usize];
    ["Offset of field: drm_client::magic"][::std::mem::offset_of!(drm_client, magic) - 24usize];
    ["Offset of field: drm_client::iocs"][::std::mem::offset_of!(drm_client, iocs) - 32usize];
};
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 = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_stats {
    pub count: ::std::os::raw::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: ::std::os::raw::c_ulong,
    pub type_: drm_stat_type,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_stats__bindgen_ty_1"][::std::mem::size_of::<drm_stats__bindgen_ty_1>() - 16usize];
    ["Alignment of drm_stats__bindgen_ty_1"]
        [::std::mem::align_of::<drm_stats__bindgen_ty_1>() - 8usize];
    ["Offset of field: drm_stats__bindgen_ty_1::value"]
        [::std::mem::offset_of!(drm_stats__bindgen_ty_1, value) - 0usize];
    ["Offset of field: drm_stats__bindgen_ty_1::type_"]
        [::std::mem::offset_of!(drm_stats__bindgen_ty_1, type_) - 8usize];
};
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_stats"][::std::mem::size_of::<drm_stats>() - 248usize];
    ["Alignment of drm_stats"][::std::mem::align_of::<drm_stats>() - 8usize];
    ["Offset of field: drm_stats::count"][::std::mem::offset_of!(drm_stats, count) - 0usize];
    ["Offset of field: drm_stats::data"][::std::mem::offset_of!(drm_stats, data) - 8usize];
};
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 = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_lock {
    pub context: ::std::os::raw::c_int,
    pub flags: drm_lock_flags,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_lock"][::std::mem::size_of::<drm_lock>() - 8usize];
    ["Alignment of drm_lock"][::std::mem::align_of::<drm_lock>() - 4usize];
    ["Offset of field: drm_lock::context"][::std::mem::offset_of!(drm_lock, context) - 0usize];
    ["Offset of field: drm_lock::flags"][::std::mem::offset_of!(drm_lock, flags) - 4usize];
};
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 = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_buf_desc {
    pub count: ::std::os::raw::c_int,
    pub size: ::std::os::raw::c_int,
    pub low_mark: ::std::os::raw::c_int,
    pub high_mark: ::std::os::raw::c_int,
    pub flags: drm_buf_desc__bindgen_ty_1,
    pub agp_start: ::std::os::raw::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 = ::std::os::raw::c_uint;
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_buf_desc"][::std::mem::size_of::<drm_buf_desc>() - 32usize];
    ["Alignment of drm_buf_desc"][::std::mem::align_of::<drm_buf_desc>() - 8usize];
    ["Offset of field: drm_buf_desc::count"][::std::mem::offset_of!(drm_buf_desc, count) - 0usize];
    ["Offset of field: drm_buf_desc::size"][::std::mem::offset_of!(drm_buf_desc, size) - 4usize];
    ["Offset of field: drm_buf_desc::low_mark"]
        [::std::mem::offset_of!(drm_buf_desc, low_mark) - 8usize];
    ["Offset of field: drm_buf_desc::high_mark"]
        [::std::mem::offset_of!(drm_buf_desc, high_mark) - 12usize];
    ["Offset of field: drm_buf_desc::flags"][::std::mem::offset_of!(drm_buf_desc, flags) - 16usize];
    ["Offset of field: drm_buf_desc::agp_start"]
        [::std::mem::offset_of!(drm_buf_desc, agp_start) - 24usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_buf_info {
    pub count: ::std::os::raw::c_int,
    pub list: *mut drm_buf_desc,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_buf_info"][::std::mem::size_of::<drm_buf_info>() - 16usize];
    ["Alignment of drm_buf_info"][::std::mem::align_of::<drm_buf_info>() - 8usize];
    ["Offset of field: drm_buf_info::count"][::std::mem::offset_of!(drm_buf_info, count) - 0usize];
    ["Offset of field: drm_buf_info::list"][::std::mem::offset_of!(drm_buf_info, list) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_buf_free {
    pub count: ::std::os::raw::c_int,
    pub list: *mut ::std::os::raw::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_buf_free"][::std::mem::size_of::<drm_buf_free>() - 16usize];
    ["Alignment of drm_buf_free"][::std::mem::align_of::<drm_buf_free>() - 8usize];
    ["Offset of field: drm_buf_free::count"][::std::mem::offset_of!(drm_buf_free, count) - 0usize];
    ["Offset of field: drm_buf_free::list"][::std::mem::offset_of!(drm_buf_free, list) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_buf_pub {
    pub idx: ::std::os::raw::c_int,
    pub total: ::std::os::raw::c_int,
    pub used: ::std::os::raw::c_int,
    pub address: *mut ::std::os::raw::c_void,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_buf_pub"][::std::mem::size_of::<drm_buf_pub>() - 24usize];
    ["Alignment of drm_buf_pub"][::std::mem::align_of::<drm_buf_pub>() - 8usize];
    ["Offset of field: drm_buf_pub::idx"][::std::mem::offset_of!(drm_buf_pub, idx) - 0usize];
    ["Offset of field: drm_buf_pub::total"][::std::mem::offset_of!(drm_buf_pub, total) - 4usize];
    ["Offset of field: drm_buf_pub::used"][::std::mem::offset_of!(drm_buf_pub, used) - 8usize];
    ["Offset of field: drm_buf_pub::address"]
        [::std::mem::offset_of!(drm_buf_pub, address) - 16usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_buf_map {
    pub count: ::std::os::raw::c_int,
    pub virtual_: *mut ::std::os::raw::c_void,
    pub list: *mut drm_buf_pub,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_buf_map"][::std::mem::size_of::<drm_buf_map>() - 24usize];
    ["Alignment of drm_buf_map"][::std::mem::align_of::<drm_buf_map>() - 8usize];
    ["Offset of field: drm_buf_map::count"][::std::mem::offset_of!(drm_buf_map, count) - 0usize];
    ["Offset of field: drm_buf_map::virtual_"]
        [::std::mem::offset_of!(drm_buf_map, virtual_) - 8usize];
    ["Offset of field: drm_buf_map::list"][::std::mem::offset_of!(drm_buf_map, list) - 16usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_dma {
    pub context: ::std::os::raw::c_int,
    pub send_count: ::std::os::raw::c_int,
    pub send_indices: *mut ::std::os::raw::c_int,
    pub send_sizes: *mut ::std::os::raw::c_int,
    pub flags: drm_dma_flags,
    pub request_count: ::std::os::raw::c_int,
    pub request_size: ::std::os::raw::c_int,
    pub request_indices: *mut ::std::os::raw::c_int,
    pub request_sizes: *mut ::std::os::raw::c_int,
    pub granted_count: ::std::os::raw::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_dma"][::std::mem::size_of::<drm_dma>() - 64usize];
    ["Alignment of drm_dma"][::std::mem::align_of::<drm_dma>() - 8usize];
    ["Offset of field: drm_dma::context"][::std::mem::offset_of!(drm_dma, context) - 0usize];
    ["Offset of field: drm_dma::send_count"][::std::mem::offset_of!(drm_dma, send_count) - 4usize];
    ["Offset of field: drm_dma::send_indices"]
        [::std::mem::offset_of!(drm_dma, send_indices) - 8usize];
    ["Offset of field: drm_dma::send_sizes"][::std::mem::offset_of!(drm_dma, send_sizes) - 16usize];
    ["Offset of field: drm_dma::flags"][::std::mem::offset_of!(drm_dma, flags) - 24usize];
    ["Offset of field: drm_dma::request_count"]
        [::std::mem::offset_of!(drm_dma, request_count) - 28usize];
    ["Offset of field: drm_dma::request_size"]
        [::std::mem::offset_of!(drm_dma, request_size) - 32usize];
    ["Offset of field: drm_dma::request_indices"]
        [::std::mem::offset_of!(drm_dma, request_indices) - 40usize];
    ["Offset of field: drm_dma::request_sizes"]
        [::std::mem::offset_of!(drm_dma, request_sizes) - 48usize];
    ["Offset of field: drm_dma::granted_count"]
        [::std::mem::offset_of!(drm_dma, granted_count) - 56usize];
};
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 = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_ctx {
    pub handle: drm_context_t,
    pub flags: drm_ctx_flags,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_ctx"][::std::mem::size_of::<drm_ctx>() - 8usize];
    ["Alignment of drm_ctx"][::std::mem::align_of::<drm_ctx>() - 4usize];
    ["Offset of field: drm_ctx::handle"][::std::mem::offset_of!(drm_ctx, handle) - 0usize];
    ["Offset of field: drm_ctx::flags"][::std::mem::offset_of!(drm_ctx, flags) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_ctx_res {
    pub count: ::std::os::raw::c_int,
    pub contexts: *mut drm_ctx,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_ctx_res"][::std::mem::size_of::<drm_ctx_res>() - 16usize];
    ["Alignment of drm_ctx_res"][::std::mem::align_of::<drm_ctx_res>() - 8usize];
    ["Offset of field: drm_ctx_res::count"][::std::mem::offset_of!(drm_ctx_res, count) - 0usize];
    ["Offset of field: drm_ctx_res::contexts"]
        [::std::mem::offset_of!(drm_ctx_res, contexts) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_draw {
    pub handle: drm_drawable_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_draw"][::std::mem::size_of::<drm_draw>() - 4usize];
    ["Alignment of drm_draw"][::std::mem::align_of::<drm_draw>() - 4usize];
    ["Offset of field: drm_draw::handle"][::std::mem::offset_of!(drm_draw, handle) - 0usize];
};
pub const drm_drawable_info_type_t_DRM_DRAWABLE_CLIPRECTS: drm_drawable_info_type_t = 0;
pub type drm_drawable_info_type_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_update_draw {
    pub handle: drm_drawable_t,
    pub type_: ::std::os::raw::c_uint,
    pub num: ::std::os::raw::c_uint,
    pub data: ::std::os::raw::c_ulonglong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_update_draw"][::std::mem::size_of::<drm_update_draw>() - 24usize];
    ["Alignment of drm_update_draw"][::std::mem::align_of::<drm_update_draw>() - 8usize];
    ["Offset of field: drm_update_draw::handle"]
        [::std::mem::offset_of!(drm_update_draw, handle) - 0usize];
    ["Offset of field: drm_update_draw::type_"]
        [::std::mem::offset_of!(drm_update_draw, type_) - 4usize];
    ["Offset of field: drm_update_draw::num"]
        [::std::mem::offset_of!(drm_update_draw, num) - 8usize];
    ["Offset of field: drm_update_draw::data"]
        [::std::mem::offset_of!(drm_update_draw, data) - 16usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_auth {
    pub magic: drm_magic_t,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_auth"][::std::mem::size_of::<drm_auth>() - 4usize];
    ["Alignment of drm_auth"][::std::mem::align_of::<drm_auth>() - 4usize];
    ["Offset of field: drm_auth::magic"][::std::mem::offset_of!(drm_auth, magic) - 0usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_irq_busid {
    pub irq: ::std::os::raw::c_int,
    pub busnum: ::std::os::raw::c_int,
    pub devnum: ::std::os::raw::c_int,
    pub funcnum: ::std::os::raw::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_irq_busid"][::std::mem::size_of::<drm_irq_busid>() - 16usize];
    ["Alignment of drm_irq_busid"][::std::mem::align_of::<drm_irq_busid>() - 4usize];
    ["Offset of field: drm_irq_busid::irq"][::std::mem::offset_of!(drm_irq_busid, irq) - 0usize];
    ["Offset of field: drm_irq_busid::busnum"]
        [::std::mem::offset_of!(drm_irq_busid, busnum) - 4usize];
    ["Offset of field: drm_irq_busid::devnum"]
        [::std::mem::offset_of!(drm_irq_busid, devnum) - 8usize];
    ["Offset of field: drm_irq_busid::funcnum"]
        [::std::mem::offset_of!(drm_irq_busid, funcnum) - 12usize];
};
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 = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_wait_vblank_request {
    pub type_: drm_vblank_seq_type,
    pub sequence: ::std::os::raw::c_uint,
    pub signal: ::std::os::raw::c_ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_wait_vblank_request"][::std::mem::size_of::<drm_wait_vblank_request>() - 16usize];
    ["Alignment of drm_wait_vblank_request"]
        [::std::mem::align_of::<drm_wait_vblank_request>() - 8usize];
    ["Offset of field: drm_wait_vblank_request::type_"]
        [::std::mem::offset_of!(drm_wait_vblank_request, type_) - 0usize];
    ["Offset of field: drm_wait_vblank_request::sequence"]
        [::std::mem::offset_of!(drm_wait_vblank_request, sequence) - 4usize];
    ["Offset of field: drm_wait_vblank_request::signal"]
        [::std::mem::offset_of!(drm_wait_vblank_request, signal) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_wait_vblank_reply {
    pub type_: drm_vblank_seq_type,
    pub sequence: ::std::os::raw::c_uint,
    pub tval_sec: ::std::os::raw::c_long,
    pub tval_usec: ::std::os::raw::c_long,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_wait_vblank_reply"][::std::mem::size_of::<drm_wait_vblank_reply>() - 24usize];
    ["Alignment of drm_wait_vblank_reply"]
        [::std::mem::align_of::<drm_wait_vblank_reply>() - 8usize];
    ["Offset of field: drm_wait_vblank_reply::type_"]
        [::std::mem::offset_of!(drm_wait_vblank_reply, type_) - 0usize];
    ["Offset of field: drm_wait_vblank_reply::sequence"]
        [::std::mem::offset_of!(drm_wait_vblank_reply, sequence) - 4usize];
    ["Offset of field: drm_wait_vblank_reply::tval_sec"]
        [::std::mem::offset_of!(drm_wait_vblank_reply, tval_sec) - 8usize];
    ["Offset of field: drm_wait_vblank_reply::tval_usec"]
        [::std::mem::offset_of!(drm_wait_vblank_reply, tval_usec) - 16usize];
};
#[repr(C)]
#[derive(Copy, Clone)]
pub union drm_wait_vblank {
    pub request: drm_wait_vblank_request,
    pub reply: drm_wait_vblank_reply,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_wait_vblank"][::std::mem::size_of::<drm_wait_vblank>() - 24usize];
    ["Alignment of drm_wait_vblank"][::std::mem::align_of::<drm_wait_vblank>() - 8usize];
    ["Offset of field: drm_wait_vblank::request"]
        [::std::mem::offset_of!(drm_wait_vblank, request) - 0usize];
    ["Offset of field: drm_wait_vblank::reply"]
        [::std::mem::offset_of!(drm_wait_vblank, reply) - 0usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_modeset_ctl {
    pub crtc: __u32,
    pub cmd: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_modeset_ctl"][::std::mem::size_of::<drm_modeset_ctl>() - 8usize];
    ["Alignment of drm_modeset_ctl"][::std::mem::align_of::<drm_modeset_ctl>() - 4usize];
    ["Offset of field: drm_modeset_ctl::crtc"]
        [::std::mem::offset_of!(drm_modeset_ctl, crtc) - 0usize];
    ["Offset of field: drm_modeset_ctl::cmd"]
        [::std::mem::offset_of!(drm_modeset_ctl, cmd) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_agp_mode {
    pub mode: ::std::os::raw::c_ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_agp_mode"][::std::mem::size_of::<drm_agp_mode>() - 8usize];
    ["Alignment of drm_agp_mode"][::std::mem::align_of::<drm_agp_mode>() - 8usize];
    ["Offset of field: drm_agp_mode::mode"][::std::mem::offset_of!(drm_agp_mode, mode) - 0usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_agp_buffer {
    pub size: ::std::os::raw::c_ulong,
    pub handle: ::std::os::raw::c_ulong,
    pub type_: ::std::os::raw::c_ulong,
    pub physical: ::std::os::raw::c_ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_agp_buffer"][::std::mem::size_of::<drm_agp_buffer>() - 32usize];
    ["Alignment of drm_agp_buffer"][::std::mem::align_of::<drm_agp_buffer>() - 8usize];
    ["Offset of field: drm_agp_buffer::size"]
        [::std::mem::offset_of!(drm_agp_buffer, size) - 0usize];
    ["Offset of field: drm_agp_buffer::handle"]
        [::std::mem::offset_of!(drm_agp_buffer, handle) - 8usize];
    ["Offset of field: drm_agp_buffer::type_"]
        [::std::mem::offset_of!(drm_agp_buffer, type_) - 16usize];
    ["Offset of field: drm_agp_buffer::physical"]
        [::std::mem::offset_of!(drm_agp_buffer, physical) - 24usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_agp_binding {
    pub handle: ::std::os::raw::c_ulong,
    pub offset: ::std::os::raw::c_ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_agp_binding"][::std::mem::size_of::<drm_agp_binding>() - 16usize];
    ["Alignment of drm_agp_binding"][::std::mem::align_of::<drm_agp_binding>() - 8usize];
    ["Offset of field: drm_agp_binding::handle"]
        [::std::mem::offset_of!(drm_agp_binding, handle) - 0usize];
    ["Offset of field: drm_agp_binding::offset"]
        [::std::mem::offset_of!(drm_agp_binding, offset) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_agp_info {
    pub agp_version_major: ::std::os::raw::c_int,
    pub agp_version_minor: ::std::os::raw::c_int,
    pub mode: ::std::os::raw::c_ulong,
    pub aperture_base: ::std::os::raw::c_ulong,
    pub aperture_size: ::std::os::raw::c_ulong,
    pub memory_allowed: ::std::os::raw::c_ulong,
    pub memory_used: ::std::os::raw::c_ulong,
    pub id_vendor: ::std::os::raw::c_ushort,
    pub id_device: ::std::os::raw::c_ushort,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_agp_info"][::std::mem::size_of::<drm_agp_info>() - 56usize];
    ["Alignment of drm_agp_info"][::std::mem::align_of::<drm_agp_info>() - 8usize];
    ["Offset of field: drm_agp_info::agp_version_major"]
        [::std::mem::offset_of!(drm_agp_info, agp_version_major) - 0usize];
    ["Offset of field: drm_agp_info::agp_version_minor"]
        [::std::mem::offset_of!(drm_agp_info, agp_version_minor) - 4usize];
    ["Offset of field: drm_agp_info::mode"][::std::mem::offset_of!(drm_agp_info, mode) - 8usize];
    ["Offset of field: drm_agp_info::aperture_base"]
        [::std::mem::offset_of!(drm_agp_info, aperture_base) - 16usize];
    ["Offset of field: drm_agp_info::aperture_size"]
        [::std::mem::offset_of!(drm_agp_info, aperture_size) - 24usize];
    ["Offset of field: drm_agp_info::memory_allowed"]
        [::std::mem::offset_of!(drm_agp_info, memory_allowed) - 32usize];
    ["Offset of field: drm_agp_info::memory_used"]
        [::std::mem::offset_of!(drm_agp_info, memory_used) - 40usize];
    ["Offset of field: drm_agp_info::id_vendor"]
        [::std::mem::offset_of!(drm_agp_info, id_vendor) - 48usize];
    ["Offset of field: drm_agp_info::id_device"]
        [::std::mem::offset_of!(drm_agp_info, id_device) - 50usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_scatter_gather {
    pub size: ::std::os::raw::c_ulong,
    pub handle: ::std::os::raw::c_ulong,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_scatter_gather"][::std::mem::size_of::<drm_scatter_gather>() - 16usize];
    ["Alignment of drm_scatter_gather"][::std::mem::align_of::<drm_scatter_gather>() - 8usize];
    ["Offset of field: drm_scatter_gather::size"]
        [::std::mem::offset_of!(drm_scatter_gather, size) - 0usize];
    ["Offset of field: drm_scatter_gather::handle"]
        [::std::mem::offset_of!(drm_scatter_gather, handle) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_set_version {
    pub drm_di_major: ::std::os::raw::c_int,
    pub drm_di_minor: ::std::os::raw::c_int,
    pub drm_dd_major: ::std::os::raw::c_int,
    pub drm_dd_minor: ::std::os::raw::c_int,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_set_version"][::std::mem::size_of::<drm_set_version>() - 16usize];
    ["Alignment of drm_set_version"][::std::mem::align_of::<drm_set_version>() - 4usize];
    ["Offset of field: drm_set_version::drm_di_major"]
        [::std::mem::offset_of!(drm_set_version, drm_di_major) - 0usize];
    ["Offset of field: drm_set_version::drm_di_minor"]
        [::std::mem::offset_of!(drm_set_version, drm_di_minor) - 4usize];
    ["Offset of field: drm_set_version::drm_dd_major"]
        [::std::mem::offset_of!(drm_set_version, drm_dd_major) - 8usize];
    ["Offset of field: drm_set_version::drm_dd_minor"]
        [::std::mem::offset_of!(drm_set_version, drm_dd_minor) - 12usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_gem_close {
    pub handle: __u32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_gem_close"][::std::mem::size_of::<drm_gem_close>() - 8usize];
    ["Alignment of drm_gem_close"][::std::mem::align_of::<drm_gem_close>() - 4usize];
    ["Offset of field: drm_gem_close::handle"]
        [::std::mem::offset_of!(drm_gem_close, handle) - 0usize];
    ["Offset of field: drm_gem_close::pad"][::std::mem::offset_of!(drm_gem_close, pad) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_gem_flink {
    pub handle: __u32,
    pub name: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_gem_flink"][::std::mem::size_of::<drm_gem_flink>() - 8usize];
    ["Alignment of drm_gem_flink"][::std::mem::align_of::<drm_gem_flink>() - 4usize];
    ["Offset of field: drm_gem_flink::handle"]
        [::std::mem::offset_of!(drm_gem_flink, handle) - 0usize];
    ["Offset of field: drm_gem_flink::name"][::std::mem::offset_of!(drm_gem_flink, name) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_gem_open {
    pub name: __u32,
    pub handle: __u32,
    pub size: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_gem_open"][::std::mem::size_of::<drm_gem_open>() - 16usize];
    ["Alignment of drm_gem_open"][::std::mem::align_of::<drm_gem_open>() - 8usize];
    ["Offset of field: drm_gem_open::name"][::std::mem::offset_of!(drm_gem_open, name) - 0usize];
    ["Offset of field: drm_gem_open::handle"]
        [::std::mem::offset_of!(drm_gem_open, handle) - 4usize];
    ["Offset of field: drm_gem_open::size"][::std::mem::offset_of!(drm_gem_open, size) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_get_cap {
    pub capability: __u64,
    pub value: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_get_cap"][::std::mem::size_of::<drm_get_cap>() - 16usize];
    ["Alignment of drm_get_cap"][::std::mem::align_of::<drm_get_cap>() - 8usize];
    ["Offset of field: drm_get_cap::capability"]
        [::std::mem::offset_of!(drm_get_cap, capability) - 0usize];
    ["Offset of field: drm_get_cap::value"][::std::mem::offset_of!(drm_get_cap, value) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_set_client_cap {
    pub capability: __u64,
    pub value: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_set_client_cap"][::std::mem::size_of::<drm_set_client_cap>() - 16usize];
    ["Alignment of drm_set_client_cap"][::std::mem::align_of::<drm_set_client_cap>() - 8usize];
    ["Offset of field: drm_set_client_cap::capability"]
        [::std::mem::offset_of!(drm_set_client_cap, capability) - 0usize];
    ["Offset of field: drm_set_client_cap::value"]
        [::std::mem::offset_of!(drm_set_client_cap, value) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_prime_handle {
    pub handle: __u32,
    pub flags: __u32,
    pub fd: __s32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_prime_handle"][::std::mem::size_of::<drm_prime_handle>() - 12usize];
    ["Alignment of drm_prime_handle"][::std::mem::align_of::<drm_prime_handle>() - 4usize];
    ["Offset of field: drm_prime_handle::handle"]
        [::std::mem::offset_of!(drm_prime_handle, handle) - 0usize];
    ["Offset of field: drm_prime_handle::flags"]
        [::std::mem::offset_of!(drm_prime_handle, flags) - 4usize];
    ["Offset of field: drm_prime_handle::fd"]
        [::std::mem::offset_of!(drm_prime_handle, fd) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_syncobj_create {
    pub handle: __u32,
    pub flags: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_create"][::std::mem::size_of::<drm_syncobj_create>() - 8usize];
    ["Alignment of drm_syncobj_create"][::std::mem::align_of::<drm_syncobj_create>() - 4usize];
    ["Offset of field: drm_syncobj_create::handle"]
        [::std::mem::offset_of!(drm_syncobj_create, handle) - 0usize];
    ["Offset of field: drm_syncobj_create::flags"]
        [::std::mem::offset_of!(drm_syncobj_create, flags) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_syncobj_destroy {
    pub handle: __u32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_destroy"][::std::mem::size_of::<drm_syncobj_destroy>() - 8usize];
    ["Alignment of drm_syncobj_destroy"][::std::mem::align_of::<drm_syncobj_destroy>() - 4usize];
    ["Offset of field: drm_syncobj_destroy::handle"]
        [::std::mem::offset_of!(drm_syncobj_destroy, handle) - 0usize];
    ["Offset of field: drm_syncobj_destroy::pad"]
        [::std::mem::offset_of!(drm_syncobj_destroy, pad) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_syncobj_handle {
    pub handle: __u32,
    pub flags: __u32,
    pub fd: __s32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_handle"][::std::mem::size_of::<drm_syncobj_handle>() - 16usize];
    ["Alignment of drm_syncobj_handle"][::std::mem::align_of::<drm_syncobj_handle>() - 4usize];
    ["Offset of field: drm_syncobj_handle::handle"]
        [::std::mem::offset_of!(drm_syncobj_handle, handle) - 0usize];
    ["Offset of field: drm_syncobj_handle::flags"]
        [::std::mem::offset_of!(drm_syncobj_handle, flags) - 4usize];
    ["Offset of field: drm_syncobj_handle::fd"]
        [::std::mem::offset_of!(drm_syncobj_handle, fd) - 8usize];
    ["Offset of field: drm_syncobj_handle::pad"]
        [::std::mem::offset_of!(drm_syncobj_handle, pad) - 12usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_transfer"][::std::mem::size_of::<drm_syncobj_transfer>() - 32usize];
    ["Alignment of drm_syncobj_transfer"][::std::mem::align_of::<drm_syncobj_transfer>() - 8usize];
    ["Offset of field: drm_syncobj_transfer::src_handle"]
        [::std::mem::offset_of!(drm_syncobj_transfer, src_handle) - 0usize];
    ["Offset of field: drm_syncobj_transfer::dst_handle"]
        [::std::mem::offset_of!(drm_syncobj_transfer, dst_handle) - 4usize];
    ["Offset of field: drm_syncobj_transfer::src_point"]
        [::std::mem::offset_of!(drm_syncobj_transfer, src_point) - 8usize];
    ["Offset of field: drm_syncobj_transfer::dst_point"]
        [::std::mem::offset_of!(drm_syncobj_transfer, dst_point) - 16usize];
    ["Offset of field: drm_syncobj_transfer::flags"]
        [::std::mem::offset_of!(drm_syncobj_transfer, flags) - 24usize];
    ["Offset of field: drm_syncobj_transfer::pad"]
        [::std::mem::offset_of!(drm_syncobj_transfer, pad) - 28usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_wait"][::std::mem::size_of::<drm_syncobj_wait>() - 40usize];
    ["Alignment of drm_syncobj_wait"][::std::mem::align_of::<drm_syncobj_wait>() - 8usize];
    ["Offset of field: drm_syncobj_wait::handles"]
        [::std::mem::offset_of!(drm_syncobj_wait, handles) - 0usize];
    ["Offset of field: drm_syncobj_wait::timeout_nsec"]
        [::std::mem::offset_of!(drm_syncobj_wait, timeout_nsec) - 8usize];
    ["Offset of field: drm_syncobj_wait::count_handles"]
        [::std::mem::offset_of!(drm_syncobj_wait, count_handles) - 16usize];
    ["Offset of field: drm_syncobj_wait::flags"]
        [::std::mem::offset_of!(drm_syncobj_wait, flags) - 20usize];
    ["Offset of field: drm_syncobj_wait::first_signaled"]
        [::std::mem::offset_of!(drm_syncobj_wait, first_signaled) - 24usize];
    ["Offset of field: drm_syncobj_wait::pad"]
        [::std::mem::offset_of!(drm_syncobj_wait, pad) - 28usize];
    ["Offset of field: drm_syncobj_wait::deadline_nsec"]
        [::std::mem::offset_of!(drm_syncobj_wait, deadline_nsec) - 32usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_timeline_wait"]
        [::std::mem::size_of::<drm_syncobj_timeline_wait>() - 48usize];
    ["Alignment of drm_syncobj_timeline_wait"]
        [::std::mem::align_of::<drm_syncobj_timeline_wait>() - 8usize];
    ["Offset of field: drm_syncobj_timeline_wait::handles"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, handles) - 0usize];
    ["Offset of field: drm_syncobj_timeline_wait::points"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, points) - 8usize];
    ["Offset of field: drm_syncobj_timeline_wait::timeout_nsec"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, timeout_nsec) - 16usize];
    ["Offset of field: drm_syncobj_timeline_wait::count_handles"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, count_handles) - 24usize];
    ["Offset of field: drm_syncobj_timeline_wait::flags"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, flags) - 28usize];
    ["Offset of field: drm_syncobj_timeline_wait::first_signaled"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, first_signaled) - 32usize];
    ["Offset of field: drm_syncobj_timeline_wait::pad"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, pad) - 36usize];
    ["Offset of field: drm_syncobj_timeline_wait::deadline_nsec"]
        [::std::mem::offset_of!(drm_syncobj_timeline_wait, deadline_nsec) - 40usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_eventfd"][::std::mem::size_of::<drm_syncobj_eventfd>() - 24usize];
    ["Alignment of drm_syncobj_eventfd"][::std::mem::align_of::<drm_syncobj_eventfd>() - 8usize];
    ["Offset of field: drm_syncobj_eventfd::handle"]
        [::std::mem::offset_of!(drm_syncobj_eventfd, handle) - 0usize];
    ["Offset of field: drm_syncobj_eventfd::flags"]
        [::std::mem::offset_of!(drm_syncobj_eventfd, flags) - 4usize];
    ["Offset of field: drm_syncobj_eventfd::point"]
        [::std::mem::offset_of!(drm_syncobj_eventfd, point) - 8usize];
    ["Offset of field: drm_syncobj_eventfd::fd"]
        [::std::mem::offset_of!(drm_syncobj_eventfd, fd) - 16usize];
    ["Offset of field: drm_syncobj_eventfd::pad"]
        [::std::mem::offset_of!(drm_syncobj_eventfd, pad) - 20usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_syncobj_array {
    pub handles: __u64,
    pub count_handles: __u32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_array"][::std::mem::size_of::<drm_syncobj_array>() - 16usize];
    ["Alignment of drm_syncobj_array"][::std::mem::align_of::<drm_syncobj_array>() - 8usize];
    ["Offset of field: drm_syncobj_array::handles"]
        [::std::mem::offset_of!(drm_syncobj_array, handles) - 0usize];
    ["Offset of field: drm_syncobj_array::count_handles"]
        [::std::mem::offset_of!(drm_syncobj_array, count_handles) - 8usize];
    ["Offset of field: drm_syncobj_array::pad"]
        [::std::mem::offset_of!(drm_syncobj_array, pad) - 12usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_syncobj_timeline_array"]
        [::std::mem::size_of::<drm_syncobj_timeline_array>() - 24usize];
    ["Alignment of drm_syncobj_timeline_array"]
        [::std::mem::align_of::<drm_syncobj_timeline_array>() - 8usize];
    ["Offset of field: drm_syncobj_timeline_array::handles"]
        [::std::mem::offset_of!(drm_syncobj_timeline_array, handles) - 0usize];
    ["Offset of field: drm_syncobj_timeline_array::points"]
        [::std::mem::offset_of!(drm_syncobj_timeline_array, points) - 8usize];
    ["Offset of field: drm_syncobj_timeline_array::count_handles"]
        [::std::mem::offset_of!(drm_syncobj_timeline_array, count_handles) - 16usize];
    ["Offset of field: drm_syncobj_timeline_array::flags"]
        [::std::mem::offset_of!(drm_syncobj_timeline_array, flags) - 20usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_crtc_get_sequence"][::std::mem::size_of::<drm_crtc_get_sequence>() - 24usize];
    ["Alignment of drm_crtc_get_sequence"]
        [::std::mem::align_of::<drm_crtc_get_sequence>() - 8usize];
    ["Offset of field: drm_crtc_get_sequence::crtc_id"]
        [::std::mem::offset_of!(drm_crtc_get_sequence, crtc_id) - 0usize];
    ["Offset of field: drm_crtc_get_sequence::active"]
        [::std::mem::offset_of!(drm_crtc_get_sequence, active) - 4usize];
    ["Offset of field: drm_crtc_get_sequence::sequence"]
        [::std::mem::offset_of!(drm_crtc_get_sequence, sequence) - 8usize];
    ["Offset of field: drm_crtc_get_sequence::sequence_ns"]
        [::std::mem::offset_of!(drm_crtc_get_sequence, sequence_ns) - 16usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_crtc_queue_sequence"][::std::mem::size_of::<drm_crtc_queue_sequence>() - 24usize];
    ["Alignment of drm_crtc_queue_sequence"]
        [::std::mem::align_of::<drm_crtc_queue_sequence>() - 8usize];
    ["Offset of field: drm_crtc_queue_sequence::crtc_id"]
        [::std::mem::offset_of!(drm_crtc_queue_sequence, crtc_id) - 0usize];
    ["Offset of field: drm_crtc_queue_sequence::flags"]
        [::std::mem::offset_of!(drm_crtc_queue_sequence, flags) - 4usize];
    ["Offset of field: drm_crtc_queue_sequence::sequence"]
        [::std::mem::offset_of!(drm_crtc_queue_sequence, sequence) - 8usize];
    ["Offset of field: drm_crtc_queue_sequence::user_data"]
        [::std::mem::offset_of!(drm_crtc_queue_sequence, user_data) - 16usize];
};
#[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: [::std::os::raw::c_char; 32usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_modeinfo"][::std::mem::size_of::<drm_mode_modeinfo>() - 68usize];
    ["Alignment of drm_mode_modeinfo"][::std::mem::align_of::<drm_mode_modeinfo>() - 4usize];
    ["Offset of field: drm_mode_modeinfo::clock"]
        [::std::mem::offset_of!(drm_mode_modeinfo, clock) - 0usize];
    ["Offset of field: drm_mode_modeinfo::hdisplay"]
        [::std::mem::offset_of!(drm_mode_modeinfo, hdisplay) - 4usize];
    ["Offset of field: drm_mode_modeinfo::hsync_start"]
        [::std::mem::offset_of!(drm_mode_modeinfo, hsync_start) - 6usize];
    ["Offset of field: drm_mode_modeinfo::hsync_end"]
        [::std::mem::offset_of!(drm_mode_modeinfo, hsync_end) - 8usize];
    ["Offset of field: drm_mode_modeinfo::htotal"]
        [::std::mem::offset_of!(drm_mode_modeinfo, htotal) - 10usize];
    ["Offset of field: drm_mode_modeinfo::hskew"]
        [::std::mem::offset_of!(drm_mode_modeinfo, hskew) - 12usize];
    ["Offset of field: drm_mode_modeinfo::vdisplay"]
        [::std::mem::offset_of!(drm_mode_modeinfo, vdisplay) - 14usize];
    ["Offset of field: drm_mode_modeinfo::vsync_start"]
        [::std::mem::offset_of!(drm_mode_modeinfo, vsync_start) - 16usize];
    ["Offset of field: drm_mode_modeinfo::vsync_end"]
        [::std::mem::offset_of!(drm_mode_modeinfo, vsync_end) - 18usize];
    ["Offset of field: drm_mode_modeinfo::vtotal"]
        [::std::mem::offset_of!(drm_mode_modeinfo, vtotal) - 20usize];
    ["Offset of field: drm_mode_modeinfo::vscan"]
        [::std::mem::offset_of!(drm_mode_modeinfo, vscan) - 22usize];
    ["Offset of field: drm_mode_modeinfo::vrefresh"]
        [::std::mem::offset_of!(drm_mode_modeinfo, vrefresh) - 24usize];
    ["Offset of field: drm_mode_modeinfo::flags"]
        [::std::mem::offset_of!(drm_mode_modeinfo, flags) - 28usize];
    ["Offset of field: drm_mode_modeinfo::type_"]
        [::std::mem::offset_of!(drm_mode_modeinfo, type_) - 32usize];
    ["Offset of field: drm_mode_modeinfo::name"]
        [::std::mem::offset_of!(drm_mode_modeinfo, name) - 36usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_card_res"][::std::mem::size_of::<drm_mode_card_res>() - 64usize];
    ["Alignment of drm_mode_card_res"][::std::mem::align_of::<drm_mode_card_res>() - 8usize];
    ["Offset of field: drm_mode_card_res::fb_id_ptr"]
        [::std::mem::offset_of!(drm_mode_card_res, fb_id_ptr) - 0usize];
    ["Offset of field: drm_mode_card_res::crtc_id_ptr"]
        [::std::mem::offset_of!(drm_mode_card_res, crtc_id_ptr) - 8usize];
    ["Offset of field: drm_mode_card_res::connector_id_ptr"]
        [::std::mem::offset_of!(drm_mode_card_res, connector_id_ptr) - 16usize];
    ["Offset of field: drm_mode_card_res::encoder_id_ptr"]
        [::std::mem::offset_of!(drm_mode_card_res, encoder_id_ptr) - 24usize];
    ["Offset of field: drm_mode_card_res::count_fbs"]
        [::std::mem::offset_of!(drm_mode_card_res, count_fbs) - 32usize];
    ["Offset of field: drm_mode_card_res::count_crtcs"]
        [::std::mem::offset_of!(drm_mode_card_res, count_crtcs) - 36usize];
    ["Offset of field: drm_mode_card_res::count_connectors"]
        [::std::mem::offset_of!(drm_mode_card_res, count_connectors) - 40usize];
    ["Offset of field: drm_mode_card_res::count_encoders"]
        [::std::mem::offset_of!(drm_mode_card_res, count_encoders) - 44usize];
    ["Offset of field: drm_mode_card_res::min_width"]
        [::std::mem::offset_of!(drm_mode_card_res, min_width) - 48usize];
    ["Offset of field: drm_mode_card_res::max_width"]
        [::std::mem::offset_of!(drm_mode_card_res, max_width) - 52usize];
    ["Offset of field: drm_mode_card_res::min_height"]
        [::std::mem::offset_of!(drm_mode_card_res, min_height) - 56usize];
    ["Offset of field: drm_mode_card_res::max_height"]
        [::std::mem::offset_of!(drm_mode_card_res, max_height) - 60usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_crtc"][::std::mem::size_of::<drm_mode_crtc>() - 104usize];
    ["Alignment of drm_mode_crtc"][::std::mem::align_of::<drm_mode_crtc>() - 8usize];
    ["Offset of field: drm_mode_crtc::set_connectors_ptr"]
        [::std::mem::offset_of!(drm_mode_crtc, set_connectors_ptr) - 0usize];
    ["Offset of field: drm_mode_crtc::count_connectors"]
        [::std::mem::offset_of!(drm_mode_crtc, count_connectors) - 8usize];
    ["Offset of field: drm_mode_crtc::crtc_id"]
        [::std::mem::offset_of!(drm_mode_crtc, crtc_id) - 12usize];
    ["Offset of field: drm_mode_crtc::fb_id"]
        [::std::mem::offset_of!(drm_mode_crtc, fb_id) - 16usize];
    ["Offset of field: drm_mode_crtc::x"][::std::mem::offset_of!(drm_mode_crtc, x) - 20usize];
    ["Offset of field: drm_mode_crtc::y"][::std::mem::offset_of!(drm_mode_crtc, y) - 24usize];
    ["Offset of field: drm_mode_crtc::gamma_size"]
        [::std::mem::offset_of!(drm_mode_crtc, gamma_size) - 28usize];
    ["Offset of field: drm_mode_crtc::mode_valid"]
        [::std::mem::offset_of!(drm_mode_crtc, mode_valid) - 32usize];
    ["Offset of field: drm_mode_crtc::mode"][::std::mem::offset_of!(drm_mode_crtc, mode) - 36usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_set_plane"][::std::mem::size_of::<drm_mode_set_plane>() - 48usize];
    ["Alignment of drm_mode_set_plane"][::std::mem::align_of::<drm_mode_set_plane>() - 4usize];
    ["Offset of field: drm_mode_set_plane::plane_id"]
        [::std::mem::offset_of!(drm_mode_set_plane, plane_id) - 0usize];
    ["Offset of field: drm_mode_set_plane::crtc_id"]
        [::std::mem::offset_of!(drm_mode_set_plane, crtc_id) - 4usize];
    ["Offset of field: drm_mode_set_plane::fb_id"]
        [::std::mem::offset_of!(drm_mode_set_plane, fb_id) - 8usize];
    ["Offset of field: drm_mode_set_plane::flags"]
        [::std::mem::offset_of!(drm_mode_set_plane, flags) - 12usize];
    ["Offset of field: drm_mode_set_plane::crtc_x"]
        [::std::mem::offset_of!(drm_mode_set_plane, crtc_x) - 16usize];
    ["Offset of field: drm_mode_set_plane::crtc_y"]
        [::std::mem::offset_of!(drm_mode_set_plane, crtc_y) - 20usize];
    ["Offset of field: drm_mode_set_plane::crtc_w"]
        [::std::mem::offset_of!(drm_mode_set_plane, crtc_w) - 24usize];
    ["Offset of field: drm_mode_set_plane::crtc_h"]
        [::std::mem::offset_of!(drm_mode_set_plane, crtc_h) - 28usize];
    ["Offset of field: drm_mode_set_plane::src_x"]
        [::std::mem::offset_of!(drm_mode_set_plane, src_x) - 32usize];
    ["Offset of field: drm_mode_set_plane::src_y"]
        [::std::mem::offset_of!(drm_mode_set_plane, src_y) - 36usize];
    ["Offset of field: drm_mode_set_plane::src_h"]
        [::std::mem::offset_of!(drm_mode_set_plane, src_h) - 40usize];
    ["Offset of field: drm_mode_set_plane::src_w"]
        [::std::mem::offset_of!(drm_mode_set_plane, src_w) - 44usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_get_plane"][::std::mem::size_of::<drm_mode_get_plane>() - 32usize];
    ["Alignment of drm_mode_get_plane"][::std::mem::align_of::<drm_mode_get_plane>() - 8usize];
    ["Offset of field: drm_mode_get_plane::plane_id"]
        [::std::mem::offset_of!(drm_mode_get_plane, plane_id) - 0usize];
    ["Offset of field: drm_mode_get_plane::crtc_id"]
        [::std::mem::offset_of!(drm_mode_get_plane, crtc_id) - 4usize];
    ["Offset of field: drm_mode_get_plane::fb_id"]
        [::std::mem::offset_of!(drm_mode_get_plane, fb_id) - 8usize];
    ["Offset of field: drm_mode_get_plane::possible_crtcs"]
        [::std::mem::offset_of!(drm_mode_get_plane, possible_crtcs) - 12usize];
    ["Offset of field: drm_mode_get_plane::gamma_size"]
        [::std::mem::offset_of!(drm_mode_get_plane, gamma_size) - 16usize];
    ["Offset of field: drm_mode_get_plane::count_format_types"]
        [::std::mem::offset_of!(drm_mode_get_plane, count_format_types) - 20usize];
    ["Offset of field: drm_mode_get_plane::format_type_ptr"]
        [::std::mem::offset_of!(drm_mode_get_plane, format_type_ptr) - 24usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_get_plane_res {
    pub plane_id_ptr: __u64,
    pub count_planes: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_get_plane_res"][::std::mem::size_of::<drm_mode_get_plane_res>() - 16usize];
    ["Alignment of drm_mode_get_plane_res"]
        [::std::mem::align_of::<drm_mode_get_plane_res>() - 8usize];
    ["Offset of field: drm_mode_get_plane_res::plane_id_ptr"]
        [::std::mem::offset_of!(drm_mode_get_plane_res, plane_id_ptr) - 0usize];
    ["Offset of field: drm_mode_get_plane_res::count_planes"]
        [::std::mem::offset_of!(drm_mode_get_plane_res, count_planes) - 8usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_get_encoder"][::std::mem::size_of::<drm_mode_get_encoder>() - 20usize];
    ["Alignment of drm_mode_get_encoder"][::std::mem::align_of::<drm_mode_get_encoder>() - 4usize];
    ["Offset of field: drm_mode_get_encoder::encoder_id"]
        [::std::mem::offset_of!(drm_mode_get_encoder, encoder_id) - 0usize];
    ["Offset of field: drm_mode_get_encoder::encoder_type"]
        [::std::mem::offset_of!(drm_mode_get_encoder, encoder_type) - 4usize];
    ["Offset of field: drm_mode_get_encoder::crtc_id"]
        [::std::mem::offset_of!(drm_mode_get_encoder, crtc_id) - 8usize];
    ["Offset of field: drm_mode_get_encoder::possible_crtcs"]
        [::std::mem::offset_of!(drm_mode_get_encoder, possible_crtcs) - 12usize];
    ["Offset of field: drm_mode_get_encoder::possible_clones"]
        [::std::mem::offset_of!(drm_mode_get_encoder, possible_clones) - 16usize];
};
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 = ::std::os::raw::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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_get_connector"][::std::mem::size_of::<drm_mode_get_connector>() - 80usize];
    ["Alignment of drm_mode_get_connector"]
        [::std::mem::align_of::<drm_mode_get_connector>() - 8usize];
    ["Offset of field: drm_mode_get_connector::encoders_ptr"]
        [::std::mem::offset_of!(drm_mode_get_connector, encoders_ptr) - 0usize];
    ["Offset of field: drm_mode_get_connector::modes_ptr"]
        [::std::mem::offset_of!(drm_mode_get_connector, modes_ptr) - 8usize];
    ["Offset of field: drm_mode_get_connector::props_ptr"]
        [::std::mem::offset_of!(drm_mode_get_connector, props_ptr) - 16usize];
    ["Offset of field: drm_mode_get_connector::prop_values_ptr"]
        [::std::mem::offset_of!(drm_mode_get_connector, prop_values_ptr) - 24usize];
    ["Offset of field: drm_mode_get_connector::count_modes"]
        [::std::mem::offset_of!(drm_mode_get_connector, count_modes) - 32usize];
    ["Offset of field: drm_mode_get_connector::count_props"]
        [::std::mem::offset_of!(drm_mode_get_connector, count_props) - 36usize];
    ["Offset of field: drm_mode_get_connector::count_encoders"]
        [::std::mem::offset_of!(drm_mode_get_connector, count_encoders) - 40usize];
    ["Offset of field: drm_mode_get_connector::encoder_id"]
        [::std::mem::offset_of!(drm_mode_get_connector, encoder_id) - 44usize];
    ["Offset of field: drm_mode_get_connector::connector_id"]
        [::std::mem::offset_of!(drm_mode_get_connector, connector_id) - 48usize];
    ["Offset of field: drm_mode_get_connector::connector_type"]
        [::std::mem::offset_of!(drm_mode_get_connector, connector_type) - 52usize];
    ["Offset of field: drm_mode_get_connector::connector_type_id"]
        [::std::mem::offset_of!(drm_mode_get_connector, connector_type_id) - 56usize];
    ["Offset of field: drm_mode_get_connector::connection"]
        [::std::mem::offset_of!(drm_mode_get_connector, connection) - 60usize];
    ["Offset of field: drm_mode_get_connector::mm_width"]
        [::std::mem::offset_of!(drm_mode_get_connector, mm_width) - 64usize];
    ["Offset of field: drm_mode_get_connector::mm_height"]
        [::std::mem::offset_of!(drm_mode_get_connector, mm_height) - 68usize];
    ["Offset of field: drm_mode_get_connector::subpixel"]
        [::std::mem::offset_of!(drm_mode_get_connector, subpixel) - 72usize];
    ["Offset of field: drm_mode_get_connector::pad"]
        [::std::mem::offset_of!(drm_mode_get_connector, pad) - 76usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_property_enum {
    pub value: __u64,
    pub name: [::std::os::raw::c_char; 32usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_property_enum"][::std::mem::size_of::<drm_mode_property_enum>() - 40usize];
    ["Alignment of drm_mode_property_enum"]
        [::std::mem::align_of::<drm_mode_property_enum>() - 8usize];
    ["Offset of field: drm_mode_property_enum::value"]
        [::std::mem::offset_of!(drm_mode_property_enum, value) - 0usize];
    ["Offset of field: drm_mode_property_enum::name"]
        [::std::mem::offset_of!(drm_mode_property_enum, name) - 8usize];
};
#[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: [::std::os::raw::c_char; 32usize],
    pub count_values: __u32,
    pub count_enum_blobs: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_get_property"][::std::mem::size_of::<drm_mode_get_property>() - 64usize];
    ["Alignment of drm_mode_get_property"]
        [::std::mem::align_of::<drm_mode_get_property>() - 8usize];
    ["Offset of field: drm_mode_get_property::values_ptr"]
        [::std::mem::offset_of!(drm_mode_get_property, values_ptr) - 0usize];
    ["Offset of field: drm_mode_get_property::enum_blob_ptr"]
        [::std::mem::offset_of!(drm_mode_get_property, enum_blob_ptr) - 8usize];
    ["Offset of field: drm_mode_get_property::prop_id"]
        [::std::mem::offset_of!(drm_mode_get_property, prop_id) - 16usize];
    ["Offset of field: drm_mode_get_property::flags"]
        [::std::mem::offset_of!(drm_mode_get_property, flags) - 20usize];
    ["Offset of field: drm_mode_get_property::name"]
        [::std::mem::offset_of!(drm_mode_get_property, name) - 24usize];
    ["Offset of field: drm_mode_get_property::count_values"]
        [::std::mem::offset_of!(drm_mode_get_property, count_values) - 56usize];
    ["Offset of field: drm_mode_get_property::count_enum_blobs"]
        [::std::mem::offset_of!(drm_mode_get_property, count_enum_blobs) - 60usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_connector_set_property {
    pub value: __u64,
    pub prop_id: __u32,
    pub connector_id: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_connector_set_property"]
        [::std::mem::size_of::<drm_mode_connector_set_property>() - 16usize];
    ["Alignment of drm_mode_connector_set_property"]
        [::std::mem::align_of::<drm_mode_connector_set_property>() - 8usize];
    ["Offset of field: drm_mode_connector_set_property::value"]
        [::std::mem::offset_of!(drm_mode_connector_set_property, value) - 0usize];
    ["Offset of field: drm_mode_connector_set_property::prop_id"]
        [::std::mem::offset_of!(drm_mode_connector_set_property, prop_id) - 8usize];
    ["Offset of field: drm_mode_connector_set_property::connector_id"]
        [::std::mem::offset_of!(drm_mode_connector_set_property, connector_id) - 12usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_obj_get_properties"]
        [::std::mem::size_of::<drm_mode_obj_get_properties>() - 32usize];
    ["Alignment of drm_mode_obj_get_properties"]
        [::std::mem::align_of::<drm_mode_obj_get_properties>() - 8usize];
    ["Offset of field: drm_mode_obj_get_properties::props_ptr"]
        [::std::mem::offset_of!(drm_mode_obj_get_properties, props_ptr) - 0usize];
    ["Offset of field: drm_mode_obj_get_properties::prop_values_ptr"]
        [::std::mem::offset_of!(drm_mode_obj_get_properties, prop_values_ptr) - 8usize];
    ["Offset of field: drm_mode_obj_get_properties::count_props"]
        [::std::mem::offset_of!(drm_mode_obj_get_properties, count_props) - 16usize];
    ["Offset of field: drm_mode_obj_get_properties::obj_id"]
        [::std::mem::offset_of!(drm_mode_obj_get_properties, obj_id) - 20usize];
    ["Offset of field: drm_mode_obj_get_properties::obj_type"]
        [::std::mem::offset_of!(drm_mode_obj_get_properties, obj_type) - 24usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_obj_set_property"]
        [::std::mem::size_of::<drm_mode_obj_set_property>() - 24usize];
    ["Alignment of drm_mode_obj_set_property"]
        [::std::mem::align_of::<drm_mode_obj_set_property>() - 8usize];
    ["Offset of field: drm_mode_obj_set_property::value"]
        [::std::mem::offset_of!(drm_mode_obj_set_property, value) - 0usize];
    ["Offset of field: drm_mode_obj_set_property::prop_id"]
        [::std::mem::offset_of!(drm_mode_obj_set_property, prop_id) - 8usize];
    ["Offset of field: drm_mode_obj_set_property::obj_id"]
        [::std::mem::offset_of!(drm_mode_obj_set_property, obj_id) - 12usize];
    ["Offset of field: drm_mode_obj_set_property::obj_type"]
        [::std::mem::offset_of!(drm_mode_obj_set_property, obj_type) - 16usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_get_blob {
    pub blob_id: __u32,
    pub length: __u32,
    pub data: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_get_blob"][::std::mem::size_of::<drm_mode_get_blob>() - 16usize];
    ["Alignment of drm_mode_get_blob"][::std::mem::align_of::<drm_mode_get_blob>() - 8usize];
    ["Offset of field: drm_mode_get_blob::blob_id"]
        [::std::mem::offset_of!(drm_mode_get_blob, blob_id) - 0usize];
    ["Offset of field: drm_mode_get_blob::length"]
        [::std::mem::offset_of!(drm_mode_get_blob, length) - 4usize];
    ["Offset of field: drm_mode_get_blob::data"]
        [::std::mem::offset_of!(drm_mode_get_blob, data) - 8usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_fb_cmd"][::std::mem::size_of::<drm_mode_fb_cmd>() - 28usize];
    ["Alignment of drm_mode_fb_cmd"][::std::mem::align_of::<drm_mode_fb_cmd>() - 4usize];
    ["Offset of field: drm_mode_fb_cmd::fb_id"]
        [::std::mem::offset_of!(drm_mode_fb_cmd, fb_id) - 0usize];
    ["Offset of field: drm_mode_fb_cmd::width"]
        [::std::mem::offset_of!(drm_mode_fb_cmd, width) - 4usize];
    ["Offset of field: drm_mode_fb_cmd::height"]
        [::std::mem::offset_of!(drm_mode_fb_cmd, height) - 8usize];
    ["Offset of field: drm_mode_fb_cmd::pitch"]
        [::std::mem::offset_of!(drm_mode_fb_cmd, pitch) - 12usize];
    ["Offset of field: drm_mode_fb_cmd::bpp"]
        [::std::mem::offset_of!(drm_mode_fb_cmd, bpp) - 16usize];
    ["Offset of field: drm_mode_fb_cmd::depth"]
        [::std::mem::offset_of!(drm_mode_fb_cmd, depth) - 20usize];
    ["Offset of field: drm_mode_fb_cmd::handle"]
        [::std::mem::offset_of!(drm_mode_fb_cmd, handle) - 24usize];
};
#[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],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_fb_cmd2"][::std::mem::size_of::<drm_mode_fb_cmd2>() - 104usize];
    ["Alignment of drm_mode_fb_cmd2"][::std::mem::align_of::<drm_mode_fb_cmd2>() - 8usize];
    ["Offset of field: drm_mode_fb_cmd2::fb_id"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, fb_id) - 0usize];
    ["Offset of field: drm_mode_fb_cmd2::width"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, width) - 4usize];
    ["Offset of field: drm_mode_fb_cmd2::height"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, height) - 8usize];
    ["Offset of field: drm_mode_fb_cmd2::pixel_format"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, pixel_format) - 12usize];
    ["Offset of field: drm_mode_fb_cmd2::flags"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, flags) - 16usize];
    ["Offset of field: drm_mode_fb_cmd2::handles"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, handles) - 20usize];
    ["Offset of field: drm_mode_fb_cmd2::pitches"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, pitches) - 36usize];
    ["Offset of field: drm_mode_fb_cmd2::offsets"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, offsets) - 52usize];
    ["Offset of field: drm_mode_fb_cmd2::modifier"]
        [::std::mem::offset_of!(drm_mode_fb_cmd2, modifier) - 72usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_fb_dirty_cmd"][::std::mem::size_of::<drm_mode_fb_dirty_cmd>() - 24usize];
    ["Alignment of drm_mode_fb_dirty_cmd"]
        [::std::mem::align_of::<drm_mode_fb_dirty_cmd>() - 8usize];
    ["Offset of field: drm_mode_fb_dirty_cmd::fb_id"]
        [::std::mem::offset_of!(drm_mode_fb_dirty_cmd, fb_id) - 0usize];
    ["Offset of field: drm_mode_fb_dirty_cmd::flags"]
        [::std::mem::offset_of!(drm_mode_fb_dirty_cmd, flags) - 4usize];
    ["Offset of field: drm_mode_fb_dirty_cmd::color"]
        [::std::mem::offset_of!(drm_mode_fb_dirty_cmd, color) - 8usize];
    ["Offset of field: drm_mode_fb_dirty_cmd::num_clips"]
        [::std::mem::offset_of!(drm_mode_fb_dirty_cmd, num_clips) - 12usize];
    ["Offset of field: drm_mode_fb_dirty_cmd::clips_ptr"]
        [::std::mem::offset_of!(drm_mode_fb_dirty_cmd, clips_ptr) - 16usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_mode_cmd {
    pub connector_id: __u32,
    pub mode: drm_mode_modeinfo,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_mode_cmd"][::std::mem::size_of::<drm_mode_mode_cmd>() - 72usize];
    ["Alignment of drm_mode_mode_cmd"][::std::mem::align_of::<drm_mode_mode_cmd>() - 4usize];
    ["Offset of field: drm_mode_mode_cmd::connector_id"]
        [::std::mem::offset_of!(drm_mode_mode_cmd, connector_id) - 0usize];
    ["Offset of field: drm_mode_mode_cmd::mode"]
        [::std::mem::offset_of!(drm_mode_mode_cmd, mode) - 4usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_cursor"][::std::mem::size_of::<drm_mode_cursor>() - 28usize];
    ["Alignment of drm_mode_cursor"][::std::mem::align_of::<drm_mode_cursor>() - 4usize];
    ["Offset of field: drm_mode_cursor::flags"]
        [::std::mem::offset_of!(drm_mode_cursor, flags) - 0usize];
    ["Offset of field: drm_mode_cursor::crtc_id"]
        [::std::mem::offset_of!(drm_mode_cursor, crtc_id) - 4usize];
    ["Offset of field: drm_mode_cursor::x"][::std::mem::offset_of!(drm_mode_cursor, x) - 8usize];
    ["Offset of field: drm_mode_cursor::y"][::std::mem::offset_of!(drm_mode_cursor, y) - 12usize];
    ["Offset of field: drm_mode_cursor::width"]
        [::std::mem::offset_of!(drm_mode_cursor, width) - 16usize];
    ["Offset of field: drm_mode_cursor::height"]
        [::std::mem::offset_of!(drm_mode_cursor, height) - 20usize];
    ["Offset of field: drm_mode_cursor::handle"]
        [::std::mem::offset_of!(drm_mode_cursor, handle) - 24usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_cursor2"][::std::mem::size_of::<drm_mode_cursor2>() - 36usize];
    ["Alignment of drm_mode_cursor2"][::std::mem::align_of::<drm_mode_cursor2>() - 4usize];
    ["Offset of field: drm_mode_cursor2::flags"]
        [::std::mem::offset_of!(drm_mode_cursor2, flags) - 0usize];
    ["Offset of field: drm_mode_cursor2::crtc_id"]
        [::std::mem::offset_of!(drm_mode_cursor2, crtc_id) - 4usize];
    ["Offset of field: drm_mode_cursor2::x"][::std::mem::offset_of!(drm_mode_cursor2, x) - 8usize];
    ["Offset of field: drm_mode_cursor2::y"][::std::mem::offset_of!(drm_mode_cursor2, y) - 12usize];
    ["Offset of field: drm_mode_cursor2::width"]
        [::std::mem::offset_of!(drm_mode_cursor2, width) - 16usize];
    ["Offset of field: drm_mode_cursor2::height"]
        [::std::mem::offset_of!(drm_mode_cursor2, height) - 20usize];
    ["Offset of field: drm_mode_cursor2::handle"]
        [::std::mem::offset_of!(drm_mode_cursor2, handle) - 24usize];
    ["Offset of field: drm_mode_cursor2::hot_x"]
        [::std::mem::offset_of!(drm_mode_cursor2, hot_x) - 28usize];
    ["Offset of field: drm_mode_cursor2::hot_y"]
        [::std::mem::offset_of!(drm_mode_cursor2, hot_y) - 32usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_crtc_lut"][::std::mem::size_of::<drm_mode_crtc_lut>() - 32usize];
    ["Alignment of drm_mode_crtc_lut"][::std::mem::align_of::<drm_mode_crtc_lut>() - 8usize];
    ["Offset of field: drm_mode_crtc_lut::crtc_id"]
        [::std::mem::offset_of!(drm_mode_crtc_lut, crtc_id) - 0usize];
    ["Offset of field: drm_mode_crtc_lut::gamma_size"]
        [::std::mem::offset_of!(drm_mode_crtc_lut, gamma_size) - 4usize];
    ["Offset of field: drm_mode_crtc_lut::red"]
        [::std::mem::offset_of!(drm_mode_crtc_lut, red) - 8usize];
    ["Offset of field: drm_mode_crtc_lut::green"]
        [::std::mem::offset_of!(drm_mode_crtc_lut, green) - 16usize];
    ["Offset of field: drm_mode_crtc_lut::blue"]
        [::std::mem::offset_of!(drm_mode_crtc_lut, blue) - 24usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_color_ctm {
    pub matrix: [__u64; 9usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_color_ctm"][::std::mem::size_of::<drm_color_ctm>() - 72usize];
    ["Alignment of drm_color_ctm"][::std::mem::align_of::<drm_color_ctm>() - 8usize];
    ["Offset of field: drm_color_ctm::matrix"]
        [::std::mem::offset_of!(drm_color_ctm, matrix) - 0usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_color_lut {
    pub red: __u16,
    pub green: __u16,
    pub blue: __u16,
    pub reserved: __u16,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_color_lut"][::std::mem::size_of::<drm_color_lut>() - 8usize];
    ["Alignment of drm_color_lut"][::std::mem::align_of::<drm_color_lut>() - 2usize];
    ["Offset of field: drm_color_lut::red"][::std::mem::offset_of!(drm_color_lut, red) - 0usize];
    ["Offset of field: drm_color_lut::green"]
        [::std::mem::offset_of!(drm_color_lut, green) - 2usize];
    ["Offset of field: drm_color_lut::blue"][::std::mem::offset_of!(drm_color_lut, blue) - 4usize];
    ["Offset of field: drm_color_lut::reserved"]
        [::std::mem::offset_of!(drm_color_lut, reserved) - 6usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of hdr_metadata_infoframe__bindgen_ty_1"]
        [::std::mem::size_of::<hdr_metadata_infoframe__bindgen_ty_1>() - 4usize];
    ["Alignment of hdr_metadata_infoframe__bindgen_ty_1"]
        [::std::mem::align_of::<hdr_metadata_infoframe__bindgen_ty_1>() - 2usize];
    ["Offset of field: hdr_metadata_infoframe__bindgen_ty_1::x"]
        [::std::mem::offset_of!(hdr_metadata_infoframe__bindgen_ty_1, x) - 0usize];
    ["Offset of field: hdr_metadata_infoframe__bindgen_ty_1::y"]
        [::std::mem::offset_of!(hdr_metadata_infoframe__bindgen_ty_1, y) - 2usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct hdr_metadata_infoframe__bindgen_ty_2 {
    pub x: __u16,
    pub y: __u16,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of hdr_metadata_infoframe__bindgen_ty_2"]
        [::std::mem::size_of::<hdr_metadata_infoframe__bindgen_ty_2>() - 4usize];
    ["Alignment of hdr_metadata_infoframe__bindgen_ty_2"]
        [::std::mem::align_of::<hdr_metadata_infoframe__bindgen_ty_2>() - 2usize];
    ["Offset of field: hdr_metadata_infoframe__bindgen_ty_2::x"]
        [::std::mem::offset_of!(hdr_metadata_infoframe__bindgen_ty_2, x) - 0usize];
    ["Offset of field: hdr_metadata_infoframe__bindgen_ty_2::y"]
        [::std::mem::offset_of!(hdr_metadata_infoframe__bindgen_ty_2, y) - 2usize];
};
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of hdr_metadata_infoframe"][::std::mem::size_of::<hdr_metadata_infoframe>() - 26usize];
    ["Alignment of hdr_metadata_infoframe"]
        [::std::mem::align_of::<hdr_metadata_infoframe>() - 2usize];
    ["Offset of field: hdr_metadata_infoframe::eotf"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, eotf) - 0usize];
    ["Offset of field: hdr_metadata_infoframe::metadata_type"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, metadata_type) - 1usize];
    ["Offset of field: hdr_metadata_infoframe::display_primaries"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, display_primaries) - 2usize];
    ["Offset of field: hdr_metadata_infoframe::white_point"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, white_point) - 14usize];
    ["Offset of field: hdr_metadata_infoframe::max_display_mastering_luminance"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, max_display_mastering_luminance) - 18usize];
    ["Offset of field: hdr_metadata_infoframe::min_display_mastering_luminance"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, min_display_mastering_luminance) - 20usize];
    ["Offset of field: hdr_metadata_infoframe::max_cll"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, max_cll) - 22usize];
    ["Offset of field: hdr_metadata_infoframe::max_fall"]
        [::std::mem::offset_of!(hdr_metadata_infoframe, max_fall) - 24usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of hdr_output_metadata__bindgen_ty_1"]
        [::std::mem::size_of::<hdr_output_metadata__bindgen_ty_1>() - 26usize];
    ["Alignment of hdr_output_metadata__bindgen_ty_1"]
        [::std::mem::align_of::<hdr_output_metadata__bindgen_ty_1>() - 2usize];
    ["Offset of field: hdr_output_metadata__bindgen_ty_1::hdmi_metadata_type1"]
        [::std::mem::offset_of!(hdr_output_metadata__bindgen_ty_1, hdmi_metadata_type1) - 0usize];
};
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of hdr_output_metadata"][::std::mem::size_of::<hdr_output_metadata>() - 32usize];
    ["Alignment of hdr_output_metadata"][::std::mem::align_of::<hdr_output_metadata>() - 4usize];
    ["Offset of field: hdr_output_metadata::metadata_type"]
        [::std::mem::offset_of!(hdr_output_metadata, metadata_type) - 0usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_crtc_page_flip"][::std::mem::size_of::<drm_mode_crtc_page_flip>() - 24usize];
    ["Alignment of drm_mode_crtc_page_flip"]
        [::std::mem::align_of::<drm_mode_crtc_page_flip>() - 8usize];
    ["Offset of field: drm_mode_crtc_page_flip::crtc_id"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip, crtc_id) - 0usize];
    ["Offset of field: drm_mode_crtc_page_flip::fb_id"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip, fb_id) - 4usize];
    ["Offset of field: drm_mode_crtc_page_flip::flags"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip, flags) - 8usize];
    ["Offset of field: drm_mode_crtc_page_flip::reserved"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip, reserved) - 12usize];
    ["Offset of field: drm_mode_crtc_page_flip::user_data"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip, user_data) - 16usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_crtc_page_flip_target"]
        [::std::mem::size_of::<drm_mode_crtc_page_flip_target>() - 24usize];
    ["Alignment of drm_mode_crtc_page_flip_target"]
        [::std::mem::align_of::<drm_mode_crtc_page_flip_target>() - 8usize];
    ["Offset of field: drm_mode_crtc_page_flip_target::crtc_id"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip_target, crtc_id) - 0usize];
    ["Offset of field: drm_mode_crtc_page_flip_target::fb_id"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip_target, fb_id) - 4usize];
    ["Offset of field: drm_mode_crtc_page_flip_target::flags"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip_target, flags) - 8usize];
    ["Offset of field: drm_mode_crtc_page_flip_target::sequence"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip_target, sequence) - 12usize];
    ["Offset of field: drm_mode_crtc_page_flip_target::user_data"]
        [::std::mem::offset_of!(drm_mode_crtc_page_flip_target, user_data) - 16usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_create_dumb"][::std::mem::size_of::<drm_mode_create_dumb>() - 32usize];
    ["Alignment of drm_mode_create_dumb"][::std::mem::align_of::<drm_mode_create_dumb>() - 8usize];
    ["Offset of field: drm_mode_create_dumb::height"]
        [::std::mem::offset_of!(drm_mode_create_dumb, height) - 0usize];
    ["Offset of field: drm_mode_create_dumb::width"]
        [::std::mem::offset_of!(drm_mode_create_dumb, width) - 4usize];
    ["Offset of field: drm_mode_create_dumb::bpp"]
        [::std::mem::offset_of!(drm_mode_create_dumb, bpp) - 8usize];
    ["Offset of field: drm_mode_create_dumb::flags"]
        [::std::mem::offset_of!(drm_mode_create_dumb, flags) - 12usize];
    ["Offset of field: drm_mode_create_dumb::handle"]
        [::std::mem::offset_of!(drm_mode_create_dumb, handle) - 16usize];
    ["Offset of field: drm_mode_create_dumb::pitch"]
        [::std::mem::offset_of!(drm_mode_create_dumb, pitch) - 20usize];
    ["Offset of field: drm_mode_create_dumb::size"]
        [::std::mem::offset_of!(drm_mode_create_dumb, size) - 24usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_map_dumb {
    pub handle: __u32,
    pub pad: __u32,
    pub offset: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_map_dumb"][::std::mem::size_of::<drm_mode_map_dumb>() - 16usize];
    ["Alignment of drm_mode_map_dumb"][::std::mem::align_of::<drm_mode_map_dumb>() - 8usize];
    ["Offset of field: drm_mode_map_dumb::handle"]
        [::std::mem::offset_of!(drm_mode_map_dumb, handle) - 0usize];
    ["Offset of field: drm_mode_map_dumb::pad"]
        [::std::mem::offset_of!(drm_mode_map_dumb, pad) - 4usize];
    ["Offset of field: drm_mode_map_dumb::offset"]
        [::std::mem::offset_of!(drm_mode_map_dumb, offset) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_destroy_dumb {
    pub handle: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_destroy_dumb"][::std::mem::size_of::<drm_mode_destroy_dumb>() - 4usize];
    ["Alignment of drm_mode_destroy_dumb"]
        [::std::mem::align_of::<drm_mode_destroy_dumb>() - 4usize];
    ["Offset of field: drm_mode_destroy_dumb::handle"]
        [::std::mem::offset_of!(drm_mode_destroy_dumb, handle) - 0usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_atomic"][::std::mem::size_of::<drm_mode_atomic>() - 56usize];
    ["Alignment of drm_mode_atomic"][::std::mem::align_of::<drm_mode_atomic>() - 8usize];
    ["Offset of field: drm_mode_atomic::flags"]
        [::std::mem::offset_of!(drm_mode_atomic, flags) - 0usize];
    ["Offset of field: drm_mode_atomic::count_objs"]
        [::std::mem::offset_of!(drm_mode_atomic, count_objs) - 4usize];
    ["Offset of field: drm_mode_atomic::objs_ptr"]
        [::std::mem::offset_of!(drm_mode_atomic, objs_ptr) - 8usize];
    ["Offset of field: drm_mode_atomic::count_props_ptr"]
        [::std::mem::offset_of!(drm_mode_atomic, count_props_ptr) - 16usize];
    ["Offset of field: drm_mode_atomic::props_ptr"]
        [::std::mem::offset_of!(drm_mode_atomic, props_ptr) - 24usize];
    ["Offset of field: drm_mode_atomic::prop_values_ptr"]
        [::std::mem::offset_of!(drm_mode_atomic, prop_values_ptr) - 32usize];
    ["Offset of field: drm_mode_atomic::reserved"]
        [::std::mem::offset_of!(drm_mode_atomic, reserved) - 40usize];
    ["Offset of field: drm_mode_atomic::user_data"]
        [::std::mem::offset_of!(drm_mode_atomic, user_data) - 48usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_format_modifier_blob"]
        [::std::mem::size_of::<drm_format_modifier_blob>() - 24usize];
    ["Alignment of drm_format_modifier_blob"]
        [::std::mem::align_of::<drm_format_modifier_blob>() - 4usize];
    ["Offset of field: drm_format_modifier_blob::version"]
        [::std::mem::offset_of!(drm_format_modifier_blob, version) - 0usize];
    ["Offset of field: drm_format_modifier_blob::flags"]
        [::std::mem::offset_of!(drm_format_modifier_blob, flags) - 4usize];
    ["Offset of field: drm_format_modifier_blob::count_formats"]
        [::std::mem::offset_of!(drm_format_modifier_blob, count_formats) - 8usize];
    ["Offset of field: drm_format_modifier_blob::formats_offset"]
        [::std::mem::offset_of!(drm_format_modifier_blob, formats_offset) - 12usize];
    ["Offset of field: drm_format_modifier_blob::count_modifiers"]
        [::std::mem::offset_of!(drm_format_modifier_blob, count_modifiers) - 16usize];
    ["Offset of field: drm_format_modifier_blob::modifiers_offset"]
        [::std::mem::offset_of!(drm_format_modifier_blob, modifiers_offset) - 20usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_format_modifier {
    pub formats: __u64,
    pub offset: __u32,
    pub pad: __u32,
    pub modifier: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_format_modifier"][::std::mem::size_of::<drm_format_modifier>() - 24usize];
    ["Alignment of drm_format_modifier"][::std::mem::align_of::<drm_format_modifier>() - 8usize];
    ["Offset of field: drm_format_modifier::formats"]
        [::std::mem::offset_of!(drm_format_modifier, formats) - 0usize];
    ["Offset of field: drm_format_modifier::offset"]
        [::std::mem::offset_of!(drm_format_modifier, offset) - 8usize];
    ["Offset of field: drm_format_modifier::pad"]
        [::std::mem::offset_of!(drm_format_modifier, pad) - 12usize];
    ["Offset of field: drm_format_modifier::modifier"]
        [::std::mem::offset_of!(drm_format_modifier, modifier) - 16usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_create_blob {
    pub data: __u64,
    pub length: __u32,
    pub blob_id: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_create_blob"][::std::mem::size_of::<drm_mode_create_blob>() - 16usize];
    ["Alignment of drm_mode_create_blob"][::std::mem::align_of::<drm_mode_create_blob>() - 8usize];
    ["Offset of field: drm_mode_create_blob::data"]
        [::std::mem::offset_of!(drm_mode_create_blob, data) - 0usize];
    ["Offset of field: drm_mode_create_blob::length"]
        [::std::mem::offset_of!(drm_mode_create_blob, length) - 8usize];
    ["Offset of field: drm_mode_create_blob::blob_id"]
        [::std::mem::offset_of!(drm_mode_create_blob, blob_id) - 12usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_destroy_blob {
    pub blob_id: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_destroy_blob"][::std::mem::size_of::<drm_mode_destroy_blob>() - 4usize];
    ["Alignment of drm_mode_destroy_blob"]
        [::std::mem::align_of::<drm_mode_destroy_blob>() - 4usize];
    ["Offset of field: drm_mode_destroy_blob::blob_id"]
        [::std::mem::offset_of!(drm_mode_destroy_blob, blob_id) - 0usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_create_lease"][::std::mem::size_of::<drm_mode_create_lease>() - 24usize];
    ["Alignment of drm_mode_create_lease"]
        [::std::mem::align_of::<drm_mode_create_lease>() - 8usize];
    ["Offset of field: drm_mode_create_lease::object_ids"]
        [::std::mem::offset_of!(drm_mode_create_lease, object_ids) - 0usize];
    ["Offset of field: drm_mode_create_lease::object_count"]
        [::std::mem::offset_of!(drm_mode_create_lease, object_count) - 8usize];
    ["Offset of field: drm_mode_create_lease::flags"]
        [::std::mem::offset_of!(drm_mode_create_lease, flags) - 12usize];
    ["Offset of field: drm_mode_create_lease::lessee_id"]
        [::std::mem::offset_of!(drm_mode_create_lease, lessee_id) - 16usize];
    ["Offset of field: drm_mode_create_lease::fd"]
        [::std::mem::offset_of!(drm_mode_create_lease, fd) - 20usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_list_lessees {
    pub count_lessees: __u32,
    pub pad: __u32,
    pub lessees_ptr: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_list_lessees"][::std::mem::size_of::<drm_mode_list_lessees>() - 16usize];
    ["Alignment of drm_mode_list_lessees"]
        [::std::mem::align_of::<drm_mode_list_lessees>() - 8usize];
    ["Offset of field: drm_mode_list_lessees::count_lessees"]
        [::std::mem::offset_of!(drm_mode_list_lessees, count_lessees) - 0usize];
    ["Offset of field: drm_mode_list_lessees::pad"]
        [::std::mem::offset_of!(drm_mode_list_lessees, pad) - 4usize];
    ["Offset of field: drm_mode_list_lessees::lessees_ptr"]
        [::std::mem::offset_of!(drm_mode_list_lessees, lessees_ptr) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_get_lease {
    pub count_objects: __u32,
    pub pad: __u32,
    pub objects_ptr: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_get_lease"][::std::mem::size_of::<drm_mode_get_lease>() - 16usize];
    ["Alignment of drm_mode_get_lease"][::std::mem::align_of::<drm_mode_get_lease>() - 8usize];
    ["Offset of field: drm_mode_get_lease::count_objects"]
        [::std::mem::offset_of!(drm_mode_get_lease, count_objects) - 0usize];
    ["Offset of field: drm_mode_get_lease::pad"]
        [::std::mem::offset_of!(drm_mode_get_lease, pad) - 4usize];
    ["Offset of field: drm_mode_get_lease::objects_ptr"]
        [::std::mem::offset_of!(drm_mode_get_lease, objects_ptr) - 8usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_revoke_lease {
    pub lessee_id: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_revoke_lease"][::std::mem::size_of::<drm_mode_revoke_lease>() - 4usize];
    ["Alignment of drm_mode_revoke_lease"]
        [::std::mem::align_of::<drm_mode_revoke_lease>() - 4usize];
    ["Offset of field: drm_mode_revoke_lease::lessee_id"]
        [::std::mem::offset_of!(drm_mode_revoke_lease, lessee_id) - 0usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_rect {
    pub x1: __s32,
    pub y1: __s32,
    pub x2: __s32,
    pub y2: __s32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_rect"][::std::mem::size_of::<drm_mode_rect>() - 16usize];
    ["Alignment of drm_mode_rect"][::std::mem::align_of::<drm_mode_rect>() - 4usize];
    ["Offset of field: drm_mode_rect::x1"][::std::mem::offset_of!(drm_mode_rect, x1) - 0usize];
    ["Offset of field: drm_mode_rect::y1"][::std::mem::offset_of!(drm_mode_rect, y1) - 4usize];
    ["Offset of field: drm_mode_rect::x2"][::std::mem::offset_of!(drm_mode_rect, x2) - 8usize];
    ["Offset of field: drm_mode_rect::y2"][::std::mem::offset_of!(drm_mode_rect, y2) - 12usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_mode_closefb {
    pub fb_id: __u32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_mode_closefb"][::std::mem::size_of::<drm_mode_closefb>() - 8usize];
    ["Alignment of drm_mode_closefb"][::std::mem::align_of::<drm_mode_closefb>() - 4usize];
    ["Offset of field: drm_mode_closefb::fb_id"]
        [::std::mem::offset_of!(drm_mode_closefb, fb_id) - 0usize];
    ["Offset of field: drm_mode_closefb::pad"]
        [::std::mem::offset_of!(drm_mode_closefb, pad) - 4usize];
};
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct drm_event {
    pub type_: __u32,
    pub length: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_event"][::std::mem::size_of::<drm_event>() - 8usize];
    ["Alignment of drm_event"][::std::mem::align_of::<drm_event>() - 4usize];
    ["Offset of field: drm_event::type_"][::std::mem::offset_of!(drm_event, type_) - 0usize];
    ["Offset of field: drm_event::length"][::std::mem::offset_of!(drm_event, length) - 4usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_event_vblank"][::std::mem::size_of::<drm_event_vblank>() - 32usize];
    ["Alignment of drm_event_vblank"][::std::mem::align_of::<drm_event_vblank>() - 8usize];
    ["Offset of field: drm_event_vblank::base"]
        [::std::mem::offset_of!(drm_event_vblank, base) - 0usize];
    ["Offset of field: drm_event_vblank::user_data"]
        [::std::mem::offset_of!(drm_event_vblank, user_data) - 8usize];
    ["Offset of field: drm_event_vblank::tv_sec"]
        [::std::mem::offset_of!(drm_event_vblank, tv_sec) - 16usize];
    ["Offset of field: drm_event_vblank::tv_usec"]
        [::std::mem::offset_of!(drm_event_vblank, tv_usec) - 20usize];
    ["Offset of field: drm_event_vblank::sequence"]
        [::std::mem::offset_of!(drm_event_vblank, sequence) - 24usize];
    ["Offset of field: drm_event_vblank::crtc_id"]
        [::std::mem::offset_of!(drm_event_vblank, crtc_id) - 28usize];
};
#[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,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of drm_event_crtc_sequence"][::std::mem::size_of::<drm_event_crtc_sequence>() - 32usize];
    ["Alignment of drm_event_crtc_sequence"]
        [::std::mem::align_of::<drm_event_crtc_sequence>() - 8usize];
    ["Offset of field: drm_event_crtc_sequence::base"]
        [::std::mem::offset_of!(drm_event_crtc_sequence, base) - 0usize];
    ["Offset of field: drm_event_crtc_sequence::user_data"]
        [::std::mem::offset_of!(drm_event_crtc_sequence, user_data) - 8usize];
    ["Offset of field: drm_event_crtc_sequence::time_ns"]
        [::std::mem::offset_of!(drm_event_crtc_sequence, time_ns) - 16usize];
    ["Offset of field: drm_event_crtc_sequence::sequence"]
        [::std::mem::offset_of!(drm_event_crtc_sequence, sequence) - 24usize];
};
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 const amdxdna_drm_ioctl_id_DRM_AMDXDNA_CREATE_HWCTX: amdxdna_drm_ioctl_id = 0;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_DESTROY_HWCTX: amdxdna_drm_ioctl_id = 1;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_CONFIG_HWCTX: amdxdna_drm_ioctl_id = 2;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_CREATE_BO: amdxdna_drm_ioctl_id = 3;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_GET_BO_INFO: amdxdna_drm_ioctl_id = 4;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_SYNC_BO: amdxdna_drm_ioctl_id = 5;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_EXEC_CMD: amdxdna_drm_ioctl_id = 6;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_GET_INFO: amdxdna_drm_ioctl_id = 7;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_SET_STATE: amdxdna_drm_ioctl_id = 8;
pub const amdxdna_drm_ioctl_id_DRM_AMDXDNA_WAIT_CMD: amdxdna_drm_ioctl_id = 9;
pub type amdxdna_drm_ioctl_id = ::std::os::raw::c_uint;
pub const amdxdna_device_type_AMDXDNA_DEV_TYPE_UNKNOWN: amdxdna_device_type = -1;
pub const amdxdna_device_type_AMDXDNA_DEV_TYPE_KMQ: amdxdna_device_type = 0;
pub const amdxdna_device_type_AMDXDNA_DEV_TYPE_UMQ: amdxdna_device_type = 1;
pub type amdxdna_device_type = ::std::os::raw::c_int;
pub const amdxdna_qos_priority_AMDXDNA_QOS_DEFAULT_PRIORITY: amdxdna_qos_priority = 0;
pub const amdxdna_qos_priority_AMDXDNA_QOS_REALTIME_PRIORITY: amdxdna_qos_priority = 256;
pub const amdxdna_qos_priority_AMDXDNA_QOS_HIGH_PRIORITY: amdxdna_qos_priority = 384;
pub const amdxdna_qos_priority_AMDXDNA_QOS_NORMAL_PRIORITY: amdxdna_qos_priority = 512;
pub const amdxdna_qos_priority_AMDXDNA_QOS_LOW_PRIORITY: amdxdna_qos_priority = 640;
pub type amdxdna_qos_priority = ::std::os::raw::c_uint;
#[doc = " struct qos_info - QoS information for driver.\n @gops: Giga operations per second.\n @fps: Frames per second.\n @dma_bandwidth: DMA bandwidtha.\n @latency: Frame response latency.\n @frame_exec_time: Frame execution time.\n @priority: Request priority.\n\n User program can provide QoS hints to driver."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_qos_info {
    pub gops: __u32,
    pub fps: __u32,
    pub dma_bandwidth: __u32,
    pub latency: __u32,
    pub frame_exec_time: __u32,
    pub priority: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_qos_info"][::std::mem::size_of::<amdxdna_qos_info>() - 24usize];
    ["Alignment of amdxdna_qos_info"][::std::mem::align_of::<amdxdna_qos_info>() - 4usize];
    ["Offset of field: amdxdna_qos_info::gops"]
        [::std::mem::offset_of!(amdxdna_qos_info, gops) - 0usize];
    ["Offset of field: amdxdna_qos_info::fps"]
        [::std::mem::offset_of!(amdxdna_qos_info, fps) - 4usize];
    ["Offset of field: amdxdna_qos_info::dma_bandwidth"]
        [::std::mem::offset_of!(amdxdna_qos_info, dma_bandwidth) - 8usize];
    ["Offset of field: amdxdna_qos_info::latency"]
        [::std::mem::offset_of!(amdxdna_qos_info, latency) - 12usize];
    ["Offset of field: amdxdna_qos_info::frame_exec_time"]
        [::std::mem::offset_of!(amdxdna_qos_info, frame_exec_time) - 16usize];
    ["Offset of field: amdxdna_qos_info::priority"]
        [::std::mem::offset_of!(amdxdna_qos_info, priority) - 20usize];
};
#[doc = " struct amdxdna_drm_create_hwctx - Create hardware context.\n @ext: MBZ.\n @ext_flags: MBZ.\n @qos_p: Address of QoS info.\n @umq_bo: BO handle for user mode queue(UMQ).\n @log_buf_bo: BO handle for log buffer.\n @max_opc: Maximum operations per cycle.\n @num_tiles: Number of AIE tiles.\n @mem_size: Size of AIE tile memory.\n @umq_doorbell: Returned offset of doorbell associated with UMQ.\n @handle: Returned hardware context handle.\n @syncobj_handle: The drm timeline syncobj handle for command completion notification."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_create_hwctx {
    pub ext: __u64,
    pub ext_flags: __u64,
    pub qos_p: __u64,
    pub umq_bo: __u32,
    pub log_buf_bo: __u32,
    pub max_opc: __u32,
    pub num_tiles: __u32,
    pub mem_size: __u32,
    pub umq_doorbell: __u32,
    pub handle: __u32,
    pub syncobj_handle: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_create_hwctx"]
        [::std::mem::size_of::<amdxdna_drm_create_hwctx>() - 56usize];
    ["Alignment of amdxdna_drm_create_hwctx"]
        [::std::mem::align_of::<amdxdna_drm_create_hwctx>() - 8usize];
    ["Offset of field: amdxdna_drm_create_hwctx::ext"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, ext) - 0usize];
    ["Offset of field: amdxdna_drm_create_hwctx::ext_flags"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, ext_flags) - 8usize];
    ["Offset of field: amdxdna_drm_create_hwctx::qos_p"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, qos_p) - 16usize];
    ["Offset of field: amdxdna_drm_create_hwctx::umq_bo"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, umq_bo) - 24usize];
    ["Offset of field: amdxdna_drm_create_hwctx::log_buf_bo"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, log_buf_bo) - 28usize];
    ["Offset of field: amdxdna_drm_create_hwctx::max_opc"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, max_opc) - 32usize];
    ["Offset of field: amdxdna_drm_create_hwctx::num_tiles"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, num_tiles) - 36usize];
    ["Offset of field: amdxdna_drm_create_hwctx::mem_size"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, mem_size) - 40usize];
    ["Offset of field: amdxdna_drm_create_hwctx::umq_doorbell"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, umq_doorbell) - 44usize];
    ["Offset of field: amdxdna_drm_create_hwctx::handle"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, handle) - 48usize];
    ["Offset of field: amdxdna_drm_create_hwctx::syncobj_handle"]
        [::std::mem::offset_of!(amdxdna_drm_create_hwctx, syncobj_handle) - 52usize];
};
#[doc = " struct amdxdna_drm_destroy_hwctx - Destroy hardware context.\n @handle: Hardware context handle.\n @pad: Structure padding."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_destroy_hwctx {
    pub handle: __u32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_destroy_hwctx"]
        [::std::mem::size_of::<amdxdna_drm_destroy_hwctx>() - 8usize];
    ["Alignment of amdxdna_drm_destroy_hwctx"]
        [::std::mem::align_of::<amdxdna_drm_destroy_hwctx>() - 4usize];
    ["Offset of field: amdxdna_drm_destroy_hwctx::handle"]
        [::std::mem::offset_of!(amdxdna_drm_destroy_hwctx, handle) - 0usize];
    ["Offset of field: amdxdna_drm_destroy_hwctx::pad"]
        [::std::mem::offset_of!(amdxdna_drm_destroy_hwctx, pad) - 4usize];
};
#[doc = " struct amdxdna_cu_config - configuration for one CU\n @cu_bo: CU configuration buffer bo handle.\n @cu_func: Function of a CU.\n @pad: Structure padding."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_cu_config {
    pub cu_bo: __u32,
    pub cu_func: __u8,
    pub pad: [__u8; 3usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_cu_config"][::std::mem::size_of::<amdxdna_cu_config>() - 8usize];
    ["Alignment of amdxdna_cu_config"][::std::mem::align_of::<amdxdna_cu_config>() - 4usize];
    ["Offset of field: amdxdna_cu_config::cu_bo"]
        [::std::mem::offset_of!(amdxdna_cu_config, cu_bo) - 0usize];
    ["Offset of field: amdxdna_cu_config::cu_func"]
        [::std::mem::offset_of!(amdxdna_cu_config, cu_func) - 4usize];
    ["Offset of field: amdxdna_cu_config::pad"]
        [::std::mem::offset_of!(amdxdna_cu_config, pad) - 5usize];
};
#[doc = " struct amdxdna_hwctx_param_config_cu - configuration for CUs in hardware context\n @num_cus: Number of CUs to configure.\n @pad: Structure padding.\n @cu_configs: Array of CU configurations of struct amdxdna_cu_config."]
#[repr(C)]
#[derive(Debug)]
pub struct amdxdna_hwctx_param_config_cu {
    pub num_cus: __u16,
    pub pad: [__u16; 3usize],
    pub cu_configs: __IncompleteArrayField<amdxdna_cu_config>,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_hwctx_param_config_cu"]
        [::std::mem::size_of::<amdxdna_hwctx_param_config_cu>() - 8usize];
    ["Alignment of amdxdna_hwctx_param_config_cu"]
        [::std::mem::align_of::<amdxdna_hwctx_param_config_cu>() - 4usize];
    ["Offset of field: amdxdna_hwctx_param_config_cu::num_cus"]
        [::std::mem::offset_of!(amdxdna_hwctx_param_config_cu, num_cus) - 0usize];
    ["Offset of field: amdxdna_hwctx_param_config_cu::pad"]
        [::std::mem::offset_of!(amdxdna_hwctx_param_config_cu, pad) - 2usize];
    ["Offset of field: amdxdna_hwctx_param_config_cu::cu_configs"]
        [::std::mem::offset_of!(amdxdna_hwctx_param_config_cu, cu_configs) - 8usize];
};
pub const amdxdna_drm_config_hwctx_param_DRM_AMDXDNA_HWCTX_CONFIG_CU:
    amdxdna_drm_config_hwctx_param = 0;
pub const amdxdna_drm_config_hwctx_param_DRM_AMDXDNA_HWCTX_ASSIGN_DBG_BUF:
    amdxdna_drm_config_hwctx_param = 1;
pub const amdxdna_drm_config_hwctx_param_DRM_AMDXDNA_HWCTX_REMOVE_DBG_BUF:
    amdxdna_drm_config_hwctx_param = 2;
pub type amdxdna_drm_config_hwctx_param = ::std::os::raw::c_uint;
#[doc = " struct amdxdna_drm_config_hwctx - Configure hardware context.\n @handle: hardware context handle.\n @param_type: Value in enum amdxdna_drm_config_hwctx_param. Specifies the\n              structure passed in via param_val.\n @param_val: A structure specified by the param_type struct member.\n @param_val_size: Size of the parameter buffer pointed to by the param_val.\n\t\t    If param_val is not a pointer, driver can ignore this.\n @pad: Structure padding.\n\n Note: if the param_val is a pointer pointing to a buffer, the maximum size\n of the buffer is 4KiB(PAGE_SIZE)."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_config_hwctx {
    pub handle: __u32,
    pub param_type: __u32,
    pub param_val: __u64,
    pub param_val_size: __u32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_config_hwctx"]
        [::std::mem::size_of::<amdxdna_drm_config_hwctx>() - 24usize];
    ["Alignment of amdxdna_drm_config_hwctx"]
        [::std::mem::align_of::<amdxdna_drm_config_hwctx>() - 8usize];
    ["Offset of field: amdxdna_drm_config_hwctx::handle"]
        [::std::mem::offset_of!(amdxdna_drm_config_hwctx, handle) - 0usize];
    ["Offset of field: amdxdna_drm_config_hwctx::param_type"]
        [::std::mem::offset_of!(amdxdna_drm_config_hwctx, param_type) - 4usize];
    ["Offset of field: amdxdna_drm_config_hwctx::param_val"]
        [::std::mem::offset_of!(amdxdna_drm_config_hwctx, param_val) - 8usize];
    ["Offset of field: amdxdna_drm_config_hwctx::param_val_size"]
        [::std::mem::offset_of!(amdxdna_drm_config_hwctx, param_val_size) - 16usize];
    ["Offset of field: amdxdna_drm_config_hwctx::pad"]
        [::std::mem::offset_of!(amdxdna_drm_config_hwctx, pad) - 20usize];
};
pub const amdxdna_bo_type_AMDXDNA_BO_INVALID: amdxdna_bo_type = 0;
pub const amdxdna_bo_type_AMDXDNA_BO_SHMEM: amdxdna_bo_type = 1;
pub const amdxdna_bo_type_AMDXDNA_BO_DEV_HEAP: amdxdna_bo_type = 2;
pub const amdxdna_bo_type_AMDXDNA_BO_DEV: amdxdna_bo_type = 3;
pub const amdxdna_bo_type_AMDXDNA_BO_CMD: amdxdna_bo_type = 4;
pub const amdxdna_bo_type_AMDXDNA_BO_DMA: amdxdna_bo_type = 5;
pub type amdxdna_bo_type = ::std::os::raw::c_uint;
#[doc = " struct amdxdna_drm_create_bo - Create a buffer object.\n @flags: Buffer flags. MBZ.\n @vaddr: User VA of buffer if applied. MBZ.\n @size: Size in bytes.\n @type: Buffer type.\n @handle: Returned DRM buffer object handle."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_create_bo {
    pub flags: __u64,
    pub vaddr: __u64,
    pub size: __u64,
    pub type_: __u32,
    pub handle: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_create_bo"][::std::mem::size_of::<amdxdna_drm_create_bo>() - 32usize];
    ["Alignment of amdxdna_drm_create_bo"]
        [::std::mem::align_of::<amdxdna_drm_create_bo>() - 8usize];
    ["Offset of field: amdxdna_drm_create_bo::flags"]
        [::std::mem::offset_of!(amdxdna_drm_create_bo, flags) - 0usize];
    ["Offset of field: amdxdna_drm_create_bo::vaddr"]
        [::std::mem::offset_of!(amdxdna_drm_create_bo, vaddr) - 8usize];
    ["Offset of field: amdxdna_drm_create_bo::size"]
        [::std::mem::offset_of!(amdxdna_drm_create_bo, size) - 16usize];
    ["Offset of field: amdxdna_drm_create_bo::type_"]
        [::std::mem::offset_of!(amdxdna_drm_create_bo, type_) - 24usize];
    ["Offset of field: amdxdna_drm_create_bo::handle"]
        [::std::mem::offset_of!(amdxdna_drm_create_bo, handle) - 28usize];
};
#[doc = " struct amdxdna_drm_get_bo_info - Get buffer object information.\n @ext: MBZ.\n @ext_flags: MBZ.\n @handle: DRM buffer object handle.\n @pad: Structure padding.\n @map_offset: Returned DRM fake offset for mmap().\n @vaddr: Returned user VA of buffer. 0 in case user needs mmap().\n @xdna_addr: Returned XDNA device virtual address."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_get_bo_info {
    pub ext: __u64,
    pub ext_flags: __u64,
    pub handle: __u32,
    pub pad: __u32,
    pub map_offset: __u64,
    pub vaddr: __u64,
    pub xdna_addr: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_get_bo_info"][::std::mem::size_of::<amdxdna_drm_get_bo_info>() - 48usize];
    ["Alignment of amdxdna_drm_get_bo_info"]
        [::std::mem::align_of::<amdxdna_drm_get_bo_info>() - 8usize];
    ["Offset of field: amdxdna_drm_get_bo_info::ext"]
        [::std::mem::offset_of!(amdxdna_drm_get_bo_info, ext) - 0usize];
    ["Offset of field: amdxdna_drm_get_bo_info::ext_flags"]
        [::std::mem::offset_of!(amdxdna_drm_get_bo_info, ext_flags) - 8usize];
    ["Offset of field: amdxdna_drm_get_bo_info::handle"]
        [::std::mem::offset_of!(amdxdna_drm_get_bo_info, handle) - 16usize];
    ["Offset of field: amdxdna_drm_get_bo_info::pad"]
        [::std::mem::offset_of!(amdxdna_drm_get_bo_info, pad) - 20usize];
    ["Offset of field: amdxdna_drm_get_bo_info::map_offset"]
        [::std::mem::offset_of!(amdxdna_drm_get_bo_info, map_offset) - 24usize];
    ["Offset of field: amdxdna_drm_get_bo_info::vaddr"]
        [::std::mem::offset_of!(amdxdna_drm_get_bo_info, vaddr) - 32usize];
    ["Offset of field: amdxdna_drm_get_bo_info::xdna_addr"]
        [::std::mem::offset_of!(amdxdna_drm_get_bo_info, xdna_addr) - 40usize];
};
#[doc = " struct amdxdna_drm_sync_bo - Sync buffer object.\n @handle: Buffer object handle.\n @direction: Direction of sync, can be from device or to device.\n @offset: Offset in the buffer to sync.\n @size: Size in bytes."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_sync_bo {
    pub handle: __u32,
    pub direction: __u32,
    pub offset: __u64,
    pub size: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_sync_bo"][::std::mem::size_of::<amdxdna_drm_sync_bo>() - 24usize];
    ["Alignment of amdxdna_drm_sync_bo"][::std::mem::align_of::<amdxdna_drm_sync_bo>() - 8usize];
    ["Offset of field: amdxdna_drm_sync_bo::handle"]
        [::std::mem::offset_of!(amdxdna_drm_sync_bo, handle) - 0usize];
    ["Offset of field: amdxdna_drm_sync_bo::direction"]
        [::std::mem::offset_of!(amdxdna_drm_sync_bo, direction) - 4usize];
    ["Offset of field: amdxdna_drm_sync_bo::offset"]
        [::std::mem::offset_of!(amdxdna_drm_sync_bo, offset) - 8usize];
    ["Offset of field: amdxdna_drm_sync_bo::size"]
        [::std::mem::offset_of!(amdxdna_drm_sync_bo, size) - 16usize];
};
pub const amdxdna_cmd_type_AMDXDNA_CMD_SUBMIT_EXEC_BUF: amdxdna_cmd_type = 0;
pub const amdxdna_cmd_type_AMDXDNA_CMD_SUBMIT_DEPENDENCY: amdxdna_cmd_type = 1;
pub const amdxdna_cmd_type_AMDXDNA_CMD_SUBMIT_SIGNAL: amdxdna_cmd_type = 2;
pub type amdxdna_cmd_type = ::std::os::raw::c_uint;
#[doc = " struct amdxdna_drm_exec_cmd - Execute command.\n @ext: MBZ.\n @ext_flags: MBZ.\n @hwctx: Hardware context handle.\n @type: One of command type in enum amdxdna_cmd_type.\n @cmd_handles: Array of command handles or the command handle itself\n               in case of just one.\n @args: Array of arguments for all command handles.\n @cmd_count: Number of command handles in the cmd_handles array.\n @arg_count: Number of arguments in the args array.\n @seq: Returned sequence number for this command."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_exec_cmd {
    pub ext: __u64,
    pub ext_flags: __u64,
    pub hwctx: __u32,
    pub type_: __u32,
    pub cmd_handles: __u64,
    pub args: __u64,
    pub cmd_count: __u32,
    pub arg_count: __u32,
    pub seq: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_exec_cmd"][::std::mem::size_of::<amdxdna_drm_exec_cmd>() - 56usize];
    ["Alignment of amdxdna_drm_exec_cmd"][::std::mem::align_of::<amdxdna_drm_exec_cmd>() - 8usize];
    ["Offset of field: amdxdna_drm_exec_cmd::ext"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, ext) - 0usize];
    ["Offset of field: amdxdna_drm_exec_cmd::ext_flags"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, ext_flags) - 8usize];
    ["Offset of field: amdxdna_drm_exec_cmd::hwctx"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, hwctx) - 16usize];
    ["Offset of field: amdxdna_drm_exec_cmd::type_"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, type_) - 20usize];
    ["Offset of field: amdxdna_drm_exec_cmd::cmd_handles"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, cmd_handles) - 24usize];
    ["Offset of field: amdxdna_drm_exec_cmd::args"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, args) - 32usize];
    ["Offset of field: amdxdna_drm_exec_cmd::cmd_count"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, cmd_count) - 40usize];
    ["Offset of field: amdxdna_drm_exec_cmd::arg_count"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, arg_count) - 44usize];
    ["Offset of field: amdxdna_drm_exec_cmd::seq"]
        [::std::mem::offset_of!(amdxdna_drm_exec_cmd, seq) - 48usize];
};
#[doc = " struct amdxdna_drm_wait_cmd - Wait exectuion command.\n\n @hwctx: hardware context handle.\n @timeout: timeout in ms, 0 implies infinite wait.\n @seq: sequence number of the command returned by execute command.\n\n Wait a command specified by seq to be completed."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_wait_cmd {
    pub hwctx: __u32,
    pub timeout: __u32,
    pub seq: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_wait_cmd"][::std::mem::size_of::<amdxdna_drm_wait_cmd>() - 16usize];
    ["Alignment of amdxdna_drm_wait_cmd"][::std::mem::align_of::<amdxdna_drm_wait_cmd>() - 8usize];
    ["Offset of field: amdxdna_drm_wait_cmd::hwctx"]
        [::std::mem::offset_of!(amdxdna_drm_wait_cmd, hwctx) - 0usize];
    ["Offset of field: amdxdna_drm_wait_cmd::timeout"]
        [::std::mem::offset_of!(amdxdna_drm_wait_cmd, timeout) - 4usize];
    ["Offset of field: amdxdna_drm_wait_cmd::seq"]
        [::std::mem::offset_of!(amdxdna_drm_wait_cmd, seq) - 8usize];
};
#[doc = " struct amdxdna_drm_query_aie_status - Query the status of the AIE hardware\n @buffer: The user space buffer that will return the AIE status.\n @buffer_size: The size of the user space buffer.\n @cols_filled: A bitmap of AIE columns whose data has been returned in the buffer."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_aie_status {
    pub buffer: __u64,
    pub buffer_size: __u32,
    pub cols_filled: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_aie_status"]
        [::std::mem::size_of::<amdxdna_drm_query_aie_status>() - 16usize];
    ["Alignment of amdxdna_drm_query_aie_status"]
        [::std::mem::align_of::<amdxdna_drm_query_aie_status>() - 8usize];
    ["Offset of field: amdxdna_drm_query_aie_status::buffer"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_status, buffer) - 0usize];
    ["Offset of field: amdxdna_drm_query_aie_status::buffer_size"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_status, buffer_size) - 8usize];
    ["Offset of field: amdxdna_drm_query_aie_status::cols_filled"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_status, cols_filled) - 12usize];
};
#[doc = " struct amdxdna_drm_query_aie_version - Query the version of the AIE hardware\n @major: The major version number.\n @minor: The minor version number."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_aie_version {
    pub major: __u32,
    pub minor: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_aie_version"]
        [::std::mem::size_of::<amdxdna_drm_query_aie_version>() - 8usize];
    ["Alignment of amdxdna_drm_query_aie_version"]
        [::std::mem::align_of::<amdxdna_drm_query_aie_version>() - 4usize];
    ["Offset of field: amdxdna_drm_query_aie_version::major"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_version, major) - 0usize];
    ["Offset of field: amdxdna_drm_query_aie_version::minor"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_version, minor) - 4usize];
};
#[doc = " struct amdxdna_drm_query_aie_tile_metadata - Query the metadata of AIE tile (core, mem, shim)\n @row_count: The number of rows.\n @row_start: The starting row number.\n @dma_channel_count: The number of dma channels.\n @lock_count: The number of locks.\n @event_reg_count: The number of events.\n @pad: Structure padding."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_aie_tile_metadata {
    pub row_count: __u16,
    pub row_start: __u16,
    pub dma_channel_count: __u16,
    pub lock_count: __u16,
    pub event_reg_count: __u16,
    pub pad: [__u16; 3usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_aie_tile_metadata"]
        [::std::mem::size_of::<amdxdna_drm_query_aie_tile_metadata>() - 16usize];
    ["Alignment of amdxdna_drm_query_aie_tile_metadata"]
        [::std::mem::align_of::<amdxdna_drm_query_aie_tile_metadata>() - 2usize];
    ["Offset of field: amdxdna_drm_query_aie_tile_metadata::row_count"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_tile_metadata, row_count) - 0usize];
    ["Offset of field: amdxdna_drm_query_aie_tile_metadata::row_start"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_tile_metadata, row_start) - 2usize];
    ["Offset of field: amdxdna_drm_query_aie_tile_metadata::dma_channel_count"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_tile_metadata, dma_channel_count) - 4usize];
    ["Offset of field: amdxdna_drm_query_aie_tile_metadata::lock_count"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_tile_metadata, lock_count) - 6usize];
    ["Offset of field: amdxdna_drm_query_aie_tile_metadata::event_reg_count"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_tile_metadata, event_reg_count) - 8usize];
    ["Offset of field: amdxdna_drm_query_aie_tile_metadata::pad"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_tile_metadata, pad) - 10usize];
};
#[doc = " struct amdxdna_drm_query_aie_metadata - Query the metadata of the AIE hardware\n @col_size: The size of a column in bytes.\n @cols: The total number of columns.\n @rows: The total number of rows.\n @version: The version of the AIE hardware.\n @core: The metadata for all core tiles.\n @mem: The metadata for all mem tiles.\n @shim: The metadata for all shim tiles."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_aie_metadata {
    pub col_size: __u32,
    pub cols: __u16,
    pub rows: __u16,
    pub version: amdxdna_drm_query_aie_version,
    pub core: amdxdna_drm_query_aie_tile_metadata,
    pub mem: amdxdna_drm_query_aie_tile_metadata,
    pub shim: amdxdna_drm_query_aie_tile_metadata,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_aie_metadata"]
        [::std::mem::size_of::<amdxdna_drm_query_aie_metadata>() - 64usize];
    ["Alignment of amdxdna_drm_query_aie_metadata"]
        [::std::mem::align_of::<amdxdna_drm_query_aie_metadata>() - 4usize];
    ["Offset of field: amdxdna_drm_query_aie_metadata::col_size"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_metadata, col_size) - 0usize];
    ["Offset of field: amdxdna_drm_query_aie_metadata::cols"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_metadata, cols) - 4usize];
    ["Offset of field: amdxdna_drm_query_aie_metadata::rows"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_metadata, rows) - 6usize];
    ["Offset of field: amdxdna_drm_query_aie_metadata::version"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_metadata, version) - 8usize];
    ["Offset of field: amdxdna_drm_query_aie_metadata::core"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_metadata, core) - 16usize];
    ["Offset of field: amdxdna_drm_query_aie_metadata::mem"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_metadata, mem) - 32usize];
    ["Offset of field: amdxdna_drm_query_aie_metadata::shim"]
        [::std::mem::offset_of!(amdxdna_drm_query_aie_metadata, shim) - 48usize];
};
#[doc = " struct amdxdna_drm_query_clock - Metadata for a clock\n @name: The clock name.\n @freq_mhz: The clock frequency.\n @pad: Structure padding."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_clock {
    pub name: [__u8; 16usize],
    pub freq_mhz: __u32,
    pub pad: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_clock"][::std::mem::size_of::<amdxdna_drm_query_clock>() - 24usize];
    ["Alignment of amdxdna_drm_query_clock"]
        [::std::mem::align_of::<amdxdna_drm_query_clock>() - 4usize];
    ["Offset of field: amdxdna_drm_query_clock::name"]
        [::std::mem::offset_of!(amdxdna_drm_query_clock, name) - 0usize];
    ["Offset of field: amdxdna_drm_query_clock::freq_mhz"]
        [::std::mem::offset_of!(amdxdna_drm_query_clock, freq_mhz) - 16usize];
    ["Offset of field: amdxdna_drm_query_clock::pad"]
        [::std::mem::offset_of!(amdxdna_drm_query_clock, pad) - 20usize];
};
#[doc = " struct amdxdna_drm_query_clock_metadata - Query metadata for clocks\n @mp_npu_clock: The metadata for MP-NPU clock.\n @h_clock: The metadata for H clock."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_clock_metadata {
    pub mp_npu_clock: amdxdna_drm_query_clock,
    pub h_clock: amdxdna_drm_query_clock,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_clock_metadata"]
        [::std::mem::size_of::<amdxdna_drm_query_clock_metadata>() - 48usize];
    ["Alignment of amdxdna_drm_query_clock_metadata"]
        [::std::mem::align_of::<amdxdna_drm_query_clock_metadata>() - 4usize];
    ["Offset of field: amdxdna_drm_query_clock_metadata::mp_npu_clock"]
        [::std::mem::offset_of!(amdxdna_drm_query_clock_metadata, mp_npu_clock) - 0usize];
    ["Offset of field: amdxdna_drm_query_clock_metadata::h_clock"]
        [::std::mem::offset_of!(amdxdna_drm_query_clock_metadata, h_clock) - 24usize];
};
pub const amdxdna_sensor_type_AMDXDNA_SENSOR_TYPE_POWER: amdxdna_sensor_type = 0;
pub type amdxdna_sensor_type = ::std::os::raw::c_uint;
#[doc = " struct amdxdna_drm_query_sensor - The data for single sensor.\n @label: The name for a sensor.\n @input: The current value of the sensor.\n @max: The maximum value possible for the sensor.\n @average: The average value of the sensor.\n @highest: The highest recorded sensor value for this driver load for the sensor.\n @status: The sensor status.\n @units: The sensor units.\n @unitm: Translates value member variables into the correct unit via (pow(10, unitm) * value).\n @type: The sensor type from enum amdxdna_sensor_type.\n @pad: Structure padding."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_sensor {
    pub label: [__u8; 64usize],
    pub input: __u32,
    pub max: __u32,
    pub average: __u32,
    pub highest: __u32,
    pub status: [__u8; 64usize],
    pub units: [__u8; 16usize],
    pub unitm: __s8,
    pub type_: __u8,
    pub pad: [__u8; 6usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_sensor"]
        [::std::mem::size_of::<amdxdna_drm_query_sensor>() - 168usize];
    ["Alignment of amdxdna_drm_query_sensor"]
        [::std::mem::align_of::<amdxdna_drm_query_sensor>() - 4usize];
    ["Offset of field: amdxdna_drm_query_sensor::label"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, label) - 0usize];
    ["Offset of field: amdxdna_drm_query_sensor::input"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, input) - 64usize];
    ["Offset of field: amdxdna_drm_query_sensor::max"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, max) - 68usize];
    ["Offset of field: amdxdna_drm_query_sensor::average"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, average) - 72usize];
    ["Offset of field: amdxdna_drm_query_sensor::highest"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, highest) - 76usize];
    ["Offset of field: amdxdna_drm_query_sensor::status"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, status) - 80usize];
    ["Offset of field: amdxdna_drm_query_sensor::units"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, units) - 144usize];
    ["Offset of field: amdxdna_drm_query_sensor::unitm"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, unitm) - 160usize];
    ["Offset of field: amdxdna_drm_query_sensor::type_"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, type_) - 161usize];
    ["Offset of field: amdxdna_drm_query_sensor::pad"]
        [::std::mem::offset_of!(amdxdna_drm_query_sensor, pad) - 162usize];
};
#[doc = " struct amdxdna_drm_query_hwctx - The data for single context.\n @context_id: The ID for this context.\n @start_col: The starting column for the partition assigned to this context.\n @num_col: The number of columns in the partition assigned to this context.\n @pad: Structure padding.\n @pid: The Process ID of the process that created this context.\n @command_submissions: The number of commands submitted to this context.\n @command_completions: The number of commands completed by this context.\n @migrations: The number of times this context has been moved to a different partition.\n @preemptions: The number of times this context has been preempted by another context in the\n               same partition.\n @errors: The errors for this context."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_hwctx {
    pub context_id: __u32,
    pub start_col: __u32,
    pub num_col: __u32,
    pub pad: __u32,
    pub pid: __s64,
    pub command_submissions: __u64,
    pub command_completions: __u64,
    pub migrations: __u64,
    pub preemptions: __u64,
    pub errors: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_hwctx"][::std::mem::size_of::<amdxdna_drm_query_hwctx>() - 64usize];
    ["Alignment of amdxdna_drm_query_hwctx"]
        [::std::mem::align_of::<amdxdna_drm_query_hwctx>() - 8usize];
    ["Offset of field: amdxdna_drm_query_hwctx::context_id"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, context_id) - 0usize];
    ["Offset of field: amdxdna_drm_query_hwctx::start_col"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, start_col) - 4usize];
    ["Offset of field: amdxdna_drm_query_hwctx::num_col"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, num_col) - 8usize];
    ["Offset of field: amdxdna_drm_query_hwctx::pad"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, pad) - 12usize];
    ["Offset of field: amdxdna_drm_query_hwctx::pid"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, pid) - 16usize];
    ["Offset of field: amdxdna_drm_query_hwctx::command_submissions"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, command_submissions) - 24usize];
    ["Offset of field: amdxdna_drm_query_hwctx::command_completions"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, command_completions) - 32usize];
    ["Offset of field: amdxdna_drm_query_hwctx::migrations"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, migrations) - 40usize];
    ["Offset of field: amdxdna_drm_query_hwctx::preemptions"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, preemptions) - 48usize];
    ["Offset of field: amdxdna_drm_query_hwctx::errors"]
        [::std::mem::offset_of!(amdxdna_drm_query_hwctx, errors) - 56usize];
};
#[doc = " struct amdxdna_drm_aie_mem - The data for AIE memory read/write\n @col:   The AIE column index\n @row:   The AIE row index\n @addr:  The AIE memory address to read/write\n @size:  The size of bytes to read/write\n @buf_p: The buffer to store read/write data\n\n This is used for DRM_AMDXDNA_READ_AIE_MEM and DRM_AMDXDNA_WRITE_AIE_MEM\n parameters."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_aie_mem {
    pub col: __u32,
    pub row: __u32,
    pub addr: __u32,
    pub size: __u32,
    pub buf_p: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_aie_mem"][::std::mem::size_of::<amdxdna_drm_aie_mem>() - 24usize];
    ["Alignment of amdxdna_drm_aie_mem"][::std::mem::align_of::<amdxdna_drm_aie_mem>() - 8usize];
    ["Offset of field: amdxdna_drm_aie_mem::col"]
        [::std::mem::offset_of!(amdxdna_drm_aie_mem, col) - 0usize];
    ["Offset of field: amdxdna_drm_aie_mem::row"]
        [::std::mem::offset_of!(amdxdna_drm_aie_mem, row) - 4usize];
    ["Offset of field: amdxdna_drm_aie_mem::addr"]
        [::std::mem::offset_of!(amdxdna_drm_aie_mem, addr) - 8usize];
    ["Offset of field: amdxdna_drm_aie_mem::size"]
        [::std::mem::offset_of!(amdxdna_drm_aie_mem, size) - 12usize];
    ["Offset of field: amdxdna_drm_aie_mem::buf_p"]
        [::std::mem::offset_of!(amdxdna_drm_aie_mem, buf_p) - 16usize];
};
#[doc = " struct amdxdna_drm_aie_reg - The data for AIE register read/write\n @col: The AIE column index\n @row: The AIE row index\n @addr: The AIE register address to read/write\n @val: The value to write or returned value from AIE\n\n This is used for DRM_AMDXDNA_READ_AIE_REG and DRM_AMDXDNA_WRITE_AIE_REG\n parameters."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_aie_reg {
    pub col: __u32,
    pub row: __u32,
    pub addr: __u32,
    pub val: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_aie_reg"][::std::mem::size_of::<amdxdna_drm_aie_reg>() - 16usize];
    ["Alignment of amdxdna_drm_aie_reg"][::std::mem::align_of::<amdxdna_drm_aie_reg>() - 4usize];
    ["Offset of field: amdxdna_drm_aie_reg::col"]
        [::std::mem::offset_of!(amdxdna_drm_aie_reg, col) - 0usize];
    ["Offset of field: amdxdna_drm_aie_reg::row"]
        [::std::mem::offset_of!(amdxdna_drm_aie_reg, row) - 4usize];
    ["Offset of field: amdxdna_drm_aie_reg::addr"]
        [::std::mem::offset_of!(amdxdna_drm_aie_reg, addr) - 8usize];
    ["Offset of field: amdxdna_drm_aie_reg::val"]
        [::std::mem::offset_of!(amdxdna_drm_aie_reg, val) - 12usize];
};
#[doc = "< Fallback to calculated DPM"]
pub const amdxdna_power_mode_type_POWER_MODE_DEFAULT: amdxdna_power_mode_type = 0;
#[doc = "< Set frequency to lowest DPM"]
pub const amdxdna_power_mode_type_POWER_MODE_LOW: amdxdna_power_mode_type = 1;
#[doc = "< Set frequency to medium DPM"]
pub const amdxdna_power_mode_type_POWER_MODE_MEDIUM: amdxdna_power_mode_type = 2;
#[doc = "< Set frequency to highest DPM"]
pub const amdxdna_power_mode_type_POWER_MODE_HIGH: amdxdna_power_mode_type = 3;
#[doc = "< More power, more performance"]
pub const amdxdna_power_mode_type_POWER_MODE_TURBO: amdxdna_power_mode_type = 4;
pub type amdxdna_power_mode_type = ::std::os::raw::c_uint;
#[doc = " struct amdxdna_drm_get_power_mode - Get the power mode of the AIE hardware\n @power_mode: The sensor type from enum amdxdna_power_mode_type\n @pad: MBZ."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_get_power_mode {
    pub power_mode: __u8,
    pub pad: [__u8; 7usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_get_power_mode"]
        [::std::mem::size_of::<amdxdna_drm_get_power_mode>() - 8usize];
    ["Alignment of amdxdna_drm_get_power_mode"]
        [::std::mem::align_of::<amdxdna_drm_get_power_mode>() - 1usize];
    ["Offset of field: amdxdna_drm_get_power_mode::power_mode"]
        [::std::mem::offset_of!(amdxdna_drm_get_power_mode, power_mode) - 0usize];
    ["Offset of field: amdxdna_drm_get_power_mode::pad"]
        [::std::mem::offset_of!(amdxdna_drm_get_power_mode, pad) - 1usize];
};
#[doc = " struct amdxdna_drm_query_firmware_version - Query the version of the firmware\n @major: The major version number\n @minor: The minor version number\n @patch: The patch level version number\n @build: The build ID"]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_query_firmware_version {
    pub major: __u32,
    pub minor: __u32,
    pub patch: __u32,
    pub build: __u32,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_query_firmware_version"]
        [::std::mem::size_of::<amdxdna_drm_query_firmware_version>() - 16usize];
    ["Alignment of amdxdna_drm_query_firmware_version"]
        [::std::mem::align_of::<amdxdna_drm_query_firmware_version>() - 4usize];
    ["Offset of field: amdxdna_drm_query_firmware_version::major"]
        [::std::mem::offset_of!(amdxdna_drm_query_firmware_version, major) - 0usize];
    ["Offset of field: amdxdna_drm_query_firmware_version::minor"]
        [::std::mem::offset_of!(amdxdna_drm_query_firmware_version, minor) - 4usize];
    ["Offset of field: amdxdna_drm_query_firmware_version::patch"]
        [::std::mem::offset_of!(amdxdna_drm_query_firmware_version, patch) - 8usize];
    ["Offset of field: amdxdna_drm_query_firmware_version::build"]
        [::std::mem::offset_of!(amdxdna_drm_query_firmware_version, build) - 12usize];
};
#[doc = " struct amdxdna_drm_get_force_preempt_state - Get force preemption state.\n @force_preempt_state: 1 implies force preemption is enabled.\n                       0 implies disabled.\n @pad: MBZ."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_get_force_preempt_state {
    pub state: __u8,
    pub pad: [__u8; 7usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_get_force_preempt_state"]
        [::std::mem::size_of::<amdxdna_drm_get_force_preempt_state>() - 8usize];
    ["Alignment of amdxdna_drm_get_force_preempt_state"]
        [::std::mem::align_of::<amdxdna_drm_get_force_preempt_state>() - 1usize];
    ["Offset of field: amdxdna_drm_get_force_preempt_state::state"]
        [::std::mem::offset_of!(amdxdna_drm_get_force_preempt_state, state) - 0usize];
    ["Offset of field: amdxdna_drm_get_force_preempt_state::pad"]
        [::std::mem::offset_of!(amdxdna_drm_get_force_preempt_state, pad) - 1usize];
};
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_AIE_STATUS: amdxdna_drm_get_param = 0;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_AIE_METADATA: amdxdna_drm_get_param = 1;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_AIE_VERSION: amdxdna_drm_get_param = 2;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_CLOCK_METADATA: amdxdna_drm_get_param = 3;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_SENSORS: amdxdna_drm_get_param = 4;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_HW_CONTEXTS: amdxdna_drm_get_param = 5;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_READ_AIE_MEM: amdxdna_drm_get_param = 6;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_READ_AIE_REG: amdxdna_drm_get_param = 7;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_FIRMWARE_VERSION: amdxdna_drm_get_param = 8;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_GET_POWER_MODE: amdxdna_drm_get_param = 9;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_QUERY_TELEMETRY: amdxdna_drm_get_param = 10;
pub const amdxdna_drm_get_param_DRM_AMDXDNA_GET_FORCE_PREEMPT_STATE: amdxdna_drm_get_param = 11;
pub type amdxdna_drm_get_param = ::std::os::raw::c_uint;
#[doc = " struct amdxdna_drm_get_info - Get some information from the AIE hardware.\n @param: Value in enum amdxdna_drm_get_param. Specifies the structure passed in the buffer.\n @buffer_size: Size of the input buffer. Size needed/written by the kernel.\n @buffer: A structure specified by the param struct member."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_get_info {
    pub param: __u32,
    pub buffer_size: __u32,
    pub buffer: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_get_info"][::std::mem::size_of::<amdxdna_drm_get_info>() - 16usize];
    ["Alignment of amdxdna_drm_get_info"][::std::mem::align_of::<amdxdna_drm_get_info>() - 8usize];
    ["Offset of field: amdxdna_drm_get_info::param"]
        [::std::mem::offset_of!(amdxdna_drm_get_info, param) - 0usize];
    ["Offset of field: amdxdna_drm_get_info::buffer_size"]
        [::std::mem::offset_of!(amdxdna_drm_get_info, buffer_size) - 4usize];
    ["Offset of field: amdxdna_drm_get_info::buffer"]
        [::std::mem::offset_of!(amdxdna_drm_get_info, buffer) - 8usize];
};
#[doc = " struct amdxdna_drm_set_power_mode - Set the power mode of the AIE hardware\n @power_mode: The sensor type from enum amdxdna_power_mode_type\n @pad: MBZ."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_set_power_mode {
    pub power_mode: __u8,
    pub pad: [__u8; 7usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_set_power_mode"]
        [::std::mem::size_of::<amdxdna_drm_set_power_mode>() - 8usize];
    ["Alignment of amdxdna_drm_set_power_mode"]
        [::std::mem::align_of::<amdxdna_drm_set_power_mode>() - 1usize];
    ["Offset of field: amdxdna_drm_set_power_mode::power_mode"]
        [::std::mem::offset_of!(amdxdna_drm_set_power_mode, power_mode) - 0usize];
    ["Offset of field: amdxdna_drm_set_power_mode::pad"]
        [::std::mem::offset_of!(amdxdna_drm_set_power_mode, pad) - 1usize];
};
#[doc = " struct amdxdna_drm_set_force_preempt_state - set force preemption state\n @force_preempt_state: 1 implies force preemption is enabled.\n                       0 implies disabled\n @pad: MBZ."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_set_force_preempt_state {
    pub state: __u8,
    pub pad: [__u8; 7usize],
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_set_force_preempt_state"]
        [::std::mem::size_of::<amdxdna_drm_set_force_preempt_state>() - 8usize];
    ["Alignment of amdxdna_drm_set_force_preempt_state"]
        [::std::mem::align_of::<amdxdna_drm_set_force_preempt_state>() - 1usize];
    ["Offset of field: amdxdna_drm_set_force_preempt_state::state"]
        [::std::mem::offset_of!(amdxdna_drm_set_force_preempt_state, state) - 0usize];
    ["Offset of field: amdxdna_drm_set_force_preempt_state::pad"]
        [::std::mem::offset_of!(amdxdna_drm_set_force_preempt_state, pad) - 1usize];
};
pub const amdxdna_drm_set_param_DRM_AMDXDNA_SET_POWER_MODE: amdxdna_drm_set_param = 0;
pub const amdxdna_drm_set_param_DRM_AMDXDNA_WRITE_AIE_MEM: amdxdna_drm_set_param = 1;
pub const amdxdna_drm_set_param_DRM_AMDXDNA_WRITE_AIE_REG: amdxdna_drm_set_param = 2;
pub const amdxdna_drm_set_param_DRM_AMDXDNA_SET_FORCE_PREEMPT: amdxdna_drm_set_param = 3;
pub type amdxdna_drm_set_param = ::std::os::raw::c_uint;
#[doc = " struct amdxdna_drm_set_state - Set the state of some component within the AIE hardware.\n @param: Value in enum amdxdna_drm_set_param. Specifies the structure passed in the buffer.\n @buffer_size: Size of the input buffer.\n @buffer: A structure specified by the param struct member."]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct amdxdna_drm_set_state {
    pub param: __u32,
    pub buffer_size: __u32,
    pub buffer: __u64,
}
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
const _: () = {
    ["Size of amdxdna_drm_set_state"][::std::mem::size_of::<amdxdna_drm_set_state>() - 16usize];
    ["Alignment of amdxdna_drm_set_state"]
        [::std::mem::align_of::<amdxdna_drm_set_state>() - 8usize];
    ["Offset of field: amdxdna_drm_set_state::param"]
        [::std::mem::offset_of!(amdxdna_drm_set_state, param) - 0usize];
    ["Offset of field: amdxdna_drm_set_state::buffer_size"]
        [::std::mem::offset_of!(amdxdna_drm_set_state, buffer_size) - 4usize];
    ["Offset of field: amdxdna_drm_set_state::buffer"]
        [::std::mem::offset_of!(amdxdna_drm_set_state, buffer) - 8usize];
};
