STRUCT JPU(9)
β¨ 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. thevoid __iomem *we all know and love πirqβ JPEG IP irq. the interrupt,unsigned intstyle β‘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
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms