X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fsysclk-lwla%2Fapi.c;h=cac7cfc1462b51269d3a019711736c3f297e4e38;hb=7d0f52f7e5cb16d204490ca4006983237bf3df7d;hp=c6be15edbb952500fe882a618009907bf49437c4;hpb=6c1a4cb44ccd24b2b23477c86273a8e405758c03;p=libsigrok.git diff --git a/src/hardware/sysclk-lwla/api.c b/src/hardware/sysclk-lwla/api.c index c6be15ed..cac7cfc1 100644 --- a/src/hardware/sysclk-lwla/api.c +++ b/src/hardware/sysclk-lwla/api.c @@ -67,7 +67,7 @@ static struct sr_dev_inst *dev_inst_new(const struct model_info *model) sdi = g_malloc0(sizeof(struct sr_dev_inst)); sdi->status = SR_ST_INACTIVE; - sdi->vendor = g_strdup("SysClk"); + sdi->vendor = g_strdup("Sysclk"); sdi->model = g_strdup(model->name); sdi->priv = devc; @@ -79,7 +79,7 @@ static struct sr_dev_inst *dev_inst_new(const struct model_info *model) return sdi; } -/* Create a new device instance for a libusb device if it is a SysClk LWLA +/* Create a new device instance for a libusb device if it is a Sysclk LWLA * device and also matches the connection specification. */ static struct sr_dev_inst *dev_inst_new_matching(GSList *conn_matches, @@ -121,7 +121,7 @@ static struct sr_dev_inst *dev_inst_new_matching(GSList *conn_matches, } else { if (conn_matches) sr_warn("USB device %d.%d (%04x:%04x) is not a" - " SysClk LWLA.", bus, address, vid, pid); + " Sysclk LWLA.", bus, address, vid, pid); return NULL; } sdi = dev_inst_new(model); @@ -259,6 +259,8 @@ static int dev_open(struct sr_dev_inst *sdi) /* This delay appears to be necessary for reliable operation. */ g_usleep(30 * 1000); + sdi->status = SR_ST_ACTIVE; + devc->active_fpga_config = FPGA_NOCONF; devc->short_transfer_quirk = FALSE; devc->state = STATE_IDLE; @@ -271,6 +273,7 @@ static int dev_open(struct sr_dev_inst *sdi) break; /* Rinse and repeat. */ + sdi->status = SR_ST_INACTIVE; sr_usb_close(usb); } @@ -306,7 +309,7 @@ static int dev_close(struct sr_dev_inst *sdi) sr_usb_close(usb); - return SR_OK; + return ret; } /* Check whether the device options contain a specific key. @@ -585,6 +588,8 @@ static int config_list(uint32_t key, GVariant **data, (devc) ? devc->model->num_devopts : 0); } + if (!devc) + return SR_ERR_ARG; if (!has_devopt(devc->model, key | SR_CONF_LIST)) return SR_ERR_NA; @@ -635,7 +640,7 @@ static int dev_acquisition_stop(struct sr_dev_inst *sdi) static struct sr_dev_driver sysclk_lwla_driver_info = { .name = "sysclk-lwla", - .longname = "SysClk LWLA series", + .longname = "Sysclk LWLA series", .api_version = 1, .init = std_init, .cleanup = std_cleanup,