summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2021-10-12 03:20:07 +0300
committerVille Syrjälä <ville.syrjala@linux.intel.com>2021-10-18 16:28:32 +0300
commit8460aec7cb836c048b43fc2095e9d543ed7e85d9 (patch)
tree2ce11d36f8e677a9fd9dba5ff011f078948b54f9
parent4a0d5d5c7b0ce18d44f259db8c5ecf27919e85c7 (diff)
lib/kms: Have igt_std_1024_mode_get() return a mode with specific refresh
Pass the desired refresh rate to igt_std_1024_mode_get(), and have it return a mode that will have said refresh rate. Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
-rw-r--r--lib/igt_kms.c8
-rw-r--r--lib/igt_kms.h2
-rw-r--r--tests/i915/kms_frontbuffer_tracking.c6
-rw-r--r--tests/kms_concurrent.c4
4 files changed, 10 insertions, 10 deletions
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index f833785b..b6669257 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -2478,10 +2478,10 @@ igt_output_t *igt_output_from_connector(igt_display_t *display,
return found;
}
-drmModeModeInfo *igt_std_1024_mode_get(void)
+drmModeModeInfo *igt_std_1024_mode_get(int vrefresh)
{
- static const drmModeModeInfo std_1024_mode = {
- .clock = 65000,
+ const drmModeModeInfo std_1024_mode = {
+ .clock = 65000 * vrefresh / 60,
.hdisplay = 1024,
.hsync_start = 1048,
.hsync_end = 1184,
@@ -2492,7 +2492,7 @@ drmModeModeInfo *igt_std_1024_mode_get(void)
.vsync_end = 777,
.vtotal = 806,
.vscan = 0,
- .vrefresh = 60,
+ .vrefresh = vrefresh,
.flags = 0xA,
.type = 0x40,
.name = "Custom 1024x768",
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index 50b81f01..7e3e67ef 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -470,7 +470,7 @@ igt_plane_t *igt_output_get_plane_type_index(igt_output_t *output,
igt_output_t *igt_output_from_connector(igt_display_t *display,
drmModeConnector *connector);
void igt_output_refresh(igt_output_t *output);
-drmModeModeInfo *igt_std_1024_mode_get(void);
+drmModeModeInfo *igt_std_1024_mode_get(int vrefresh);
void igt_output_set_writeback_fb(igt_output_t *output, struct igt_fb *fb);
void igt_modeset_disable_all_outputs(igt_display_t *display);
diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 007bbdeb..2a1ed5f5 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -313,7 +313,7 @@ static drmModeModeInfo *get_connector_smallest_mode(igt_output_t *output)
int i;
if (c->connector_type == DRM_MODE_CONNECTOR_eDP)
- return igt_std_1024_mode_get();
+ return igt_std_1024_mode_get(60);
for (i = 0; i < c->count_modes; i++) {
const drmModeModeInfo *mode = &c->modes[i];
@@ -327,7 +327,7 @@ static drmModeModeInfo *get_connector_smallest_mode(igt_output_t *output)
if (smallest)
return igt_memdup(smallest, sizeof(*smallest));
else
- return igt_std_1024_mode_get();
+ return igt_std_1024_mode_get(60);
}
static drmModeModeInfo *connector_get_mode(igt_output_t *output)
@@ -336,7 +336,7 @@ static drmModeModeInfo *connector_get_mode(igt_output_t *output)
* bugged. */
if (IS_HASWELL(intel_get_drm_devid(drm.fd)) &&
output->config.connector->connector_type == DRM_MODE_CONNECTOR_eDP)
- return igt_std_1024_mode_get();
+ return igt_std_1024_mode_get(60);
if (opt.small_modes)
return get_connector_smallest_mode(output);
diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c
index 82ef0adc..085eaa0a 100644
--- a/tests/kms_concurrent.c
+++ b/tests/kms_concurrent.c
@@ -231,7 +231,7 @@ get_lowres_mode(data_t *data, const drmModeModeInfo *mode_default,
int limit = mode_default->vdisplay - SIZE_PLANE;
if (!connector)
- return igt_std_1024_mode_get();
+ return igt_std_1024_mode_get(60);
for (int i = 0; i < connector->count_modes; i++) {
const drmModeModeInfo *mode = &connector->modes[i];
@@ -240,7 +240,7 @@ get_lowres_mode(data_t *data, const drmModeModeInfo *mode_default,
return igt_memdup(mode, sizeof(*mode));
}
- return igt_std_1024_mode_get();
+ return igt_std_1024_mode_get(60);
}
static void