Skip to content

Commit

Permalink
media: nxp: imx8-isi: Mark all crossbar sink pads as MUST_CONNECT
Browse files Browse the repository at this point in the history
[ Upstream commit 9b71021 ]

All the sink pads of the crossbar switch require an active link if
they're part of the pipeline. Mark them with the
MEDIA_PAD_FL_MUST_CONNECT flag to fail pipeline validation if they're
not connected. This allows removing a manual check when translating
streams.

Cc: stable@vger.kernel.org # 6.1
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
pinchartl authored and gregkh committed Apr 3, 2024
1 parent a776ae1 commit c245767
Showing 1 changed file with 2 additions and 8 deletions.
10 changes: 2 additions & 8 deletions drivers/media/platform/nxp/imx8-isi/imx8-isi-crossbar.c
Expand Up @@ -160,13 +160,6 @@ mxc_isi_crossbar_xlate_streams(struct mxc_isi_crossbar *xbar,
}

pad = media_pad_remote_pad_first(&xbar->pads[sink_pad]);
if (!pad) {
dev_dbg(xbar->isi->dev,
"no pad connected to crossbar input %u\n",
sink_pad);
return ERR_PTR(-EPIPE);
}

sd = media_entity_to_v4l2_subdev(pad->entity);
if (!sd) {
dev_dbg(xbar->isi->dev,
Expand Down Expand Up @@ -471,7 +464,8 @@ int mxc_isi_crossbar_init(struct mxc_isi_dev *isi)
}

for (i = 0; i < xbar->num_sinks; ++i)
xbar->pads[i].flags = MEDIA_PAD_FL_SINK;
xbar->pads[i].flags = MEDIA_PAD_FL_SINK
| MEDIA_PAD_FL_MUST_CONNECT;
for (i = 0; i < xbar->num_sources; ++i)
xbar->pads[i + xbar->num_sinks].flags = MEDIA_PAD_FL_SOURCE;

Expand Down

0 comments on commit c245767

Please sign in to comment.