// SPDX-License-Identifier: GPL-2.0 /* * Test cases for the drm_atomic_state helpers * * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
if (connector) {
ret = drm_atomic_commit(state);
KUNIT_ASSERT_EQ(test, ret, 0);
} else { // dummy connector mask
crtc_state->connector_mask = DRM_TEST_CONN_0;
}
return 0;
}
/* * Test that the DRM encoder mode_set() is called when the atomic state * connectors are changed but the CRTC mode is not.
*/ staticvoid drm_test_check_connector_changed_modeset(struct kunit *test)
{ struct drm_atomic_test_priv *priv; struct drm_modeset_acquire_ctx ctx; struct drm_connector *old_conn, *new_conn; struct drm_atomic_state *state; struct drm_device *drm; struct drm_connector_state *new_conn_state, *old_conn_state; int ret, initial_modeset_count;
ret = drm_atomic_set_crtc_for_connector(old_conn_state, NULL);
KUNIT_EXPECT_EQ(test, ret, 0);
ret = drm_atomic_set_crtc_for_connector(new_conn_state, priv->crtc);
KUNIT_EXPECT_EQ(test, ret, 0);
initial_modeset_count = modeset_counter;
// modeset_disables is called as part of the atomic commit tail
ret = drm_atomic_commit(state);
KUNIT_ASSERT_EQ(test, ret, 0);
KUNIT_ASSERT_EQ(test, modeset_counter, initial_modeset_count + 1);
/* * Test that the drm_crtc_in_clone_mode() helper can detect if a given CRTC * state is in clone mode
*/ staticvoid drm_test_check_in_clone_mode(struct kunit *test)
{ bool ret; conststruct drm_clone_mode_test *param = test->param_value; struct drm_crtc_state *crtc_state;
/* * Test that the atomic commit path will succeed for valid clones (or non-cloned * states) and fail for states where the cloned encoders are not possible_clones * of each other.
*/ staticvoid drm_test_check_valid_clones(struct kunit *test)
{ int ret; conststruct drm_clone_mode_test *param = test->param_value; struct drm_atomic_test_priv *priv; struct drm_modeset_acquire_ctx ctx; struct drm_device *drm; struct drm_atomic_state *state; struct drm_crtc_state *crtc_state;
MODULE_AUTHOR("Jessica Zhang <quic_jesszhan@quicinc.com");
MODULE_DESCRIPTION("Test cases for the drm_atomic_helper functions");
MODULE_LICENSE("GPL");
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.1 Sekunden
(vorverarbeitet am 2026-04-29)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.