ENUM DRM_PANTHOR_BO_EXTRA_FLAGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum drm_panthor_bo_extra_flags β€” Kernel API Manual ✨

okay bestie, welcome to the page for enum drm_panthor_bo_extra_flags, coming at you live from the Kernel API Manual πŸŽ€ this one's a little enum that carries the extra lil' flags you get back when you do a BO_QUERY_INFO request. yes, that's literally its whole job and it's iconic for it 🫢


🌸 NAME 🌸

enum drm_panthor_bo_extra_flags β€” the set of flags that gets returned when you send a BO_QUERY_INFO request πŸ’–


✨ SYNOPSIS ✨

enum drm_panthor_bo_extra_flags {
    DRM_PANTHOR_BO_IS_IMPORTED

};

πŸ¦‹ Constants πŸ¦‹

  • DRM_PANTHOR_BO_IS_IMPORTED β€” this BO was imported from an external driver, periodt πŸ‘‘

lowkey important detail here: imported dma-buf handles are not flagged as imported if panthor itself is the one who exported them. nope. only buffers that actually came from other drivers count β€” think dma heaps, other GPUs, display controllers, V4L, that whole crowd πŸŒ€

and bestie, another thing you really need to know: every single imported BO is mapped cached, so it can't be treated as IO-coherent even if the GPU itself is. 😭 what that means in practice is they need explicit syncs, and those syncs have to go through the DRM_PANTHOR_BO_SYNC ioctl. (userland cache maintenance is not allowed in that case, because extra operations might be needed to make your changes visible to the CPU/device β€” like buffer migration, when the exporter is a GPU with its own VRAM. yeah, it's giving ✨complicated✨.)


πŸ’œ Description πŸ’œ

these are the flags that reflect BO properties that aren't directly coming from the flags you passed at creation time β€” plus info about BOs that got imported from other drivers. iykyk 🌈


πŸ‘‘ SEE ALSO πŸ‘‘

start with the kernel file itself: ./include/uapi/drm/panthor_drm.h β€” and then the whole squad, no cap:

  • 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_dev_query(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)
  • struct drm_panthor_bo_query_info(9)
  • DRM_IOCTL_PANTHOR(9)

that's the whole page bestie, go forth and query your BOs responsibly πŸ§šπŸ’« this one shipped from ./include/uapi/drm, dated October 2026 β€” mwah, love u, bye πŸ’…πŸ“

πŸ“¦ where this page comes from