SR_PRIV struct sr_dev_driver beaglelogic_driver_info;
static struct sr_dev_driver *di = &beaglelogic_driver_info;
-/* Hardware capabiities */
-static const uint32_t hwcaps[] = {
- SR_CONF_LOGIC_ANALYZER,
- SR_CONF_SAMPLERATE,
- SR_CONF_TRIGGER_MATCH,
+/* Scan options */
+static const uint32_t scanopts[] = {
+ SR_CONF_NUM_LOGIC_CHANNELS,
+};
- SR_CONF_LIMIT_SAMPLES,
+/* Hardware capabilities */
+static const uint32_t devopts[] = {
+ SR_CONF_LOGIC_ANALYZER,
SR_CONF_CONTINUOUS,
-
- SR_CONF_NUM_LOGIC_CHANNELS,
+ SR_CONF_LIMIT_SAMPLES | SR_CONF_GET | SR_CONF_SET,
+ SR_CONF_SAMPLERATE | SR_CONF_GET | SR_CONF_SET,
+ SR_CONF_TRIGGER_MATCH | SR_CONF_LIST,
+ SR_CONF_NUM_LOGIC_CHANNELS | SR_CONF_GET,
};
/* Trigger matching capabilities */
/* Possible sample rates : 10 Hz to 100 MHz = (100 / x) MHz */
static const uint64_t samplerates[] = {
- SR_HZ(10),
- SR_MHZ(100),
- SR_HZ(1),
+ SR_HZ(10),
+ SR_MHZ(100),
+ SR_HZ(1),
};
static int init(struct sr_context *sr_ctx)
ret = SR_OK;
switch (key) {
+ case SR_CONF_SCAN_OPTIONS:
+ *data = g_variant_new_fixed_array(G_VARIANT_TYPE_UINT32,
+ scanopts, ARRAY_SIZE(scanopts), sizeof(uint32_t));
+ break;
case SR_CONF_DEVICE_OPTIONS:
*data = g_variant_new_fixed_array(G_VARIANT_TYPE_UINT32,
- hwcaps, ARRAY_SIZE(hwcaps), sizeof(uint32_t));
+ devopts, ARRAY_SIZE(devopts), sizeof(uint32_t));
break;
case SR_CONF_SAMPLERATE:
g_variant_builder_init(&gvb, G_VARIANT_TYPE("a{sv}"));