Skip to content

Commit b2eb734

Browse files
committed
treewide: prefix RTOS lib/dma.h DMA_ definitions with SOF_DMA_
Add a namespace prefix to DMA_ macro definitions in the zephyr/lib/dma.h. This change makes it easier to identify what code is using native Zephyr definitions (DMA_*) and which are SOF side definition (SOF_DMA_*). To support non-Zephyr targets, add a minimimal compatibility layer to xtos/lib/dma.h and posix/lib/dma.h. This only covers a few definitions needed by e.g. ipc/ipc[34]/dai.c. To support Zephyr targets that still use XTOS drivers (like imx8m), add compatibility definitions to zephyr/lib/dma-legacy.h. It will be later easy to drop dma-legacy.h when all targets have moved over. Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
1 parent 3d62d85 commit b2eb734

File tree

21 files changed

+209
-169
lines changed

21 files changed

+209
-169
lines changed

posix/include/sof/lib/dma.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,12 @@ struct comp_buffer;
4141
*/
4242

4343
/* DMA direction bitmasks used to define DMA copy direction */
44+
#define SOF_DMA_DIR_MEM_TO_MEM DMA_DIR_MEM_TO_MEM
45+
#define SOF_DMA_DIR_HMEM_TO_LMEM DMA_DIR_HMEM_TO_LMEM
46+
#define SOF_DMA_DIR_LMEM_TO_HMEM DMA_DIR_LMEM_TO_HMEM
47+
#define SOF_DMA_DIR_MEM_TO_DEV DMA_DIR_MEM_TO_DEV
48+
#define SOF_DMA_DIR_DEV_TO_MEM DMA_DIR_DEV_TO_MEM
49+
#define SOF_DMA_DIR_DEV_TO_DEV DMA_DIR_DEV_TO_DEV
4450
#define DMA_DIR_MEM_TO_MEM BIT(0) /**< local memory copy */
4551
#define DMA_DIR_HMEM_TO_LMEM BIT(1) /**< host memory to local mem copy */
4652
#define DMA_DIR_LMEM_TO_HMEM BIT(2) /**< local mem to host mem copy */
@@ -60,6 +66,7 @@ struct comp_buffer;
6066

6167
/* DMA dev type bitmasks used to define the type of DMA */
6268

69+
#define SOF_DMA_DEV_HOST DMA_DEV_HOST
6370
#define DMA_DEV_HOST BIT(0) /**< connectable to host */
6471
#define DMA_DEV_HDA BIT(1) /**< connectable to HD/A link */
6572
#define DMA_DEV_SSP BIT(2) /**< connectable to SSP fifo */
@@ -98,6 +105,8 @@ enum dma_irq_cmd {
98105
DMA_IRQ_UNMASK
99106
};
100107

108+
#define SOF_DMA_CHAN_INVALID DMA_CHAN_INVALID
109+
#define SOF_DMA_CORE_INVALID DMA_CORE_INVALID
101110
#define DMA_CHAN_INVALID 0xFFFFFFFF
102111
#define DMA_CORE_INVALID 0xFFFFFFFF
103112

src/audio/chain_dma.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -536,18 +536,18 @@ static int chain_task_init(struct comp_dev *dev, uint8_t host_dma_id, uint8_t li
536536

537537
/* request HDA DMA with shared access privilege */
538538
dir = (cd->stream_direction == SOF_IPC_STREAM_PLAYBACK) ?
539-
DMA_DIR_HMEM_TO_LMEM : DMA_DIR_LMEM_TO_HMEM;
539+
SOF_DMA_DIR_HMEM_TO_LMEM : SOF_DMA_DIR_LMEM_TO_HMEM;
540540

541-
cd->dma_host = dma_get(dir, 0, DMA_DEV_HOST, DMA_ACCESS_SHARED);
541+
cd->dma_host = dma_get(dir, 0, SOF_DMA_DEV_HOST, SOF_DMA_ACCESS_SHARED);
542542
if (!cd->dma_host) {
543543
comp_err(dev, "chain_task_init(): dma_get() returned NULL");
544544
return -EINVAL;
545545
}
546546

547547
dir = (cd->stream_direction == SOF_IPC_STREAM_PLAYBACK) ?
548-
DMA_DIR_MEM_TO_DEV : DMA_DIR_DEV_TO_MEM;
548+
SOF_DMA_DIR_MEM_TO_DEV : SOF_DMA_DIR_DEV_TO_MEM;
549549

550-
cd->dma_link = dma_get(dir, DMA_CAP_HDA, DMA_DEV_HDA, DMA_ACCESS_SHARED);
550+
cd->dma_link = dma_get(dir, SOF_DMA_CAP_HDA, SOF_DMA_DEV_HDA, SOF_DMA_ACCESS_SHARED);
551551
if (!cd->dma_link) {
552552
dma_put(cd->dma_host);
553553
comp_err(dev, "chain_task_init(): dma_get() returned NULL");

src/audio/dai-zephyr.c

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -243,11 +243,11 @@ static int dai_get_fifo(struct dai *dai, int direction, int stream_id)
243243
}
244244

245245
/* this is called by DMA driver every time descriptor has completed */
246-
static enum dma_cb_status
246+
static enum sof_dma_cb_status
247247
dai_dma_cb(struct dai_data *dd, struct comp_dev *dev, uint32_t bytes,
248248
pcm_converter_func *converter)
249249
{
250-
enum dma_cb_status dma_status = DMA_CB_STATUS_RELOAD;
250+
enum sof_dma_cb_status dma_status = SOF_DMA_CB_STATUS_RELOAD;
251251
int ret;
252252

253253
comp_dbg(dev, "dai_dma_cb()");
@@ -258,7 +258,7 @@ dai_dma_cb(struct dai_data *dd, struct comp_dev *dev, uint32_t bytes,
258258
dai_trigger_op(dd->dai, COMP_TRIGGER_STOP, dev->direction);
259259

260260
/* tell DMA not to reload */
261-
dma_status = DMA_CB_STATUS_END;
261+
dma_status = SOF_DMA_CB_STATUS_END;
262262
}
263263

264264
/* is our pipeline handling an XRUN ? */
@@ -401,11 +401,11 @@ dai_dma_cb(struct dai_data *dd, struct comp_dev *dev, uint32_t bytes,
401401
}
402402

403403
/* this is called by DMA driver every time descriptor has completed */
404-
static enum dma_cb_status
404+
static enum sof_dma_cb_status
405405
dai_dma_multi_endpoint_cb(struct dai_data *dd, struct comp_dev *dev, uint32_t frames,
406406
struct comp_buffer *multi_endpoint_buffer)
407407
{
408-
enum dma_cb_status dma_status = DMA_CB_STATUS_RELOAD;
408+
enum sof_dma_cb_status dma_status = SOF_DMA_CB_STATUS_RELOAD;
409409
uint32_t i, bytes;
410410

411411
comp_dbg(dev, "dai_dma_multi_endpoint_cb()");
@@ -416,7 +416,7 @@ dai_dma_multi_endpoint_cb(struct dai_data *dd, struct comp_dev *dev, uint32_t fr
416416
dai_trigger_op(dd->dai, COMP_TRIGGER_STOP, dev->direction);
417417

418418
/* tell DMA not to reload */
419-
dma_status = DMA_CB_STATUS_END;
419+
dma_status = SOF_DMA_CB_STATUS_END;
420420
}
421421

422422
/* is our pipeline handling an XRUN ? */
@@ -477,9 +477,9 @@ int dai_common_new(struct dai_data *dd, struct comp_dev *dev,
477477

478478
/* request GP LP DMA with shared access privilege */
479479
dir = dai_cfg->direction == SOF_IPC_STREAM_PLAYBACK ?
480-
DMA_DIR_MEM_TO_DEV : DMA_DIR_DEV_TO_MEM;
480+
SOF_DMA_DIR_MEM_TO_DEV : SOF_DMA_DIR_DEV_TO_MEM;
481481

482-
dd->dma = dma_get(dir, dd->dai->dma_caps, dd->dai->dma_dev, DMA_ACCESS_SHARED);
482+
dd->dma = dma_get(dir, dd->dai->dma_caps, dd->dai->dma_dev, SOF_DMA_ACCESS_SHARED);
483483
if (!dd->dma) {
484484
dai_put(dd->dai);
485485
comp_err(dev, "dma_get() failed to get shared access to DMA.");
@@ -730,13 +730,13 @@ static int dai_set_sg_config(struct dai_data *dd, struct comp_dev *dev, uint32_t
730730
/* set up DMA configuration */
731731
if (dev->direction == SOF_IPC_STREAM_PLAYBACK) {
732732
dd->process = pcm_get_conversion_function(local_fmt, dma_fmt);
733-
config->direction = DMA_DIR_MEM_TO_DEV;
733+
config->direction = SOF_DMA_DIR_MEM_TO_DEV;
734734
err = dai_get_dma_slot(dd, dev, &config->dest_dev);
735735
if (err < 0)
736736
return err;
737737
} else {
738738
dd->process = pcm_get_conversion_function(dma_fmt, local_fmt);
739-
config->direction = DMA_DIR_DEV_TO_MEM;
739+
config->direction = SOF_DMA_DIR_DEV_TO_MEM;
740740
err = dai_get_dma_slot(dd, dev, &config->src_dev);
741741
if (err < 0)
742742
return err;
@@ -1123,7 +1123,7 @@ int dai_common_config_prepare(struct dai_data *dd, struct comp_dev *dev)
11231123
comp_dbg(dev, "channel = %d", channel);
11241124

11251125
/* do nothing for asking for channel free, for compatibility. */
1126-
if (channel == DMA_CHAN_INVALID) {
1126+
if (channel == SOF_DMA_CHAN_INVALID) {
11271127
comp_err(dev, "dai_config is not set yet!");
11281128
return -EINVAL;
11291129
}
@@ -1292,7 +1292,7 @@ static int dai_comp_trigger_internal(struct dai_data *dd, struct comp_dev *dev,
12921292
* Only applies to non HD-DMA links as HD-DMA read/write pointer
12931293
* is not reset during stop/config/start
12941294
*/
1295-
if (!(dd->dai->dma_caps & DMA_CAP_HDA))
1295+
if (!(dd->dai->dma_caps & SOF_DMA_CAP_HDA))
12961296
audio_stream_reset(&dd->dma_buffer->stream);
12971297

12981298
/* only start the DAI if we are not XRUN handling */
@@ -1543,7 +1543,7 @@ int dai_zephyr_multi_endpoint_copy(struct dai_data **dd, struct comp_dev *dev,
15431543
}
15441544

15451545
for (i = 0; i < num_endpoints; i++) {
1546-
enum dma_cb_status status;
1546+
enum sof_dma_cb_status status;
15471547
uint32_t copy_bytes;
15481548

15491549
/* trigger optional DAI_TRIGGER_COPY which prepares dai to copy */
@@ -1552,7 +1552,7 @@ int dai_zephyr_multi_endpoint_copy(struct dai_data **dd, struct comp_dev *dev,
15521552
comp_warn(dev, "dai trigger copy failed");
15531553

15541554
status = dai_dma_multi_endpoint_cb(dd[i], dev, frames, multi_endpoint_buffer);
1555-
if (status == DMA_CB_STATUS_END)
1555+
if (status == SOF_DMA_CB_STATUS_END)
15561556
dma_stop(dd[i]->chan->dma->z_dev, dd[i]->chan->index);
15571557

15581558
copy_bytes = frames * audio_stream_frame_bytes(&dd[i]->dma_buffer->stream);
@@ -1742,7 +1742,7 @@ int dai_common_copy(struct dai_data *dd, struct comp_dev *dev, pcm_converter_fun
17421742
if (ret < 0)
17431743
comp_warn(dev, "dai trigger copy failed");
17441744

1745-
if (dai_dma_cb(dd, dev, copy_bytes, converter) == DMA_CB_STATUS_END)
1745+
if (dai_dma_cb(dd, dev, copy_bytes, converter) == SOF_DMA_CB_STATUS_END)
17461746
dma_stop(dd->chan->dma->z_dev, dd->chan->index);
17471747

17481748
ret = dma_reload(dd->chan->dma->z_dev, dd->chan->index, 0, 0, copy_bytes);

src/audio/host-zephyr.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -512,7 +512,7 @@ static int create_local_elems(struct host_data *hd, struct comp_dev *dev, uint32
512512
int err;
513513

514514
dir = direction == SOF_IPC_STREAM_PLAYBACK ?
515-
DMA_DIR_HMEM_TO_LMEM : DMA_DIR_LMEM_TO_HMEM;
515+
SOF_DMA_DIR_HMEM_TO_LMEM : SOF_DMA_DIR_LMEM_TO_HMEM;
516516

517517
/* if host buffer set we need to allocate local buffer */
518518
if (hd->host.elem_array.count) {
@@ -612,9 +612,9 @@ int host_common_new(struct host_data *hd, struct comp_dev *dev,
612612
hd->ipc_host = *ipc_host;
613613
/* request HDA DMA with shared access privilege */
614614
dir = hd->ipc_host.direction == SOF_IPC_STREAM_PLAYBACK ?
615-
DMA_DIR_HMEM_TO_LMEM : DMA_DIR_LMEM_TO_HMEM;
615+
SOF_DMA_DIR_HMEM_TO_LMEM : SOF_DMA_DIR_LMEM_TO_HMEM;
616616

617-
hd->dma = dma_get(dir, 0, DMA_DEV_HOST, DMA_ACCESS_SHARED);
617+
hd->dma = dma_get(dir, 0, SOF_DMA_DEV_HOST, SOF_DMA_ACCESS_SHARED);
618618
if (!hd->dma) {
619619
comp_err(dev, "dma_get() returned NULL");
620620
return -ENODEV;
@@ -806,11 +806,11 @@ int host_common_params(struct host_data *hd, struct comp_dev *dev,
806806

807807
/* determine source and sink buffer elements */
808808
if (params->direction == SOF_IPC_STREAM_PLAYBACK) {
809-
config->direction = DMA_DIR_HMEM_TO_LMEM;
809+
config->direction = SOF_DMA_DIR_HMEM_TO_LMEM;
810810
hd->source = &hd->host;
811811
hd->sink = &hd->local;
812812
} else {
813-
config->direction = DMA_DIR_LMEM_TO_HMEM;
813+
config->direction = SOF_DMA_DIR_LMEM_TO_HMEM;
814814
hd->source = &hd->local;
815815
hd->sink = &hd->host;
816816
}
@@ -923,8 +923,8 @@ int host_common_params(struct host_data *hd, struct comp_dev *dev,
923923
for (i = 0; i < config->elem_array.count; i++) {
924924
sg_elem = config->elem_array.elems + i;
925925

926-
if (config->direction == DMA_DIR_HMEM_TO_LMEM ||
927-
config->direction == DMA_DIR_DEV_TO_MEM)
926+
if (config->direction == SOF_DMA_DIR_HMEM_TO_LMEM ||
927+
config->direction == SOF_DMA_DIR_DEV_TO_MEM)
928928
addr = sg_elem->dest;
929929
else
930930
addr = sg_elem->src;
@@ -938,12 +938,12 @@ int host_common_params(struct host_data *hd, struct comp_dev *dev,
938938
dma_block_cfg->block_size = buffer_bytes;
939939

940940
switch (config->direction) {
941-
case DMA_DIR_LMEM_TO_HMEM:
941+
case SOF_DMA_DIR_LMEM_TO_HMEM:
942942
dma_cfg->channel_direction = MEMORY_TO_HOST;
943943
dma_block_cfg->source_address = buffer_addr;
944944
dma_block_cfg->dest_address = hd->config.elem_array.elems[0].dest;
945945
break;
946-
case DMA_DIR_HMEM_TO_LMEM:
946+
case SOF_DMA_DIR_HMEM_TO_LMEM:
947947
dma_cfg->channel_direction = HOST_TO_MEMORY;
948948
dma_block_cfg->dest_address = buffer_addr;
949949
dma_block_cfg->source_address = hd->config.elem_array.elems[0].src;

src/drivers/generic/dummy-dma.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -348,8 +348,8 @@ static int dummy_dma_set_config(struct dma_chan_data *channel,
348348

349349
channel->direction = config->direction;
350350

351-
if (config->direction != DMA_DIR_HMEM_TO_LMEM &&
352-
config->direction != DMA_DIR_LMEM_TO_HMEM) {
351+
if (config->direction != SOF_DMA_DIR_HMEM_TO_LMEM &&
352+
config->direction != SOF_DMA_DIR_LMEM_TO_HMEM) {
353353
/* Shouldn't even happen though */
354354
tr_err(&ddma_tr, "dummy-dmac: %d channel %d invalid direction %d",
355355
channel->dma->plat_data.id, channel->index,
@@ -490,10 +490,10 @@ static int dummy_dma_get_data_size(struct dma_chan_data *channel,
490490
uint32_t size = dummy_dma_compute_avail_data(pdata);
491491

492492
switch (channel->direction) {
493-
case DMA_DIR_HMEM_TO_LMEM:
493+
case SOF_DMA_DIR_HMEM_TO_LMEM:
494494
*avail = size;
495495
break;
496-
case DMA_DIR_LMEM_TO_HMEM:
496+
case SOF_DMA_DIR_LMEM_TO_HMEM:
497497
*free = size;
498498
break;
499499
default:

src/drivers/imx/ipc.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,8 +207,8 @@ int platform_ipc_init(struct ipc *ipc)
207207
PLATFORM_PAGE_TABLE_SIZE);
208208
if (iipc->dh_buffer.page_table)
209209
bzero(iipc->dh_buffer.page_table, PLATFORM_PAGE_TABLE_SIZE);
210-
iipc->dh_buffer.dmac = dma_get(DMA_DIR_HMEM_TO_LMEM, 0, DMA_DEV_HOST,
211-
DMA_ACCESS_SHARED);
210+
iipc->dh_buffer.dmac = dma_get(SOF_DMA_DIR_HMEM_TO_LMEM, 0, SOF_DMA_DEV_HOST,
211+
SOF_DMA_ACCESS_SHARED);
212212
if (!iipc->dh_buffer.dmac) {
213213
tr_err(&ipc_tr, "Unable to find DMA for host page table");
214214
sof_panic(SOF_IPC_PANIC_IPC);

src/drivers/imx/micfil.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ const struct dai_driver micfil_driver = {
319319
.type = SOF_DAI_IMX_MICFIL,
320320
.uid = SOF_UUID(micfil_uuid),
321321
.tctx = &micfil_tr,
322-
.dma_dev = DMA_DEV_MICFIL,
322+
.dma_dev = SOF_DMA_DEV_MICFIL,
323323
.ops = {
324324
.trigger = micfil_trigger,
325325
.set_config = micfil_set_config,

src/drivers/imx/sai.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,7 @@ const struct dai_driver sai_driver = {
560560
.type = SOF_DAI_IMX_SAI,
561561
.uid = SOF_UUID(sai_uuid),
562562
.tctx = &sai_tr,
563-
.dma_dev = DMA_DEV_SAI,
563+
.dma_dev = SOF_DMA_DEV_SAI,
564564
.ops = {
565565
.trigger = sai_trigger,
566566
.set_config = sai_set_config,

src/drivers/imx/sdma.c

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -664,20 +664,20 @@ static int sdma_read_config(struct dma_chan_data *channel,
664664
uint32_t dma_dev = dd->dai->drv->dma_dev;
665665

666666
switch (config->direction) {
667-
case DMA_DIR_MEM_TO_DEV:
667+
case SOF_DMA_DIR_MEM_TO_DEV:
668668
pdata->hw_event = config->dest_dev;
669669
pdata->sdma_chan_type = SDMA_CHAN_TYPE_MCU2SHP;
670670
pdata->fifo_paddr = config->elem_array.elems[0].dest;
671671
break;
672-
case DMA_DIR_DEV_TO_MEM:
672+
case SOF_DMA_DIR_DEV_TO_MEM:
673673
pdata->hw_event = config->src_dev;
674-
if (dma_dev == DMA_DEV_MICFIL)
674+
if (dma_dev == SOF_DMA_DEV_MICFIL)
675675
pdata->sdma_chan_type = SDMA_CHAN_TYPE_SAI2MCU;
676676
else
677677
pdata->sdma_chan_type = SDMA_CHAN_TYPE_SHP2MCU;
678678
pdata->fifo_paddr = config->elem_array.elems[0].src;
679679
break;
680-
case DMA_DIR_MEM_TO_MEM:
680+
case SOF_DMA_DIR_MEM_TO_MEM:
681681
pdata->sdma_chan_type = SDMA_CHAN_TYPE_AP2AP;
682682
/* Fallthrough, TODO: implement to support m2m */
683683
default:
@@ -687,13 +687,13 @@ static int sdma_read_config(struct dma_chan_data *channel,
687687
}
688688

689689
for (i = 0; i < config->elem_array.count; i++) {
690-
if (config->direction == DMA_DIR_MEM_TO_DEV &&
690+
if (config->direction == SOF_DMA_DIR_MEM_TO_DEV &&
691691
pdata->fifo_paddr != config->elem_array.elems[i].dest) {
692692
tr_err(&sdma_tr, "sdma_read_config: FIFO changes address!");
693693
return -EINVAL;
694694
}
695695

696-
if (config->direction == DMA_DIR_DEV_TO_MEM &&
696+
if (config->direction == SOF_DMA_DIR_DEV_TO_MEM &&
697697
pdata->fifo_paddr != config->elem_array.elems[i].src) {
698698
tr_err(&sdma_tr, "sdma_read_config: FIFO changes address!");
699699
return -EINVAL;
@@ -768,15 +768,15 @@ static int sdma_prep_desc(struct dma_chan_data *channel,
768768
* is in buf_xaddr.
769769
*/
770770
switch (config->direction) {
771-
case DMA_DIR_MEM_TO_DEV:
771+
case SOF_DMA_DIR_MEM_TO_DEV:
772772
bd->buf_addr = config->elem_array.elems[i].src;
773773
width = config->src_width;
774774
break;
775-
case DMA_DIR_DEV_TO_MEM:
775+
case SOF_DMA_DIR_DEV_TO_MEM:
776776
bd->buf_addr = config->elem_array.elems[i].dest;
777777
width = config->dest_width;
778778
break;
779-
case DMA_DIR_MEM_TO_MEM:
779+
case SOF_DMA_DIR_MEM_TO_MEM:
780780
bd->buf_addr = config->elem_array.elems[i].src;
781781
bd->buf_xaddr = config->elem_array.elems[i].dest;
782782
width = config->dest_width;
@@ -985,10 +985,10 @@ static int sdma_get_data_size(struct dma_chan_data *channel, uint32_t *avail,
985985

986986
*avail = *free = 0;
987987
switch (channel->direction) {
988-
case DMA_DIR_MEM_TO_DEV:
988+
case SOF_DMA_DIR_MEM_TO_DEV:
989989
*free = result_data;
990990
break;
991-
case DMA_DIR_DEV_TO_MEM:
991+
case SOF_DMA_DIR_DEV_TO_MEM:
992992
*avail = result_data;
993993
break;
994994
default:

src/ipc/ipc3/dai.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ int dai_config_dma_channel(struct dai_data *dd, struct comp_dev *dev, const void
102102
/* other types of DAIs not handled for now */
103103
comp_err(dev, "dai_config_dma_channel(): Unknown dai type %d",
104104
config->type);
105-
channel = DMA_CHAN_INVALID;
105+
channel = SOF_DMA_CHAN_INVALID;
106106
break;
107107
}
108108

@@ -367,7 +367,7 @@ int dai_config(struct dai_data *dd, struct comp_dev *dev, struct ipc_config_dai
367367
}
368368
#endif
369369
/* do nothing for asking for channel free, for compatibility. */
370-
if (dai_config_dma_channel(dd, dev, spec_config) == DMA_CHAN_INVALID)
370+
if (dai_config_dma_channel(dd, dev, spec_config) == SOF_DMA_CHAN_INVALID)
371371
return 0;
372372

373373
/* allocated dai_config if not yet */

0 commit comments

Comments
 (0)