This regression was introduced in
f1ba6b4b2c9a8ecf90bb31efb218752aa7e49d1a.
Due to how the sysclk-lwla driver does up to 3 open/close operations in
one dev_open() API callback we cannot rely on the sr_dev_open() and
sr_dev_close() wrappers setting the sdi->status variable in this case.
Tested on LWLA1034.
/* 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;
break;
/* Rinse and repeat. */
+ sdi->status = SR_ST_INACTIVE;
sr_usb_close(usb);
}
sr_usb_close(usb);
- return SR_OK;
+ return ret;
}
/* Check whether the device options contain a specific key.