X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=src%2Fhardware%2Frdtech-tc%2Fprotocol.c;h=fd392884735885c4fc1ffa90d1cd250d2071c3c8;hp=32ada461dc6f770b331a9fcc1de4677cea67b8e8;hb=15ceaf9da051f1eb2bcefdfda8630cdfd8b32e79;hpb=d6ca362d3a1eab2b5e1426a423d44455c6a32205 diff --git a/src/hardware/rdtech-tc/protocol.c b/src/hardware/rdtech-tc/protocol.c index 32ada461..fd392884 100644 --- a/src/hardware/rdtech-tc/protocol.c +++ b/src/hardware/rdtech-tc/protocol.c @@ -216,21 +216,24 @@ static int handle_poll_data(struct sr_dev_inst *sdi) return SR_ERR_DATA; } + ret = SR_OK; + std_session_send_df_frame_begin(sdi); for (ch_idx = 0; ch_idx < devc->channel_count; ch_idx++) { pch = &devc->channels[ch_idx]; ret = bv_get_value(&v, &pch->spec, poll_pkt, TC_POLL_LEN); if (ret != SR_OK) - return ret; + break; ret = feed_queue_analog_submit(devc->feeds[ch_idx], v, 1); if (ret != SR_OK) - return ret; + break; } + std_session_send_df_frame_end(sdi); - sr_sw_limits_update_samples_read(&devc->limits, 1); + sr_sw_limits_update_frames_read(&devc->limits, 1); if (sr_sw_limits_check(&devc->limits)) sr_dev_acquisition_stop(sdi); - return SR_OK; + return ret; } static int recv_poll_data(struct sr_dev_inst *sdi, struct sr_serial_dev_inst *serial)