Commit 8db32b93 authored by Lucas Russo's avatar Lucas Russo

sm_io/*/acq/*: fix (again) number of pre/post acquisition samples

We need to acquire a multiple number of
samples_alignment value. With samples_alignment
being 4 (typical for the ADC and ADCSWAP channels),
the following equation yields correct results:

num_samples_aligned = num_samples_pre + num_samples_aligned -
        (num_samples_pre % num_samples_aligned)
parent c7885ba4
......@@ -161,8 +161,10 @@ static int _acq_data_acquire (void *owner, void *args, void *ret)
* acquisition channel sample size */
uint32_t samples_alignment =
DDR3_PAYLOAD_SIZE/acq->acq_buf[chan].sample_size;
uint32_t num_samples_pre_aligned = num_samples_pre + (num_samples_pre % samples_alignment);
uint32_t num_samples_post_aligned = num_samples_post + (num_samples_post % samples_alignment);
uint32_t num_samples_pre_aligned = num_samples_pre + samples_alignment -
(num_samples_pre % samples_alignment);
uint32_t num_samples_post_aligned = num_samples_post + samples_alignment -
(num_samples_post % samples_alignment);
/* Set the parameters: number of samples of this channel */
acq->acq_params[chan].num_samples_pre = num_samples_pre_aligned;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment