STRUCT BDISP_M2M_DEVICE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

ok so this page is struct bdisp_m2m_device β€” it's the v4l2 memory-to-memory device data, bestie. that's the whole vibe. it's the little struct that holds all the m2m goodness together πŸŽ€

(also hi, this is a section 9 Kernel API Manual page, so like. kernel devs only. no cap.)


✨ SYNOPSIS ✨

struct bdisp_m2m_device {
    struct video_device     *vdev;
    struct v4l2_m2m_dev     *m2m_dev;
    struct bdisp_ctx        *ctx;
    int refcnt;
 };

like, that's it. four fields. short and iconic. it's giving "small struct, big responsibilities" πŸ‘‘


🌸 MEMBERS 🌸

okay let's go through each one because every single field matters, no skipping πŸ’…

  • vdev β€” the video device node for v4l2 m2m mode. this is the actual thing userspace talks to, babe. the device node. the main character πŸ”₯
  • m2m_dev β€” the v4l2 m2m device data. separate thing from vdev!! don't mix them up!! this one is the m2m machinery underneath 🫢
  • ctx β€” hardware context data. the hardware-side brain of the operation, lowkey essential πŸ’œ
  • refcnt β€” the reference counter. it counts references. that's the whole job. keeping track so nothing gets freed while somebody's still using it, iykyk 😭
ngl, refcnt is the one you do not want to mess up. reference counting bugs are the worst kind of cursed πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

go read these next, they're all in the kernel file ./drivers/media/platform/st/sti/bdisp/bdisp.h β€” literally all of them live there together, cute little family 🌈

  • struct bdisp_fmt(9)
  • struct bdisp_frame(9)
  • struct bdisp_request(9)
  • struct bdisp_ctx(9)
  • struct bdisp_dbg(9)
  • struct bdisp_dev(9)

okay that's the whole page, hope this helped bestie πŸ’–

sign-off time: this one comes from ./drivers/media/platform/st/st... and the date on it is October 2026, so like, it's from the future or something πŸ¦‹βœ¨ slay.

πŸ“¦ where this page comes from