From c223cffa20d617863bffb0c7e3890172d93a53c8 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Fri, 11 Jan 2019 12:29:57 +0200 Subject: kmstest: use open_modesetting_card Signed-off-by: Tomi Valkeinen --- utils/kmstest.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'utils') diff --git a/utils/kmstest.cpp b/utils/kmstest.cpp index 37f9e0f..79c7d1b 100644 --- a/utils/kmstest.cpp +++ b/utils/kmstest.cpp @@ -444,7 +444,7 @@ struct Arg string arg; }; -static string s_device_path = "/dev/dri/card0"; +static string s_device_path; static vector parse_cmdline(int argc, char **argv) { @@ -1111,29 +1111,34 @@ int main(int argc, char **argv) { vector output_args = parse_cmdline(argc, argv); - Card card(s_device_path); + unique_ptr card; - if (!card.is_master()) + if (s_device_path.empty()) + card = Card::open_modesetting_card(); + else + card = unique_ptr(new Card(s_device_path)); + + if (!card->is_master()) EXIT("Could not get DRM master permission. Card already in use?"); - if (!card.has_atomic() && s_flip_sync) + if (!card->has_atomic() && s_flip_sync) EXIT("Synchronized flipping requires atomic modesetting"); - ResourceManager resman(card); + ResourceManager resman(*card); - vector outputs = setups_to_outputs(card, resman, output_args); + vector outputs = setups_to_outputs(*card, resman, output_args); if (!s_flip_mode) draw_test_patterns(outputs); print_outputs(outputs); - set_crtcs_n_planes(card, outputs); + set_crtcs_n_planes(*card, outputs); printf("press enter to exit\n"); if (s_flip_mode) - main_flip(card, outputs); + main_flip(*card, outputs); else getchar(); } -- cgit v1.2.3