STRUCT DRM_PANTHOR_SET_USER_MMIO_OFFSET(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct drm_panthor_set_user_mmio_offset πŸ’…

okay bestie, welcome to the Kernel API Manual ✨ β€” this is struct drm_..._mmio_offset(9) (the page title truncates it, but its actual government name is struct drm_panthor_set_user_mmio_offset, iykyk 🫢).


🌸 NAME 🌸

struct drm_panthor_set_user_mmio_offset β€” literally just the arguments you pass to DRM_IOCTL_PANTHOR_SET_USER_MMIO_OFFSET. That's the whole vibe. πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

struct drm_panthor_set_user_mmio_offset {
    __u64 offset;
};

one field. one icon. no notes. πŸ’…


🧚 Members 🧚

  • offset β€” the user MMIO offset you want to use, bestie. slay.

no cap, it must be either DRM_PANTHOR_USER_MMIO_OFFSET_32BIT or DRM_PANTHOR_USER_MMIO_OFFSET_64BIT. those are the only two options, periodt. πŸ™ˆ

the move here is to use DRM_PANTHOR_USER_MMIO_OFFSET β€” it picks OFFSET_32BIT or OFFSET_64BIT for you based on the size of an unsigned long πŸ’– β€” unless you have a very good reason to overrule that decision. like, a genuinely good one. not a "trust me bro" one. πŸ‘‘


πŸ”₯ Description πŸ”₯

so this ioctl is only really useful if you wanna support userspace CPU emulation environments where the size of an unsigned long doesn't match between the host and the guest architectures. that's the niche. that's the whole assignment. it's giving very specific tool for a very specific job πŸ¦‹


⭐ SEE ALSO ⭐

the whole extended friend group, in order, no one gets left out πŸ’œ:

  • 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_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)
  • 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)

ok that's the whole page, bestie, you ate that πŸ“ go forth and set your MMIO offset correctly the first time, ngl.

mwah πŸ’‹ this lil gem lives in ./include/uapi/drm, stamped October 2026, and it answers to struct drm_..._mmio_offset(9) β€” iykyk, take care of her πŸ‘‘

πŸ“¦ where this page comes from