From 85327adcf9b3007f7dd06144cfbed90959b82b53 Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Sat, 8 Aug 2020 00:16:41 +0300 Subject: tests: planeposition: Test disabling and enabling off-screen planes Add a test to enable an off-screen plane, in addition to the existing tests that move enabled planes on screen. This new test crashes the DU driver. Signed-off-by: Laurent Pinchart --- tests/kms-test-planeposition.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/kms-test-planeposition.py b/tests/kms-test-planeposition.py index a7cc111..0381896 100755 --- a/tests/kms-test-planeposition.py +++ b/tests/kms-test-planeposition.py @@ -103,6 +103,23 @@ class PlanePositionTest(kmstest.KMSTest): self.logger.log("Moved overlay plane to %d,%d" % offset) time.sleep(3) + # Disable and re-enable the plane when it is off-screen. The device is + # still expected to handle this gracefully. + ret = self.atomic_plane_disable(planes[1]) + if ret < 0: + self.fail("off-screen atomic plane disable failed") + return + + width = fb.width - 100 + height = fb.height - 100 + source = kmstest.Rect(0, 0, width, height) + destination = kmstest.Rect(mode.hdisplay, 50, width, height) + + ret = self.atomic_plane_set(planes[1], crtc, source, destination, fb, sync=True) + if ret < 0: + self.fail("off-scrren atomic plane enable failed") + return + self.atomic_crtc_disable(crtc) self.success() -- cgit v1.2.3