CMSIS-DAP: print a debug message when the USB product string cannot be read

As suggested by Stian Skjelstad in a comment in:

http://openocd.zylin.com/#/c/2044/

if the USB product string cannot be read, provide a debug message so
users might get aware of a potential permission problem when looking
at the debug output.

Fix style bug found by Jenkins.

Change-Id: I6acb1c6261fec6f2bee80e4be513a5c5e29eff79
Signed-off-by: Jörg Wunsch <openocd@uriah.heep.sax.de>
Reviewed-on: http://openocd.zylin.com/2048
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
This commit is contained in:
Jörg Wunsch 2014-03-14 14:41:51 +01:00 committed by Spencer Oliver
parent 122ec5fbe2
commit d2273d10b6
1 changed files with 12 additions and 7 deletions

View File

@ -173,13 +173,18 @@ static int cmsis_dap_usb_open(void)
devs = hid_enumerate(0x0, 0x0);
cur_dev = devs;
while (NULL != cur_dev) {
if ((0 == cmsis_dap_vid[0]) && (NULL != cur_dev->product_string)
&& wcsstr(cur_dev->product_string, L"CMSIS-DAP")) {
/*
if the user hasn't specified VID:PID *and*
product string contains "CMSIS-DAP", pick it
*/
break;
if (0 == cmsis_dap_vid[0]) {
if (NULL == cur_dev->product_string) {
LOG_DEBUG("Cannot read product string of device 0x%x:0x%x",
cur_dev->vendor_id, cur_dev->product_id);
} else {
if (wcsstr(cur_dev->product_string, L"CMSIS-DAP"))
/*
if the user hasn't specified VID:PID *and*
product string contains "CMSIS-DAP", pick it
*/
break;
}
} else {
/*
otherwise, exhaustively compare against all VID:PID in list