STRUCT DPU_DRM_PIX_EXT_V1(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct dpu_drm_pix_ext_v1 ✨

okay so bestie, welcome to the struct dpu_drm_pix_ext_v1 page πŸ’– this is straight out of the Kernel API Manual, section 9, and it's literally just version 1 of the pixel ext structure β€” that's the whole NAME, no cap πŸŽ€

Think of it as the little buddy that tells the display hardware "hey, grab a few extra pixels off the edges, mmmkay?" πŸ¦‹


🌸 SYNOPSIS 🌸

here's the shape of it, exactly as it lives, do not touch:

struct dpu_drm_pix_ext_v1 {
    int32_t num_ext_pxls_lr[DPU_MAX_PLANES];
    int32_t num_ext_pxls_tb[DPU_MAX_PLANES];
    int32_t left_ftch[DPU_MAX_PLANES];
    int32_t right_ftch[DPU_MAX_PLANES];
    int32_t top_ftch[DPU_MAX_PLANES];
    int32_t btm_ftch[DPU_MAX_PLANES];
    int32_t left_rpt[DPU_MAX_PLANES];
    int32_t right_rpt[DPU_MAX_PLANES];
    int32_t top_rpt[DPU_MAX_PLANES];
    int32_t btm_rpt[DPU_MAX_PLANES];
 };

like, every single field is an int32_t array sized DPU_MAX_PLANES β€” she's consistent, she's organized, she ate πŸ’…


πŸŽ€ Members πŸŽ€

okay let's meet the cast, one by one, and yes they all get their moment πŸ‘‘

  • num_ext_pxls_lr β€” the total number of horizontal pixels. the lr is giving left-right, iykyk πŸ‘€
  • num_ext_pxls_tb β€” the total number of vertical lines. tb = top-bottom, we stay matching 🌈
  • left_ftch β€” how many extra pixels to overfetch from the left side 🫢
  • right_ftch β€” how many extra pixels to overfetch from the right side 🫢
  • top_ftch β€” how many extra lines to overfetch from the top ⭐
  • btm_ftch β€” how many extra lines to overfetch from the bottom ⭐
  • left_rpt β€” how many extra pixels to repeat from the left πŸ’«
  • right_rpt β€” how many extra pixels to repeat from the right πŸ’«
  • top_rpt β€” how many extra lines to repeat from the top 🌸
  • btm_rpt β€” how many extra lines to repeat from the bottom 🌸
quick vibe check: fetch and repeat are two different things here β€” overfetch grabs extra, repeat duplicates extra. both are in the struct, both matter, don't mix them up bestie 😭

πŸ”₯ SEE ALSO πŸ”₯

the whole friend group, plus where she actually lives:

kernel file ./drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.h

  • struct dpu_hw_blk(9)
  • struct dpu_hw_scaler3_de_cfg(9)
  • struct dpu_hw_scaler3_cfg(9)
  • struct dpu_drm_de_v1(9)
  • struct dpu_drm_scaler_v2(9)
  • struct dpu_hw_qos_cfg(9)

and that's the whole page, bestie, go forth and overfetch responsibly πŸ§šπŸ’œ

sign-off szn: this one lives at ./drivers/gpu/drm/msm/disp/dpu1, dated October 2026, and it's struct dpu_drm_pix_ext_v1(9) forever and always β€” periodt πŸ’…βœ¨

πŸ“¦ where this page comes from