OSDN Git Service

modetest: push pipe_resolve_connectors() to set_mode
authorEmil Velikov <emil.velikov@collabora.com>
Mon, 13 Apr 2020 14:33:50 +0000 (15:33 +0100)
committerEmil Velikov <emil.l.velikov@gmail.com>
Tue, 19 May 2020 20:09:35 +0000 (21:09 +0100)
The function is closely related to pipe_find_crtc_and_mode() so we might
as well keep them together.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com>
Tested-by: Ezequiel Garcia <ezequiel@collabora.com>
tests/modetest/modetest.c

index b08cb78..4e7026f 100644 (file)
@@ -1437,6 +1437,10 @@ static void set_mode(struct device *dev, struct pipe_arg *pipes, unsigned int co
        for (i = 0; i < count; i++) {
                struct pipe_arg *pipe = &pipes[i];
 
+               ret = pipe_resolve_connectors(dev, pipe);
+               if (ret < 0)
+                       return;
+
                ret = pipe_find_crtc_and_mode(dev, pipe);
                if (ret < 0)
                        continue;
@@ -1993,14 +1997,6 @@ int main(int argc, char **argv)
                return 1;
        }
 
-       for (i = 0; i < count; i++) {
-               if (pipe_resolve_connectors(&dev, &pipe_args[i]) < 0) {
-                       free_resources(dev.resources);
-                       drmClose(dev.fd);
-                       return 1;
-               }
-       }
-
 #define dump_resource(dev, res) if (res) dump_##res(dev)
 
        dump_resource(&dev, encoders);