XenevaOS
Loading...
Searching...
No Matches
Public Attributes | List of all members
drm_i915_gem_mmap_offset Struct Reference

#include <i915_drm.h>

Public Attributes

__u32 handle
 
__u32 pad
 
__u64 offset
 
__u64 flags
 
__u64 extensions
 

Detailed Description

struct drm_i915_gem_mmap_offset - Retrieve an offset so we can mmap this buffer object.

This struct is passed as argument to the DRM_IOCTL_I915_GEM_MMAP_OFFSET ioctl, and is used to retrieve the fake offset to mmap an object specified by &handle.

The legacy way of using DRM_IOCTL_I915_GEM_MMAP is removed on gen12+. DRM_IOCTL_I915_GEM_MMAP_GTT is an older supported alias to this struct, but will behave as setting the &extensions to 0, and &flags to I915_MMAP_OFFSET_GTT.

Member Data Documentation

◆ extensions

__u64 drm_i915_gem_mmap_offset::extensions

@extensions: Zero-terminated chain of extensions.

No current extensions defined; mbz.

◆ flags

__u64 drm_i915_gem_mmap_offset::flags

@flags: Flags for extended behaviour.

It is mandatory that one of the MMAP_OFFSET types should be included:

  • I915_MMAP_OFFSET_GTT: Use mmap with the object bound to GTT. (Write-Combined)
  • I915_MMAP_OFFSET_WC: Use Write-Combined caching.
  • I915_MMAP_OFFSET_WB: Use Write-Back caching.
  • I915_MMAP_OFFSET_FIXED: Use object placement to determine caching.

On devices with local memory I915_MMAP_OFFSET_FIXED is the only valid type. On devices without local memory, this caching mode is invalid.

As caching mode when specifying I915_MMAP_OFFSET_FIXED, WC or WB will be used, depending on the object placement on creation. WB will be used when the object can only exist in system memory, WC otherwise.

◆ handle

__u32 drm_i915_gem_mmap_offset::handle

@handle: Handle for the object being mapped.

◆ offset

__u64 drm_i915_gem_mmap_offset::offset

@offset: The fake offset to use for subsequent mmap call

This is a fixed-size type for 32/64 compatibility.

◆ pad

__u32 drm_i915_gem_mmap_offset::pad

@pad: Must be zero


The documentation for this struct was generated from the following file: