STRUCT DRM_PVR_IOCTL_DEV_QUERY_ARGS(9)
β¨ NAME β¨
struct drm_pvr_ioctl_dev_query_args β literally the args struct for %DRM_IOCTL_PVR_DEV_QUERY, bestie π
So this is a page out of the Kernel API Manual, and ngl it's a short one but it's important, so pay attention π«Ά
πΈ SYNOPSIS πΈ
struct drm_pvr_ioctl_dev_query_args {
__u32 type;
__u32 size;
__u64 pointer;
};
okay so three fields, that's it, that's the whole vibe π
π¦ Members π¦
π type
Type of query and output struct. See enum drm_pvr_dev_query for the full menu, iykyk β¨
π size
Size of the receiving struct, see type π
And here's the slay part: after a successful call this gets updated to the written byte length π₯ You can also use it to get the minimum byte length (peep pointer below). Why does that matter? Because it lets additional fields be appended to the structs in future β future-proofing, we love to see it π
π pointer
Pointer to struct type π«
It must be large enough to contain size bytes, no cap. And if pointer is NULL, the expected size will just be returned in the size field and no other data gets written β so it's giving "just window shopping, not buying" π
π SEE ALSO π
- Kernel file
./include/uapi/drm/pvr_drm.hPowerVR UAPI(9) struct drm_pvr_obj_array(9)DRM_PVR_OBJ_ARRAY(9)- PowerVR IOCTL interface(9)
PVR_IOCTL(9)- PowerVR IOCTL DEV_QUERY interface(9)
struct drm_pvr_dev_query_gpu_info(9)struct drm_pvr_dev_query_runtime_info(9)struct drm_pvr_dev_query_quirks(9)struct drm_pvr_dev_query_enhancements(9)enum drm_pvr_heap_id(9)struct drm_pvr_heap(9)struct drm_pvr_dev_query_heap_info(9)enum drm_pvr_static_data_area_usage(9)struct drm_pvr_static_data_area(9)struct drm_pvr_dev_query_static_data_areas(9)enum drm_pvr_dev_query(9)- PowerVR IOCTL CREATE_BO interface(9)
- Flags for CREATE_BO(9)
struct drm_pvr_ioctl_create_bo_args(9)- PowerVR IOCTL GET_BO_MMAP_OFFSET interface(9)
struct drm_pvr_ioctl_get_bo_mmap_offset_args(9)- PowerVR IOCTL CREATE_VM_CONTEXT and DESTROY_VM_CONTEXT interfaces(9)
struct drm_pvr_ioctl_create_vm_context_args(9)struct drm_pvr_ioctl_destroy_vm_context_args(9)- PowerVR IOCTL VM_MAP and VM_UNMAP interfaces(9)
struct drm_pvr_ioctl_vm_map_args(9)struct drm_pvr_ioctl_vm_unmap_args(9)- PowerVR IOCTL CREATE_CONTEXT and DESTROY_CONTEXT interfaces(9)
enum drm_pvr_ctx_priority(9)enum drm_pvr_ctx_type(9)struct drm_pvr_ioctl_create_context_args(9)struct drm_pvr_ioctl_destroy_context_args(9)- PowerVR IOCTL CREATE_FREE_LIST and DESTROY_FREE_LIST interfaces(9)
struct drm_pvr_ioctl_create_free_list_args(9)struct drm_pvr_ioctl_destroy_free_list_args(9)- PowerVR IOCTL CREATE_HWRT_DATASET and DESTROY_HWRT_DATASET interfaces(9)
struct drm_pvr_create_hwrt_geom_data_args(9)struct drm_pvr_create_hwrt_rt_data_args(9)struct drm_pvr_ioctl_create_hwrt_dataset_args(9)struct drm_pvr_ioctl_destroy_hwrt_dataset_args(9)- PowerVR IOCTL SUBMIT_JOBS interface(9)
- Flags for the
drm_pvr_sync_opobject.(9) struct drm_pvr_sync_op(9)- Flags for SUBMIT_JOB ioctl geometry command.(9)
- Flags for SUBMIT_JOB ioctl fragment command.(9)
- Flags for SUBMIT_JOB ioctl compute command.(9)
- Flags for SUBMIT_JOB ioctl transfer command.(9)
enum drm_pvr_job_type(9)struct drm_pvr_hwrt_data_ref(9)struct drm_pvr_job(9)struct drm_pvr_ioctl_submit_jobs_args(9)
and that's the whole page, periodt π This lil cutie lives in ./include/uapi/drm and it's stamped October 2026 β go forth and query your devices, bestie, you've got this πβπ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms