beaglelogic: Flexible sampleunit depending on enabled channels
If a channel in the higher-than-8-bit group is enabled then use 16-bit captures. Otherwise just do 8-bit captures. Signed-off-by: Kumar Abhishek <abhishek@theembeddedkitchen.net>
This commit is contained in:
parent
55f26c42de
commit
e71062d99b
|
@ -252,15 +252,22 @@ static int config_list(uint32_t key, GVariant **data,
|
||||||
static int dev_acquisition_start(const struct sr_dev_inst *sdi)
|
static int dev_acquisition_start(const struct sr_dev_inst *sdi)
|
||||||
{
|
{
|
||||||
struct dev_context *devc = sdi->priv;
|
struct dev_context *devc = sdi->priv;
|
||||||
|
GSList *l;
|
||||||
struct sr_trigger *trigger;
|
struct sr_trigger *trigger;
|
||||||
|
struct sr_channel *channel;
|
||||||
|
|
||||||
/* Clear capture state */
|
/* Clear capture state */
|
||||||
devc->bytes_read = 0;
|
devc->bytes_read = 0;
|
||||||
devc->offset = 0;
|
devc->offset = 0;
|
||||||
|
|
||||||
/* Configure channels */
|
/* Configure channels */
|
||||||
devc->sampleunit = g_slist_length(sdi->channels) > 8 ?
|
devc->sampleunit = BL_SAMPLEUNIT_8_BITS;
|
||||||
BL_SAMPLEUNIT_16_BITS : BL_SAMPLEUNIT_8_BITS;
|
|
||||||
|
for (l = sdi->channels; l; l = l->next) {
|
||||||
|
channel = l->data;
|
||||||
|
if (channel->index >= 8 && channel->enabled)
|
||||||
|
devc->sampleunit = BL_SAMPLEUNIT_16_BITS;
|
||||||
|
}
|
||||||
beaglelogic_set_sampleunit(devc);
|
beaglelogic_set_sampleunit(devc);
|
||||||
|
|
||||||
/* Configure triggers & send header packet */
|
/* Configure triggers & send header packet */
|
||||||
|
|
Loading…
Reference in New Issue