DRM_CLIENT_...LOR_PIPELINE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… DRM_CLIENT_CAP_PLANE_COLOR_PIPELINE(9) πŸ’…

okay bestie, so this page is literally the drm.h header from the kernel β€” ./tools/perf/trace/beauty/include/uapi/drm/drm.h β€” and it's all about one lil client cap. buckle up πŸŽ€


✨ NAME ✨

DRM_CLIENT_CAP_PLANE_COLOR_PIPELINE β€” yeah that's it, that's the whole name. no cap, the og page left it at that πŸ’€


🌸 SYNOPSIS 🌸

DRM_CLIENT_CAP_PLANE_COLOR_PIPELINE

πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the vibe: if you set this bad boy to 1, the DRM core will allow setting the COLOR_PIPELINE property on a drm_plane, as well as drm_colorop properties. slay πŸ’… the kernel is literally letting you paint your planes.

but β€” and this is the important part, bestie, don't come for me β€” once this client cap is set, setting these plane properties will be rejected:

  • COLOR_ENCODING
  • COLOR_RANGE

so like, pick your lane. it's giving "you can't sit with both tables" 😭

also fr fr: the client must enable DRM_CLIENT_CAP_ATOMIC first. no atomic, no party. periodt.

πŸ‘‘ SEE ALSO πŸ‘‘

the whole friend group, in order, no skip:

Kernel file ./tools/perf/trace/beauty/include/uapi/drm/drm.h struct drm_gem_close(9), struct drm_gem_flink(9), struct drm_gem_open(9), struct drm_gem_change_handle(9), DRM_CAP_DUMB_BUFFER(9), DRM_CAP_VBLANK_HIGH_CRTC(9), DRM_CAP_DUMB_PREFERRED_DEPTH(9), DRM_CAP_DUMB_PREFER_SHADOW(9), DRM_CAP_PRIME(9), DRM_PRIME_CAP_IMPORT(9), DRM_PRIME_CAP_EXPORT(9), DRM_CAP_TIMESTAMP_MONOTONIC(9), DRM_CAP_ASYNC_PAGE_FLIP(9), DRM_CAP_CURSOR_WIDTH(9), DRM_CAP_CURSOR_HEIGHT(9), DRM_CAP_ADDFB2_MODIFIERS(9), DRM_CAP_PAGE_FLIP_TARGET(9), DRM_CAP_CRTC_IN_VBLANK_EVENT(9), DRM_CAP_SYNCOBJ(9), DRM_CAP_SYNCOBJ_TIMELINE(9), DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP(9), DRM_CLIENT_CAP_STEREO_3D(9), DRM_CLIENT_CAP_UNIVERSAL_PLANES(9), DRM_CLIENT_CAP_ATOMIC(9), DRM_CLIENT_CAP_ASPECT_RATIO(9), DRM_CLIENT_CAP_WRITEBACK_CONNECTORS(9), DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT(9), struct drm_syncobj_eventfd(9), DRM_IOCTL_GEM_CLOSE(9), DRM_IOCTL_PRIME_HANDLE_TO_FD(9), DRM_IOCTL_PRIME_FD_TO_HANDLE(9), DRM_IOCTL_MODE_RMFB(9), DRM_IOCTL_MODE_CREATE_DUMB(9), DRM_IOCTL_MODE_GETFB2(9), DRM_IOCTL_SYNCOBJ_EVENTFD(9), DRM_IOCTL_MODE_CLOSEFB(9), DRM_IOCTL_SET_CLIENT_NAME(9), DRM_IOCTL_GEM_CHANGE_HANDLE(9), struct drm_event(9), DRM_EVENT_VBLANK(9), DRM_EVENT_FLIP_COMPLETE(9), DRM_EVENT_CRTC_SEQUENCE(9)


k byeee 🫢 this has been the Kernel API Manual moment of your day, sourced from ./tools/perf/trace/beauty/incl... and dated October 2026 β€” go enable DRM_CLIENT_CAP_ATOMIC first and stan responsibly βœ¨πŸŽ€

πŸ“¦ where this page comes from