testdisplay: find planes for each pipe

Fixes a bug where we were masking against the wrong value.
This commit is contained in:
Jesse Barnes 2011-11-02 12:57:40 -07:00
parent 3afb7b22d6
commit 9c29be40bc

View File

@ -164,6 +164,7 @@ struct connector {
drmModeEncoder *encoder; drmModeEncoder *encoder;
drmModeConnector *connector; drmModeConnector *connector;
int crtc; int crtc;
int pipe;
}; };
static void dump_mode(drmModeModeInfo *mode) static void dump_mode(drmModeModeInfo *mode)
@ -371,6 +372,7 @@ static void connector_find_preferred_mode(struct connector *c)
break; break;
} }
c->crtc = resources->crtcs[i]; c->crtc = resources->crtcs[i];
c->pipe = i;
resources->crtcs[i] = 0; resources->crtcs[i] = 0;
c->connector = connector; c->connector = connector;
} }
@ -675,7 +677,7 @@ connector_find_plane(struct connector *c)
continue; continue;
} }
if (ovr->possible_crtcs & (1<<i)) { if (ovr->possible_crtcs & (1 << c->pipe)) {
id = ovr->plane_id; id = ovr->plane_id;
drmModeFreePlane(ovr); drmModeFreePlane(ovr);
break; break;