mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-11 01:46:14 +00:00
tests/kms_cursor_crc: Call drmModeMoveCursor() directly
We're calling drmModeSetCursor() to change the cursor image and never actually doing a display commit (aside from when we display the cursor), so call the move ioctl directly rather than igt_plane_set_position() to ensure the changes actually take effect. Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
This commit is contained in:
parent
07087ada29
commit
3f46e81558
@ -349,10 +349,10 @@ static void test_cursor_size(data_t *data)
|
|||||||
igt_display_t *display = &data->display;
|
igt_display_t *display = &data->display;
|
||||||
igt_pipe_crc_t *pipe_crc = data->pipe_crc;
|
igt_pipe_crc_t *pipe_crc = data->pipe_crc;
|
||||||
igt_crc_t crc[10], ref_crc;
|
igt_crc_t crc[10], ref_crc;
|
||||||
igt_plane_t *cursor;
|
|
||||||
cairo_t *cr;
|
cairo_t *cr;
|
||||||
uint32_t fb_id;
|
uint32_t fb_id;
|
||||||
int i, size, cursor_max_size = data->cursor_max_size;
|
int i, size, cursor_max_size = data->cursor_max_size;
|
||||||
|
int ret;
|
||||||
|
|
||||||
/* Create a maximum size cursor, then change the size in flight to
|
/* Create a maximum size cursor, then change the size in flight to
|
||||||
* smaller ones to see that the size is applied correctly
|
* smaller ones to see that the size is applied correctly
|
||||||
@ -367,12 +367,12 @@ static void test_cursor_size(data_t *data)
|
|||||||
|
|
||||||
/* Hardware test loop */
|
/* Hardware test loop */
|
||||||
cursor_enable(data);
|
cursor_enable(data);
|
||||||
cursor = igt_output_get_plane(data->output, IGT_PLANE_CURSOR);
|
ret = drmModeMoveCursor(data->drm_fd, data->output->config.crtc->crtc_id, 0, 0);
|
||||||
igt_plane_set_position(cursor, 0, 0);
|
igt_assert(ret == 0);
|
||||||
for (i = 0, size = cursor_max_size; size >= 64; size /= 2, i++) {
|
for (i = 0, size = cursor_max_size; size >= 64; size /= 2, i++) {
|
||||||
/* Change size in flight: */
|
/* Change size in flight: */
|
||||||
int ret = drmModeSetCursor(data->drm_fd, data->output->config.crtc->crtc_id,
|
ret = drmModeSetCursor(data->drm_fd, data->output->config.crtc->crtc_id,
|
||||||
data->fb.gem_handle, size, size);
|
data->fb.gem_handle, size, size);
|
||||||
igt_assert(ret == 0);
|
igt_assert(ret == 0);
|
||||||
igt_wait_for_vblank(data->drm_fd, data->pipe);
|
igt_wait_for_vblank(data->drm_fd, data->pipe);
|
||||||
igt_pipe_crc_collect_crc(pipe_crc, &crc[i]);
|
igt_pipe_crc_collect_crc(pipe_crc, &crc[i]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user