Re: [PATCH v1 1/2] media: camss: Increase the maximum frame size

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxx>
> ---
>
>  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






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux