This is an automatic generated email to let you know that the following patch were queued at the http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:
Subject: mc_nextgen_test: Display ancillary links Author: Daniel Scally <djrsca...@gmail.com> Date: Mon Dec 13 23:42:57 2021 +0000 Add an argument to toggle display of ancillary links in the output of mc_nextgen_test. Update media_show_links() to account for the extra type of link and display them if configured by the right option. The optargs table is reformatted, since with the new option name it doesn't really fit in the original indentations. Signed-off-by: Daniel Scally <djrsca...@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-ci...@xs4all.nl> contrib/test/mc_nextgen_test.c | 61 +++++++++++++++++++++++++++--------------- 1 file changed, 39 insertions(+), 22 deletions(-) --- http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=ae731a6122ccd8a574a31ff27ae3c6cb8c79b96d diff --git a/contrib/test/mc_nextgen_test.c b/contrib/test/mc_nextgen_test.c index b8c260457cc6..6086ceb4acae 100644 --- a/contrib/test/mc_nextgen_test.c +++ b/contrib/test/mc_nextgen_test.c @@ -47,17 +47,18 @@ const char *argp_program_bug_address = "Mauro Carvalho Chehab <mche...@kernel.or static const char doc[] = "\nA testing tool for the MC next geneneration API\n"; static const struct argp_option options[] = { - {"entities", 'e', 0, 0, "show entities", 0}, - {"interfaces", 'i', 0, 0, "show pads", 0}, - {"data-links", 'l', 0, 0, "show data links", 0}, - {"intf-links", 'I', 0, 0, "show interface links", 0}, - {"dot", 'D', 0, 0, "show in Graphviz format", 0}, - {"max_tsout", 't', "NUM_TSOUT", 0, "max number of DTV TS out entities/interfaces in graphviz output (default: 5)", 0}, - {"device", 'd', "DEVICE", 0, "media controller device (default: /dev/media0", 0}, - - {"help", '?', 0, 0, "Give this help list", -1}, - {"usage", -3, 0, 0, "Give a short usage message"}, - {"version", 'V', 0, 0, "Print program version", -1}, + {"entities", 'e', 0, 0, "show entities", 0}, + {"interfaces", 'i', 0, 0, "show pads", 0}, + {"data-links", 'l', 0, 0, "show data links", 0}, + {"intf-links", 'I', 0, 0, "show interface links", 0}, + {"ancillary-links", 'a', 0, 0, "show ancillary links", 0}, + {"dot", 'D', 0, 0, "show in Graphviz format", 0}, + {"max_tsout", 't', "NUM_TSOUT", 0, "max number of DTV TS out entities/interfaces in graphviz output (default: 5)", 0}, + {"device", 'd', "DEVICE", 0, "media controller device (default: /dev/media0", 0}, + + {"help", '?', 0, 0, "Give this help list", -1}, + {"usage", -3, 0, 0, "Give a short usage message"}, + {"version", 'V', 0, 0, "Print program version", -1}, { 0, 0, 0, 0, 0, 0 } }; @@ -65,6 +66,7 @@ static int show_entities = 0; static int show_interfaces = 0; static int show_data_links = 0; static int show_intf_links = 0; +static int show_ancillary_links = 0; static int show_dot = 0; static int max_tsout = 5; static char media_device[256] = "/dev/media0"; @@ -90,6 +92,9 @@ static error_t parse_opt(int k, char *arg, struct argp_state *state) case 'I': show_intf_links++; break; + case 'a': + show_ancillary_links++; + break; case 'D': show_dot++; break; @@ -659,29 +664,41 @@ static void media_show_links(struct media_controller *mc) struct media_v2_link *link = &links[i]; char *obj, *source_obj, *sink_obj; - color = BLUE; - if (media_type(link->source_id) == MEDIA_GRAPH_PAD) { + __u32 type = link->flags & MEDIA_LNK_FL_LINK_TYPE; + + color = CYAN; + switch (type) { + case MEDIA_LNK_FL_DATA_LINK: if (!show_data_links) continue; - color = CYAN; - } - if (media_type(link->source_id) == MEDIA_GRAPH_INTF_DEVNODE) { + show(color, 0, "data"); + + break; + case MEDIA_LNK_FL_INTERFACE_LINK: if (!show_intf_links) continue; + + color = BLUE; + show(color, 0, "interface"); + + break; + case MEDIA_LNK_FL_ANCILLARY_LINK: + if (!show_ancillary_links) + continue; + + color = MAGENTA; + show(color, 0, "ancillary"); + break; } obj = objname(link->id, '#'); source_obj = objname(link->source_id, '#'); sink_obj = objname(link->sink_id, '#'); - if ((link->flags & MEDIA_LNK_FL_LINK_TYPE) == MEDIA_LNK_FL_INTERFACE_LINK) - show(color, 0, "interface "); - else - show(color, 0, "data "); show(color, 0, "link %s: %s %s %s", obj, source_obj, - ((link->flags & MEDIA_LNK_FL_LINK_TYPE) == MEDIA_LNK_FL_INTERFACE_LINK) ? "<=>" : "=>", + ((type) == MEDIA_LNK_FL_DATA_LINK) ? "=>" : "<=>", sink_obj); if (link->flags & MEDIA_LNK_FL_IMMUTABLE) show(color, 0, " [IMMUTABLE]"); @@ -1117,7 +1134,7 @@ int main(int argc, char *argv[]) if (show_interfaces) media_show_interfaces(mc); - if (show_data_links || show_intf_links) + if (show_data_links || show_intf_links || show_ancillary_links) media_show_links(mc); } _______________________________________________ linuxtv-commits mailing list linuxtv-commits@linuxtv.org https://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits