You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openwrt/target/linux/bcm27xx/patches-4.19/950-0692-staging-bcm2835-ca...

49 lines
1.7 KiB
Diff

From b5ec436637af67f37efad1550945b750101527d4 Mon Sep 17 00:00:00 2001
From: Dave Stevenson <dave.stevenson@raspberrypi.org>
Date: Fri, 6 Sep 2019 15:13:06 +0100
Subject: [PATCH] staging: bcm2835-camera: Add greyworld AWB mode
This is mainly used for the NoIR camera which has no IR
filter and can completely confuse normal AWB presets.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
---
drivers/staging/vc04_services/bcm2835-camera/controls.c | 8 ++++++--
.../staging/vc04_services/vchiq-mmal/mmal-parameters.h | 1 +
2 files changed, 7 insertions(+), 2 deletions(-)
--- a/drivers/staging/vc04_services/bcm2835-camera/controls.c
+++ b/drivers/staging/vc04_services/bcm2835-camera/controls.c
@@ -481,6 +481,10 @@ static int ctrl_set_awb_mode(struct bm28
case V4L2_WHITE_BALANCE_SHADE:
u32_value = MMAL_PARAM_AWBMODE_SHADE;
break;
+
+ case V4L2_WHITE_BALANCE_GREYWORLD:
+ u32_value = MMAL_PARAM_AWBMODE_GREYWORLD;
+ break;
}
return vchiq_mmal_port_parameter_set(dev->instance, control,
@@ -1008,8 +1012,8 @@ static const struct bm2835_mmal_v4l2_ctr
{
V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE,
MMAL_CONTROL_TYPE_STD_MENU,
- ~0x3ff, V4L2_WHITE_BALANCE_SHADE, V4L2_WHITE_BALANCE_AUTO, 0,
- NULL,
+ ~0x7ff, V4L2_WHITE_BALANCE_GREYWORLD, V4L2_WHITE_BALANCE_AUTO,
+ 0, NULL,
MMAL_PARAMETER_AWB_MODE,
&ctrl_set_awb_mode,
false
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h
@@ -313,6 +313,7 @@ enum mmal_parameter_awbmode {
MMAL_PARAM_AWBMODE_INCANDESCENT,
MMAL_PARAM_AWBMODE_FLASH,
MMAL_PARAM_AWBMODE_HORIZON,
+ MMAL_PARAM_AWBMODE_GREYWORLD,
};
enum mmal_parameter_imagefx {