From 3d46ca8c4d43adfd9827b4b21648a4fddd03c254 Mon Sep 17 00:00:00 2001 From: Yi Sun Date: Fri, 3 Feb 2012 22:45:39 +0800 Subject: tests/testdisplay.c: rewite function dump_connectors and dump_crtcs. Replace the globe variable drm_fd with local variable passed from parameter. Signed-off-by: Yi Sun [danvet: fixup whitespace] Signed-off-by: Daniel Vetter --- tests/testdisplay.c | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) (limited to 'tests') diff --git a/tests/testdisplay.c b/tests/testdisplay.c index 5e2f5fe3..29ea94f9 100644 --- a/tests/testdisplay.c +++ b/tests/testdisplay.c @@ -176,19 +176,28 @@ static void dump_mode(drmModeModeInfo *mode) mode->clock); } -static void dump_connectors(void) + +static void dump_connectors_fd(int drmfd) { int i, j; + drmModeRes *mode_resources = drmModeGetResources(drmfd); + + if (!mode_resources) { + fprintf(stderr, "drmModeGetResources failed: %s\n", + strerror(errno)); + return; + } + printf("Connectors:\n"); printf("id\tencoder\tstatus\t\ttype\tsize (mm)\tmodes\n"); - for (i = 0; i < resources->count_connectors; i++) { + for (i = 0; i < mode_resources->count_connectors; i++) { drmModeConnector *connector; - connector = drmModeGetConnector(drm_fd, resources->connectors[i]); + connector = drmModeGetConnector(drmfd, mode_resources->connectors[i]); if (!connector) { fprintf(stderr, "could not get connector %i: %s\n", - resources->connectors[i], strerror(errno)); + mode_resources->connectors[i], strerror(errno)); continue; } @@ -212,21 +221,24 @@ static void dump_connectors(void) drmModeFreeConnector(connector); } printf("\n"); + + drmModeFreeResources(mode_resources); } -static void dump_crtcs(void) +static void dump_crtcs_fd(int drmfd) { int i; + drmModeRes *mode_resources = drmModeGetResources(drmfd); printf("CRTCs:\n"); printf("id\tfb\tpos\tsize\n"); - for (i = 0; i < resources->count_crtcs; i++) { + for (i = 0; i < mode_resources->count_crtcs; i++) { drmModeCrtc *crtc; - crtc = drmModeGetCrtc(drm_fd, resources->crtcs[i]); + crtc = drmModeGetCrtc(drmfd, mode_resources->crtcs[i]); if (!crtc) { fprintf(stderr, "could not get crtc %i: %s\n", - resources->crtcs[i], strerror(errno)); + mode_resources->crtcs[i], strerror(errno)); continue; } printf("%d\t%d\t(%d,%d)\t(%dx%d)\n", @@ -239,8 +251,11 @@ static void dump_crtcs(void) drmModeFreeCrtc(crtc); } printf("\n"); + + drmModeFreeResources(mode_resources); } + #ifdef TEST_PLANES static void dump_planes(void) { @@ -250,7 +265,7 @@ static void dump_planes(void) plane_resources = drmModeGetPlaneResources(drm_fd); if (!plane_resources) { - fprintf(stderr, "drmModeGetPlaneResources failed: %s\n", + fprintf(stderr, "drmModeGetPlaneResources dump failed: %s\n", strerror(errno)); return; } @@ -974,8 +989,8 @@ int update_display(void) return 0; if (dump_info) { - dump_connectors(); - dump_crtcs(); + dump_connectors_fd(drm_fd); + dump_crtcs_fd(drm_fd); dump_planes(); } -- cgit v1.2.3