mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-09 15:24:32 +08:00
media: v4l: vsp1: Use vsp1_entity.pipe to check if entity belongs to a pipeline
The DRM pipeline handling code uses the entity's pipe list head to check whether the entity is already included in a pipeline. This method is a bit fragile in the sense that it uses list_empty() on a list_head that is a list member. Replace it by a simpler check for the entity pipe pointer. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
parent
1ccbb32cb8
commit
d4fedb0b91
@ -119,9 +119,9 @@ int vsp1_du_setup_lif(struct device *dev, unsigned int pipe_index,
|
||||
* Remove the RPF from the pipe and the list of BRU
|
||||
* inputs.
|
||||
*/
|
||||
WARN_ON(list_empty(&rpf->entity.list_pipe));
|
||||
WARN_ON(!rpf->entity.pipe);
|
||||
rpf->entity.pipe = NULL;
|
||||
list_del_init(&rpf->entity.list_pipe);
|
||||
list_del(&rpf->entity.list_pipe);
|
||||
pipe->inputs[i] = NULL;
|
||||
|
||||
bru->inputs[rpf->bru_input].rpf = NULL;
|
||||
@ -537,7 +537,7 @@ void vsp1_du_atomic_flush(struct device *dev, unsigned int pipe_index)
|
||||
continue;
|
||||
}
|
||||
|
||||
if (list_empty(&rpf->entity.list_pipe)) {
|
||||
if (!rpf->entity.pipe) {
|
||||
rpf->entity.pipe = pipe;
|
||||
list_add_tail(&rpf->entity.list_pipe, &pipe->entities);
|
||||
}
|
||||
@ -566,7 +566,7 @@ void vsp1_du_atomic_flush(struct device *dev, unsigned int pipe_index)
|
||||
VI6_DPR_NODE_UNUSED);
|
||||
|
||||
entity->pipe = NULL;
|
||||
list_del_init(&entity->list_pipe);
|
||||
list_del(&entity->list_pipe);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user