From 32b18728491c8a0e1cc7b2ea33836db86b92a882 Mon Sep 17 00:00:00 2001 From: Marc Schink Date: Fri, 30 Jul 2021 18:19:02 +0200 Subject: [PATCH] drivers/xlnx-pcie-xvc: Group adapter commands Use a command group 'xlnx_pcie_xvc' with subcommands instead of individual commands with 'xlnx_pcie_xvc_' prefix. The old commands are still available for backward compatibility but marked as deprecated. Change-Id: I0deaaa14ed14f65bf356f3c248331bfab472f08d Signed-off-by: Marc Schink Reviewed-on: http://openocd.zylin.com/6391 Tested-by: jenkins Reviewed-by: Antonio Borneo --- doc/openocd.texi | 2 +- src/jtag/drivers/xlnx-pcie-xvc.c | 15 +++++++++++++-- src/jtag/startup.tcl | 7 +++++++ 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/doc/openocd.texi b/doc/openocd.texi index a9fe2906ce..eb45acc396 100644 --- a/doc/openocd.texi +++ b/doc/openocd.texi @@ -3172,7 +3172,7 @@ exposed via extended capability registers in the PCI Express configuration space For more information see Xilinx PG245 (Section on From_PCIE_to_JTAG mode). -@deffn {Config Command} {xlnx_pcie_xvc_config} device +@deffn {Config Command} {xlnx_pcie_xvc config} device Specifies the PCI Express device via parameter @var{device} to use. The correct value for @var{device} can be obtained by looking at the output diff --git a/src/jtag/drivers/xlnx-pcie-xvc.c b/src/jtag/drivers/xlnx-pcie-xvc.c index 27295f5967..c05b9cf4ab 100644 --- a/src/jtag/drivers/xlnx-pcie-xvc.c +++ b/src/jtag/drivers/xlnx-pcie-xvc.c @@ -460,9 +460,9 @@ COMMAND_HANDLER(xlnx_pcie_xvc_handle_config_command) return ERROR_OK; } -static const struct command_registration xlnx_pcie_xvc_command_handlers[] = { +static const struct command_registration xlnx_pcie_xvc_subcommand_handlers[] = { { - .name = "xlnx_pcie_xvc_config", + .name = "config", .handler = xlnx_pcie_xvc_handle_config_command, .mode = COMMAND_CONFIG, .help = "Configure XVC/PCIe JTAG adapter", @@ -471,6 +471,17 @@ static const struct command_registration xlnx_pcie_xvc_command_handlers[] = { COMMAND_REGISTRATION_DONE }; +static const struct command_registration xlnx_pcie_xvc_command_handlers[] = { + { + .name = "xlnx_pcie_xvc", + .mode = COMMAND_ANY, + .help = "perform xlnx_pcie_xvc management", + .chain = xlnx_pcie_xvc_subcommand_handlers, + .usage = "", + }, + COMMAND_REGISTRATION_DONE +}; + static struct jtag_interface xlnx_pcie_xvc_jtag_ops = { .execute_queue = &xlnx_pcie_xvc_execute_queue, }; diff --git a/src/jtag/startup.tcl b/src/jtag/startup.tcl index 94dbca2636..d4226c6862 100644 --- a/src/jtag/startup.tcl +++ b/src/jtag/startup.tcl @@ -315,4 +315,11 @@ proc presto_serial args { eval presto serial $args } +lappend _telnet_autocomplete_skip xlnx_pcie_xvc_config +proc xlnx_pcie_xvc_config args { + echo "DEPRECATED! use 'xlnx_pcie_xvc config' not 'xlnx_pcie_xvc_config'" + eval xlnx_pcie_xvc config $args +} + + # END MIGRATION AIDS -- 2.30.2