]> sigrok.org Git - libsigrok.git/blobdiff - hardware/openbench-logic-sniffer/ols.c
sr/drivers: change driver dev_open/dev_close calls to use sdi
[libsigrok.git] / hardware / openbench-logic-sniffer / ols.c
index d2cda236c068003206bc1912abb223a7ce557f0b..735f5fda14d784d48d1f4b2a8f52ce78f5f935b2 100644 (file)
@@ -509,14 +509,10 @@ hw_init_free_ports:
        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(odi->instances, dev_index)))
-               return SR_ERR;
-
        ctx = sdi->priv;
 
        ctx->serial->fd = serial_open(ctx->serial->port, O_RDWR);
@@ -528,19 +524,12 @@ 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(odi->instances, dev_index))) {
-               sr_err("ols: %s: sdi was NULL", __func__);
-               return SR_ERR_BUG;
-       }
-
        ctx = sdi->priv;
 
-       /* TODO */
        if (ctx->serial->fd != -1) {
                serial_close(ctx->serial->fd);
                ctx->serial->fd = -1;
@@ -632,7 +621,7 @@ static int hw_dev_status_get(int dev_index)
        return sdi->status;
 }
 
-static int set_samplerate(struct sr_dev_inst *sdi, uint64_t samplerate)
+static int set_samplerate(const struct sr_dev_inst *sdi, uint64_t samplerate)
 {
        struct context *ctx;
 
@@ -664,15 +653,13 @@ static int set_samplerate(struct sr_dev_inst *sdi, uint64_t samplerate)
        return SR_OK;
 }
 
-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;
        int ret;
        const uint64_t *tmp_u64;
 
-       if (!(sdi = sr_dev_inst_get(odi->instances, dev_index)))
-               return SR_ERR;
        ctx = sdi->priv;
 
        if (sdi->status != SR_ST_ACTIVE)