mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-12 02:16:17 +00:00
igt_kms: add kmstest_unset_all_crtcs()
Both pm_rpm.c and pm_lpsp.c call it "disable_all_screens", but let's give it a name that better describes what the implementation does. v2: Rename to kmstest_unset_all_crtcs (Daniel). Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
This commit is contained in:
parent
da458758e7
commit
d52365677e
@ -1561,3 +1561,21 @@ void igt_reset_connectors(void)
|
|||||||
|
|
||||||
close(drm_fd);
|
close(drm_fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* kmstest_unset_all_crtcs:
|
||||||
|
* @drm_fd: the DRM fd
|
||||||
|
* @resources: libdrm resources pointer
|
||||||
|
*
|
||||||
|
* Disables all the screens.
|
||||||
|
*/
|
||||||
|
void kmstest_unset_all_crtcs(int drm_fd, drmModeResPtr resources)
|
||||||
|
{
|
||||||
|
int i, rc;
|
||||||
|
|
||||||
|
for (i = 0; i < resources->count_crtcs; i++) {
|
||||||
|
rc = drmModeSetCrtc(drm_fd, resources->crtcs[i], -1, 0, 0, NULL,
|
||||||
|
0, NULL);
|
||||||
|
igt_assert(rc == 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -146,6 +146,7 @@ void kmstest_set_connector_dpms(int fd, drmModeConnector *connector, int mode);
|
|||||||
bool kmstest_get_property(int drm_fd, uint32_t object_id, uint32_t object_type,
|
bool kmstest_get_property(int drm_fd, uint32_t object_id, uint32_t object_type,
|
||||||
const char *name, uint32_t *prop_id, uint64_t *value,
|
const char *name, uint32_t *prop_id, uint64_t *value,
|
||||||
drmModePropertyPtr *prop);
|
drmModePropertyPtr *prop);
|
||||||
|
void kmstest_unset_all_crtcs(int drm_fd, drmModeResPtr resources);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* A small modeset API
|
* A small modeset API
|
||||||
|
@ -70,22 +70,11 @@ static bool lpsp_is_enabled(int drm_fd)
|
|||||||
return !(val & HSW_PWR_WELL_STATE_ENABLED);
|
return !(val & HSW_PWR_WELL_STATE_ENABLED);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void disable_all_screens(int drm_fd, drmModeResPtr drm_resources)
|
|
||||||
{
|
|
||||||
int i, rc;
|
|
||||||
|
|
||||||
for (i = 0; i < drm_resources->count_crtcs; i++) {
|
|
||||||
rc = drmModeSetCrtc(drm_fd, drm_resources->crtcs[i], -1, 0, 0,
|
|
||||||
NULL, 0, NULL);
|
|
||||||
igt_assert(rc == 0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* The LPSP mode is all about an enabled pipe, but we expect to also be in the
|
/* The LPSP mode is all about an enabled pipe, but we expect to also be in the
|
||||||
* low power mode when no pipes are enabled, so do this check anyway. */
|
* low power mode when no pipes are enabled, so do this check anyway. */
|
||||||
static void screens_disabled_subtest(int drm_fd, drmModeResPtr drm_res)
|
static void screens_disabled_subtest(int drm_fd, drmModeResPtr drm_res)
|
||||||
{
|
{
|
||||||
disable_all_screens(drm_fd, drm_res);
|
kmstest_unset_all_crtcs(drm_fd, drm_res);
|
||||||
igt_assert(lpsp_is_enabled(drm_fd));
|
igt_assert(lpsp_is_enabled(drm_fd));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -131,7 +120,7 @@ static void edp_subtest(int drm_fd, drmModeResPtr drm_res,
|
|||||||
.name = "Custom 1024x768",
|
.name = "Custom 1024x768",
|
||||||
};
|
};
|
||||||
|
|
||||||
disable_all_screens(drm_fd, drm_res);
|
kmstest_unset_all_crtcs(drm_fd, drm_res);
|
||||||
|
|
||||||
for (i = 0; i < drm_res->count_connectors; i++) {
|
for (i = 0; i < drm_res->count_connectors; i++) {
|
||||||
drmModeConnectorPtr c = drm_connectors[i];
|
drmModeConnectorPtr c = drm_connectors[i];
|
||||||
@ -193,7 +182,7 @@ static void non_edp_subtest(int drm_fd, drmModeResPtr drm_res,
|
|||||||
uint32_t connector_id = 0, crtc_id = 0, buffer_id = 0;
|
uint32_t connector_id = 0, crtc_id = 0, buffer_id = 0;
|
||||||
drmModeModeInfoPtr mode = NULL;
|
drmModeModeInfoPtr mode = NULL;
|
||||||
|
|
||||||
disable_all_screens(drm_fd, drm_res);
|
kmstest_unset_all_crtcs(drm_fd, drm_res);
|
||||||
|
|
||||||
for (i = 0; i < drm_res->count_connectors; i++) {
|
for (i = 0; i < drm_res->count_connectors; i++) {
|
||||||
drmModeConnectorPtr c = drm_connectors[i];
|
drmModeConnectorPtr c = drm_connectors[i];
|
||||||
|
@ -232,13 +232,7 @@ static void disable_all_screens_dpms(struct mode_set_data *data)
|
|||||||
|
|
||||||
static void disable_all_screens(struct mode_set_data *data)
|
static void disable_all_screens(struct mode_set_data *data)
|
||||||
{
|
{
|
||||||
int i, rc;
|
kmstest_unset_all_crtcs(drm_fd, data->res);
|
||||||
|
|
||||||
for (i = 0; i < data->res->count_crtcs; i++) {
|
|
||||||
rc = drmModeSetCrtc(drm_fd, data->res->crtcs[i], -1, 0, 0,
|
|
||||||
NULL, 0, NULL);
|
|
||||||
igt_assert(rc == 0);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct scanout_fb *create_fb(struct mode_set_data *data, int width,
|
static struct scanout_fb *create_fb(struct mode_set_data *data, int width,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user