jlink: fix device discovery when network is off
authorBohdan Tymkiv <bohdan200@gmail.com>
Fri, 22 Jan 2021 15:13:34 +0000 (17:13 +0200)
committerPaul Fertser <fercerpav@gmail.com>
Sun, 24 Jan 2021 19:32:09 +0000 (19:32 +0000)
commit090209275bc7796eb6b5e3a23158683bc88e354c
tree40905ad9839656a417c2ad3ba7859222616b5ed5
parent047df630187bf5d54731aeaada33c639c57daf66
jlink: fix device discovery when network is off

If user specifies a serial number for the jlink device, openocd
extends the search to network jlink devices too, without checking
if the host has a valid and functional network connection. If the
network is not functional, libjaylink returns error. This error
invalidates the discovery on USB, even if it was successful.

Factor-out parts of the jlink_init into separate jlink_open_device
function, use that function to firstly discover and match USB
devices and, if matching device was not found on the USB bus and
serial number was specified, repeat discovery and matching via TCP.

Fixes: https://sourceforge.net/p/openocd/tickets/294/
Change-Id: Iea0de1640d4e5b21ecc7e9c1dd6d36f214d647c2
Signed-off-by: Bohdan Tymkiv <bohdan200@gmail.com>
Reviewed-on: http://openocd.zylin.com/6025
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Tested-by: jenkins
Reviewed-by: Marc Schink <dev@zapb.de>
src/jtag/drivers/jlink.c