include/uapi/drm/vmwgfx_drm.h
Source file repositories/reference/linux-study-clean/include/uapi/drm/vmwgfx_drm.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/drm/vmwgfx_drm.h- Extension
.h- Size
- 37609 bytes
- Lines
- 1295
- Domain
- Repository Root And Misc
- Bucket
- include
- Inferred role
- Repository Root And Misc: implementation source
- Status
- source implementation candidate
Why This File Exists
Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
drm.h
Detected Declarations
struct drm_vmw_getparam_argstruct drm_vmw_context_argstruct drm_vmw_surface_create_reqstruct drm_vmw_surface_argstruct drm_vmw_sizestruct drm_vmw_execbuf_argstruct drm_vmw_fence_repstruct drm_vmw_alloc_bo_reqstruct drm_vmw_bo_repstruct drm_vmw_rectstruct drm_vmw_control_stream_argstruct drm_vmw_cursor_bypass_argstruct drm_vmw_stream_argstruct drm_vmw_get_3d_cap_argstruct drm_vmw_fence_wait_argstruct drm_vmw_fence_signaled_argstruct drm_vmw_fence_argstruct drm_vmw_event_fencestruct drm_vmw_fence_event_argstruct drm_vmw_present_argstruct drm_vmw_present_readback_argstruct drm_vmw_update_layout_argstruct drm_vmw_shader_create_argstruct drm_vmw_shader_argstruct drm_vmw_gb_surface_create_reqstruct drm_vmw_gb_surface_create_repstruct drm_vmw_gb_surface_ref_repstruct drm_vmw_synccpu_argstruct drm_vmw_handle_close_argstruct drm_vmw_gb_surface_create_ext_reqstruct drm_vmw_gb_surface_ref_ext_repstruct drm_vmw_msg_argstruct drm_vmw_mksstat_add_argstruct drm_vmw_mksstat_remove_argenum drm_vmw_handle_typeenum drm_vmw_shader_typeenum drm_vmw_surface_flagsenum drm_vmw_synccpu_flagsenum drm_vmw_synccpu_openum drm_vmw_extended_contextenum drm_vmw_surface_version
Annotated Snippet
struct drm_vmw_getparam_arg {
__u64 value;
__u32 param;
__u32 pad64;
};
/*************************************************************************/
/**
* DRM_VMW_CREATE_CONTEXT - Create a host context.
*
* Allocates a device unique context id, and queues a create context command
* for the host. Does not wait for host completion.
*/
/**
* struct drm_vmw_context_arg
*
* @cid: Device unique context ID.
*
* Output argument to the DRM_VMW_CREATE_CONTEXT Ioctl.
* Input argument to the DRM_VMW_UNREF_CONTEXT Ioctl.
*/
struct drm_vmw_context_arg {
__s32 cid;
__u32 pad64;
};
/*************************************************************************/
/**
* DRM_VMW_UNREF_CONTEXT - Create a host context.
*
* Frees a global context id, and queues a destroy host command for the host.
* Does not wait for host completion. The context ID can be used directly
* in the command stream and shows up as the same context ID on the host.
*/
/*************************************************************************/
/**
* DRM_VMW_CREATE_SURFACE - Create a host suface.
*
* Allocates a device unique surface id, and queues a create surface command
* for the host. Does not wait for host completion. The surface ID can be
* used directly in the command stream and shows up as the same surface
* ID on the host.
*/
/**
* struct drm_wmv_surface_create_req
*
* @flags: Surface flags as understood by the host.
* @format: Surface format as understood by the host.
* @mip_levels: Number of mip levels for each face.
* An unused face should have 0 encoded.
* @size_addr: Address of a user-space array of sruct drm_vmw_size
* cast to an __u64 for 32-64 bit compatibility.
* The size of the array should equal the total number of mipmap levels.
* @shareable: Boolean whether other clients (as identified by file descriptors)
* may reference this surface.
* @scanout: Boolean whether the surface is intended to be used as a
* scanout.
*
* Input data to the DRM_VMW_CREATE_SURFACE Ioctl.
* Output data from the DRM_VMW_REF_SURFACE Ioctl.
*/
struct drm_vmw_surface_create_req {
__u32 flags;
__u32 format;
__u32 mip_levels[DRM_VMW_MAX_SURFACE_FACES];
__u64 size_addr;
__s32 shareable;
__s32 scanout;
};
/**
* struct drm_wmv_surface_arg
*
* @sid: Surface id of created surface or surface to destroy or reference.
* @handle_type: Handle type for DRM_VMW_REF_SURFACE Ioctl.
*
* Output data from the DRM_VMW_CREATE_SURFACE Ioctl.
* Input argument to the DRM_VMW_UNREF_SURFACE Ioctl.
* Input argument to the DRM_VMW_REF_SURFACE Ioctl.
*/
struct drm_vmw_surface_arg {
__s32 sid;
enum drm_vmw_handle_type handle_type;
};
Annotation
- Immediate include surface: `drm.h`.
- Detected declarations: `struct drm_vmw_getparam_arg`, `struct drm_vmw_context_arg`, `struct drm_vmw_surface_create_req`, `struct drm_vmw_surface_arg`, `struct drm_vmw_size`, `struct drm_vmw_execbuf_arg`, `struct drm_vmw_fence_rep`, `struct drm_vmw_alloc_bo_req`, `struct drm_vmw_bo_rep`, `struct drm_vmw_rect`.
- Atlas domain: Repository Root And Misc / include.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.