]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/hameg-hmo/protocol.c
hameg-hmo: Add PATTern and BUS1/BUS2 trigger sources
[libsigrok.git] / src / hardware / hameg-hmo / protocol.c
index bd2174a746cd6949759977e6bd0e8fcf96e1069a..47d87528c37932b6276f2cbd347f7a43cb149294 100644 (file)
@@ -87,6 +87,9 @@ static const char *hmo_compact2_trigger_sources[] = {
        "CH2",
        "LINE",
        "EXT",
+       "PATT",
+       "BUS1",
+       "BUS2",
        "D0",
        "D1",
        "D2",
@@ -105,6 +108,9 @@ static const char *hmo_compact4_trigger_sources[] = {
        "CH4",
        "LINE",
        "EXT",
+       "PATT",
+       "BUS1",
+       "BUS2",
        "D0",
        "D1",
        "D2",
@@ -734,6 +740,7 @@ SR_PRIV int hmo_receive_data(int fd, int revents, void *cb_data)
        struct sr_datafeed_logic logic;
 
        (void)fd;
+       (void)revents;
 
        data = NULL;
 
@@ -772,7 +779,7 @@ SR_PRIV int hmo_receive_data(int fd, int revents, void *cb_data)
                analog.mqflags = 0;
                packet.type = SR_DF_ANALOG_OLD;
                packet.payload = &analog;
-               sr_session_send(cb_data, &packet);
+               sr_session_send(sdi, &packet);
                g_slist_free(analog.channels);
                g_array_free(data, TRUE);
                data = NULL;
@@ -791,7 +798,7 @@ SR_PRIV int hmo_receive_data(int fd, int revents, void *cb_data)
                logic.data = data->data;
                packet.type = SR_DF_LOGIC;
                packet.payload = &logic;
-               sr_session_send(cb_data, &packet);
+               sr_session_send(sdi, &packet);
                g_array_free(data, TRUE);
                data = NULL;
                break;
@@ -807,7 +814,7 @@ SR_PRIV int hmo_receive_data(int fd, int revents, void *cb_data)
                devc->current_channel = devc->current_channel->next;
                hmo_request_data(sdi);
        } else if (++devc->num_frames == devc->frame_limit) {
-               sdi->driver->dev_acquisition_stop(sdi, cb_data);
+               sdi->driver->dev_acquisition_stop(sdi);
        } else {
                devc->current_channel = devc->enabled_channels;
                hmo_request_data(sdi);