STRUCT DRM_PANTHOR_TIMESTAMP_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct drm_panthor_timestamp_info β€” the timestamp info struct, aka the glow-up cheat sheet for everything time-y on your GPU. This is a page straight out of the Kernel API Manual, bestie, and it's about to be your new fave.


✨ SYNOPSIS ✨

okay so here's the whole vibe, literally the entire struct, no cap:

struct drm_panthor_timestamp_info {
    __u64 timestamp_frequency;
    __u64 current_timestamp;
    __u64 timestamp_offset;
    __u32 flags;
    __u32 duration_nsec;
    __u64 cycle_count;
    __u64 cpu_timestamp_sec;
    __u64 cpu_timestamp_nsec;
 };

πŸŽ€ MEMBERS πŸŽ€

one field at a time, bestie, we're going through them all πŸ’…

  • timestamp_frequency β€” how fast the timestamp timer ticks, fr. Or 0 if nobody knows. shrug πŸ™ˆ
  • current_timestamp β€” the GPU timestamp right now, like live, in this moment, main character energy ⭐
  • timestamp_offset β€” the offset of the GPU timestamp timer. the little shift it's living with ✨
  • flags β€” a bitmask of drm_panthor_timestamp_info_flags.

If it's set to 0, that gets interpreted as: DRM_PANTHOR_TIMESTAMP_GPU | DRM_PANTHOR_TIMESTAMP_GPU_OFFSET | DRM_PANTHOR_TIMESTAMP_FREQ

⚠️ heads up bestie: these next flags are exclusive to each other β€” only one can be used at a time, no mixing, no blending, periodt:
  • DRM_PANTHOR_TIMESTAMP_CPU_NONE
  • DRM_PANTHOR_TIMESTAMP_CPU_MONOTONIC
  • DRM_PANTHOR_TIMESTAMP_CPU_MONOTONIC_RAW
  • duration_nsec β€” how long the time query took. the duration, bestie ⏱️
  • cycle_count β€” the value of GPU_CYCLE_COUNT. that's it, that's the field πŸ”₯
  • cpu_timestamp_sec β€” the seconds part of the CPU timestamp πŸ“
  • cpu_timestamp_nsec β€” the nanoseconds part of the CPU timestamp. tiny little sliver of time 🧚

🌸 DESCRIPTION 🌸

It's a struct that groups up all the queryable info relating to the GPU timestamp. like a little friend group of fields, all hanging out together in one place 🫢 one struct to hold them all, iconic behavior honestly πŸ‘‘


πŸ¦‹ SEE ALSO πŸ¦‹

the whole extended universe, in order, nothing skipped, iykyk:

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_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), 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 lil drop came from ./include/uapi/drm, dated October 2026 β€” go read the source, it slays, mwah πŸŽ€βœ¨πŸ’…

πŸ“¦ where this page comes from