media: staging: ipu3-imgu: Fix BNR wb gain documentation
authorJean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>
Fri, 17 Jun 2022 08:45:19 +0000 (10:45 +0200)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Sat, 24 Sep 2022 07:01:59 +0000 (09:01 +0200)
The documentation states that the BNR factor is a multiplier coded as
u3.13 and with a range of (0, 8). This is not correct, as the isp is
adding 1.0 to the gain applied, ie Pout = { Pin * (1 + Gx) }.

It means that a gain of 1.0 should be coded as 0.

Signed-off-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/staging/media/ipu3/include/uapi/intel-ipu3.h

index dbdd015ce2201c414eb423cf2c7957a6f5f5cce8..caa358e0bae40ca0f9f70323f4c271c9d5334ca8 100644 (file)
@@ -626,8 +626,11 @@ struct ipu3_uapi_stats_3a {
  * @b: white balance gain for B channel.
  * @gb:        white balance gain for Gb channel.
  *
- * Precision u3.13, range [0, 8). White balance correction is done by applying
- * a multiplicative gain to each color channels prior to BNR.
+ * For BNR parameters WB gain factor for the three channels [Ggr, Ggb, Gb, Gr].
+ * Their precision is U3.13 and the range is (0, 8) and the actual gain is
+ * Gx + 1, it is typically Gx = 1.
+ *
+ * Pout = {Pin * (1 + Gx)}.
  */
 struct ipu3_uapi_bnr_static_config_wb_gains_config {
        __u16 gr;