lkml.org 
[lkml]   [2022]   [Jan]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v3 19/23] media: atmel: atmel-isc-base: clamp wb gain coefficients
    Hi Eugen

    On Mon, Dec 13, 2021 at 03:49:36PM +0200, Eugen Hristev wrote:
    > White balance computed gains can overflow above the 13 bits hardware
    > coefficient that can be used, in some specific scenarios like a subexposure
    > from the sensor when the image is mostly black.
    > In this case the computed gain has to be clamped to the maximum value
    > allowed by the hardware.
    >
    > Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
    > ---
    > drivers/media/platform/atmel/atmel-isc-base.c | 4 ++++
    > 1 file changed, 4 insertions(+)
    >
    > diff --git a/drivers/media/platform/atmel/atmel-isc-base.c b/drivers/media/platform/atmel/atmel-isc-base.c
    > index f1f1019f9d82..31c8e3029eee 100644
    > --- a/drivers/media/platform/atmel/atmel-isc-base.c
    > +++ b/drivers/media/platform/atmel/atmel-isc-base.c
    > @@ -1415,6 +1415,10 @@ static void isc_wb_update(struct isc_ctrls *ctrls)
    > /* multiply both gains and adjust for decimals */
    > ctrls->gain[c] = s_gain[c] * gw_gain[c];
    > ctrls->gain[c] >>= 9;
    > +
    > + /* make sure we are not out of range */
    > + ctrls->gain[c] = clamp_val(ctrls->gain[c], 0, GENMASK(12, 0));

    #include <linux/minmax.h>

    What is the type of gain[c} ? If it's unsigned clamping with [0 is not
    required. I would in that case gain[c] = min(gain[c], ...)

    It's fine anyway
    Reviewed-by: Jacopo Mondi <jacopo+renesas@jmondi.org>

    Thanks
    j


    > +
    > v4l2_dbg(1, debug, &isc->v4l2_dev,
    > "isc wb: component %d, final gain %u\n",
    > c, ctrls->gain[c]);
    > --
    > 2.25.1
    >

    \
     
     \ /
      Last update: 2022-01-12 10:04    [W:4.122 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site