From 14388783098d8fefcbec403c6c0780f967ad919e Mon Sep 17 00:00:00 2001
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: Fri, 27 May 2016 17:08:34 +0300
Subject: tests: Add CLU and LUT test

Test CLU and LUT operation in both RGB and YUV modes with different look
up tables.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 tests/vsp-unit-test-0010.sh | 55 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)
 create mode 100755 tests/vsp-unit-test-0010.sh

(limited to 'tests')

diff --git a/tests/vsp-unit-test-0010.sh b/tests/vsp-unit-test-0010.sh
new file mode 100755
index 0000000..fc6ded6
--- /dev/null
+++ b/tests/vsp-unit-test-0010.sh
@@ -0,0 +1,55 @@
+#!/bin/sh
+
+#
+# Test CLU and LUT in RGB and YUV modes. Use a RPF -> CLU -> WPF and
+# RPF -> LUT -> WPF pipelines with identical input and output formats.
+#
+
+source vsp-lib.sh
+
+features="rpf.0 clu lut wpf.0"
+formats="RGB24 YUV444M"
+
+lut_types="clu lut"
+
+# Keep the "zero" configuration first to catch lack of hardware table setup
+# due to V4L2 control caching, as the initial value of the LUT and CLU table
+# controls is all 0.
+clu_configs="zero identity wave"
+lut_configs="zero identity gamma"
+
+test_lut() {
+	lut_type=$1
+	format=$2
+	config=$3
+
+	test_start "$(echo $lut_type | tr [:lower:] [:upper:]) in $format with $config configuration"
+
+	config_file=frames/${lut_type}-${config}.bin
+
+	pipe_configure rpf-${lut_type}
+	format_configure rpf-${lut_type} $format 1024x768
+
+	vsp1_set_control $lut_type "Look-Up+Table" "<$config_file"
+
+	vsp_runner rpf.0 &
+	vsp_runner wpf.0
+
+	result=$(compare_frames $lut_type=$config_file)
+
+	test_complete $result
+}
+
+test_main() {
+	for lut in $lut_types ; do
+		configs=$(eval echo \$${lut}_configs)
+		for format in $formats ; do
+			for config in $configs ; do
+				test_lut $lut $format $config
+			done
+		done
+	done
+}
+
+test_init $0 "$features"
+test_run
-- 
cgit v1.2.3