mirror of
https://github.com/X11Libre/xf86-video-ati.git
synced 2026-03-24 01:24:43 +00:00
Refactor drmmode_output_set_tear_free helper
Preparation for the following fix, no functional change intended. (Ported from amdgpu commit fa30f4601de7a44edfb4a95873bd648946fd4292) Acked-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Michel Dänzer
parent
ee7e157461
commit
f01d8cf2bd
@@ -1743,6 +1743,22 @@ drmmode_output_create_resources(xf86OutputPtr output)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
drmmode_output_set_tear_free(RADEONEntPtr pRADEONEnt,
|
||||||
|
drmmode_output_private_ptr drmmode_output,
|
||||||
|
xf86CrtcPtr crtc, int tear_free)
|
||||||
|
{
|
||||||
|
if (drmmode_output->tear_free == tear_free)
|
||||||
|
return;
|
||||||
|
|
||||||
|
drmmode_output->tear_free = tear_free;
|
||||||
|
|
||||||
|
if (crtc) {
|
||||||
|
drmmode_set_mode_major(crtc, &crtc->mode, crtc->rotation,
|
||||||
|
crtc->x, crtc->y);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static Bool
|
static Bool
|
||||||
drmmode_output_set_property(xf86OutputPtr output, Atom property,
|
drmmode_output_set_property(xf86OutputPtr output, Atom property,
|
||||||
RRPropertyValuePtr value)
|
RRPropertyValuePtr value)
|
||||||
@@ -1783,16 +1799,8 @@ drmmode_output_set_property(xf86OutputPtr output, Atom property,
|
|||||||
for (j = 0; j < p->mode_prop->count_enums; j++) {
|
for (j = 0; j < p->mode_prop->count_enums; j++) {
|
||||||
if (!strcmp(p->mode_prop->enums[j].name, name)) {
|
if (!strcmp(p->mode_prop->enums[j].name, name)) {
|
||||||
if (i == (drmmode_output->num_props - 1)) {
|
if (i == (drmmode_output->num_props - 1)) {
|
||||||
if (drmmode_output->tear_free != j) {
|
drmmode_output_set_tear_free(pRADEONEnt, drmmode_output,
|
||||||
xf86CrtcPtr crtc = output->crtc;
|
output->crtc, j);
|
||||||
|
|
||||||
drmmode_output->tear_free = j;
|
|
||||||
if (crtc) {
|
|
||||||
drmmode_set_mode_major(crtc, &crtc->mode,
|
|
||||||
crtc->rotation,
|
|
||||||
crtc->x, crtc->y);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
drmModeConnectorSetProperty(pRADEONEnt->fd,
|
drmModeConnectorSetProperty(pRADEONEnt->fd,
|
||||||
drmmode_output->output_id,
|
drmmode_output->output_id,
|
||||||
|
|||||||
Reference in New Issue
Block a user