X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=src%2Fhardware%2Fserial-dmm%2Fapi.c;h=b66274c5d7730c985e3d9d10387e3e1a62c86098;hp=a9de067467011ed8a492f1e467e4a9e9ae64b0c6;hb=9f51c463d1bfd182ddf8ae1c5bc83377ef93d2bc;hpb=37dbffd15d37ee101d93fcfcf31cdefa1cacb8d6 diff --git a/src/hardware/serial-dmm/api.c b/src/hardware/serial-dmm/api.c index a9de0674..b66274c5 100644 --- a/src/hardware/serial-dmm/api.c +++ b/src/hardware/serial-dmm/api.c @@ -131,6 +131,7 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options) sdi->vendor = g_strdup(dmm->vendor); sdi->model = g_strdup(dmm->device); devc = g_malloc0(sizeof(struct dev_context)); + sr_sw_limits_init(&devc->limits); sdi->inst_type = SR_INST_SERIAL; sdi->conn = serial; sdi->priv = devc; @@ -160,18 +161,7 @@ static int config_set(uint32_t key, GVariant *data, const struct sr_dev_inst *sd return SR_ERR_BUG; } - switch (key) { - case SR_CONF_LIMIT_SAMPLES: - devc->limit_samples = g_variant_get_uint64(data); - break; - case SR_CONF_LIMIT_MSEC: - devc->limit_msec = g_variant_get_uint64(data); - break; - default: - return SR_ERR_NA; - } - - return SR_OK; + return sr_sw_limits_config_set(&devc->limits, key, data); } static int config_list(uint32_t key, GVariant **data, const struct sr_dev_inst *sdi, @@ -206,14 +196,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi) devc = sdi->priv; - /* - * Reset the number of samples to take. If we've already collected our - * quota, but we start a new session, and don't reset this, we'll just - * quit without acquiring any new samples. - */ - devc->num_samples = 0; - devc->starttime = g_get_monotonic_time(); - + sr_sw_limits_acquisition_start(&devc->limits); std_session_send_df_header(sdi, LOG_PREFIX); /* Poll every 50ms, or whenever some data comes in. */