STRUCT JPU(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct jpu β€” JPEG IP abstraction ✨

okay bestie, welcome to the struct jpu(9) page from the Kernel API Manual πŸ’– this is the main character struct for the JPEG IP, and we're gonna walk through every single field together, no cap.


🌸 NAME 🌸

struct jpu β€” the JPEG IP abstraction, periodt. it's giving "one struct to hold the whole device together" energy πŸ‘‘


πŸ¦‹ SYNOPSIS πŸ¦‹

struct jpu {
    struct mutex    mutex;
    spinlock_t lock;
    struct v4l2_device      v4l2_dev;
    struct video_device     vfd_encoder;
    struct video_device     vfd_decoder;
    struct v4l2_m2m_dev     *m2m_dev;
    struct jpu_ctx          *curr;
    void __iomem            *regs;
    unsigned int            irq;
    struct clk              *clk;
    struct device           *dev;
    int ref_count;
 };

literally the whole vibe of the JPEG IP in one little block πŸŽ€


πŸ’… Members πŸ’…

so here's the member-by-member breakdown, and yes we're doing all of them, iykyk:

  • mutex β€” the mutex protecting this structure. big "don't touch my stuff while i'm working" energy πŸ”’
  • lock β€” spinlock protecting the device contexts. tiny, fast, spicy 🌢️
  • v4l2_dev β€” v4l2 device for mem2mem mode ✨
  • vfd_encoder β€” video device node for encoder mem2mem mode 🎬
  • vfd_decoder β€” video device node for decoder mem2mem mode πŸŽ₯
  • m2m_dev β€” v4l2 mem2mem device data, the pointer that holds it all together 🫢
  • curr β€” pointer to current context. whoever's on stage right now πŸ‘‘
  • regs β€” JPEG IP registers mapping. the void __iomem * we all know and love πŸ’œ
  • irq β€” JPEG IP irq. the interrupt, unsigned int style ⚑
  • clk β€” JPEG IP clock πŸ•°οΈ
  • dev β€” JPEG IP struct device 🧚
  • ref_count β€” reference counter. counting refs like it's going out of style πŸ”₯

πŸŽ€ SEE ALSO πŸŽ€

  • Kernel file ./drivers/media/platform/renesas/rcar_jpu.c
  • struct jpu_buffer(9)
  • struct jpu_fmt(9)
  • struct jpu_q_data(9)
  • struct jpu_ctx(9)
go read those too bestie, they're literally the supporting cast πŸ’–

and that's the whole page!! slay πŸ’… this gem comes to you from ./drivers/media/platform/renesas, dated October 2026 β€” catch you in the next manpage, mwah πŸ¦‹πŸŒˆβ­

πŸ“¦ where this page comes from