This commit is contained in:
Triss 2021-06-24 04:14:23 +02:00
parent d8f08acdc3
commit d1074befa3
1 changed files with 51 additions and 0 deletions

View File

@ -21,8 +21,59 @@
#include <config.h>
#include "protocol.h"
#define USB_VENDOR_ID 0x0403
#define USB_DEVICE_ID 0x7fd0
#define USB_IPRODUCT_50 "ScanaQuad SQ50"
static struct sr_dev_driver ikalogic_scanaquad_driver_info;
static const uint32_t drvopts[] = {
SR_CONF_LOGIC_ANALYZER,
};
static const uint32_t devopts[] = {
// * pattern mode: how?
// * LIMIT_FRAMES vs LIMIT_SAMPLES?
// * VOLTAGE_THRESHSOLD vs LOGIC_THRESHOLD
// * VOLTAGE/VOLTAGE_TARGET: max?
// * triggers: TRIGGER_SLOPE vs TRIGGER_SOURCE vs TRIGGER_MATCH vs TRIGGER_LEVEL vs TRIGGER_PATTERN
// * OUTPUT_FREQUENCY used in PATTERN_MODE?
// * DATALOG: effect?
SR_CONF_CONN | SR_CONF_GET,
SR_CONF_SAMPLERATE | SR_CONF_GET | SR_CONF_SET | SR_CONF_LIST,
SR_CONF_CAPTURE_RATIO | SR_CONF_GET | SR_CONF_SET,
SR_CONF_PATTERN_MODE | SR_CONF_GET | SR_CONF_SET,
SR_CONF_BUFFERSIZE | SR_CONF_GET | SR_CONF_SET,
SR_CONF_LOGIC_THRESHOLD | SR_CONFIG_GET | SR_CONFIG_SET | SR_CONFIG_LIST,
/* TODO: LOGIC_THRESHOLD_CUSTOM ? does the hw support this? */
SR_CONF_OUTPUT_FREQUENCY | SR_CONFIG_GET | SR_CONFIG_SET | SR_CONFIG_LIST,
SR_CONF_LIMIT_MSEC | SR_CONF_GET | SR_CONF_SET,
SR_CONF_LIMIT_FRAMES | SR_CONF_GET | SR_CONF_SET,
SR_CONF_LIMIT_SAMPLES | SR_CONF_GET | SR_CONF_SET,
SR_CONF_DATALOG
};
static const char *channel_names[] = {
"1", "2", "3", "4"
};
static const uint64_t samplerates[] = {
/* TODO: can this be an arbitrary value? at least the settings
* blob makes it look like it can */
SR_MHZ(50), SR_MHZ(25), SR_MHZ(10), SR_MHZ(5), SR_MHZ(1),
SR_KHZ(500), SR_KHZ(250), SR_KHZ(100), SR_KHZ(50), SR_KHZ(10)
};
static void clear_helper(struct dev_context *dc)
{
}
static int dev_clear(struct sr_dev_driver *di)
{
return std_dev_clear_with_callback(di, (std_dev_clear_callback)clear_helper);
}
static GSList *scan(struct sr_dev_driver *di, GSList *options)
{
struct drv_context *drvc;