STRUCT DT3155_PRIV(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

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

okay bestie, welcome to the Kernel API Manual ✨ we're looking at struct dt3155_priv today and honestly? it's giving "private data structure" and it's giving main character energy. this is the lil' bundle of state that the dt3155 driver keeps all to itself, no cap 🫢


🌸 SYNOPSIS 🌸

like, here's the whole vibe, literally every member, character for character:

struct dt3155_priv {
    struct v4l2_device v4l2_dev;
    struct video_device vdev;
    struct pci_dev *pdev;
    struct vb2_queue vidq;
    struct vb2_v4l2_buffer *curr_buf;
    struct mutex mux;
    struct list_head dmaq;
    spinlock_t lock;
    v4l2_std_id std;
    unsigned width, height;
    unsigned input;
    unsigned int sequence;
    void __iomem *regs;
    u8 csr2, config;
};

πŸŽ€ Members πŸŽ€

bestie, let's do a member-by-member vibe check, one at a time, no skipping πŸ‘‘

  • v4l2_dev β€” the v4l2_device structure, iconic, essential, we love her πŸ’…
  • vdev β€” the video_device structure, also doing her thing ✨
  • pdev β€” pointer to the pci_dev structure, i.e. the PCI side of the relationship 🫢
  • vidq β€” the vb2_queue structure, holding the queue agenda fr fr
  • curr_buf β€” pointer to the curren buffer πŸ‘€ (yes, "curren", that's what the page says, we're keeping it exactly, don't come for me 😭)
  • mux β€” mutex to protect the instance, so nobody's out here playing tug-of-war with our data πŸ”’
  • dmaq β€” queue for dma buffers, keeping them lined up all neat and tidy 🌈
  • lock β€” spinlock for dma queue, the fast-and-furious guardian of dmaq πŸ”₯
  • std β€” input standard, like, which standard are we even on bestie πŸ“Ί
  • width β€” frame width, the horizontal slay πŸ“
  • height β€” frame height, the vertical slay πŸ“
  • input β€” current input, as in which one we're on right now 🎚️
  • sequence β€” frame counter, keeping track of every single frame, one by one πŸ’€
  • regs β€” local copy of mmio base register, our very own saved copy 🧚
  • csr2 β€” local copy of csr2 register, also saved, also precious πŸ“
  • config β€” local copy of config register, the third member of the local-copy trio πŸ’œ
lowkey important reminder: regs, csr2 and config are all local copies of their registers β€” that's the whole point of them, don't forget it πŸ’–

πŸ¦‹ SEE ALSO πŸ¦‹

go look at the kernel file ./drivers/media/pci/dt3155/dt3155.h β€” that's where all the real lore lives, iykyk ⭐


and that's the whole page bestie, you ate that πŸŽ€ this was the ./drivers/media/pci/dt3155 source, version vibes stamped October 2026 β€” signed, sealed, slayed, periodt πŸ’…βœ¨

πŸ“¦ where this page comes from