STRUCT RCAR_DU_CRTC(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct rcar_du_crtc(9) πŸ’–

okay bestie, welcome to the Kernel API Manual entry for struct rcar_du_crtc β€” and yes, we're doing this, because this little icon is literally the CRTC, representing a DU superposition processor. main character energy fr fr ✨


✨ NAME ✨

struct rcar_du_crtc β€” the CRTC, representing a DU superposition processor πŸ‘‘

πŸ¦‹ SYNOPSIS πŸ¦‹

struct rcar_du_crtc {
    struct drm_crtc crtc;
    struct rcar_du_device *dev;
    struct clk *clock;
    struct clk *extclock;
    unsigned int mmio_offset;
    unsigned int index;
    bool initialized;
    u32 dsysr;
    bool vblank_enable;
    struct drm_pending_vblank_event *event;
    wait_queue_head_t flip_wait;
    spinlock_t vblank_lock;
    wait_queue_head_t vblank_wait;
    unsigned int vblank_count;
    struct rcar_du_group *group;
    struct rcar_du_cmm *cmm;
    struct rcar_du_vsp *vsp;
    unsigned int vsp_pipe;
    const char *const *sources;
    unsigned int sources_count;
    struct drm_writeback_connector writeback;
 };

like, look at her. a whole struct. a whole vibe. πŸ’…

🌸 Members 🌸

okay so here's the member-by-member tour, no skipping, we're doing all of them 🫢

  • crtc β€” the base DRM CRTC. the foundation, the moment, the blueprint πŸ’–
  • dev β€” the DU device. her home base 🏠
  • clock β€” the CRTC functional clock ⏰
  • extclock β€” external pixel dot clock (optional). she's optional but iconic ✨
  • mmio_offset β€” offset of the CRTC registers in the DU MMIO block πŸ“
  • index β€” CRTC hardware index πŸ”’
  • initialized β€” whether the CRTC has been initialized and clocks enabled. the "have you eaten yet" of booleans πŸ“
  • dsysr β€” cached value of the DSYSR register. cached, like receipts 🧾
  • vblank_enable β€” whether vblank events are enabled on this CRTC 🌈
  • event β€” event to post when the pending page flip completes πŸŽ€
  • flip_wait β€” wait queue used to signal page flip completion ⏳
  • vblank_lock β€” protects vblank_wait and vblank_count πŸ”’
  • vblank_wait β€” wait queue used to signal vertical blanking πŸ¦‹
  • vblank_count β€” number of vertical blanking interrupts to wait for πŸ”’
  • group β€” CRTC group this CRTC belongs to πŸ‘―
  • cmm β€” CMM associated with this CRTC πŸ’«
  • vsp β€” VSP feeding video to this CRTC πŸŽ₯
  • vsp_pipe β€” index of the VSP pipeline feeding video to this CRTC πŸ”§
  • writeback β€” the writeback connector πŸ”
ngl bestie, that's a lot of members, but every single one of them is doing her job so we respect her fr fr πŸ’œ

πŸ”₯ SEE ALSO πŸ”₯

  • Kernel file ./drivers/gpu/drm/renesas/rcar-du/rcar_du_crtc.h β€” go read the header, it's giving source of truth πŸ“–
  • struct rcar_du_crtc_state(9) β€” her sister struct, equally slay πŸ‘‘

and that's the whole page, periodt. this was pulled from ./drivers/gpu/drm/renesas/rcar-du, dated October 2026, under the struct rcar_du_crtc(9) title β€” so if you cite it, cite it right, iykyk πŸ˜­πŸ’–πŸŽ€

πŸ“¦ where this page comes from