static GSList *hw_scan(GSList *options)
{
struct sr_dev_inst *sdi;
+ struct sr_probe *probe;
struct context *ctx;
GSList *devices;
struct ftdi_device_list *devlist;
char serial_txt[10];
uint32_t serial;
- int ret;
+ int ret, i;
(void)options;
devices = NULL;
goto free;
}
sdi->driver = adi;
+
+ for (i = 0; probe_names[i]; i++) {
+ if (!(probe = sr_probe_new(i, SR_PROBE_ANALOG, TRUE,
+ probe_names[i])))
+ return NULL;
+ sdi->probes = g_slist_append(sdi->probes, probe);
+ }
+
devices = g_slist_append(devices, sdi);
adi->instances = g_slist_append(adi->instances, sdi);
sdi->priv = ctx;
static GSList *hw_scan(GSList *options)
{
struct sr_dev_inst *sdi;
+ struct sr_probe *probe;
struct context *ctx;
GSList *devices;
unsigned int i;
sdi->driver = cdi;
sdi->priv = ctx;
+ for (i = 0; probe_names[i]; i++) {
+ if (!(probe = sr_probe_new(i, SR_PROBE_ANALOG, TRUE,
+ probe_names[i])))
+ return NULL;
+ sdi->probes = g_slist_append(sdi->probes, probe);
+ }
+
devices = g_slist_append(devices, sdi);
cdi->instances = g_slist_append(cdi->instances, sdi);
static GSList *hw_scan(GSList *options)
{
struct sr_dev_inst *sdi;
+ struct sr_probe *probe;
GSList *devices;
+ int i;
(void)options;
devices = NULL;
}
sdi->driver = ddi;
+ for (i = 0; probe_names[i]; i++) {
+ if (!(probe = sr_probe_new(i, SR_PROBE_ANALOG, TRUE,
+ probe_names[i])))
+ return NULL;
+ sdi->probes = g_slist_append(sdi->probes, probe);
+ }
+
devices = g_slist_append(devices, sdi);
ddi->instances = g_slist_append(ddi->instances, sdi);
static struct sr_dev_inst *dso_dev_new(int index, const struct dso_profile *prof)
{
struct sr_dev_inst *sdi;
+ struct sr_probe *probe;
struct context *ctx;
+ int i;
sdi = sr_dev_inst_new(index, SR_ST_INITIALIZING,
prof->vendor, prof->model, NULL);
return NULL;
sdi->driver = hdi;
+ /* Add only the real probes -- EXT isn't a source of data, only
+ * a trigger source internal to the device.
+ */
+ for (i = 0; probe_names[i]; i++) {
+ if (!(probe = sr_probe_new(i, SR_PROBE_ANALOG, TRUE,
+ probe_names[i])))
+ return NULL;
+ sdi->probes = g_slist_append(sdi->probes, probe);
+ }
+
if (!(ctx = g_try_malloc0(sizeof(struct context)))) {
sr_err("hantek-dso: ctx malloc failed");
return NULL;
enum {
SR_PROBE_LOGIC,
+ SR_PROBE_ANALOG,
};
struct sr_probe {