Re: [PATCH 05/14] media: qcom: camss: csid-gen3: Enable RDI SOF driving
From: Bryan O'Donoghue
Date: Thu Oct 29 2026 - 11:48:55 EST
On 29/10/2026 15:43, Loic Poulain wrote:
__csid_configure_rx(csid, &csid->phy, 0);Is this something that should also be tied to frame_sync_en?
+ __csid_configure_rdi_irq(csid, enable, i);
Also, just thinking out loud, are there cases where we'd want to
toggle this dynamically at runtime based on any V4L2 configuration or
pipeline path? For example, should it be enabled for the pixel path
but disabled for RDI?
I'm asking because one of the appreciated strengths of CAMSS is its
relatively low-latency and lightweight capture path. As we add more
features, it may be worth preserving that characteristic where
possible. Not saying this particular feature has a meaningful latency
or compute cost, but more as a general design consideration.
Regards,
Loic
__csid_ctrl_rdi(csid, enable, i);
}
}
@@ -279,6 +303,9 @@ static irqreturn_t csid_isr(int irq, void *dev)
val = readl(csid->base + CSID_CSI2_RDIN_IRQ_STATUS(i));
writel(val, csid->base + CSID_CSI2_RDIN_IRQ_CLEAR(i));
+ if (val & INFO_INPUT_SOF_IRQ)
+ csid_sof_event(csid, i);
I considered dynamic enable but
1. The design here is to move ~ everything to SOF vb.sequence
2. Standard design pattern with FRAME_SYNC is to generate the event
having consumers either trigger on it or not
For that second case I opted to only send the signal when we know there's a consumer though
=>
+ if (atomic_read(&csid->frame_sync_users[id]))
+ v4l2_event_queue(csid->subdev.devnode, &event);
---
bod