STRUCT V4L2_MBUS_CONFIG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct v4l2_mbus_config(9) β€” media bus configuration πŸŽ€

Okay bestie, so this is a page from the Linux Kernel API Manual (Kernel API Manual, yes, that one) and it's all about the struct v4l2_mbus_config β€” literally the glow-up blueprint for how your media bus is configured. It's giving "one struct to describe them all" energy and honestly? Iconic. Let's get into it. πŸ¦‹


✨ SYNOPSIS ✨

struct v4l2_mbus_config {
    enum v4l2_mbus_type type;
    u64 link_freq;
    union {
      struct v4l2_mbus_config_parallel parallel;
      struct v4l2_mbus_config_mipi_csi1 mipi_csi1;
      struct v4l2_mbus_config_mipi_csi2 mipi_csi2;
    } bus;
 };

Lowkey that nested union is main character energy β€” it just picks which bus config struct shows up, depending on what kind of bus you're on. No cap. 🌈


🫢 Members 🫢

  • type β€” the interface type, aka what kind of bus are we even dealing with bestie. 🧚
  • link_freq β€” The link frequency. Also peep the V4L2_CID_LINK_FREQ control for more on that. πŸ”₯
  • bus β€” the bus configuration data structure (the whole little union fam lives in here). πŸŽ€

🌸 The bus union members 🌸

  • bus.parallel β€” embedded struct v4l2_mbus_config_parallel. Used if the bus is parallel or BT.656. Old school but still slaying. πŸ’œ
  • bus.mipi_csi1 β€” embedded struct v4l2_mbus_config_mipi_csi1. Used if the bus is MIPI Alliance's Camera Serial Interface version 1 (MIPI CSI1) or Standard Mobile Imaging Architecture's Compact Camera Port 2 (SMIA CCP2). That's a mouthful fr fr. 😭
  • bus.mipi_csi2 β€” embedded struct v4l2_mbus_config_mipi_csi2. Used if the bus is MIPI Alliance's Camera Serial Interface version 2 (MIPI CSI2). The sequel that ate. ⭐

πŸ‘‘ SEE ALSO πŸ‘‘

So much cross-referencing, we love a well-connected struct πŸ’…:


Bestie, note it's defined in ./include/media β€” so if you're grepping for it, you know exactly where to look. πŸ”πŸ’–

Okay that's the whole page, slay. This cutie lives in the Kernel API Manual, dated October 2026, and it's the struct v4l2_mbus_config(9) page, sourced from ./include/media. Go be the main character of your own media bus. πŸŒŸπŸ“πŸ’…

πŸ“¦ where this page comes from