#define UNKNOWN_ADDRESS 0xff
#define MAX_RENUM_DELAY_MS 3000
+#define NUM_CHANNELS 16
+
static const uint32_t drvopts[] = {
SR_CONF_LOGIC_ANALYZER,
};
sdi->inst_type = SR_INST_USB;
sdi->conn = usb;
- for (i = 0; i < 16; i++) {
+ for (i = 0; i < NUM_CHANNELS; i++) {
snprintf(channel_name, sizeof(channel_name), "D%i", i);
sr_channel_new(sdi, i, SR_CHANNEL_LOGIC, TRUE, channel_name);
}
if (des.idVendor != LOGICSTUDIO16_VID)
continue;
- usb_get_port_path(devlist[i], connection_id, sizeof(connection_id));
+ if (usb_get_port_path(devlist[i], connection_id, sizeof(connection_id)) < 0)
+ continue;
usb = NULL;
des.idProduct != LOGICSTUDIO16_PID_HAVE_FIRMWARE)
continue;
- usb_get_port_path(devlist[i], connection_id, sizeof(connection_id));
+ if (usb_get_port_path(devlist[i], connection_id, sizeof(connection_id)) < 0)
+ continue;
/*
* Check if this device is the same one that we associated
return lls_set_samplerate(sdi, g_variant_get_uint64(data));
case SR_CONF_CAPTURE_RATIO:
devc->capture_ratio = g_variant_get_uint64(data);
- if (devc->capture_ratio > 100)
- return SR_ERR;
break;
default:
return SR_ERR_NA;
static int config_list(uint32_t key, GVariant **data,
const struct sr_dev_inst *sdi, const struct sr_channel_group *cg)
{
- GVariantBuilder vb;
- GVariant *var;
-
switch (key) {
case SR_CONF_DEVICE_OPTIONS:
- return STD_CONFIG_LIST(key, data, sdi, cg, NULL, drvopts, devopts);
+ return STD_CONFIG_LIST(key, data, sdi, cg, NO_OPTS, drvopts, devopts);
case SR_CONF_SAMPLERATE:
- g_variant_builder_init(&vb, G_VARIANT_TYPE("a{sv}"));
- var = g_variant_new_fixed_array(G_VARIANT_TYPE("t"),
- samplerates, ARRAY_SIZE(samplerates),
- sizeof(uint64_t));
- g_variant_builder_add(&vb, "{sv}", "samplerates", var);
- *data = g_variant_builder_end(&vb);
+ *data = std_gvar_samplerates(ARRAY_AND_SIZE(samplerates));
break;
case SR_CONF_TRIGGER_MATCH:
- *data = g_variant_new_fixed_array(G_VARIANT_TYPE_INT32,
- trigger_matches, ARRAY_SIZE(trigger_matches),
- sizeof(int32_t));
+ *data = std_gvar_array_i32(ARRAY_AND_SIZE(trigger_matches));
break;
default:
return SR_ERR_NA;