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

#include <xe_drm.h>

Public Attributes

__u64 extensions
 
__u32 exec_queue_id
 
__u32 num_syncs
 
__u64 syncs
 
__u64 address
 
__u16 num_batch_buffer
 
__u16 pad [3]
 
__u64 reserved [2]
 

Detailed Description

struct drm_xe_exec - Input of &DRM_IOCTL_XE_EXEC

This is an example to use &struct drm_xe_exec for execution of the object at BIND_ADDRESS (see example in &struct drm_xe_vm_bind) by an exec_queue (see example in &struct drm_xe_exec_queue_create). It can be synchronized by using the example provided for &struct drm_xe_sync.

.. code-block:: C

struct drm_xe_exec exec = {
    .exec_queue_id = exec_queue,
    .syncs = &sync,
    .num_syncs = 1,
    .address = BIND_ADDRESS,
    .num_batch_buffer = 1,
};
ioctl(fd, DRM_IOCTL_XE_EXEC, &exec);

Member Data Documentation

◆ address

__u64 drm_xe_exec::address

@address: address of batch buffer if num_batch_buffer == 1 or an array of batch buffer addresses

◆ exec_queue_id

__u32 drm_xe_exec::exec_queue_id

@exec_queue_id: Exec queue ID for the batch buffer

◆ extensions

__u64 drm_xe_exec::extensions

@extensions: Pointer to the first extension struct, if any

◆ num_batch_buffer

__u16 drm_xe_exec::num_batch_buffer

@num_batch_buffer: number of batch buffer in this exec, must match the width of the engine

◆ num_syncs

__u32 drm_xe_exec::num_syncs

@num_syncs: Amount of struct drm_xe_sync in array.

◆ pad

__u16 drm_xe_exec::pad[3]

@pad: MBZ

◆ reserved

__u64 drm_xe_exec::reserved[2]

@reserved: Reserved

◆ syncs

__u64 drm_xe_exec::syncs

@syncs: Pointer to struct drm_xe_sync array.


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