STRUCT RCAR_ISP_CORE(9)
π struct rcar_isp_core(9) π
okay so bestie, welcome to the Kernel API Manual β this is the struct rcar_isp_core(9) page and it's literally the main character of the Renesas ISP core world, no cap π
β¨ NAME β¨
struct rcar_isp_core β the ISP Core, periodt π¦
πΈ SYNOPSIS πΈ
like, here's the whole vibe, character for character:
struct rcar_isp_core {
struct device *dev;
u32 rppaddr;
struct clk *clk;
struct reset_control *rstc;
struct reset_control *csrstc;
void __iomem *base;
void __iomem *csbase;
struct v4l2_subdev subdev;
struct media_pad pads[RISP_CORE_NUM_PADS];
struct v4l2_device v4l2_dev;
struct rppx1 *rpp;
struct mutex io_lock;
struct rcar_isp_core_io io[RISP_CORE_NUM_PADS];
spinlock_t lock;
struct rcar_isp_vspx vspx;
struct list_head risp_jobs;
unsigned int sequence;
bool streaming;
};
π Members π
it's giving tour of every single field, so let's go π₯
devβ the (OF) device, the whole reason we're here fr frrppaddrβ the hardware address of the RPP ISP, straight from OF πclkβ the clock for the ISP CORE, keeps the heartbeat going βrstcβ the reset for the ISP Core, one (1) little reset iconcsrstcβ the reset for the ISP Channel Selector, its own separate reset bestiebaseβ MMIO base of the ISP CORE, where the CORE livescsbaseβ MMIO base of the ISP CS, where the CS lives π«Άsubdevβ the V4L2 subdevice that represents the ISP CORE, iconicpadsβ the media pad for the subdev πv4l2_devβ the V4L2 device, hi queenrppβ a handle to the RPP ISP that's connected to the ISP CORE πio_lockβ this one protectsio[*].streamingandio[*].buffers, do not skip herioβ an array of IO ports to the ISP CORE, one per pad, we love an arraylockβ protectsvspx,risp_jobs,sequenceandstreamingβ she's a spinlock and she's busy πvspxβ a handle to the resources used by VSPX that's connected to the ISP CORErisp_jobsβ the queue of VSPX transfer jobs, it's giving to-do list πsequenceβ the V4L2 buffers sequence number, counting up like your unread messagesstreamingβ tracks whether the device is streaming, yes/no, on/off, the vibe check of the whole struct β¨
ngl bestie, note howio_lockandlockguard different things β don't go swapping them, that's not the move π
π¦ SEE ALSO π¦
- Kernel file
./drivers/media/platform/renesas/rcar-isp/risp-core.h struct risp_buffer(9)struct rcar_isp_core_io(9)struct rcar_isp_job(9)struct rcar_isp_vspx(9)
go read those next, iykyk π
and that's the page!! mwah π this one came from ./drivers/media/platform/renes... and it's stamped October 2026 β so like, future-coded of it. slay, go touch some registers π§π
π¦ 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