Commit 51648e96 authored by Laurent Pinchart's avatar Laurent Pinchart

media: renesas: vsp1: Keep the DRM pipeline entities sorted

Some of the code that handles pipeline configuration assumes that
entities in a pipeline's entities list are sorted from sink to source.
To prepare for using that code with the DRM pipeline, insert the BRx
just before the WPF, and the RPFs at the head of the list.
Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: default avatarKieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: default avatarJacopo Mondi <jacopo.mondi@ideasonboard.com>
parent 03200026
...@@ -317,7 +317,10 @@ static int vsp1_du_pipeline_setup_brx(struct vsp1_device *vsp1, ...@@ -317,7 +317,10 @@ static int vsp1_du_pipeline_setup_brx(struct vsp1_device *vsp1,
list_add_tail(&released_brx->list_pipe, list_add_tail(&released_brx->list_pipe,
&pipe->entities); &pipe->entities);
/* Add the BRx to the pipeline. */ /*
* Add the BRx to the pipeline, inserting it just before the
* WPF.
*/
dev_dbg(vsp1->dev, "%s: pipe %u: acquired %s\n", dev_dbg(vsp1->dev, "%s: pipe %u: acquired %s\n",
__func__, pipe->lif->index, BRX_NAME(brx)); __func__, pipe->lif->index, BRX_NAME(brx));
...@@ -326,7 +329,8 @@ static int vsp1_du_pipeline_setup_brx(struct vsp1_device *vsp1, ...@@ -326,7 +329,8 @@ static int vsp1_du_pipeline_setup_brx(struct vsp1_device *vsp1,
pipe->brx->sink = &pipe->output->entity; pipe->brx->sink = &pipe->output->entity;
pipe->brx->sink_pad = 0; pipe->brx->sink_pad = 0;
list_add_tail(&pipe->brx->list_pipe, &pipe->entities); list_add_tail(&pipe->brx->list_pipe,
&pipe->output->entity.list_pipe);
} }
/* /*
...@@ -420,7 +424,7 @@ static int vsp1_du_pipeline_setup_inputs(struct vsp1_device *vsp1, ...@@ -420,7 +424,7 @@ static int vsp1_du_pipeline_setup_inputs(struct vsp1_device *vsp1,
if (!rpf->entity.pipe) { if (!rpf->entity.pipe) {
rpf->entity.pipe = pipe; rpf->entity.pipe = pipe;
list_add_tail(&rpf->entity.list_pipe, &pipe->entities); list_add(&rpf->entity.list_pipe, &pipe->entities);
} }
brx->inputs[i].rpf = rpf; brx->inputs[i].rpf = rpf;
......
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