]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/dreamsourcelab-dslogic/protocol.c
scpi-pps: Add configurable sr_mqflags.
[libsigrok.git] / src / hardware / dreamsourcelab-dslogic / protocol.c
index 863b4e3bac6f9a7ba88a6f25d768440dcc935c91..584f3b1bec1a3a81e1ea59862faa6b9a3619c57d 100644 (file)
@@ -568,7 +568,9 @@ SR_PRIV int dslogic_dev_open(struct sr_dev_inst *sdi, struct sr_dev_driver *di)
                if ((sdi->status == SR_ST_INITIALIZING) ||
                                (sdi->status == SR_ST_INACTIVE)) {
                        /* Check device by its physical USB bus/port address. */
-                       usb_get_port_path(devlist[i], connection_id, sizeof(connection_id));
+                       if (usb_get_port_path(devlist[i], connection_id, sizeof(connection_id)) < 0)
+                               continue;
+
                        if (strcmp(sdi->connection_id, connection_id))
                                /* This is not the one. */
                                continue;
@@ -738,7 +740,7 @@ static void deinterleave_buffer(const uint8_t *src, size_t length,
                                const uint16_t m = channel_mask >> channel;
                                if (!m)
                                        break;
-                               if ((m & 1) && ((*word_ptr++ >> bit) & 1ULL))
+                               if ((m & 1) && ((*word_ptr++ >> bit) & UINT64_C(1)))
                                        sample |= 1 << channel;
                        }
                        *dst_ptr++ = sample;
@@ -1018,8 +1020,8 @@ static void LIBUSB_CALL trigger_receive(struct libusb_transfer *transfer)
        } else if (transfer->status == LIBUSB_TRANSFER_COMPLETED
                        && transfer->actual_length == sizeof(struct dslogic_trigger_pos)) {
                tpos = (struct dslogic_trigger_pos *)transfer->buffer;
-               sr_info("tpos real_pos %d ram_saddr %d cnt %d", tpos->real_pos,
-                       tpos->ram_saddr, tpos->remain_cnt);
+               sr_info("tpos real_pos %d ram_saddr %d cnt_h %d cnt_l %d", tpos->real_pos,
+                       tpos->ram_saddr, tpos->remain_cnt_h, tpos->remain_cnt_l);
                devc->trigger_pos = tpos->real_pos;
                g_free(tpos);
                start_transfers(sdi);