From 5360d807b443339b53ee339c9d80c80bebed6aa0 Mon Sep 17 00:00:00 2001
From: Jacopo Mondi <jacopo@jmondi.org>
Date: Wed, 3 Feb 2021 16:43:22 +0100
Subject: android: camera_device: Report sensor test pattern mode
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The CaptureResultTest#testCameraCaptureResultAllKeys enforces the
presence of the ANDROID_SENSOR_TEST_PATTERN_MODE result metadata.

Report the only supported value of ANDROID_SENSOR_TEST_PATTERN_MODE_OFF.

Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
---
 src/android/camera_device.cpp | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

(limited to 'src/android')

diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp
index fabe45ac..1e2a933c 100644
--- a/src/android/camera_device.cpp
+++ b/src/android/camera_device.cpp
@@ -705,10 +705,10 @@ std::tuple<uint32_t, uint32_t> CameraDevice::calculateStaticMetadataSize()
 {
 	/*
 	 * \todo Keep this in sync with the actual number of entries.
-	 * Currently: 53 entries, 846 bytes of static metadata
+	 * Currently: 53 entries, 850 bytes of static metadata
 	 */
 	uint32_t numEntries = 53;
-	uint32_t byteSize = 846;
+	uint32_t byteSize = 850;
 
 	/*
 	 * Calculate space occupation in bytes for dynamically built metadata
@@ -1326,6 +1326,7 @@ const camera_metadata_t *CameraDevice::getStaticMetadata()
 		ANDROID_SCALER_CROP_REGION,
 		ANDROID_SENSOR_EXPOSURE_TIME,
 		ANDROID_SENSOR_ROLLING_SHUTTER_SKEW,
+		ANDROID_SENSOR_TEST_PATTERN_MODE,
 		ANDROID_SENSOR_TIMESTAMP,
 		ANDROID_STATISTICS_FACE_DETECT_MODE,
 		ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,
@@ -2010,7 +2011,7 @@ CameraDevice::getResultMetadata(Camera3RequestDescriptor *descriptor,
 	 * Total bytes for JPEG metadata: 82
 	 */
 	std::unique_ptr<CameraMetadata> resultMetadata =
-		std::make_unique<CameraMetadata>(42, 161);
+		std::make_unique<CameraMetadata>(43, 165);
 	if (!resultMetadata->isValid()) {
 		LOG(HAL, Error) << "Failed to allocate static metadata";
 		return nullptr;
@@ -2103,6 +2104,10 @@ CameraDevice::getResultMetadata(Camera3RequestDescriptor *descriptor,
 	resultMetadata->addEntry(ANDROID_LENS_OPTICAL_STABILIZATION_MODE,
 				 &value, 1);
 
+	value32 = ANDROID_SENSOR_TEST_PATTERN_MODE_OFF;
+	resultMetadata->addEntry(ANDROID_SENSOR_TEST_PATTERN_MODE,
+				 &value32, 1);
+
 	resultMetadata->addEntry(ANDROID_SENSOR_TIMESTAMP, &timestamp, 1);
 
 	value = ANDROID_STATISTICS_FACE_DETECT_MODE_OFF;
-- 
cgit v1.2.1