diff options
-rw-r--r-- | drminfo.c | 41 | ||||
-rw-r--r-- | meson.build | 12 |
2 files changed, 33 insertions, 20 deletions
@@ -19,6 +19,7 @@ #include <pixman.h> #include "drmtools.h" +#include "drm-lease.h" #include "logind.h" static int ttycols = 80; @@ -439,25 +440,27 @@ static void usage(FILE *fp) "usage: drminfo [ options ]\n" "\n" "options:\n" - " -h print this text\n" - " -c <nr> pick card\n" - " -a print all card info\n" - " -A print all card info, with plane modifiers\n" - " -m print misc card info\n" - " -s print capabilities\n" - " -o print supported outputs (crtcs)\n" - " -p print supported planes\n" - " -P print supported planes, with modifiers\n" - " -f print supported formats\n" - " -F print testable (drmtest) formats\n" - " -r list properties\n" - " -l list all known formats\n" + " -h print this text\n" + " -c <nr> pick card\n" + " -a print all card info\n" + " -A print all card info, with plane modifiers\n" + " -m print misc card info\n" + " -s print capabilities\n" + " -o print supported outputs (crtcs)\n" + " -p print supported planes\n" + " -P print supported planes, with modifiers\n" + " -f print supported formats\n" + " -F print testable (drmtest) formats\n" + " -r list properties\n" + " -l list all known formats\n" + " -L <output> get a drm lease for output\n" "\n"); } int main(int argc, char **argv) { int card = 0; + int lease_fd = -1; int c, fd; bool misc = false; bool caps = false; @@ -470,7 +473,7 @@ int main(int argc, char **argv) char *columns; for (;;) { - c = getopt(argc, argv, "hlaAmsopPfFrc:"); + c = getopt(argc, argv, "hlaAmsopPfFrL:c:"); if (c == -1) break; switch (c) { @@ -514,6 +517,9 @@ int main(int argc, char **argv) case 'f': format = true; break; + case 'L': + lease_fd = drm_lease(optarg); + break; case 'h': usage(stdout); exit(0); @@ -536,7 +542,12 @@ int main(int argc, char **argv) logind_init(); - fd = drm_open(card); + if (lease_fd >= 0) { + fd = lease_fd; + } else { + fd = drm_open(card); + } + if (misc) drm_info_misc(fd); if (caps) diff --git a/meson.build b/meson.build index e1d62e0..37b4764 100644 --- a/meson.build +++ b/meson.build @@ -28,20 +28,22 @@ configure_file(output : 'config.h', configuration : config) # libjpeg dep jpeg_dep = declare_dependency(link_args : '-ljpeg') -drminfo_srcs = [ 'drminfo.c', 'drmtools.c', 'logind.c' ] +drminfo_srcs = [ 'drminfo.c', 'drmtools.c', 'drm-lease.c', 'drm-lease-x11.c', + 'logind.c' ] drmtest_srcs = [ 'drmtest.c', 'drmtools.c', 'drm-lease.c', 'drm-lease-x11.c', - 'logind.c', 'ttytools.c', 'render.c', 'image.c' ] + 'logind.c', 'ttytools.c', 'render.c', 'image.c' ] fbinfo_srcs = [ 'fbinfo.c', 'fbtools.c', 'logind.c' ] fbtest_srcs = [ 'fbtest.c', 'fbtools.c', 'logind.c', - 'ttytools.c', 'render.c', 'image.c' ] + 'ttytools.c', 'render.c', 'image.c' ] prime_srcs = [ 'prime.c', 'logind.c' ] viotest_srcs = [ 'virtiotest.c', 'drmtools.c', 'logind.c', 'ttytools.c', 'render.c' ] egltest_srcs = [ 'egltest.c', 'drmtools.c', 'drmtools-egl.c', 'logind.c', 'ttytools.c' ] gtktest_srcs = [ 'gtktest.c', 'render.c', 'image.c' ] -drminfo_deps = [ libdrm_dep, cairo_dep, pixman_dep, systemd_dep ] +drminfo_deps = [ libdrm_dep, cairo_dep, pixman_dep, systemd_dep, + xcb_dep, randr_dep ] drmtest_deps = [ libdrm_dep, gbm_dep, epoxy_dep, - xcb_dep, randr_dep, + xcb_dep, randr_dep, cairo_dep, pixman_dep, jpeg_dep, systemd_dep ] fbinfo_deps = [ cairo_dep, systemd_dep ] fbtest_deps = [ cairo_dep, pixman_dep, jpeg_dep, systemd_dep ] |