diff --git a/src/libcamera/pipeline/imx8-isi/imx8-isi.cpp b/src/libcamera/pipeline/imx8-isi/imx8-isi.cpp index 72e055e4..de09431c 100644 --- a/src/libcamera/pipeline/imx8-isi/imx8-isi.cpp +++ b/src/libcamera/pipeline/imx8-isi/imx8-isi.cpp @@ -1039,7 +1039,7 @@ bool PipelineHandlerISI::match(DeviceEnumerator *enumerator) for (MediaPad *pad : crossbar_->entity()->pads()) { unsigned int sink = numSinks; - if (!(pad->flags() & MEDIA_PAD_FL_SINK) || pad->links().empty()) + if (!(pad->flags() & MEDIA_PAD_FL_SINK)) continue; /* @@ -1048,6 +1048,9 @@ bool PipelineHandlerISI::match(DeviceEnumerator *enumerator) */ numSinks++; + if (pad->links().empty()) + continue; + MediaEntity *csi = pad->links()[0]->source()->entity(); if (csi->pads().size() != 2) { LOG(ISI, Debug) << "Skip unsupported CSI-2 receiver " @@ -1082,6 +1085,7 @@ bool PipelineHandlerISI::match(DeviceEnumerator *enumerator) LOG(ISI, Debug) << "cam" << numCameras << " streams " << data->streams_.size() + << " sink " << data->xbarSink_ << " offset " << data->xbarSourceOffset_; ret = data->init();