This is an automated email from Gerrit.

"Marc Schink <[email protected]>" just uploaded a new patch set to Gerrit, which you 
can find at https://review.openocd.org/c/openocd/+/9712

-- gerrit

commit 2cc14fd83acbdebb106e93929bc812c186851cb0
Author: Marc Schink <[email protected]>
Date:   Tue May 12 21:39:23 2026 +0200

    adapter/vdebug: Use adapter core for remote address handling
    
    Use the remote address handling provided by the adapter core instead of
    implementing it directly in the driver. Additionally, raise an error
    when no address is provided. Previously, an empty address and port 0
    were used by default.
    
    Keep the legacy 'vdebug server' command for backwards compatibility, but
    mark it as deprecated.
    
    Change-Id: Idffb1ff1bd093c247f1849ed4d77eb97442cb5f4
    Signed-off-by: Marc Schink <[email protected]>

diff --git a/doc/openocd.texi b/doc/openocd.texi
index b4bf01b57b..c446fd2a22 100644
--- a/doc/openocd.texi
+++ b/doc/openocd.texi
@@ -3694,9 +3694,14 @@ Currently valid @var{variant} values include:
 @deffn {Interface Driver} {vdebug}
 Cadence Virtual Debug Interface driver.
 
-@deffn {Config Command} {vdebug server} host:port
-Specifies the host and TCP port number where the vdebug server runs.
-@end deffn
+To connect to the server on @t{192.168.1.10} and port @t{9810}, use:
+
+@example
+adapter driver vdebug
+adapter remote 192.168.1.10:9010
+@end example
+
+The adapter does not support Unix domain sockets.
 
 @deffn {Config Command} {vdebug batching} value
 Specifies the batching method for the vdebug request. Possible values are
diff --git a/src/jtag/drivers/vdebug.c b/src/jtag/drivers/vdebug.c
index 29bfa8360d..f588b90718 100644
--- a/src/jtag/drivers/vdebug.c
+++ b/src/jtag/drivers/vdebug.c
@@ -44,6 +44,7 @@
 #include <string.h>
 #include <errno.h>
 
+#include "jtag/adapter.h"
 #include "jtag/interface.h"
 #include "jtag/commands.h"
 #include "transport/transport.h"
@@ -207,7 +208,7 @@ struct vd_client {
        uint32_t targ_time;
        int hsocket;
        int64_t poll_ts;
-       char server_name[32];
+       char *server_name;
        char bfm_path[128];
        char mem_path[VD_MAX_MEMORIES][128];
        struct vd_rdata rdataq;
@@ -872,6 +873,24 @@ static int vdebug_poll(void *priv)
 
 static int vdebug_init(void)
 {
+       const struct adapter_remote *remote = adapter_get_remote();
+
+       if (!remote->address) {
+               LOG_ERROR("Adapter address not specified, use 'adapter 
remote'");
+               return ERROR_FAIL;
+       } else if (remote->type == ADAPTER_REMOTE_TYPE_UNIX) {
+               LOG_ERROR("Unix domain socket is not supported by this 
adapter");
+               return ERROR_FAIL;
+       }
+
+       if (!remote->port) {
+               LOG_ERROR("A port number must be specified");
+               return ERROR_FAIL;
+       }
+
+       vdc.server_name = remote->address;
+       vdc.server_port = remote->port;
+
        vdc.hsocket = vdebug_socket_open(vdc.server_name, vdc.server_port);
        pbuf = calloc(1, sizeof(struct vd_shm));
        if (!pbuf) {
@@ -1213,25 +1232,6 @@ static int vdebug_dap_run(struct adiv5_dap *dap)
        return ERROR_OK;
 }
 
-COMMAND_HANDLER(vdebug_set_server)
-{
-       if ((CMD_ARGC != 1) || !strchr(CMD_ARGV[0], ':'))
-               return ERROR_COMMAND_SYNTAX_ERROR;
-
-       char *pchar = strchr(CMD_ARGV[0], ':');
-       *pchar = '\0';
-       strncpy(vdc.server_name, CMD_ARGV[0], sizeof(vdc.server_name) - 1);
-       int port = atoi(++pchar);
-       if (port < 0 || port > UINT16_MAX) {
-               LOG_ERROR("invalid port number %d specified", port);
-               return ERROR_COMMAND_SYNTAX_ERROR;
-       }
-       vdc.server_port = port;
-       LOG_DEBUG("server: %s port %u", vdc.server_name, vdc.server_port);
-
-       return ERROR_OK;
-}
-
 COMMAND_HANDLER(vdebug_set_bfm)
 {
        char prefix;
@@ -1311,13 +1311,6 @@ COMMAND_HANDLER(vdebug_set_polling)
 }
 
 static const struct command_registration vdebug_command_handlers[] = {
-       {
-               .name = "server",
-               .handler = &vdebug_set_server,
-               .mode = COMMAND_CONFIG,
-               .help = "set the vdebug server name or address",
-               .usage = "<host:port>",
-       },
        {
                .name = "bfm_path",
                .handler = &vdebug_set_bfm,
diff --git a/src/jtag/startup.tcl b/src/jtag/startup.tcl
index 78b8ac8e35..cd2515e9a1 100644
--- a/src/jtag/startup.tcl
+++ b/src/jtag/startup.tcl
@@ -471,6 +471,12 @@ proc ulink_download_firmware args {
        eval ulink download_firmware $args
 }
 
+lappend _telnet_autocomplete_skip "vdebug server"
+proc "vdebug server" args {
+       echo "DEPRECATED! use 'adapter remote' not 'vdebug server'"
+       eval adapter remote $args
+}
+
 lappend _telnet_autocomplete_skip vsllink_usb_vid
 proc vsllink_usb_vid args {
        echo "DEPRECATED! use 'vsllink usb_vid' not 'vsllink_usb_vid'"

-- 

Reply via email to