[igt-dev] [PATCH i-g-t 2/2] tests/kms_properties: Add functional test for "max bpc" property

Radhakrishna Sripada radhakrishna.sripada at intel.com
Thu Oct 11 00:14:16 UTC 2018


Test the values in the range advertised by the "max bpc" property.

Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada at intel.com>
---
 tests/kms_properties.c | 32 +++++++++++++++++++++++++++++++-
 1 file changed, 31 insertions(+), 1 deletion(-)

diff --git a/tests/kms_properties.c b/tests/kms_properties.c
index bd3e82761f6e..97b5b950b5a5 100644
--- a/tests/kms_properties.c
+++ b/tests/kms_properties.c
@@ -82,7 +82,37 @@ static bool ignore_property(uint32_t obj_type, uint32_t prop_flags,
 	return false;
 }
 
-static const struct additional_test property_functional_test[] = {};
+static void max_bpc_prop_test(int fd, uint32_t id, uint32_t type, drmModePropertyPtr prop,
+			      uint32_t prop_id, uint64_t prop_value, bool atomic)
+{
+	drmModeAtomicReqPtr req = NULL;
+	int i, ret;
+
+	if (atomic)
+		req = drmModeAtomicAlloc();
+
+	for ( i = prop->values[0]; i < prop->values[1] ; i++) {
+		if (!atomic) {
+			ret = drmModeObjectSetProperty(fd, id, type, prop_id, i);
+
+			igt_assert_eq(ret, 0);
+		} else {
+			ret = drmModeAtomicAddProperty(req, id, prop_id, i);
+			igt_assert(ret >= 0);
+
+			ret = drmModeAtomicCommit(fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
+			igt_assert_eq(ret, 0);
+		}
+	}
+
+	if (atomic)
+		drmModeAtomicFree(req);
+}
+
+static const struct additional_test property_functional_test[] = {
+									{"max bpc", DRM_MODE_OBJECT_CONNECTOR,
+									 max_bpc_prop_test},
+								 };
 
 static bool has_additional_test_lookup(uint32_t obj_type, const char *name,
 				bool atomic, int *index)
-- 
2.9.3



More information about the igt-dev mailing list