]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/hung-chang-dso-2100/protocol.c
Introduce standard implementation of the dev_list() callback
[libsigrok.git] / src / hardware / hung-chang-dso-2100 / protocol.c
index 6f997db020389ed30d8abdaee0c05651ecc19c84..31f161e8f1dca4f03ec5cbab4acf242f6ddf24a2 100644 (file)
@@ -17,6 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
+#include <config.h>
 #include <ieee1284.h>
 #include "protocol.h"
 
@@ -330,7 +331,7 @@ static void push_samples(const struct sr_dev_inst *sdi, uint8_t *buf, size_t num
 {
        struct dev_context *devc = sdi->priv;
        float *data = devc->samples;
-       struct sr_datafeed_analog analog = {
+       struct sr_datafeed_analog_old analog = {
                .channels = devc->enabled_channel,
                .num_samples = num,
                .mq = SR_MQ_VOLTAGE,
@@ -339,7 +340,7 @@ static void push_samples(const struct sr_dev_inst *sdi, uint8_t *buf, size_t num
                .data = data,
        };
        struct sr_datafeed_packet packet = {
-               .type = SR_DF_ANALOG,
+               .type = SR_DF_ANALOG_OLD,
                .payload = &analog,
        };
        float factor = devc->factor;
@@ -347,7 +348,7 @@ static void push_samples(const struct sr_dev_inst *sdi, uint8_t *buf, size_t num
        while (num--)
                data[num] = (buf[num] - 0x80) * factor;
 
-       sr_session_send(devc->cb_data, &packet);
+       sr_session_send(sdi, &packet);
 }
 
 static int read_subframe(const struct sr_dev_inst *sdi, uint8_t *buf)
@@ -392,7 +393,7 @@ static int read_subframe(const struct sr_dev_inst *sdi, uint8_t *buf)
                                };
 
                                push_samples(sdi, buf, 6);
-                               sr_session_send(devc->cb_data, &packet);
+                               sr_session_send(sdi, &packet);
                                buf += 6;
                                num -= 6;
                        }
@@ -434,11 +435,11 @@ SR_PRIV int hung_chang_dso_2100_poll(int fd, int revents, void *cb_data)
                return TRUE;
 
        if (state != 0x03) {
-               sr_err("Unexpected state 0x%X while checking for trigger");
+               sr_err("Unexpected state 0x%X while checking for trigger", state);
                return FALSE;
        }
 
-       sr_session_send(devc->cb_data, &packet);
+       sr_session_send(sdi, &packet);
 
        if (devc->channel) {
                while (read_subframe(sdi, buf)) {
@@ -452,10 +453,10 @@ SR_PRIV int hung_chang_dso_2100_poll(int fd, int revents, void *cb_data)
        }
 
        packet.type = SR_DF_FRAME_END;
-       sr_session_send(devc->cb_data, &packet);
+       sr_session_send(sdi, &packet);
 
        if (++devc->frame >= devc->frame_limit)
-               hung_chang_dso_2100_dev_acquisition_stop(sdi, devc->cb_data);
+               hung_chang_dso_2100_dev_acquisition_stop(sdi);
        else
                hung_chang_dso_2100_move_to(sdi, 0x21);