X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fikalogic-scanalogic2%2Fapi.c;h=d459210f12a0cfcfbc7682d7c6ec2a68e9b7691e;hb=adfba7368ac297bba20b0afbc7d7322309508b30;hp=81756d76aab84edc076d29d6a2683e5b3c37c6a6;hpb=5827f61b641cfd326a9cf2ea534eb4f9481a8187;p=libsigrok.git diff --git a/src/hardware/ikalogic-scanalogic2/api.c b/src/hardware/ikalogic-scanalogic2/api.c index 81756d76..d459210f 100644 --- a/src/hardware/ikalogic-scanalogic2/api.c +++ b/src/hardware/ikalogic-scanalogic2/api.c @@ -69,15 +69,13 @@ static GSList *scan(GSList *options) struct dev_context *devc; struct sr_usb_dev_inst *usb; struct device_info dev_info; - int ret, device_index, i; - char *fw_ver_str; + int ret, i; (void)options; devices = NULL; drvc = di->priv; drvc->instances = NULL; - device_index = 0; usb_devices = sr_usb_find(drvc->sr_ctx->libusb_ctx, USB_VID_PID); @@ -114,29 +112,12 @@ static GSList *scan(GSList *options) continue; } - fw_ver_str = g_strdup_printf("%u.%u", dev_info.fw_ver_major, - dev_info.fw_ver_minor); - if (!fw_ver_str) { - sr_err("Firmware string malloc failed."); - sr_usb_dev_inst_free(usb); - libusb_free_transfer(devc->xfer_in); - libusb_free_transfer(devc->xfer_out); - g_free(devc); - continue; - } - - sdi = sr_dev_inst_new(device_index, SR_ST_INACTIVE, VENDOR_NAME, - MODEL_NAME, fw_ver_str); - g_free(fw_ver_str); - if (!sdi) { - sr_err("sr_dev_inst_new failed."); - sr_usb_dev_inst_free(usb); - libusb_free_transfer(devc->xfer_in); - libusb_free_transfer(devc->xfer_out); - g_free(devc); - continue; - } - + sdi = sr_dev_inst_new(); + sdi->status = SR_ST_INACTIVE; + sdi->vendor = g_strdup(VENDOR_NAME); + sdi->model = g_strdup(MODEL_NAME); + sdi->version = g_strdup_printf("%u.%u", dev_info.fw_ver_major, dev_info.fw_ver_minor); + sdi->serial_num = g_strdup_printf("%d", dev_info.serial); sdi->priv = devc; sdi->driver = di; sdi->inst_type = SR_INST_USB; @@ -182,8 +163,6 @@ static GSList *scan(GSList *options) drvc->instances = g_slist_append(drvc->instances, sdi); devices = g_slist_append(devices, sdi); - - device_index++; } g_slist_free(usb_devices);