]> sigrok.org Git - libsigrok.git/blobdiff - hardware/genericdmm/api.c
sr/drivers: change driver dev_acquisition_start/_stop calls to use sdi
[libsigrok.git] / hardware / genericdmm / api.c
index 2dab4b876a89be44787f0621c83dc95640217348..e4de064ddc2647ead7ce2fb3fa389ffc633a3ccb 100644 (file)
@@ -325,16 +325,10 @@ static GSList *hw_scan(GSList *options)
        return devices;
 }
 
-static int hw_dev_open(int dev_index)
+static int hw_dev_open(struct sr_dev_inst *sdi)
 {
-       struct sr_dev_inst *sdi;
        struct context *ctx;
 
-       if (!(sdi = sr_dev_inst_get(gdi->instances, dev_index))) {
-               sr_err("genericdmm: sdi was NULL.");
-               return SR_ERR_BUG;
-       }
-
        if (!(ctx = sdi->priv)) {
                sr_err("genericdmm: sdi->priv was NULL.");
                return SR_ERR_BUG;
@@ -363,23 +357,15 @@ static int hw_dev_open(int dev_index)
        return SR_OK;
 }
 
-static int hw_dev_close(int dev_index)
+static int hw_dev_close(struct sr_dev_inst *sdi)
 {
-       struct sr_dev_inst *sdi;
        struct context *ctx;
 
-       if (!(sdi = sr_dev_inst_get(gdi->instances, dev_index))) {
-               sr_err("genericdmm: %s: sdi was NULL.", __func__);
-               return SR_ERR_BUG;
-       }
-
        if (!(ctx = sdi->priv)) {
                sr_err("genericdmm: %s: sdi->priv was NULL.", __func__);
                return SR_ERR_BUG;
        }
 
-       /* TODO: Check for != NULL. */
-
        switch (ctx->profile->transport) {
        case DMM_TRANSPORT_USBHID:
                /* TODO */
@@ -488,23 +474,16 @@ static int hw_dev_status_get(int dev_index)
        return sdi->status;
 }
 
-static int hw_dev_config_set(int dev_index, int hwcap, const void *value)
+static int hw_dev_config_set(const struct sr_dev_inst *sdi, int hwcap,
+               const void *value)
 {
-       struct sr_dev_inst *sdi;
        struct context *ctx;
 
-       if (!(sdi = sr_dev_inst_get(gdi->instances, dev_index))) {
-               sr_err("genericdmm: sdi was NULL.");
-               return SR_ERR_BUG;
-       }
-
        if (!(ctx = sdi->priv)) {
                sr_err("genericdmm: sdi->priv was NULL.");
                return SR_ERR_BUG;
        }
 
-       sr_spew("genericdmm: dev_index %d, hwcap %d.", dev_index, hwcap);
-
        switch (hwcap) {
        case SR_HWCAP_LIMIT_MSEC:
                if (*(const uint64_t *)value == 0) {
@@ -557,19 +536,14 @@ static int receive_data(int fd, int revents, void *cb_data)
        return TRUE;
 }
 
-static int hw_dev_acquisition_start(int dev_index, void *cb_data)
+static int hw_dev_acquisition_start(const struct sr_dev_inst *sdi,
+               void *cb_data)
 {
        struct sr_datafeed_packet packet;
        struct sr_datafeed_header header;
        struct sr_datafeed_meta_analog meta;
-       struct sr_dev_inst *sdi;
        struct context *ctx;
 
-       if (!(sdi = sr_dev_inst_get(gdi->instances, dev_index))) {
-               sr_err("genericdmm: sdi was NULL.");
-               return SR_ERR_BUG;
-       }
-
        if (!(ctx = sdi->priv)) {
                sr_err("genericdmm: sdi->priv was NULL.");
                return SR_ERR_BUG;
@@ -608,12 +582,13 @@ static int hw_dev_acquisition_start(int dev_index, void *cb_data)
        return SR_OK;
 }
 
-static int hw_dev_acquisition_stop(int dev_index, void *cb_data)
+static int hw_dev_acquisition_stop(const struct sr_dev_inst *sdi,
+               void *cb_data)
 {
        struct sr_datafeed_packet packet;
 
        /* Avoid compiler warnings. */
-       (void)dev_index;
+       (void)sdi;
 
        sr_dbg("genericdmm: Stopping acquisition.");