X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fmic-985xx%2Fapi.c;h=492f4b7930395c86a4a121a1e878748df1077335;hb=6e43c3d5318a8ff320bf6539a9efe7f0b8497e2f;hp=d29cc7ef6b2f675c90c69c2b7441063c735b0d9f;hpb=15a5bfe4815f9991a9bb532c05d6244a1818a0e4;p=libsigrok.git diff --git a/src/hardware/mic-985xx/api.c b/src/hardware/mic-985xx/api.c index d29cc7ef..492f4b79 100644 --- a/src/hardware/mic-985xx/api.c +++ b/src/hardware/mic-985xx/api.c @@ -14,8 +14,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * along with this program; if not, see . */ #include @@ -62,14 +61,12 @@ static GSList *mic_scan(const char *conn, const char *serialcomm, int idx) struct sr_dev_inst *sdi; struct dev_context *devc; struct sr_serial_dev_inst *serial; - GSList *devices; serial = sr_serial_dev_inst_new(conn, serialcomm); if (serial_open(serial, SERIAL_RDWR) != SR_OK) return NULL; - devices = NULL; serial_flush(serial); /* TODO: Query device type. */ @@ -93,11 +90,9 @@ static GSList *mic_scan(const char *conn, const char *serialcomm, int idx) if (mic_devs[idx].has_humidity) sr_channel_new(sdi, 1, SR_CHANNEL_ANALOG, TRUE, "Humidity"); - devices = g_slist_append(devices, sdi); - serial_close(serial); - return std_scan_complete(mic_devs[idx].di, devices); + return std_scan_complete(mic_devs[idx].di, g_slist_append(NULL, sdi)); } static GSList *scan(GSList *options, int idx) @@ -139,9 +134,6 @@ static int config_set(uint32_t key, GVariant *data, const struct sr_dev_inst *sd (void)cg; - if (sdi->status != SR_ST_ACTIVE) - return SR_ERR_DEV_CLOSED; - devc = sdi->priv; return sr_sw_limits_config_set(&devc->limits, key, data); @@ -183,13 +175,10 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi, int idx) struct dev_context *devc; struct sr_serial_dev_inst *serial; - if (sdi->status != SR_ST_ACTIVE) - return SR_ERR_DEV_CLOSED; - devc = sdi->priv; sr_sw_limits_acquisition_start(&devc->limits); - std_session_send_df_header(sdi, LOG_PREFIX); + std_session_send_df_header(sdi); /* Poll every 100ms, or whenever some data comes in. */ serial = sdi->conn; @@ -199,12 +188,6 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi, int idx) return SR_OK; } -static int dev_acquisition_stop(struct sr_dev_inst *sdi) -{ - return std_serial_dev_acquisition_stop(sdi, std_serial_dev_close, - sdi->conn, LOG_PREFIX); -} - /* Driver-specific API function wrappers */ #define HW_SCAN(X) \ static GSList *scan_##X(struct sr_dev_driver *di, GSList *options) { \ @@ -236,7 +219,7 @@ static struct sr_dev_driver ID##_driver_info = { \ .dev_open = std_serial_dev_open, \ .dev_close = std_serial_dev_close, \ .dev_acquisition_start = dev_acquisition_start_##ID_UPPER, \ - .dev_acquisition_stop = dev_acquisition_stop, \ + .dev_acquisition_stop = std_serial_dev_acquisition_stop, \ .context = NULL, \ }; \ SR_REGISTER_DEV_DRIVER(ID##_driver_info)