From: Maxime Ripard Date: Fri, 14 Apr 2023 10:57:53 +0000 (+0200) Subject: drm/vc4: tests: Add helper to add a new plane to a state X-Git-Tag: accepted/tizen/unified/20240422.153132~349 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=35d5d93877318eeaa170bb7e5c2f4edb6088b908;p=platform%2Fkernel%2Flinux-rpi.git drm/vc4: tests: Add helper to add a new plane to a state We'll start to add some tests for the plane state logic, so let's create a helper to add a plane to an existing atomic state. Signed-off-by: Maxime Ripard --- diff --git a/drivers/gpu/drm/vc4/tests/vc4_mock.h b/drivers/gpu/drm/vc4/tests/vc4_mock.h index fabae9f..1f3d064 100644 --- a/drivers/gpu/drm/vc4/tests/vc4_mock.h +++ b/drivers/gpu/drm/vc4/tests/vc4_mock.h @@ -42,6 +42,10 @@ struct vc4_dummy_plane { struct vc4_dummy_plane *vc4_dummy_plane(struct kunit *test, struct drm_device *drm, enum drm_plane_type type); +struct drm_plane * +vc4_mock_atomic_add_plane(struct kunit *test, + struct drm_atomic_state *state, + struct drm_crtc *crtc); struct vc4_dummy_crtc { struct vc4_crtc crtc; diff --git a/drivers/gpu/drm/vc4/tests/vc4_mock_plane.c b/drivers/gpu/drm/vc4/tests/vc4_mock_plane.c index 5f21165..e1bdcb8 100644 --- a/drivers/gpu/drm/vc4/tests/vc4_mock_plane.c +++ b/drivers/gpu/drm/vc4/tests/vc4_mock_plane.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 #include +#include #include #include #include @@ -46,3 +47,24 @@ struct vc4_dummy_plane *vc4_dummy_plane(struct kunit *test, return dummy_plane; } + +struct drm_plane * +vc4_mock_atomic_add_plane(struct kunit *test, + struct drm_atomic_state *state, + struct drm_crtc *crtc) +{ + struct drm_plane_state *plane_state; + struct drm_plane *plane; + int ret; + + plane = vc4_mock_find_plane_for_crtc(test, crtc); + KUNIT_ASSERT_NOT_ERR_OR_NULL(test, plane); + + plane_state = drm_atomic_get_plane_state(state, plane); + KUNIT_ASSERT_NOT_ERR_OR_NULL(test, plane_state); + + ret = drm_atomic_set_crtc_for_plane(plane_state, crtc); + KUNIT_EXPECT_EQ(test, ret, 0); + + return plane; +}