]> sigrok.org Git - libsigrok.git/commitdiff
serial-dmm: fixup 'conn' vs 'serialcomm' confusion
authorGerhard Sittig <redacted>
Sun, 9 Jun 2019 08:18:52 +0000 (10:18 +0200)
committerGerhard Sittig <redacted>
Thu, 13 Jun 2019 16:33:23 +0000 (18:33 +0200)
The 'conn' field in the device context and the CONN values in the
declarations of supported DMM models seemed inappropriate. They specify
the communication parameters (UART frame format and bitrate), not the
connection (port name). Adjust the respective identifiers.

Also rephrase the evaluation logic. Instead of checking for the absence
of user specs and optionally assigning a fallback value, just preset
from defaults and override from user specs when present. This simplifies
the logic (eliminates a check).

src/hardware/serial-dmm/api.c
src/hardware/serial-dmm/protocol.h

index 98bf7fb20526a1f5210730552ecccf5a363f694a..7a7be0c2b73f86292b2ac3a091ea2f9d0bfaf0e9 100644 (file)
@@ -61,7 +61,8 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options)
 
        dmm = (struct dmm_info *)di;
 
-       conn = serialcomm = NULL;
+       conn = NULL;
+       serialcomm = dmm->serialcomm;
        for (l = options; l; l = l->next) {
                src = l->data;
                switch (src->key) {
@@ -76,9 +77,6 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options)
        if (!conn)
                return NULL;
 
-       if (!serialcomm)
-               serialcomm = dmm->conn;
-
        serial = sr_serial_dev_inst_new(conn, serialcomm);
 
        if (serial_open(serial, SERIAL_RDWR) != SR_OK)
@@ -196,7 +194,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi)
        return SR_OK;
 }
 
-#define DMM(ID, CHIPSET, VENDOR, MODEL, CONN, PACKETSIZE, TIMEOUT, \
+#define DMM(ID, CHIPSET, VENDOR, MODEL, SERIALCOMM, PACKETSIZE, TIMEOUT, \
                        DELAY, REQUEST, VALID, PARSE, DETAILS) \
        &((struct dmm_info) { \
                { \
@@ -217,7 +215,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi)
                        .dev_acquisition_stop = std_serial_dev_acquisition_stop, \
                        .context = NULL, \
                }, \
-               VENDOR, MODEL, CONN, PACKETSIZE, TIMEOUT, DELAY, \
+               VENDOR, MODEL, SERIALCOMM, PACKETSIZE, TIMEOUT, DELAY, \
                REQUEST, 1, NULL, VALID, PARSE, DETAILS, sizeof(struct CHIPSET##_info) \
        }).di
 
index f96d1357d7e165f2af43b44839efbaefd52b71a5..27533b6e449ffa8e77e6853563be62e64aa822db 100644 (file)
@@ -29,8 +29,8 @@ struct dmm_info {
        const char *vendor;
        /** Model. */
        const char *device;
-       /** serialconn string. */
-       const char *conn;
+       /** serialcomm string. */
+       const char *serialcomm;
        /** Packet size in bytes. */
        int packet_size;
        /**