stlink: add STLINK_F_HAS_TARGET_VOLT
authorAntonio Borneo <borneo.antonio@gmail.com>
Sun, 23 Sep 2018 14:42:07 +0000 (16:42 +0200)
committerSpencer Oliver <spen@spen-soft.co.uk>
Thu, 6 Dec 2018 13:04:09 +0000 (13:04 +0000)
Use an alias to STLINK_F_HAS_TRACE, both are added in the same version

Change-Id: Iabf2fdac407f5c4737c3da942323d60ee50c3470
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/4708
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
Tested-by: Spencer Oliver <spen@spen-soft.co.uk>
src/jtag/drivers/stlink_usb.c

index 168859986a472ff0d4347e48544599a8a981bd6e..a0ee44c44ac7cc369bc3479f56e64dc1d3cabb21 100644 (file)
@@ -280,6 +280,7 @@ enum stlink_mode {
 #define STLINK_F_HAS_TRACE              (1UL << 0)
 
 /* aliases */
+#define STLINK_F_HAS_TARGET_VOLT        STLINK_F_HAS_TRACE
 
 struct speed_map {
        int speed;
@@ -669,6 +670,7 @@ static int stlink_usb_version(void *handle)
                h->version.jtag_api_max = STLINK_JTAG_API_V2;
 
                /* API for trace from J13 */
+               /* API for target voltage from J13 */
                if (h->version.jtag >= 13)
                        flags |= STLINK_F_HAS_TRACE;
 
@@ -694,8 +696,8 @@ static int stlink_usb_check_voltage(void *handle, float *target_voltage)
        struct stlink_usb_handle_s *h = handle;
        uint32_t adc_results[2];
 
-       /* only supported by stlink/v2 and for firmware >= 13 */
-       if (h->version.stlink == 1 || h->version.jtag < 13)
+       /* no error message, simply quit with error */
+       if (!(h->version.flags & STLINK_F_HAS_TARGET_VOLT))
                return ERROR_COMMAND_NOTFOUND;
 
        stlink_usb_init_buffer(handle, h->rx_ep, 8);