Commit 36c9b753 authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Mauro Carvalho Chehab

media: xilinx: dma: Use media_pipeline_for_each_pad()

Replace usage of the deprecated media graph walk API with the new
media_pipeline_for_each_pad() macro.
Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
parent 27e45f2e
...@@ -173,31 +173,19 @@ static int xvip_pipeline_set_stream(struct xvip_pipeline *pipe, bool on) ...@@ -173,31 +173,19 @@ static int xvip_pipeline_set_stream(struct xvip_pipeline *pipe, bool on)
static int xvip_pipeline_validate(struct xvip_pipeline *pipe, static int xvip_pipeline_validate(struct xvip_pipeline *pipe,
struct xvip_dma *start) struct xvip_dma *start)
{ {
struct media_graph graph; struct media_pipeline_pad_iter iter;
struct media_entity *entity = &start->video.entity;
struct media_device *mdev = entity->graph_obj.mdev;
unsigned int num_inputs = 0; unsigned int num_inputs = 0;
unsigned int num_outputs = 0; unsigned int num_outputs = 0;
int ret; struct media_pad *pad;
mutex_lock(&mdev->graph_mutex);
/* Walk the graph to locate the video nodes. */
ret = media_graph_walk_init(&graph, mdev);
if (ret) {
mutex_unlock(&mdev->graph_mutex);
return ret;
}
media_graph_walk_start(&graph, entity);
while ((entity = media_graph_walk_next(&graph))) { /* Locate the video nodes in the pipeline. */
media_pipeline_for_each_pad(&pipe->pipe, &iter, pad) {
struct xvip_dma *dma; struct xvip_dma *dma;
if (entity->function != MEDIA_ENT_F_IO_V4L) if (pad->entity->function != MEDIA_ENT_F_IO_V4L)
continue; continue;
dma = to_xvip_dma(media_entity_to_video_device(entity)); dma = to_xvip_dma(media_entity_to_video_device(pad->entity));
if (dma->pad.flags & MEDIA_PAD_FL_SINK) { if (dma->pad.flags & MEDIA_PAD_FL_SINK) {
pipe->output = dma; pipe->output = dma;
...@@ -207,10 +195,6 @@ static int xvip_pipeline_validate(struct xvip_pipeline *pipe, ...@@ -207,10 +195,6 @@ static int xvip_pipeline_validate(struct xvip_pipeline *pipe,
} }
} }
mutex_unlock(&mdev->graph_mutex);
media_graph_walk_cleanup(&graph);
/* We need exactly one output and zero or one input. */ /* We need exactly one output and zero or one input. */
if (num_outputs != 1 || num_inputs > 1) if (num_outputs != 1 || num_inputs > 1)
return -EPIPE; return -EPIPE;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment