[Sound-open-firmware] [PATCH v2 2/3] dai: set dai dma burst_elems according to slot number

Keyon Jie yang.jie at linux.intel.com
Tue Dec 19 06:06:11 CET 2017


We should set burst_elems for dma peripheral dev copy, for
dai/ssp, it should be set to valid slot number, otherwise,
the dma may copy in wrong burst size and data will run with
wrong speed.

Signed-off-by: Keyon Jie <yang.jie at linux.intel.com>
---
 src/audio/dai.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/audio/dai.c b/src/audio/dai.c
index c50a274..9058f5c 100644
--- a/src/audio/dai.c
+++ b/src/audio/dai.c
@@ -601,6 +601,11 @@ static int dai_position(struct comp_dev *dev, struct sof_ipc_stream_posn *posn)
 
 static int dai_config(struct comp_dev *dev, struct sof_ipc_dai_config *config)
 {
+	struct dai_data *dd = comp_get_drvdata(dev);
+
+	/* set dma burst elems to slot number */
+	dd->config.burst_elems = config->num_slots;
+
 	/* calc frame bytes */
 	switch (config->sample_valid_bits) {
 	case 16:
-- 
2.11.0



More information about the Sound-open-firmware mailing list