STRUCT INTEL_DISPLAY_PARENT_INTERFACE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ NAME πŸŽ€

okay so bestie, welcome to struct intel_display_parent_interface(9) β€” the Kernel API Manual page for struct intel_display_parent_interface, aka the services the parent driver provides to display. That's the whole vibe: parent driver says β€œhere's my stuff,” display driver says β€œslay, I'll use it.” πŸ’–


✨ SYNOPSIS ✨

here's the struct, no cap β€” copied exactly:

       struct intel_display_parent_interface {
           const struct intel_display_bo_interface *bo;
           const struct intel_display_dpt_interface *dpt;
           const struct intel_display_dsb_interface *dsb;
           const struct intel_display_fb_pin_interface *fb_pin;
           const struct intel_display_frontbuffer_interface *frontbuffer;
           const struct intel_display_hdcp_interface *hdcp;
           const struct intel_display_initial_plane_interface *initial_plane;
           const struct intel_display_irq_interface *irq;
           const struct intel_display_panic_interface *panic;
           const struct intel_display_overlay_interface *overlay;
           const struct intel_display_pc8_interface *pc8;
           const struct intel_display_pcode_interface *pcode;
           const struct intel_display_rpm_interface *rpm;
           const struct intel_display_rps_interface *rps;
           const struct intel_display_stolen_interface *stolen;
           const struct intel_display_vlv_iosf_interface *vlv_iosf;
           struct {
             void (*fence_priority_display)(struct dma_fence *fence);
             bool (*has_auxccs)(struct drm_device *drm);
             bool (*has_fenced_regions)(struct drm_device *drm);
             bool (*vgpu_active)(struct drm_device *drm);
           };
        };

🧚 MEMBERS 🧚

  • bo β€” BO interface. literally the bo interface, bestie πŸ’…
  • dpt β€” DPT interface. Optional. πŸ¦‹
  • dsb β€” DSB buffer interface. iconic buffer behavior ✨
  • fb_pin β€” Framebuffer pin interface. pin it, periodt πŸ“Œ
  • frontbuffer β€” Frontbuffer interface. main character energy 🌸
  • hdcp β€” HDCP GSC interface. secure vibes only πŸ”
  • initial_plane β€” Initial plane interface. first impression = everything πŸ’–
  • irq β€” IRQ interface. interrupt me, i'm listening 😭
  • panic β€” Panic interface. not me panicking πŸ’€
  • overlay β€” Overlay. Optional. layer it up πŸŽ€
  • pc8 β€” PC8 interface. Optional. low-power era 🧚
  • pcode β€” Pcode interface. pcode said what it said 🫢
  • rpm β€” Runtime PM functions. runtime pm go brrr πŸ”₯
  • rps β€” RPS interface. Optional. rps bestie 🌈
  • stolen β€” Stolen memory. stolen memory, not stolen code πŸ‘‘
  • vlv_iosf β€” VLV IOSF sideband. Optional. sideband slay πŸ’œ
  • {unnamed_struct} β€” anonymous. mysterious little anonymous struct πŸ™ˆ
  • fence_priority_display β€” Set display priority. Optional. priority: display πŸ“
  • has_auxccs β€” Are AuxCCS formats supported by the parent. Optional. yes/no bestie ⭐
  • has_fenced_regions β€” Support legacy fencing? Optional. legacy fencing question mark πŸ’€
  • vgpu_active β€” Is vGPU active? Optional. vGPU active check, iykyk πŸ¦‹

πŸ’œ DESCRIPTION πŸ’œ

so here's the tea: the parent, or core, driver provides a pointer to this structure to display driver when calling intel_display_device_probe. The display driver uses it to access services provided by the parent driver. The structure may contain sub-struct pointers to group function pointers by functionality β€” very organized, very demure. ✨

important bestie 🚨: all function and sub-struct pointers must be initialized and callable unless explicitly marked as β€œoptional” below. The display driver will only NULL check the optional pointers. that's the rule, no skipping, periodt πŸ’…

🌈 SEE ALSO 🌈

  • Kernel file ./include/drm/intel/display_parent_interface.h β€” go read it, iykyk 🫢

that's the whole page, bestie. source/version: ./include/drm/intel β€’ date: October 2026. xoxo, your local Unix fairy πŸ§šπŸ’…

πŸ“¦ where this page comes from