mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-23 07:46:15 +00:00
kms_rotation_crc: Framebuffer used for initial modeset does not need to be painted
It is just there to light up the display using the full modeset. Also renamed it from fb_full to fb_modeset to be more descriptive. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Sonika Jindal <sonika.jindal@intel.com> Reviewed-by: Sonika Jindal <sonika.jindal@intel.com> Signed-off-by: Thomas Wood <thomas.wood@intel.com>
This commit is contained in:
parent
4dd79d13c9
commit
d901106240
@ -35,7 +35,7 @@ typedef struct {
|
||||
igt_display_t display;
|
||||
struct igt_fb fb;
|
||||
struct igt_fb fb_cursor;
|
||||
struct igt_fb fb_full;
|
||||
struct igt_fb fb_modeset;
|
||||
igt_crc_t ref_crc;
|
||||
igt_pipe_crc_t *pipe_crc;
|
||||
igt_rotation_t rotation;
|
||||
@ -117,11 +117,10 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
|
||||
{
|
||||
drmModeModeInfo *mode;
|
||||
igt_display_t *display = &data->display;
|
||||
int fb_id, fb_cursor_id, fb_full_id;
|
||||
int fb_id, fb_cursor_id, fb_modeset_id;
|
||||
int w, h;
|
||||
uint64_t tiling = LOCAL_DRM_FORMAT_MOD_NONE;
|
||||
enum igt_commit_style commit = COMMIT_LEGACY;
|
||||
int old_rotation;
|
||||
igt_plane_t *primary;
|
||||
|
||||
igt_output_set_pipe(output, pipe);
|
||||
@ -135,12 +134,12 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
|
||||
w = mode->hdisplay;
|
||||
h = mode->vdisplay;
|
||||
|
||||
fb_full_id = igt_create_fb(data->gfx_fd,
|
||||
fb_modeset_id = igt_create_fb(data->gfx_fd,
|
||||
w, h,
|
||||
DRM_FORMAT_XRGB8888,
|
||||
tiling,
|
||||
&data->fb_full);
|
||||
igt_assert(fb_full_id);
|
||||
&data->fb_modeset);
|
||||
igt_assert(fb_modeset_id);
|
||||
|
||||
/*
|
||||
* With igt_display_commit2 and COMMIT_UNIVERSAL, we call just the
|
||||
@ -149,13 +148,9 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
|
||||
* we create an fb covering the crtc and call commit
|
||||
*/
|
||||
|
||||
old_rotation = data->rotation;
|
||||
data->rotation = IGT_ROTATION_0;
|
||||
primary = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
|
||||
paint_squares(data, &data->fb_full, mode, IGT_ROTATION_0, primary);
|
||||
igt_plane_set_fb(primary, &data->fb_full);
|
||||
igt_plane_set_fb(primary, &data->fb_modeset);
|
||||
igt_display_commit(display);
|
||||
data->rotation = old_rotation;
|
||||
|
||||
/*
|
||||
* For 90/270, we will use create smaller fb so that the rotated
|
||||
@ -221,7 +216,7 @@ static void cleanup_crtc(data_t *data, igt_output_t *output, igt_plane_t *plane)
|
||||
|
||||
igt_remove_fb(data->gfx_fd, &data->fb);
|
||||
igt_remove_fb(data->gfx_fd, &data->fb_cursor);
|
||||
igt_remove_fb(data->gfx_fd, &data->fb_full);
|
||||
igt_remove_fb(data->gfx_fd, &data->fb_modeset);
|
||||
|
||||
/* XXX: see the note in prepare_crtc() */
|
||||
if (!plane->is_primary) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user