|
XenevaOS
|
#include <nouveau_drm.h>
Public Attributes | |
| __u32 | op |
| __u32 | flags |
| __u32 | handle |
| __u32 | pad |
| __u64 | addr |
| __u64 | bo_offset |
| __u64 | range |
struct drm_nouveau_vm_bind_op - VM_BIND operation
This structure represents a single VM_BIND operation. UMDs should pass an array of this structure via struct drm_nouveau_vm_bind's &op_ptr field.
| __u64 drm_nouveau_vm_bind_op::addr |
@addr:
the address the VA space region or (memory backed) mapping should be mapped to
| __u64 drm_nouveau_vm_bind_op::bo_offset |
@bo_offset: the offset within the BO backing the mapping
| __u32 drm_nouveau_vm_bind_op::flags |
@flags: the flags for a &drm_nouveau_vm_bind_op
Supported values:
DRM_NOUVEAU_VM_BIND_SPARSE - Indicates that an allocated VA space region should be sparse.
| __u32 drm_nouveau_vm_bind_op::handle |
@handle: the handle of the DRM GEM object to map
| __u32 drm_nouveau_vm_bind_op::op |
@op: the operation type
Supported values:
DRM_NOUVEAU_VM_BIND_OP_MAP - Map a GEM object to the GPU's VA space. Optionally, the &DRM_NOUVEAU_VM_BIND_SPARSE flag can be passed to instruct the kernel to create sparse mappings for the given range.
DRM_NOUVEAU_VM_BIND_OP_UNMAP - Unmap an existing mapping in the GPU's VA space. If the region the mapping is located in is a sparse region, new sparse mappings are created where the unmapped (memory backed) mapping was mapped previously. To remove a sparse region the &DRM_NOUVEAU_VM_BIND_SPARSE must be set.
| __u32 drm_nouveau_vm_bind_op::pad |
@pad: 32 bit padding, should be 0
| __u64 drm_nouveau_vm_bind_op::range |
@range: the size of the requested mapping in bytes