Re: [PATCH for v5.6] hantro: Fix broken media controller links

From: Nicolas Dufresne
Date: Tue Feb 04 2020 - 14:58:57 EST


Le mardi 04 fÃvrier 2020 Ã 16:38 -0300, Ezequiel Garcia a Ãcrit :
> The driver currently creates a broken topology,
> with a source-to-source link and a sink-to-sink
> link instead of two source-to-sink links.
>
> Reported-by: Nicolas Dufresne <nicolas@xxxxxxxxxxxx>
> Cc: <stable@xxxxxxxxxxxxxxx> # for v5.3 and up
> Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxx>

Tested-by: Nicolas Dufresne <nicolas.dufresne@xxxxxxxxxxxxx>

> ---
> drivers/staging/media/hantro/hantro_drv.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/media/hantro/hantro_drv.c
> b/drivers/staging/media/hantro/hantro_drv.c
> index 448493a08805..840b96bee082 100644
> --- a/drivers/staging/media/hantro/hantro_drv.c
> +++ b/drivers/staging/media/hantro/hantro_drv.c
> @@ -556,13 +556,13 @@ static int hantro_attach_func(struct hantro_dev *vpu,
> goto err_rel_entity1;
>
> /* Connect the three entities */
> - ret = media_create_pad_link(&func->vdev.entity, 0, &func->proc, 1,
> + ret = media_create_pad_link(&func->vdev.entity, 0, &func->proc, 0,

As for the m2m comment, some local define to name the pad index would make this
readable.

> MEDIA_LNK_FL_IMMUTABLE |
> MEDIA_LNK_FL_ENABLED);
> if (ret)
> goto err_rel_entity2;
>
> - ret = media_create_pad_link(&func->proc, 0, &func->sink, 0,
> + ret = media_create_pad_link(&func->proc, 1, &func->sink, 0,
> MEDIA_LNK_FL_IMMUTABLE |
> MEDIA_LNK_FL_ENABLED);
> if (ret)