Hi Hongju, On Thu, Oct 24, 2024 at 11:22:01AM +0800, Hongju Wang wrote: > In the virtual channel case, they should use v4l2_event.id to distinguish > SOF events of different streams. Therefore, we set the virtual channel > number of the stream as the SOF event ID. This number is unique. > > Signed-off-by: Hongju Wang <hongju.wang@xxxxxxxxx> > --- > drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c b/drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c > index 051898ce53f4..5ad426afa0f0 100644 > --- a/drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c > +++ b/drivers/media/pci/intel/ipu6/ipu6-isys-csi2.c > @@ -578,6 +578,7 @@ void ipu6_isys_csi2_sof_event_by_stream(struct ipu6_isys_stream *stream) > .type = V4L2_EVENT_FRAME_SYNC, > }; > > + ev.id = stream->vc; > ev.u.frame_sync.frame_sequence = atomic_fetch_inc(&stream->sequence); > v4l2_event_queue(vdev, &ev); > The id field in struct v4l2_event isn't used for the FRAME_SYNC event and also the virtual channel isn't communicated to the user space currently. Doesn't the video device itself (and the routing configuration) associate this to a given sensor already? -- Kind regards, Sakari Ailus