]> git.sur5r.net Git - openocd/commitdiff
CMSIS-DAP: print a debug message when the USB product string cannot be read
authorJörg Wunsch <openocd@uriah.heep.sax.de>
Fri, 14 Mar 2014 13:41:51 +0000 (14:41 +0100)
committerSpencer Oliver <spen@spen-soft.co.uk>
Mon, 17 Mar 2014 12:49:50 +0000 (12:49 +0000)
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>
src/jtag/drivers/cmsis_dap_usb.c

index 34f8f2512466e215fc8147d6c7cc78a5dba8f7f9..dc59fcf9c2bcfc9e006e8c6dedfefb4a0db1645b 100644 (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