[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <7dcadd80-ae5c-0e53-d91a-2ee5028e51f5@xs4all.nl>
Date: Wed, 19 Jul 2023 10:04:26 +0200
From: Hans Verkuil <hverkuil@...all.nl>
To: Wang Ming <machel@...o.com>,
Sylwester Nawrocki <s.nawrocki@...sung.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
Alim Akhtar <alim.akhtar@...sung.com>,
linux-arm-kernel@...ts.infradead.org,
linux-samsung-soc@...r.kernel.org, linux-kernel@...r.kernel.org,
Marek Szyprowski <m.szyprowski@...sung.com>,
Sylwester Nawrocki <s.nawrocki@...sung.com>,
linux-media@...r.kernel.org
Cc: opensource.kernel@...o.com
Subject: Re: [PATCH v1] media:Fix repeated initialization
On 05/07/2023 16:21, Wang Ming wrote:
> If the first report returns NULL,
> there is no need to execute the
> fimc_capture_try_format() function
> again.
>
> Signed-off-by: Wang Ming <machel@...o.com>
> ---
> .../media/platform/samsung/exynos4-is/fimc-capture.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/media/platform/samsung/exynos4-is/fimc-capture.c b/drivers/media/platform/samsung/exynos4-is/fimc-capture.c
> index a0d43bf892e6..5ce2f04afa1e 100644
> --- a/drivers/media/platform/samsung/exynos4-is/fimc-capture.c
> +++ b/drivers/media/platform/samsung/exynos4-is/fimc-capture.c
> @@ -825,10 +825,12 @@ static int fimc_pipeline_try_format(struct fimc_ctx *ctx,
> tfmt->height = mf->height;
> ffmt = fimc_capture_try_format(ctx, &tfmt->width, &tfmt->height,
> NULL, &fcc, FIMC_SD_PAD_SINK_CAM);
> - ffmt = fimc_capture_try_format(ctx, &tfmt->width, &tfmt->height,
> - NULL, &fcc, FIMC_SD_PAD_SOURCE);
> - if (ffmt && ffmt->mbus_code)
> - mf->code = ffmt->mbus_code;
> + if (ffmt) {
> + ffmt = fimc_capture_try_format(ctx, &tfmt->width, &tfmt->height,
> + NULL, &fcc, FIMC_SD_PAD_SOURCE);
> + if (ffmt && ffmt->mbus_code)
> + mf->code = ffmt->mbus_code;
> + }
I'm not so sure this is a bug at all. I think (not quite certain) that the
first fimc_capture_try_format() call constrains the width and height to
whatever is the SINK_CAM pad, then further constrains it to that of the
SOURCE pad.
But really, someone from Samsung should take a look as well. Adding Marek and
Sylwester.
Regards,
Hans
> if (mf->width != tfmt->width || mf->height != tfmt->height)
> continue;
> tfmt->code = mf->code;
Powered by blists - more mailing lists