Hi, Le Tue 17 Feb 26, 10:10, Arash Golgol a écrit : > Report the stepwise frame size range supported by the CSI capture > hardware for the pixel formats exposed by the driver. > > The hardware does not perform scaling and accepts any even width and > height within the reported limits. > > Signed-off-by: Arash Golgol Looks good to me. Reviewed-by: Paul Kocialkowski Tested-by: Paul Kocialkowski All the best, Paul > --- > .../sunxi/sun6i-csi/sun6i_csi_capture.c | 22 +++++++++++++++++++ > 1 file changed, 22 insertions(+) > > diff --git a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.c b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.c > index a21a146fb02a..dd06d4c116e0 100644 > --- a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.c > +++ b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.c > @@ -738,6 +738,27 @@ static int sun6i_csi_capture_enum_fmt(struct file *file, void *priv, > return 0; > } > > +static int sun6i_csi_capture_enum_framesize(struct file *file, void *fh, > + struct v4l2_frmsizeenum *fsize) > +{ > + if (fsize->index) > + return -EINVAL; > + > + /* Only accept format in map table. */ > + if (!sun6i_csi_capture_format_find(fsize->pixel_format)) > + return -EINVAL; > + > + fsize->type = V4L2_FRMSIZE_TYPE_STEPWISE; > + fsize->stepwise.min_width = SUN6I_CSI_CAPTURE_WIDTH_MIN; > + fsize->stepwise.max_width = SUN6I_CSI_CAPTURE_WIDTH_MAX; > + fsize->stepwise.min_height = SUN6I_CSI_CAPTURE_HEIGHT_MIN; > + fsize->stepwise.max_height = SUN6I_CSI_CAPTURE_HEIGHT_MAX; > + fsize->stepwise.step_width = 2; > + fsize->stepwise.step_height = 2; > + > + return 0; > +} > + > static int sun6i_csi_capture_g_fmt(struct file *file, void *priv, > struct v4l2_format *format) > { > @@ -805,6 +826,7 @@ static const struct v4l2_ioctl_ops sun6i_csi_capture_ioctl_ops = { > .vidioc_querycap = sun6i_csi_capture_querycap, > > .vidioc_enum_fmt_vid_cap = sun6i_csi_capture_enum_fmt, > + .vidioc_enum_framesizes = sun6i_csi_capture_enum_framesize, > .vidioc_g_fmt_vid_cap = sun6i_csi_capture_g_fmt, > .vidioc_s_fmt_vid_cap = sun6i_csi_capture_s_fmt, > .vidioc_try_fmt_vid_cap = sun6i_csi_capture_try_fmt, > -- > 2.34.1 > -- Paul Kocialkowski, Independent contractor - sys-base - https://www.sys-base.io/ Free software developer - https://www.paulk.fr/ Expert in multimedia, graphics and embedded hardware support with Linux.