aboutsummaryrefslogtreecommitdiff
path: root/src/jtag/drivers/stlink_usb.c
diff options
context:
space:
mode:
authorAustin Phillips <austin_phillips@hotmail.com>2014-09-18 14:39:41 +1000
committerSpencer Oliver <spen@spen-soft.co.uk>2014-09-22 19:36:05 +0000
commit7568a91c8e2398a113f0b40a2a24a1b91ed12c95 (patch)
tree0973e42dfc8bbf61eced6085c4a5e7765b4a54c7 /src/jtag/drivers/stlink_usb.c
parent3a4ec66b2427cd22b891a40dd63c778de28bb3c6 (diff)
Support hla_serial command for ST-LINK adapters.
The hla_serial command allows for a programming device serial number to be specified in addition to USB VID/PID. This allows for multiple ST-LINK/V2 programmers to be attached to a single machine and operated using openocd. Change-Id: I350654bf676eb26ba3a90450acfa55d2a5d2d791 Signed-off-by: Austin Phillips <austin_phillips@hotmail.com> Reviewed-on: http://openocd.zylin.com/2198 Tested-by: jenkins Reviewed-by: Martin Glunz <mg@wunderkis.de> Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
Diffstat (limited to 'src/jtag/drivers/stlink_usb.c')
-rw-r--r--src/jtag/drivers/stlink_usb.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/jtag/drivers/stlink_usb.c b/src/jtag/drivers/stlink_usb.c
index bd970ab4..58af0dd5 100644
--- a/src/jtag/drivers/stlink_usb.c
+++ b/src/jtag/drivers/stlink_usb.c
@@ -1600,9 +1600,11 @@ static int stlink_usb_open(struct hl_interface_param_s *param, void **fd)
const uint16_t vids[] = { param->vid, 0 };
const uint16_t pids[] = { param->pid, 0 };
+ const char *serial = param->serial;
- LOG_DEBUG("transport: %d vid: 0x%04x pid: 0x%04x", param->transport,
- param->vid, param->pid);
+ LOG_DEBUG("transport: %d vid: 0x%04x pid: 0x%04x serial: %s",
+ param->transport, param->vid, param->pid,
+ param->serial ? param->serial : "");
/*
On certain host USB configurations(e.g. MacBook Air)
@@ -1614,7 +1616,7 @@ static int stlink_usb_open(struct hl_interface_param_s *param, void **fd)
in order to become operational.
*/
do {
- if (jtag_libusb_open(vids, pids, &h->fd) != ERROR_OK) {
+ if (jtag_libusb_open(vids, pids, serial, &h->fd) != ERROR_OK) {
LOG_ERROR("open failed");
goto error_open;
}