]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/gmc-mh-1x-2x/api.c
Change sr_dev_inst_new() to take no parameters.
[libsigrok.git] / src / hardware / gmc-mh-1x-2x / api.c
index 4574dfea72d7d8f79d3db665713b82e2ebd4aa2f..464fe5029bec61c76f8912cf979dc12b6f24bfe7 100644 (file)
@@ -90,7 +90,7 @@ static int read_byte(struct sr_serial_dev_inst *serial, gint64 timeout)
        int rc = 0;
 
        for (;;) {
-               rc = serial_read(serial, &result, 1);
+               rc = serial_read_nonblocking(serial, &result, 1);
                if (rc == 1) {
                        sr_spew("read: 0x%02x/%d", result, result);
                        return result;
@@ -198,7 +198,7 @@ static GSList *scan_1x_2x_rs232(GSList *options)
        if (!(serial = sr_serial_dev_inst_new(conn, serialcomm)))
                return NULL;
 
-       if (serial_open(serial, SERIAL_RDWR | SERIAL_NONBLOCK) != SR_OK) {
+       if (serial_open(serial, SERIAL_RDWR) != SR_OK) {
                sr_serial_dev_inst_free(serial);
                return NULL;
        }
@@ -223,9 +223,10 @@ static GSList *scan_1x_2x_rs232(GSList *options)
 
        if (model != METRAHIT_NONE) {
                sr_spew("%s %s detected!", VENDOR_GMC, gmc_model_str(model));
-               if (!(sdi = sr_dev_inst_new(0, SR_ST_INACTIVE, VENDOR_GMC,
-                               gmc_model_str(model), NULL)))
-                       return NULL;
+               sdi = sr_dev_inst_new();
+               sdi->status = SR_ST_INACTIVE;
+               sdi->vendor = g_strdup(VENDOR_GMC);
+               sdi->model = g_strdup(gmc_model_str(model));
                if (!(devc = g_try_malloc0(sizeof(struct dev_context)))) {
                        sr_err("Device context malloc failed.");
                        return NULL;
@@ -295,7 +296,7 @@ static GSList *scan_2x_bd232(GSList *options)
        if (!(serial = sr_serial_dev_inst_new(conn, serialcomm)))
                return NULL;
 
-       if (serial_open(serial, SERIAL_RDWR | SERIAL_NONBLOCK) != SR_OK)
+       if (serial_open(serial, SERIAL_RDWR) != SR_OK)
                goto exit_err;
 
        if (!(devc = g_try_malloc0(sizeof(struct dev_context)))) {
@@ -303,9 +304,9 @@ static GSList *scan_2x_bd232(GSList *options)
                goto exit_err;
        }
 
-       if (!(sdi = sr_dev_inst_new(0, SR_ST_INACTIVE, VENDOR_GMC, NULL, NULL)))
-               goto exit_err;
-
+       sdi = sr_dev_inst_new();
+       sdi->status = SR_ST_INACTIVE;
+       sdi->vendor = g_strdup(VENDOR_GMC);
        sdi->priv = devc;
 
        /* Send message 03 "Query multimeter version and status" */
@@ -354,8 +355,9 @@ static GSList *scan_2x_bd232(GSList *options)
                                goto exit_err;
                        }
 
-                       if (!(sdi = sr_dev_inst_new(0, SR_ST_INACTIVE, VENDOR_GMC, NULL, NULL)))
-                               goto exit_err;
+                       sdi = sr_dev_inst_new();
+                       sdi->status = SR_ST_INACTIVE;
+                       sdi->vendor = g_strdup(VENDOR_GMC);
                }
        };