STRUCT DRM_PANTHOR_DEV_QUERY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ struct drm_panthor_dev_query(9) β€” NAME πŸŽ€

okay so bestie, welcome to the struct drm_panthor_dev_query page from the Kernel API Manual β€” this is the struct for the arguments you pass to DRM_PANTHOR_IOCTL_DEV_QUERY, and honestly? it's giving "three fields and a dream". ✨


🌸 SYNOPSIS 🌸

like, here's the whole thing, it's tiny, we stan a compact struct:

struct drm_panthor_dev_query {
    __u32 type;
    __u32 size;
    __u64 pointer;
 };

πŸ¦‹ Members πŸ¦‹

  • type β€” the query type, iykyk (see drm_panthor_dev_query_type). 🌈
  • size β€” the size of the type being queried. fr fr, that's it.

ngl this part is kind of the main character: if pointer is NULL, size gets updated by the driver to provide the output structure size. if pointer is not NULL, the driver will only copy min(size, actual_structure_size) bytes to the pointer, and update the size accordingly. the whole point? this allows us to extend query types without breaking userspace. slay, backwards compatibility ate πŸ’…

  • pointer β€” a user pointer to a query type struct. πŸ‘‘

pointer can be NULL, in which case nothing is copied, but the actual structure size is returned. if it's not NULL, it must point to a location that's large enough to hold size bytes. > bestie please make sure it's actually big enough, the kernel is not gonna vibe-check your buffer for you 😭


✨ SEE ALSO ✨

okay this list is a whole friend group, buckle up 🫢

  • Kernel file ./include/uapi/drm/panthor_drm.h
  • Introduction(9)
  • MMIO regions exposed to userspace.(9)
  • IOCTL IDs(9)
  • IOCTL arguments(9)
  • struct drm_panthor_obj_array(9)
  • DRM_PANTHOR_OBJ_ARRAY(9)
  • enum drm_panthor_sync_op_flags(9)
  • struct drm_panthor_sync_op(9)
  • enum drm_panthor_dev_query_type(9)
  • enum drm_panthor_gpu_coherency(9)
  • struct drm_panthor_gpu_info(9)
  • struct drm_panthor_csif_info(9)
  • enum drm_panthor_timestamp_info_flags(9)
  • struct drm_panthor_timestamp_info(9)
  • struct drm_panthor_mmu_info(9)
  • struct drm_panthor_group_priorities_info(9)
  • struct drm_panthor_vm_create(9)
  • struct drm_panthor_vm_destroy(9)
  • enum drm_panthor_vm_bind_op_flags(9)
  • struct drm_panthor_vm_bind_op(9)
  • enum drm_panthor_vm_bind_flags(9)
  • struct drm_panthor_vm_bind(9)
  • enum drm_panthor_vm_state(9)
  • struct drm_panthor_vm_get_state(9)
  • enum drm_panthor_bo_flags(9)
  • struct drm_panthor_bo_create(9)
  • struct drm_panthor_bo_mmap_offset(9)
  • struct drm_panthor_queue_create(9)
  • enum drm_panthor_group_priority(9)
  • struct drm_panthor_group_create(9)
  • struct drm_panthor_group_destroy(9)
  • struct drm_panthor_queue_submit(9)
  • struct drm_panthor_group_submit(9)
  • enum drm_panthor_group_state_flags(9)
  • struct drm_panthor_group_get_state(9)
  • struct drm_panthor_tiler_heap_create(9)
  • struct drm_panthor_tiler_heap_destroy(9)
  • struct drm_panthor_bo_set_label(9)
  • struct drm_panthor_set_user_mmio_offset(9)
  • enum drm_panthor_bo_sync_op_type(9)
  • struct drm_panthor_bo_sync_op(9)
  • struct drm_panthor_bo_sync(9)
  • enum drm_panthor_bo_extra_flags(9)
  • struct drm_panthor_bo_query_info(9)
  • DRM_IOCTL_PANTHOR(9)

and that's the whole page, bestie!! πŸ’– this one came from ./include/uapi/drm, dated October 2026, and it's literally all yours now. go query some dev info, you iconic main character πŸ§šβ€β™€οΈβ­πŸŽ€

πŸ“¦ where this page comes from