mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-20 06:16:13 +00:00
tests/pm_rpm: use kmstest_get_property()
So we can reduce the code size. v2: Rebase after the rename to kmstest_get_property. Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
This commit is contained in:
parent
4924b78368
commit
da458758e7
@ -348,29 +348,25 @@ static void enable_one_screen(struct mode_set_data *data)
|
|||||||
static drmModePropertyBlobPtr get_connector_edid(drmModeConnectorPtr connector,
|
static drmModePropertyBlobPtr get_connector_edid(drmModeConnectorPtr connector,
|
||||||
int index)
|
int index)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
bool found;
|
||||||
drmModeObjectPropertiesPtr props;
|
uint64_t prop_value;
|
||||||
drmModePropertyBlobPtr ret = NULL;
|
drmModePropertyPtr prop;
|
||||||
|
drmModePropertyBlobPtr blob = NULL;
|
||||||
|
|
||||||
props = drmModeObjectGetProperties(drm_fd, connector->connector_id,
|
found = kmstest_get_property(drm_fd, connector->connector_id,
|
||||||
DRM_MODE_OBJECT_CONNECTOR);
|
DRM_MODE_OBJECT_CONNECTOR, "EDID",
|
||||||
|
NULL, &prop_value, &prop);
|
||||||
|
|
||||||
for (i = 0; i < props->count_props; i++) {
|
if (found) {
|
||||||
drmModePropertyPtr prop = drmModeGetProperty(drm_fd,
|
igt_assert(prop->flags & DRM_MODE_PROP_BLOB);
|
||||||
props->props[i]);
|
igt_assert(prop->count_blobs == 0);
|
||||||
|
|
||||||
if (strcmp(prop->name, "EDID") == 0) {
|
blob = drmModeGetPropertyBlob(drm_fd, prop_value);
|
||||||
igt_assert(prop->flags & DRM_MODE_PROP_BLOB);
|
|
||||||
igt_assert(prop->count_blobs == 0);
|
|
||||||
ret = drmModeGetPropertyBlob(drm_fd,
|
|
||||||
props->prop_values[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
drmModeFreeProperty(prop);
|
drmModeFreeProperty(prop);
|
||||||
}
|
}
|
||||||
|
|
||||||
drmModeFreeObjectProperties(props);
|
return blob;
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void init_mode_set_data(struct mode_set_data *data)
|
static void init_mode_set_data(struct mode_set_data *data)
|
||||||
@ -1529,52 +1525,39 @@ static void cursor_subtest(bool dpms)
|
|||||||
|
|
||||||
static enum plane_type get_plane_type(uint32_t plane_id)
|
static enum plane_type get_plane_type(uint32_t plane_id)
|
||||||
{
|
{
|
||||||
drmModeObjectPropertiesPtr props;
|
int i;
|
||||||
int i, j;
|
bool found;
|
||||||
|
uint64_t prop_value;
|
||||||
|
drmModePropertyPtr prop;
|
||||||
|
const char *enum_name = NULL;
|
||||||
enum plane_type type;
|
enum plane_type type;
|
||||||
bool found = false;
|
|
||||||
|
|
||||||
props = drmModeObjectGetProperties(drm_fd, plane_id,
|
found = kmstest_get_property(drm_fd, plane_id, DRM_MODE_OBJECT_PLANE,
|
||||||
DRM_MODE_OBJECT_PLANE);
|
"type", NULL, &prop_value, &prop);
|
||||||
igt_assert(props);
|
|
||||||
|
|
||||||
for (i = 0; i < props->count_props && !found; i++) {
|
|
||||||
drmModePropertyPtr prop;
|
|
||||||
const char *enum_name = NULL;
|
|
||||||
|
|
||||||
prop = drmModeGetProperty(drm_fd, props->props[i]);
|
|
||||||
igt_assert(prop);
|
|
||||||
|
|
||||||
if (strcmp(prop->name, "type") == 0) {
|
|
||||||
igt_assert(prop->flags & DRM_MODE_PROP_ENUM);
|
|
||||||
igt_assert(props->prop_values[i] < prop->count_enums);
|
|
||||||
|
|
||||||
for (j = 0; j < prop->count_enums; j++) {
|
|
||||||
if (prop->enums[j].value ==
|
|
||||||
props->prop_values[i]) {
|
|
||||||
enum_name = prop->enums[j].name;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
igt_assert(enum_name);
|
|
||||||
|
|
||||||
if (strcmp(enum_name, "Overlay") == 0)
|
|
||||||
type = PLANE_OVERLAY;
|
|
||||||
else if (strcmp(enum_name, "Primary") == 0)
|
|
||||||
type = PLANE_PRIMARY;
|
|
||||||
else if (strcmp(enum_name, "Cursor") == 0)
|
|
||||||
type = PLANE_CURSOR;
|
|
||||||
else
|
|
||||||
igt_assert(0);
|
|
||||||
|
|
||||||
found = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
drmModeFreeProperty(prop);
|
|
||||||
}
|
|
||||||
igt_assert(found);
|
igt_assert(found);
|
||||||
|
|
||||||
drmModeFreeObjectProperties(props);
|
igt_assert(prop->flags & DRM_MODE_PROP_ENUM);
|
||||||
|
igt_assert(prop_value < prop->count_enums);
|
||||||
|
|
||||||
|
for (i = 0; i < prop->count_enums; i++) {
|
||||||
|
if (prop->enums[i].value == prop_value) {
|
||||||
|
enum_name = prop->enums[i].name;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
igt_assert(enum_name);
|
||||||
|
|
||||||
|
if (strcmp(enum_name, "Overlay") == 0)
|
||||||
|
type = PLANE_OVERLAY;
|
||||||
|
else if (strcmp(enum_name, "Primary") == 0)
|
||||||
|
type = PLANE_PRIMARY;
|
||||||
|
else if (strcmp(enum_name, "Cursor") == 0)
|
||||||
|
type = PLANE_CURSOR;
|
||||||
|
else
|
||||||
|
igt_assert(0);
|
||||||
|
|
||||||
|
drmModeFreeProperty(prop);
|
||||||
|
|
||||||
return type;
|
return type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user