]> sigrok.org Git - libsigrok.git/blobdiff - hardware/fx2lafw/fx2lafw.h
sr: fx2lafw: Use gboolean, cosmetics, fix gcc warning.
[libsigrok.git] / hardware / fx2lafw / fx2lafw.h
index 52c4c3a612c5ab0fd2c7247a09a9ac17da043209..c6ad3ce11d28afb87fcb4f90e8fffd6d7536e71b 100644 (file)
 
 #define FX2LAFW_REQUIRED_VERSION_MAJOR 1
 
+#define MAX_8BIT_SAMPLE_RATE   SR_MHZ(24)
+#define MAX_16BIT_SAMPLE_RATE  SR_MHZ(12)
+
 /* 6 delay states of up to 256 clock ticks */
 #define MAX_SAMPLE_DELAY       (6 * 256)
 
 /* Software trigger implementation: positive values indicate trigger stage. */
 #define TRIGGER_FIRED          -1
 
+#define DEV_CAPS_16BIT_POS     0
+
+#define DEV_CAPS_16BIT         (1 << DEV_CAPS_16BIT_POS)
+
 struct fx2lafw_profile {
        uint16_t vid;
        uint16_t pid;
@@ -50,7 +57,7 @@ struct fx2lafw_profile {
 
        const char *firmware;
 
-       int num_probes;
+       uint32_t dev_caps;
 };
 
 struct context {
@@ -68,10 +75,12 @@ struct context {
        uint64_t cur_samplerate;
        uint64_t limit_samples;
 
-       uint8_t trigger_mask[NUM_TRIGGER_STAGES];
-       uint8_t trigger_value[NUM_TRIGGER_STAGES];
+       gboolean sample_wide;
+
+       uint16_t trigger_mask[NUM_TRIGGER_STAGES];
+       uint16_t trigger_value[NUM_TRIGGER_STAGES];
        int trigger_stage;
-       uint8_t trigger_buffer[NUM_TRIGGER_STAGES];
+       uint16_t trigger_buffer[NUM_TRIGGER_STAGES];
 
        int num_samples;
        int submitted_transfers;