Re: [PATCH v2 12/25] media: i2c: imx283: Simplify v_pos determination
From: Jai Luthra
Date: Mon Feb 16 2026 - 09:58:23 EST
Quoting Kieran Bingham (2026-02-13 19:31:51)
> Refactor the v_pos to separate out the vflip handling from the top
> coordinate.
>
> No functional change is intended in this commit.
>
> Signed-off-by: Kieran Bingham <kieran.bingham@xxxxxxxxxxxxxxxx>
> ---
> drivers/media/i2c/imx283.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/media/i2c/imx283.c b/drivers/media/i2c/imx283.c
> index f115a6df7b31..315c050c4fd0 100644
> --- a/drivers/media/i2c/imx283.c
> +++ b/drivers/media/i2c/imx283.c
> @@ -1143,16 +1143,18 @@ static int imx283_start_streaming(struct imx283 *imx283,
> {
> u32 y_out_size = mode->crop.height / mode->vbin_ratio;
> u32 write_v_size = y_out_size + mode->scan->vertical_ob;
> + s16 top = mode->crop.top;
> u32 v_widcut;
> s32 v_pos;
>
> + if (imx283->vflip->val)
> + top = -top;
> +
> /*
> * cropping start position = (VWINPOS – Vst) × 2
> * cropping width = Veff – (VWIDCUT – Vct) × 2
> */
> - v_pos = imx283->vflip->val ?
> - ((-mode->crop.top / mode->vbin_ratio) / 2) + mode->scan->vst :
> - ((mode->crop.top / mode->vbin_ratio) / 2) + mode->scan->vst;
> + v_pos = (top / mode->vbin_ratio / 2) + mode->scan->vst;
nit: I find `((top / mode->vbin_ratio) / 2)` easier to read
Reviewed-by: Jai Luthra <jai.luthra@xxxxxxxxxxxxxxxx>
> v_widcut = ((mode->scan->veff - y_out_size) / 2) + mode->scan->vct;
>
> cci_write(imx283->cci, IMX283_REG_Y_OUT_SIZE, y_out_size, &ret);
>
> --
> 2.52.0
>