[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c3284c33-4a8e-4150-b40a-05cd3af39def@kernel.org>
Date: Mon, 7 Apr 2025 16:59:15 +0100
From: Bryan O'Donoghue <bod@...nel.org>
To: Luca Weiss <luca.weiss@...rphone.com>, Jordan Crouse
<jorcrous@...zon.com>, linux-media@...r.kernel.org
Cc: Mauro Carvalho Chehab <mchehab@...nel.org>, Robert Foss
<rfoss@...nel.org>, Todor Tomov <todor.too@...il.com>,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1 1/2] media: camss: Increase the maximum frame size
On 06/12/2024 14:51, Luca Weiss wrote:
> On Fri Aug 2, 2024 at 5:24 PM CEST, Jordan Crouse wrote:
>> Commit 35493d653a2d
>> ("media: camss: add support for vidioc_enum_framesizes ioctl") added a
>> maximum frame width and height but the values selected seemed to have
>> been arbitrary. In reality the cam hardware doesn't seem to have a maximum
>> size restriction so double up the maximum reported width and height to
>> allow for larger frames.
>>
>> Also increase the maximum size checks at each point in the pipeline so
>> the increased sizes are allowed all the way down to the sensor.
>
> Hi Jordan,
>
> Looks like this hasn't landed yet, do you plan on resending this?
>
> Just wanted to try a 8192x6144 format but csid limiting the size to 8191
> is a bit in the way.
>
> Regards
> Luca
>
>>
>> Signed-off-by: Jordan Crouse <jorcrous@...zon.com>
>> ---
>>
>> drivers/media/platform/qcom/camss/camss-csid.c | 8 ++++----
>> drivers/media/platform/qcom/camss/camss-csiphy.c | 4 ++--
>> drivers/media/platform/qcom/camss/camss-ispif.c | 4 ++--
>> drivers/media/platform/qcom/camss/camss-vfe.c | 4 ++--
>> drivers/media/platform/qcom/camss/camss-video.c | 6 +++---
>> 5 files changed, 13 insertions(+), 13 deletions(-)
>>
>> diff --git a/drivers/media/platform/qcom/camss/camss-csid.c b/drivers/media/platform/qcom/camss/camss-csid.c
>> index 858db5d4ca75..886c42c82612 100644
>> --- a/drivers/media/platform/qcom/camss/camss-csid.c
>> +++ b/drivers/media/platform/qcom/camss/camss-csid.c
>> @@ -752,8 +752,8 @@ static void csid_try_format(struct csid_device *csid,
>> if (i >= csid->res->formats->nformats)
>> fmt->code = MEDIA_BUS_FMT_UYVY8_1X16;
>>
>> - fmt->width = clamp_t(u32, fmt->width, 1, 8191);
>> - fmt->height = clamp_t(u32, fmt->height, 1, 8191);
>> + fmt->width = clamp_t(u32, fmt->width, 1, 16383);
>> + fmt->height = clamp_t(u32, fmt->height, 1, 16383);
>>
>> fmt->field = V4L2_FIELD_NONE;
>> fmt->colorspace = V4L2_COLORSPACE_SRGB;
>> @@ -781,8 +781,8 @@ static void csid_try_format(struct csid_device *csid,
>> if (i >= csid->res->formats->nformats)
>> fmt->code = MEDIA_BUS_FMT_UYVY8_1X16;
>>
>> - fmt->width = clamp_t(u32, fmt->width, 1, 8191);
>> - fmt->height = clamp_t(u32, fmt->height, 1, 8191);
>> + fmt->width = clamp_t(u32, fmt->width, 1, 16383);
>> + fmt->height = clamp_t(u32, fmt->height, 1, 16383);
>>
>> fmt->field = V4L2_FIELD_NONE;
>> }
>> diff --git a/drivers/media/platform/qcom/camss/camss-csiphy.c b/drivers/media/platform/qcom/camss/camss-csiphy.c
>> index 2f7361dfd461..43c35ad6ac84 100644
>> --- a/drivers/media/platform/qcom/camss/camss-csiphy.c
>> +++ b/drivers/media/platform/qcom/camss/camss-csiphy.c
>> @@ -368,8 +368,8 @@ static void csiphy_try_format(struct csiphy_device *csiphy,
>> if (i >= csiphy->res->formats->nformats)
>> fmt->code = MEDIA_BUS_FMT_UYVY8_1X16;
>>
>> - fmt->width = clamp_t(u32, fmt->width, 1, 8191);
>> - fmt->height = clamp_t(u32, fmt->height, 1, 8191);
>> + fmt->width = clamp_t(u32, fmt->width, 1, 16383);
>> + fmt->height = clamp_t(u32, fmt->height, 1, 16383);
>>
>> fmt->field = V4L2_FIELD_NONE;
>> fmt->colorspace = V4L2_COLORSPACE_SRGB;
>> diff --git a/drivers/media/platform/qcom/camss/camss-ispif.c b/drivers/media/platform/qcom/camss/camss-ispif.c
>> index a12dcc7ff438..01e2ded8da0b 100644
>> --- a/drivers/media/platform/qcom/camss/camss-ispif.c
>> +++ b/drivers/media/platform/qcom/camss/camss-ispif.c
>> @@ -912,8 +912,8 @@ static void ispif_try_format(struct ispif_line *line,
>> if (i >= line->nformats)
>> fmt->code = MEDIA_BUS_FMT_UYVY8_1X16;
>>
>> - fmt->width = clamp_t(u32, fmt->width, 1, 8191);
>> - fmt->height = clamp_t(u32, fmt->height, 1, 8191);
>> + fmt->width = clamp_t(u32, fmt->width, 1, 16383);
>> + fmt->height = clamp_t(u32, fmt->height, 1, 16383);
>>
>> fmt->field = V4L2_FIELD_NONE;
>> fmt->colorspace = V4L2_COLORSPACE_SRGB;
>> diff --git a/drivers/media/platform/qcom/camss/camss-vfe.c b/drivers/media/platform/qcom/camss/camss-vfe.c
>> index 83c5a36d071f..826c0fb31785 100644
>> --- a/drivers/media/platform/qcom/camss/camss-vfe.c
>> +++ b/drivers/media/platform/qcom/camss/camss-vfe.c
>> @@ -1049,8 +1049,8 @@ static void vfe_try_format(struct vfe_line *line,
>> if (i >= line->nformats)
>> fmt->code = MEDIA_BUS_FMT_UYVY8_1X16;
>>
>> - fmt->width = clamp_t(u32, fmt->width, 1, 8191);
>> - fmt->height = clamp_t(u32, fmt->height, 1, 8191);
>> + fmt->width = clamp_t(u32, fmt->width, 1, 16383);
>> + fmt->height = clamp_t(u32, fmt->height, 1, 16383);
>>
>> fmt->field = V4L2_FIELD_NONE;
>> fmt->colorspace = V4L2_COLORSPACE_SRGB;
>> diff --git a/drivers/media/platform/qcom/camss/camss-video.c b/drivers/media/platform/qcom/camss/camss-video.c
>> index cd72feca618c..5fee3733da8e 100644
>> --- a/drivers/media/platform/qcom/camss/camss-video.c
>> +++ b/drivers/media/platform/qcom/camss/camss-video.c
>> @@ -19,10 +19,10 @@
>> #include "camss.h"
>>
>> #define CAMSS_FRAME_MIN_WIDTH 1
>> -#define CAMSS_FRAME_MAX_WIDTH 8191
>> +#define CAMSS_FRAME_MAX_WIDTH 16833
>> #define CAMSS_FRAME_MIN_HEIGHT 1
>> -#define CAMSS_FRAME_MAX_HEIGHT_RDI 8191
>> -#define CAMSS_FRAME_MAX_HEIGHT_PIX 4096
>> +#define CAMSS_FRAME_MAX_HEIGHT_RDI 16833
>> +#define CAMSS_FRAME_MAX_HEIGHT_PIX 8192
>>
>> /* -----------------------------------------------------------------------------
>> * Helper functions
>
Ping Jordan !
Will buy you beer for a v2 of this series.
---
bod
Powered by blists - more mailing lists