X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=src%2Fhardware%2Fasix-sigma%2Fprotocol.h;h=a35bcb0ad08ba45f66744997f66e866efb427289;hp=9fcbdd30f75f21a603a7ffdcf83f5a53570d45ed;hb=eabf9ca630f464cef9586a6ca4e740d28c4b1da3;hpb=16a5d5ac7d0390b03278d2a65554d395337eaf45 diff --git a/src/hardware/asix-sigma/protocol.h b/src/hardware/asix-sigma/protocol.h index 9fcbdd30..a35bcb0a 100644 --- a/src/hardware/asix-sigma/protocol.h +++ b/src/hardware/asix-sigma/protocol.h @@ -33,14 +33,6 @@ #define LOG_PREFIX "asix-sigma" -/* - * Triggers are not working in this implementation. Stop claiming - * support for the feature which effectively is not available, until - * the implementation got fixed. Yet keep the code in place and allow - * developers to turn on this switch during development. - */ -#define ASIX_SIGMA_WITH_TRIGGER 1 - /* Experimental support for OMEGA (scan only, operation is ENOIMPL). */ #define ASIX_WITH_OMEGA 0 @@ -338,6 +330,7 @@ struct dev_context { uint16_t prefix; enum asix_device_type type; } id; + char **channel_names; struct { struct ftdi_context ctx; gboolean is_open, must_close; @@ -369,7 +362,7 @@ struct dev_context { } last; struct sigma_location { size_t raw, line, cluster, event; - } start, stop, trig, iter; + } start, stop, trig, iter, trig_arm; struct { size_t lines_total, lines_done; size_t lines_per_read; /* USB transfer limit */ @@ -377,10 +370,16 @@ struct dev_context { struct sigma_dram_line *rcvd_lines; struct sigma_dram_line *curr_line; } fetch; + struct { + gboolean armed; + gboolean matched; + size_t evt_remain; + } trig_chk; } interp; uint64_t capture_ratio; struct sigma_trigger trigger; gboolean use_triggers; + gboolean late_trigger_timeout; enum { SIGMA_UNINITIALIZED = 0, SIGMA_CONFIG,