STRUCT BDISP_FRAME(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct bdisp_frame(9) πŸ’…

ok so this is a page from the Kernel API Manual, bestie, and it's literally all about struct bdisp_frame β€” aka the vibe check container for frame properties πŸŽ€. Yes we're in the kernel, yes we're in the media platform layer, yes it's giving main character energy. Let's go πŸ¦‹


✨ NAME ✨

struct bdisp_frame β€” frame properties 🌸


🫢 SYNOPSIS 🫢

struct bdisp_frame {
    u32 width;
    u32 height;
    const struct bdisp_fmt  *fmt;
    enum v4l2_field         field;
    u32 bytesperline;
    u32 sizeimage;
    enum v4l2_colorspace    colorspace;
    struct v4l2_rect        crop;
    dma_addr_t paddr[4];
};

no cap, that's the whole struct, copy it exactly, don't be weird about it πŸ’œ


🧚 Members 🧚

okay so let's meet the squad, one field at a time πŸ‘‘

  • width β€” the frame width (including padding!). padding is invited to the party too, okurrr πŸ’…
  • height β€” the frame height, and yes, padding counts here as well. she's tall, she's padded, she's iconic πŸ”₯
  • fmt β€” a pointer to the frame format descriptor. all the format lore lives over there, this is just the little arrow pointing at it πŸŽ€
  • field β€” the frame / field type. enum v4l2_field just so we're clear about which one she is πŸ’–
  • bytesperline β€” the stride of the 1st plane. one plane, one stride, no notes ✨
  • sizeimage β€” the image size in bytes. the byte count baby, that's the whole deal 🌸
  • colorspace β€” the colorspace. enum v4l2_colorspace said what she said 🌈
  • crop β€” the crop area. struct v4l2_rect shaped, naturally πŸ¦‹
  • paddr β€” the image physical addresses per plane, and the mapping is lowkey specific so pay attention: [0]=RGB/Y and [1]=Cb/Cr, then ... because there's more to the story and the page just trails off into the [4] of it all 😭🫢
fr fr, paddr[4] means four slots, and slot zero and slot one have very specific jobs. don't shuffle them, bestie πŸ’€

πŸ‘€ SEE ALSO πŸ‘€

  • Kernel file ./drivers/media/platform/st/sti/bdisp/bdisp.h struct bdisp_fmt(9)
  • struct bdisp_request(9)
  • struct bdisp_ctx(9)
  • struct bdisp_m2m_device(9)
  • struct bdisp_dbg(9)
  • struct bdisp_dev(9)

that's the whole friend group, go read all of them, iykyk πŸ’–βœ¨


okay that's the page, and for the cute sign-off: this one's source lives at ./drivers/media/platform/st/st..., it's stamped October 2026, and it's filed under struct bdisp_frame(9) β€” periodt, slay, go touch some registers πŸ§šπŸ’œ

πŸ“¦ where this page comes from