ImmortalWrt/target/linux/bcm27xx/patches-5.15/950-0541-vc04_services-isp-Report-input-node-as-wanting-full-.patch
Álvaro Fernández Rojas 20ea6adbf1 bcm27xx: add support for linux v5.15
Build system: x86_64
Build-tested: bcm2708, bcm2709, bcm2710, bcm2711
Run-tested: bcm2708/RPiB+, bcm2709/RPi3B, bcm2710/RPi3B, bcm2711/RPi4B

Signed-off-by: Marty Jones <mj8263788@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2022-05-17 15:11:22 +02:00

30 lines
1.3 KiB
Diff

From a51b310cccaeac9b0971323dc6fe641fa632c63c Mon Sep 17 00:00:00 2001
From: David Plowman <david.plowman@raspberrypi.com>
Date: Thu, 21 Oct 2021 14:49:15 +0100
Subject: [PATCH] vc04_services: isp: Report input node as wanting full
range RAW color space
RAW color spaces are more usually reported as having full range
quantization.
Tested using libcamera.
Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
---
drivers/staging/vc04_services/bcm2835-isp/bcm2835-v4l2-isp.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/drivers/staging/vc04_services/bcm2835-isp/bcm2835-v4l2-isp.c
+++ b/drivers/staging/vc04_services/bcm2835-isp/bcm2835-v4l2-isp.c
@@ -1032,7 +1032,9 @@ static int bcm2835_isp_node_try_fmt(stru
/* In all cases, we only support the defaults for these: */
f->fmt.pix.ycbcr_enc = V4L2_MAP_YCBCR_ENC_DEFAULT(f->fmt.pix.colorspace);
f->fmt.pix.xfer_func = V4L2_MAP_XFER_FUNC_DEFAULT(f->fmt.pix.colorspace);
- is_rgb = f->fmt.pix.colorspace == V4L2_COLORSPACE_SRGB;
+ /* RAW counts as sRGB here so that we get full range. */
+ is_rgb = f->fmt.pix.colorspace == V4L2_COLORSPACE_SRGB ||
+ f->fmt.pix.colorspace == V4L2_COLORSPACE_RAW;
f->fmt.pix.quantization = V4L2_MAP_QUANTIZATION_DEFAULT(is_rgb, f->fmt.pix.colorspace,
f->fmt.pix.ycbcr_enc);