* same 128K sample depth.
*/
static const struct zp_model zeroplus_models[] = {
+ {0x0c12, 0x7002, "LAP-16128U", 16, 128, 200},
{0x0c12, 0x7009, "LAP-C(16064)", 16, 64, 100},
{0x0c12, 0x700a, "LAP-C(16128)", 16, 128, 200},
/* TODO: We don't know anything about these.
return SR_OK;
}
+SR_PRIV int zp_set_samplerate(struct dev_context *devc, uint64_t samplerate)
+{
+ int i;
+
+ for (i = 0; ARRAY_SIZE(samplerates_200); i++)
+ if (samplerate == samplerates_200[i])
+ break;
+
+ if (i == ARRAY_SIZE(samplerates_200) || samplerate > devc->max_samplerate) {
+ sr_err("Unsupported samplerate: %" PRIu64 "Hz.", samplerate);
+ return SR_ERR_ARG;
+ }
+
+ sr_info("Setting samplerate to %" PRIu64 "Hz.", samplerate);
+
+ if (samplerate >= SR_MHZ(1))
+ analyzer_set_freq(samplerate / SR_MHZ(1), FREQ_SCALE_MHZ);
+ else if (samplerate >= SR_KHZ(1))
+ analyzer_set_freq(samplerate / SR_KHZ(1), FREQ_SCALE_KHZ);
+ else
+ analyzer_set_freq(samplerate, FREQ_SCALE_HZ);
+
+ devc->cur_samplerate = samplerate;
+
+ return SR_OK;
+}
+
static int clear_instances(void)
{
GSList *l;
return SR_ERR;
break;
default:
- return SR_ERR_ARG;
+ return SR_ERR_NA;
}
return SR_OK;
case SR_CONF_CAPTURE_RATIO:
return set_capture_ratio(devc, g_variant_get_uint64(data));
default:
- return SR_ERR;
+ return SR_ERR_NA;
}
return SR_OK;
*data = g_variant_new_string(TRIGGER_TYPE);
break;
default:
- return SR_ERR_ARG;
+ return SR_ERR_NA;
}
return SR_OK;