[Sound-open-firmware] [PATCH] topology: Add stream name to DAI widgets for binding to DAI links

DAI Widgets need bound to a DAI link to complete the DAPM graph. This is only working atm as we are only using one DAI. Add stream name to DAI widgets to be used by topology binder.
Signed-off-by: Liam Girdwood liam.r.girdwood@linux.intel.com --- topology/m4/dai.m4 | 44 +++++++++++++++++-------------- topology/reef-apl-nocodec.m4 | 4 +-- topology/reef-bdw-rt286.m4 | 4 +-- topology/reef-bdw-rt5640.m4 | 4 +-- topology/reef-bxt-nocodec.m4 | 4 +-- topology/reef-byt-da7212.m4 | 4 +-- topology/reef-byt-nocodec.m4 | 4 +-- topology/reef-byt-rt5640.m4 | 4 +-- topology/reef-byt-rt5645.m4 | 4 +-- topology/reef-byt-rt5651.m4 | 4 +-- topology/reef-cht-max98090.m4 | 4 +-- topology/reef-cht-nocodec.m4 | 4 +-- topology/reef-cnl-rt274.m4 | 4 +-- topology/reef-hsw-rt5640.m4 | 4 +-- topology/sof/pipe-dai-capture.m4 | 2 +- topology/sof/pipe-dai-playback.m4 | 2 +- topology/sof/pipe-passthrough-capture.m4 | 2 +- topology/sof/pipe-passthrough-playback.m4 | 2 +- topology/sof/pipe-src-capture.m4 | 2 +- topology/sof/pipe-src-playback.m4 | 2 +- topology/sof/pipe-volume-capture.m4 | 2 +- topology/sof/pipe-volume-playback.m4 | 2 +- topology/test/test-capture-ssp.m4 | 2 +- topology/test/test-playback-ssp.m4 | 2 +- topology/test/test-ssp.m4 | 4 +-- topology/test/test-tone-playback-ssp.m4 | 2 +- 26 files changed, 63 insertions(+), 59 deletions(-)
diff --git a/topology/m4/dai.m4 b/topology/m4/dai.m4 index 163dfab..0b030af 100644 --- a/topology/m4/dai.m4 +++ b/topology/m4/dai.m4 @@ -7,14 +7,14 @@ define(`N_DAI', DAI_NAME) define(`N_DAI_OUT', DAI_NAME`.OUT') define(`N_DAI_IN', DAI_NAME`.IN')
-dnl W_DAI_OUT(type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_OUT(type, index, dai_link, format, periods_sink, periods_source, preload, data) define(`W_DAI_OUT', `SectionVendorTuples."'N_DAI_OUT($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) ` }' `}' `SectionData."'N_DAI_OUT($2)`_data_w_comp" {' @@ -41,7 +41,7 @@ define(`W_DAI_OUT', `SectionVendorTuples."'N_DAI_OUT($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($3) +` SOF_TKN_COMP_FORMAT' STR($4) ` }' `}' `SectionData."'N_DAI_OUT($2)`_data_comp_str" {' @@ -50,24 +50,25 @@ define(`W_DAI_OUT', `SectionWidget."'N_DAI_OUT`" {' ` index "'PIPELINE_ID`"' ` type "dai_in"' +` stream_name' STR($3) ` no_pm "true"' ` data [' ` "'N_DAI_OUT($2)`_data_w"' ` "'N_DAI_OUT($2)`_data_w_comp"' ` "'N_DAI_OUT($2)`_data_str"' ` "'N_DAI_OUT($2)`_data_comp_str"' -` "'$7`"' +` "'$8`"' ` ]' `}')
-dnl W_DAI_IN(type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_IN(type, index, dai_link, format, periods_sink, periods_source, preload, data) define(`W_DAI_IN', `SectionVendorTuples."'N_DAI_IN($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) ` }' `}' `SectionData."'N_DAI_IN($2)`_data_w_comp" {' @@ -94,7 +95,7 @@ define(`W_DAI_IN', `SectionVendorTuples."'N_DAI_IN($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($3) +` SOF_TKN_COMP_FORMAT' STR($4) ` }' `}' `SectionData."'N_DAI_IN($2)`_data_comp_str" {' @@ -103,13 +104,14 @@ define(`W_DAI_IN', `SectionWidget."'N_DAI_IN`" {' ` index "'PIPELINE_ID`"' ` type "dai_out"' +` stream_name' STR($3) ` no_pm "true"' ` data [' ` "'N_DAI_IN($2)`_data_w"' ` "'N_DAI_IN($2)`_data_w_comp"' ` "'N_DAI_IN($2)`_data_str"' ` "'N_DAI_IN($2)`_data_comp_str"' -` "'$7`"' +` "'$8`"' ` ]' `}')
@@ -183,13 +185,14 @@ define(`DAI_CONFIG', `}')
dnl DAI_ADD(pipeline, -dnl pipe id, dai type, dai_index, +dnl pipe id, dai type, dai_index, dai_be, dnl buffer, periods, format, dnl frames, deadline, priority, core) define(`DAI_ADD', `undefine(`PIPELINE_ID')' `undefine(`DAI_TYPE')' `undefine(`DAI_INDEX')' +`undefine(`DAI_BE')' `undefine(`DAI_BUF')' `undefine(`DAI_PERIODS')' `undefine(`DAI_FORMAT')' @@ -200,14 +203,15 @@ define(`DAI_ADD', `define(`PIPELINE_ID', $2)' `define(`DAI_TYPE', STR($3))' `define(`DAI_INDEX', STR($4))' -`define(`DAI_BUF', $5)' +`define(`DAI_BE', $5)' +`define(`DAI_BUF', $6)' `define(`DAI_NAME', $3$4)' -`define(`DAI_PERIODS', $6)' -`define(`DAI_FORMAT', $7)' -`define(`SCHEDULE_FRAMES', $8)' -`define(`SCHEDULE_DEADLINE', $9)' -`define(`SCHEDULE_PRIORITY', $10)' -`define(`SCHEDULE_CORE', $11)' +`define(`DAI_PERIODS', $7)' +`define(`DAI_FORMAT', $8)' +`define(`SCHEDULE_FRAMES', $9)' +`define(`SCHEDULE_DEADLINE', $10)' +`define(`SCHEDULE_PRIORITY', $11)' +`define(`SCHEDULE_CORE', $12)' `include($1)' )
diff --git a/topology/reef-apl-nocodec.m4 b/topology/reef-apl-nocodec.m4 index cf0a20e..78a1a4e 100644 --- a/topology/reef-apl-nocodec.m4 +++ b/topology/reef-apl-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-apl-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt286.m4 b/topology/reef-bdw-rt286.m4 index fa894f6..a305e7d 100644 --- a/topology/reef-bdw-rt286.m4 +++ b/topology/reef-bdw-rt286.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bdw-rt286" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 0, + 1, SSP, 0, Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 0, + 2, SSP, 0, Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt5640.m4 b/topology/reef-bdw-rt5640.m4 index ec920a5..3fbb844 100644 --- a/topology/reef-bdw-rt5640.m4 +++ b/topology/reef-bdw-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bdw-rt5640" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 0, + 1, SSP, 0, Audio, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 0, + 2, SSP, 0, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bxt-nocodec.m4 b/topology/reef-bxt-nocodec.m4 index b7717d0..7e2b624 100644 --- a/topology/reef-bxt-nocodec.m4 +++ b/topology/reef-bxt-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bxt-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-da7212.m4 b/topology/reef-byt-da7212.m4 index 7515c63..a9789c6 100644 --- a/topology/reef-byt-da7212.m4 +++ b/topology/reef-byt-da7212.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-da7212" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-nocodec.m4 b/topology/reef-byt-nocodec.m4 index b3ca196..3be5d00 100644 --- a/topology/reef-byt-nocodec.m4 +++ b/topology/reef-byt-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 9fa15a2..c971d41 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5640" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, Audio PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5645.m4 b/topology/reef-byt-rt5645.m4 index c81a4db..15cac48 100644 --- a/topology/reef-byt-rt5645.m4 +++ b/topology/reef-byt-rt5645.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5645" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5651.m4 b/topology/reef-byt-rt5651.m4 index ec114d7..656efd2 100644 --- a/topology/reef-byt-rt5651.m4 +++ b/topology/reef-byt-rt5651.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5651" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, SS2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-cht-max98090.m4 b/topology/reef-cht-max98090.m4 index 5690df4..ab1b639 100644 --- a/topology/reef-cht-max98090.m4 +++ b/topology/reef-cht-max98090.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-cht-max98090" { # playback DAI is SSP2 using 2 periods # Buffers use s16le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s16le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s16le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s16le, 48, 1000, 0, 0)
diff --git a/topology/reef-cht-nocodec.m4 b/topology/reef-cht-nocodec.m4 index 32acb62..3f61e44 100644 --- a/topology/reef-cht-nocodec.m4 +++ b/topology/reef-cht-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-cht-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 2, + 1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 2, + 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-cnl-rt274.m4 b/topology/reef-cnl-rt274.m4 index e95363b..495fab3 100644 --- a/topology/reef-cnl-rt274.m4 +++ b/topology/reef-cnl-rt274.m4 @@ -47,14 +47,14 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-volume-capture.m4, # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 0, + 1, SSP, 0, SSP0-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 0, + 2, SSP, 0, SSP0-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-hsw-rt5640.m4 b/topology/reef-hsw-rt5640.m4 index 1f63820..5ab33ea 100644 --- a/topology/reef-hsw-rt5640.m4 +++ b/topology/reef-hsw-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-hsw-rt5640" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, 0, + 1, SSP, 0, Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, 0, + 2, SSP, 0, Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/sof/pipe-dai-capture.m4 b/topology/sof/pipe-dai-capture.m4 index a5a72d0..3f16f87 100644 --- a/topology/sof/pipe-dai-capture.m4 +++ b/topology/sof/pipe-dai-capture.m4 @@ -8,7 +8,7 @@ include(`pipeline.m4') # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf) +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-dai-playback.m4 b/topology/sof/pipe-dai-playback.m4 index e70998b..2397875 100644 --- a/topology/sof/pipe-dai-playback.m4 +++ b/topology/sof/pipe-dai-playback.m4 @@ -8,7 +8,7 @@ include(`pipeline.m4') # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-passthrough-capture.m4 b/topology/sof/pipe-passthrough-capture.m4 index a13887a..07961b3 100644 --- a/topology/sof/pipe-passthrough-capture.m4 +++ b/topology/sof/pipe-passthrough-capture.m4 @@ -27,7 +27,7 @@ W_BUFFER(0, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0c_plat_conf) +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0c_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-passthrough-playback.m4 b/topology/sof/pipe-passthrough-playback.m4 index 8a9e8ff..715fcee 100644 --- a/topology/sof/pipe-passthrough-playback.m4 +++ b/topology/sof/pipe-passthrough-playback.m4 @@ -27,7 +27,7 @@ W_BUFFER(0, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-src-capture.m4 b/topology/sof/pipe-src-capture.m4 index a58eb68..1b1a58d 100644 --- a/topology/sof/pipe-src-capture.m4 +++ b/topology/sof/pipe-src-capture.m4 @@ -42,7 +42,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(4, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0c_plat_conf)
# diff --git a/topology/sof/pipe-src-playback.m4 b/topology/sof/pipe-src-playback.m4 index 7bf8f47..9dfdcd8 100644 --- a/topology/sof/pipe-src-playback.m4 +++ b/topology/sof/pipe-src-playback.m4 @@ -42,7 +42,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(4, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/sof/pipe-volume-capture.m4 b/topology/sof/pipe-volume-capture.m4 index 5aa0d12..61b70a9 100644 --- a/topology/sof/pipe-volume-capture.m4 +++ b/topology/sof/pipe-volume-capture.m4 @@ -47,7 +47,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0c_plat_conf)
# diff --git a/topology/sof/pipe-volume-playback.m4 b/topology/sof/pipe-volume-playback.m4 index d6624b0..5fea0c7 100644 --- a/topology/sof/pipe-volume-playback.m4 +++ b/topology/sof/pipe-volume-playback.m4 @@ -47,7 +47,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/test/test-capture-ssp.m4 b/topology/test/test-capture-ssp.m4 index 8950222..3d10d7a 100644 --- a/topology/test/test-capture-ssp.m4 +++ b/topology/test/test-capture-ssp.m4 @@ -53,7 +53,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-capture.m4, # capture DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, TEST_SSP_PORT, + 2, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SINK_2, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-playback-ssp.m4 b/topology/test/test-playback-ssp.m4 index db6cb6c..ab775a4 100644 --- a/topology/test/test-playback-ssp.m4 +++ b/topology/test/test-playback-ssp.m4 @@ -53,7 +53,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-playback.m4, # playback DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, TEST_SSP_PORT, + 1, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_1, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-ssp.m4 b/topology/test/test-ssp.m4 index 01e3a02..fa5fd29 100644 --- a/topology/test/test-ssp.m4 +++ b/topology/test/test-ssp.m4 @@ -64,14 +64,14 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-capture.m4, # playback DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 1, SSP, TEST_SSP_PORT, + 1, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_1, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
# capture DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4, - 2, SSP, TEST_SSP_PORT, + 2, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SINK_2, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-tone-playback-ssp.m4 b/topology/test/test-tone-playback-ssp.m4 index 9231316..7cf1ed5 100644 --- a/topology/test/test-tone-playback-ssp.m4 +++ b/topology/test/test-tone-playback-ssp.m4 @@ -45,7 +45,7 @@ PIPELINE_ADD(sof/pipe-tone.m4, # playback DAI is SSP2 using 2 periods # Buffers use TEST_SSP_FORMAT format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4, - 5, SSP, TEST_SSP_PORT, + 5, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_5, 2, TEST_SSP_FORMAT, 48, 1000, 2, 0)

On 3/13/18 3:18 PM, Liam Girdwood wrote:
DAI Widgets need bound to a DAI link to complete the DAPM graph. This is only working atm as we are only using one DAI. Add stream name to DAI widgets to be used by topology binder.
I am pretty sure we removed the stream_name in December since no machine driver actually used them
IIRC this stream_name created a mess with the topology binding, if you specify a stream_name but the machine driver doesn't have one the binding fails.
Or did you mean DAI .name ?
Signed-off-by: Liam Girdwood liam.r.girdwood@linux.intel.com
topology/m4/dai.m4 | 44 +++++++++++++++++-------------- topology/reef-apl-nocodec.m4 | 4 +-- topology/reef-bdw-rt286.m4 | 4 +-- topology/reef-bdw-rt5640.m4 | 4 +-- topology/reef-bxt-nocodec.m4 | 4 +-- topology/reef-byt-da7212.m4 | 4 +-- topology/reef-byt-nocodec.m4 | 4 +-- topology/reef-byt-rt5640.m4 | 4 +-- topology/reef-byt-rt5645.m4 | 4 +-- topology/reef-byt-rt5651.m4 | 4 +-- topology/reef-cht-max98090.m4 | 4 +-- topology/reef-cht-nocodec.m4 | 4 +-- topology/reef-cnl-rt274.m4 | 4 +-- topology/reef-hsw-rt5640.m4 | 4 +-- topology/sof/pipe-dai-capture.m4 | 2 +- topology/sof/pipe-dai-playback.m4 | 2 +- topology/sof/pipe-passthrough-capture.m4 | 2 +- topology/sof/pipe-passthrough-playback.m4 | 2 +- topology/sof/pipe-src-capture.m4 | 2 +- topology/sof/pipe-src-playback.m4 | 2 +- topology/sof/pipe-volume-capture.m4 | 2 +- topology/sof/pipe-volume-playback.m4 | 2 +- topology/test/test-capture-ssp.m4 | 2 +- topology/test/test-playback-ssp.m4 | 2 +- topology/test/test-ssp.m4 | 4 +-- topology/test/test-tone-playback-ssp.m4 | 2 +- 26 files changed, 63 insertions(+), 59 deletions(-)
diff --git a/topology/m4/dai.m4 b/topology/m4/dai.m4 index 163dfab..0b030af 100644 --- a/topology/m4/dai.m4 +++ b/topology/m4/dai.m4 @@ -7,14 +7,14 @@ define(`N_DAI', DAI_NAME) define(`N_DAI_OUT', DAI_NAME`.OUT') define(`N_DAI_IN', DAI_NAME`.IN')
-dnl W_DAI_OUT(type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_OUT(type, index, dai_link, format, periods_sink, periods_source, preload, data) define(`W_DAI_OUT', `SectionVendorTuples."'N_DAI_OUT($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) ` }' `}' `SectionData."'N_DAI_OUT($2)`_data_w_comp" {' @@ -41,7 +41,7 @@ define(`W_DAI_OUT', `SectionVendorTuples."'N_DAI_OUT($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($3) +` SOF_TKN_COMP_FORMAT' STR($4) ` }' `}' `SectionData."'N_DAI_OUT($2)`_data_comp_str" {' @@ -50,24 +50,25 @@ define(`W_DAI_OUT', `SectionWidget."'N_DAI_OUT`" {' ` index "'PIPELINE_ID`"' ` type "dai_in"' +` stream_name' STR($3) ` no_pm "true"' ` data [' ` "'N_DAI_OUT($2)`_data_w"' ` "'N_DAI_OUT($2)`_data_w_comp"' ` "'N_DAI_OUT($2)`_data_str"' ` "'N_DAI_OUT($2)`_data_comp_str"' -` "'$7`"' +` "'$8`"' ` ]' `}')
-dnl W_DAI_IN(type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_IN(type, index, dai_link, format, periods_sink, periods_source, preload, data) define(`W_DAI_IN', `SectionVendorTuples."'N_DAI_IN($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) ` }' `}' `SectionData."'N_DAI_IN($2)`_data_w_comp" {' @@ -94,7 +95,7 @@ define(`W_DAI_IN', `SectionVendorTuples."'N_DAI_IN($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($3) +` SOF_TKN_COMP_FORMAT' STR($4) ` }' `}' `SectionData."'N_DAI_IN($2)`_data_comp_str" {' @@ -103,13 +104,14 @@ define(`W_DAI_IN', `SectionWidget."'N_DAI_IN`" {' ` index "'PIPELINE_ID`"' ` type "dai_out"' +` stream_name' STR($3) ` no_pm "true"' ` data [' ` "'N_DAI_IN($2)`_data_w"' ` "'N_DAI_IN($2)`_data_w_comp"' ` "'N_DAI_IN($2)`_data_str"' ` "'N_DAI_IN($2)`_data_comp_str"' -` "'$7`"' +` "'$8`"' ` ]' `}')
@@ -183,13 +185,14 @@ define(`DAI_CONFIG', `}')
dnl DAI_ADD(pipeline, -dnl pipe id, dai type, dai_index, +dnl pipe id, dai type, dai_index, dai_be, dnl buffer, periods, format, dnl frames, deadline, priority, core) define(`DAI_ADD', `undefine(`PIPELINE_ID')' `undefine(`DAI_TYPE')' `undefine(`DAI_INDEX')' +`undefine(`DAI_BE')' `undefine(`DAI_BUF')' `undefine(`DAI_PERIODS')' `undefine(`DAI_FORMAT')' @@ -200,14 +203,15 @@ define(`DAI_ADD', `define(`PIPELINE_ID', $2)' `define(`DAI_TYPE', STR($3))' `define(`DAI_INDEX', STR($4))' -`define(`DAI_BUF', $5)' +`define(`DAI_BE', $5)' +`define(`DAI_BUF', $6)' `define(`DAI_NAME', $3$4)' -`define(`DAI_PERIODS', $6)' -`define(`DAI_FORMAT', $7)' -`define(`SCHEDULE_FRAMES', $8)' -`define(`SCHEDULE_DEADLINE', $9)' -`define(`SCHEDULE_PRIORITY', $10)' -`define(`SCHEDULE_CORE', $11)' +`define(`DAI_PERIODS', $7)' +`define(`DAI_FORMAT', $8)' +`define(`SCHEDULE_FRAMES', $9)' +`define(`SCHEDULE_DEADLINE', $10)' +`define(`SCHEDULE_PRIORITY', $11)' +`define(`SCHEDULE_CORE', $12)' `include($1)' )
diff --git a/topology/reef-apl-nocodec.m4 b/topology/reef-apl-nocodec.m4 index cf0a20e..78a1a4e 100644 --- a/topology/reef-apl-nocodec.m4 +++ b/topology/reef-apl-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-apl-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt286.m4 b/topology/reef-bdw-rt286.m4 index fa894f6..a305e7d 100644 --- a/topology/reef-bdw-rt286.m4 +++ b/topology/reef-bdw-rt286.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bdw-rt286" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt5640.m4 b/topology/reef-bdw-rt5640.m4 index ec920a5..3fbb844 100644 --- a/topology/reef-bdw-rt5640.m4 +++ b/topology/reef-bdw-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bdw-rt5640" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, Audio, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bxt-nocodec.m4 b/topology/reef-bxt-nocodec.m4 index b7717d0..7e2b624 100644 --- a/topology/reef-bxt-nocodec.m4 +++ b/topology/reef-bxt-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bxt-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-da7212.m4 b/topology/reef-byt-da7212.m4 index 7515c63..a9789c6 100644 --- a/topology/reef-byt-da7212.m4 +++ b/topology/reef-byt-da7212.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-da7212" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-nocodec.m4 b/topology/reef-byt-nocodec.m4 index b3ca196..3be5d00 100644 --- a/topology/reef-byt-nocodec.m4 +++ b/topology/reef-byt-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 9fa15a2..c971d41 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5640" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, Audio PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5645.m4 b/topology/reef-byt-rt5645.m4 index c81a4db..15cac48 100644 --- a/topology/reef-byt-rt5645.m4 +++ b/topology/reef-byt-rt5645.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5645" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5651.m4 b/topology/reef-byt-rt5651.m4 index ec114d7..656efd2 100644 --- a/topology/reef-byt-rt5651.m4 +++ b/topology/reef-byt-rt5651.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5651" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SS2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-cht-max98090.m4 b/topology/reef-cht-max98090.m4 index 5690df4..ab1b639 100644 --- a/topology/reef-cht-max98090.m4 +++ b/topology/reef-cht-max98090.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-cht-max98090" { # playback DAI is SSP2 using 2 periods # Buffers use s16le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s16le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s16le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s16le, 48, 1000, 0, 0)
diff --git a/topology/reef-cht-nocodec.m4 b/topology/reef-cht-nocodec.m4 index 32acb62..3f61e44 100644 --- a/topology/reef-cht-nocodec.m4 +++ b/topology/reef-cht-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-cht-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-cnl-rt274.m4 b/topology/reef-cnl-rt274.m4 index e95363b..495fab3 100644 --- a/topology/reef-cnl-rt274.m4 +++ b/topology/reef-cnl-rt274.m4 @@ -47,14 +47,14 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-volume-capture.m4, # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, SSP0-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, SSP0-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-hsw-rt5640.m4 b/topology/reef-hsw-rt5640.m4 index 1f63820..5ab33ea 100644 --- a/topology/reef-hsw-rt5640.m4 +++ b/topology/reef-hsw-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-hsw-rt5640" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/sof/pipe-dai-capture.m4 b/topology/sof/pipe-dai-capture.m4 index a5a72d0..3f16f87 100644 --- a/topology/sof/pipe-dai-capture.m4 +++ b/topology/sof/pipe-dai-capture.m4 @@ -8,7 +8,7 @@ include(`pipeline.m4') # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf) +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-dai-playback.m4 b/topology/sof/pipe-dai-playback.m4 index e70998b..2397875 100644 --- a/topology/sof/pipe-dai-playback.m4 +++ b/topology/sof/pipe-dai-playback.m4 @@ -8,7 +8,7 @@ include(`pipeline.m4') # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-passthrough-capture.m4 b/topology/sof/pipe-passthrough-capture.m4 index a13887a..07961b3 100644 --- a/topology/sof/pipe-passthrough-capture.m4 +++ b/topology/sof/pipe-passthrough-capture.m4 @@ -27,7 +27,7 @@ W_BUFFER(0, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0c_plat_conf) +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0c_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-passthrough-playback.m4 b/topology/sof/pipe-passthrough-playback.m4 index 8a9e8ff..715fcee 100644 --- a/topology/sof/pipe-passthrough-playback.m4 +++ b/topology/sof/pipe-passthrough-playback.m4 @@ -27,7 +27,7 @@ W_BUFFER(0, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-src-capture.m4 b/topology/sof/pipe-src-capture.m4 index a58eb68..1b1a58d 100644 --- a/topology/sof/pipe-src-capture.m4 +++ b/topology/sof/pipe-src-capture.m4 @@ -42,7 +42,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(4, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0c_plat_conf)
# diff --git a/topology/sof/pipe-src-playback.m4 b/topology/sof/pipe-src-playback.m4 index 7bf8f47..9dfdcd8 100644 --- a/topology/sof/pipe-src-playback.m4 +++ b/topology/sof/pipe-src-playback.m4 @@ -42,7 +42,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(4, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/sof/pipe-volume-capture.m4 b/topology/sof/pipe-volume-capture.m4 index 5aa0d12..61b70a9 100644 --- a/topology/sof/pipe-volume-capture.m4 +++ b/topology/sof/pipe-volume-capture.m4 @@ -47,7 +47,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0c_plat_conf)
# diff --git a/topology/sof/pipe-volume-playback.m4 b/topology/sof/pipe-volume-playback.m4 index d6624b0..5fea0c7 100644 --- a/topology/sof/pipe-volume-playback.m4 +++ b/topology/sof/pipe-volume-playback.m4 @@ -47,7 +47,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/test/test-capture-ssp.m4 b/topology/test/test-capture-ssp.m4 index 8950222..3d10d7a 100644 --- a/topology/test/test-capture-ssp.m4 +++ b/topology/test/test-capture-ssp.m4 @@ -53,7 +53,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-capture.m4, # capture DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, TEST_SSP_PORT,
- 2, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SINK_2, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-playback-ssp.m4 b/topology/test/test-playback-ssp.m4 index db6cb6c..ab775a4 100644 --- a/topology/test/test-playback-ssp.m4 +++ b/topology/test/test-playback-ssp.m4 @@ -53,7 +53,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-playback.m4, # playback DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, TEST_SSP_PORT,
- 1, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_1, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-ssp.m4 b/topology/test/test-ssp.m4 index 01e3a02..fa5fd29 100644 --- a/topology/test/test-ssp.m4 +++ b/topology/test/test-ssp.m4 @@ -64,14 +64,14 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-capture.m4, # playback DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, TEST_SSP_PORT,
1, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_1, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
# capture DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, TEST_SSP_PORT,
- 2, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SINK_2, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-tone-playback-ssp.m4 b/topology/test/test-tone-playback-ssp.m4 index 9231316..7cf1ed5 100644 --- a/topology/test/test-tone-playback-ssp.m4 +++ b/topology/test/test-tone-playback-ssp.m4 @@ -45,7 +45,7 @@ PIPELINE_ADD(sof/pipe-tone.m4, # playback DAI is SSP2 using 2 periods # Buffers use TEST_SSP_FORMAT format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 5, SSP, TEST_SSP_PORT,
- 5, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_5, 2, TEST_SSP_FORMAT, 48, 1000, 2, 0)

On Tue, 2018-03-13 at 15:42 -0500, Pierre-Louis Bossart wrote:
On 3/13/18 3:18 PM, Liam Girdwood wrote:
DAI Widgets need bound to a DAI link to complete the DAPM graph. This is only working atm as we are only using one DAI. Add stream name to DAI widgets to be used by topology binder.
I am pretty sure we removed the stream_name in December since no machine driver actually used them
We did, but everything worked accidentally for one DAI link due to DAI link stream name being NULL and widget name being "". This obviously wont work for multiple DAI links.
IIRC this stream_name created a mess with the topology binding, if you specify a stream_name but the machine driver doesn't have one the binding fails.
Patches sent for that part that also fix the binding logic.
Or did you mean DAI .name ?
No, stream_name for binding. The stream name for 2 DAI widgets can be the same i.e. SSP2.IN and SSP2.OUT can both bind to SSP2 BE DAI link.
Liam
Signed-off-by: Liam Girdwood liam.r.girdwood@linux.intel.com
topology/m4/dai.m4 | 44 +++++++++++++++++--------
topology/reef-apl-nocodec.m4 | 4 +-- topology/reef-bdw-rt286.m4 | 4 +-- topology/reef-bdw-rt5640.m4 | 4 +-- topology/reef-bxt-nocodec.m4 | 4 +-- topology/reef-byt-da7212.m4 | 4 +-- topology/reef-byt-nocodec.m4 | 4 +-- topology/reef-byt-rt5640.m4 | 4 +-- topology/reef-byt-rt5645.m4 | 4 +-- topology/reef-byt-rt5651.m4 | 4 +-- topology/reef-cht-max98090.m4 | 4 +-- topology/reef-cht-nocodec.m4 | 4 +-- topology/reef-cnl-rt274.m4 | 4 +-- topology/reef-hsw-rt5640.m4 | 4 +-- topology/sof/pipe-dai-capture.m4 | 2 +- topology/sof/pipe-dai-playback.m4 | 2 +- topology/sof/pipe-passthrough-capture.m4 | 2 +- topology/sof/pipe-passthrough-playback.m4 | 2 +- topology/sof/pipe-src-capture.m4 | 2 +- topology/sof/pipe-src-playback.m4 | 2 +- topology/sof/pipe-volume-capture.m4 | 2 +- topology/sof/pipe-volume-playback.m4 | 2 +- topology/test/test-capture-ssp.m4 | 2 +- topology/test/test-playback-ssp.m4 | 2 +- topology/test/test-ssp.m4 | 4 +-- topology/test/test-tone-playback-ssp.m4 | 2 +- 26 files changed, 63 insertions(+), 59 deletions(-)
diff --git a/topology/m4/dai.m4 b/topology/m4/dai.m4 index 163dfab..0b030af 100644 --- a/topology/m4/dai.m4 +++ b/topology/m4/dai.m4 @@ -7,14 +7,14 @@ define(`N_DAI', DAI_NAME) define(`N_DAI_OUT', DAI_NAME`.OUT') define(`N_DAI_IN', DAI_NAME`.IN')
-dnl W_DAI_OUT(type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_OUT(type, index, dai_link, format, periods_sink, periods_source, preload, data) define(`W_DAI_OUT', `SectionVendorTuples."'N_DAI_OUT($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) ` }' `}' `SectionData."'N_DAI_OUT($2)`_data_w_comp" {' @@ -41,7 +41,7 @@ define(`W_DAI_OUT', `SectionVendorTuples."'N_DAI_OUT($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($3) +` SOF_TKN_COMP_FORMAT' STR($4) ` }' `}' `SectionData."'N_DAI_OUT($2)`_data_comp_str" {' @@ -50,24 +50,25 @@ define(`W_DAI_OUT', `SectionWidget."'N_DAI_OUT`" {' ` index "'PIPELINE_ID`"' ` type "dai_in"' +` stream_name' STR($3) ` no_pm "true"' ` data [' ` "'N_DAI_OUT($2)`_data_w"' ` "'N_DAI_OUT($2)`_data_w_comp"' ` "'N_DAI_OUT($2)`_data_str"' ` "'N_DAI_OUT($2)`_data_comp_str"' -` "'$7`"' +` "'$8`"' ` ]' `}')
-dnl W_DAI_IN(type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_IN(type, index, dai_link, format, periods_sink, periods_source, preload, data) define(`W_DAI_IN', `SectionVendorTuples."'N_DAI_IN($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) ` }' `}' `SectionData."'N_DAI_IN($2)`_data_w_comp" {' @@ -94,7 +95,7 @@ define(`W_DAI_IN', `SectionVendorTuples."'N_DAI_IN($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($3) +` SOF_TKN_COMP_FORMAT' STR($4) ` }' `}' `SectionData."'N_DAI_IN($2)`_data_comp_str" {' @@ -103,13 +104,14 @@ define(`W_DAI_IN', `SectionWidget."'N_DAI_IN`" {' ` index "'PIPELINE_ID`"' ` type "dai_out"' +` stream_name' STR($3) ` no_pm "true"' ` data [' ` "'N_DAI_IN($2)`_data_w"' ` "'N_DAI_IN($2)`_data_w_comp"' ` "'N_DAI_IN($2)`_data_str"' ` "'N_DAI_IN($2)`_data_comp_str"' -` "'$7`"' +` "'$8`"' ` ]' `}')
@@ -183,13 +185,14 @@ define(`DAI_CONFIG', `}')
dnl DAI_ADD(pipeline, -dnl pipe id, dai type, dai_index, +dnl pipe id, dai type, dai_index, dai_be, dnl buffer, periods, format, dnl frames, deadline, priority, core) define(`DAI_ADD', `undefine(`PIPELINE_ID')' `undefine(`DAI_TYPE')' `undefine(`DAI_INDEX')' +`undefine(`DAI_BE')' `undefine(`DAI_BUF')' `undefine(`DAI_PERIODS')' `undefine(`DAI_FORMAT')' @@ -200,14 +203,15 @@ define(`DAI_ADD', `define(`PIPELINE_ID', $2)' `define(`DAI_TYPE', STR($3))' `define(`DAI_INDEX', STR($4))' -`define(`DAI_BUF', $5)' +`define(`DAI_BE', $5)' +`define(`DAI_BUF', $6)' `define(`DAI_NAME', $3$4)' -`define(`DAI_PERIODS', $6)' -`define(`DAI_FORMAT', $7)' -`define(`SCHEDULE_FRAMES', $8)' -`define(`SCHEDULE_DEADLINE', $9)' -`define(`SCHEDULE_PRIORITY', $10)' -`define(`SCHEDULE_CORE', $11)' +`define(`DAI_PERIODS', $7)' +`define(`DAI_FORMAT', $8)' +`define(`SCHEDULE_FRAMES', $9)' +`define(`SCHEDULE_DEADLINE', $10)' +`define(`SCHEDULE_PRIORITY', $11)' +`define(`SCHEDULE_CORE', $12)' `include($1)' )
diff --git a/topology/reef-apl-nocodec.m4 b/topology/reef-apl-nocodec.m4 index cf0a20e..78a1a4e 100644 --- a/topology/reef-apl-nocodec.m4 +++ b/topology/reef-apl-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-apl-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt286.m4 b/topology/reef-bdw-rt286.m4 index fa894f6..a305e7d 100644 --- a/topology/reef-bdw-rt286.m4 +++ b/topology/reef-bdw-rt286.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bdw-rt286" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt5640.m4 b/topology/reef-bdw-rt5640.m4 index ec920a5..3fbb844 100644 --- a/topology/reef-bdw-rt5640.m4 +++ b/topology/reef-bdw-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bdw-rt5640" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, Audio, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bxt-nocodec.m4 b/topology/reef-bxt-nocodec.m4 index b7717d0..7e2b624 100644 --- a/topology/reef-bxt-nocodec.m4 +++ b/topology/reef-bxt-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-bxt-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-da7212.m4 b/topology/reef-byt-da7212.m4 index 7515c63..a9789c6 100644 --- a/topology/reef-byt-da7212.m4 +++ b/topology/reef-byt-da7212.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-da7212" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-nocodec.m4 b/topology/reef-byt-nocodec.m4 index b3ca196..3be5d00 100644 --- a/topology/reef-byt-nocodec.m4 +++ b/topology/reef-byt-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 9fa15a2..c971d41 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5640" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, Audio PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5645.m4 b/topology/reef-byt-rt5645.m4 index c81a4db..15cac48 100644 --- a/topology/reef-byt-rt5645.m4 +++ b/topology/reef-byt-rt5645.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5645" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5651.m4 b/topology/reef-byt-rt5651.m4 index ec114d7..656efd2 100644 --- a/topology/reef-byt-rt5651.m4 +++ b/topology/reef-byt-rt5651.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5651" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SS2-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-cht-max98090.m4 b/topology/reef-cht-max98090.m4 index 5690df4..ab1b639 100644 --- a/topology/reef-cht-max98090.m4 +++ b/topology/reef-cht-max98090.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-cht-max98090" { # playback DAI is SSP2 using 2 periods # Buffers use s16le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, SSP2-Codec, PIPELINE_SOURCE_1, 2, s16le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s16le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, SSP2-Codec, PIPELINE_SINK_2, 2, s16le, 48, 1000, 0, 0)
diff --git a/topology/reef-cht-nocodec.m4 b/topology/reef-cht-nocodec.m4 index 32acb62..3f61e44 100644 --- a/topology/reef-cht-nocodec.m4 +++ b/topology/reef-cht-nocodec.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-cht-nocodec" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, NoCodec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, NoCodec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-cnl-rt274.m4 b/topology/reef-cnl-rt274.m4 index e95363b..495fab3 100644 --- a/topology/reef-cnl-rt274.m4 +++ b/topology/reef-cnl-rt274.m4 @@ -47,14 +47,14 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-volume-capture.m4, # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, SSP0-Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, SSP0-Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-hsw-rt5640.m4 b/topology/reef-hsw-rt5640.m4 index 1f63820..5ab33ea 100644 --- a/topology/reef-hsw-rt5640.m4 +++ b/topology/reef-hsw-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-hsw-rt5640" { # playback DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 0,
1, SSP, 0, Codec, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP0 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 0,
- 2, SSP, 0, Codec, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/sof/pipe-dai-capture.m4 b/topology/sof/pipe-dai- capture.m4 index a5a72d0..3f16f87 100644 --- a/topology/sof/pipe-dai-capture.m4 +++ b/topology/sof/pipe-dai-capture.m4 @@ -8,7 +8,7 @@ include(`pipeline.m4') # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf) +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-dai-playback.m4 b/topology/sof/pipe-dai- playback.m4 index e70998b..2397875 100644 --- a/topology/sof/pipe-dai-playback.m4 +++ b/topology/sof/pipe-dai-playback.m4 @@ -8,7 +8,7 @@ include(`pipeline.m4') # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-passthrough-capture.m4 b/topology/sof/pipe- passthrough-capture.m4 index a13887a..07961b3 100644 --- a/topology/sof/pipe-passthrough-capture.m4 +++ b/topology/sof/pipe-passthrough-capture.m4 @@ -27,7 +27,7 @@ W_BUFFER(0, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0c_plat_conf) +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0c_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-passthrough-playback.m4 b/topology/sof/pipe- passthrough-playback.m4 index 8a9e8ff..715fcee 100644 --- a/topology/sof/pipe-passthrough-playback.m4 +++ b/topology/sof/pipe-passthrough-playback.m4 @@ -27,7 +27,7 @@ W_BUFFER(0, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-src-capture.m4 b/topology/sof/pipe-src- capture.m4 index a58eb68..1b1a58d 100644 --- a/topology/sof/pipe-src-capture.m4 +++ b/topology/sof/pipe-src-capture.m4 @@ -42,7 +42,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(4, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0c_plat_conf)
# diff --git a/topology/sof/pipe-src-playback.m4 b/topology/sof/pipe-src- playback.m4 index 7bf8f47..9dfdcd8 100644 --- a/topology/sof/pipe-src-playback.m4 +++ b/topology/sof/pipe-src-playback.m4 @@ -42,7 +42,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(4, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/sof/pipe-volume-capture.m4 b/topology/sof/pipe-volume- capture.m4 index 5aa0d12..61b70a9 100644 --- a/topology/sof/pipe-volume-capture.m4 +++ b/topology/sof/pipe-volume-capture.m4 @@ -47,7 +47,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_IN(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0c_plat_conf)
# diff --git a/topology/sof/pipe-volume-playback.m4 b/topology/sof/pipe- volume-playback.m4 index d6624b0..5fea0c7 100644 --- a/topology/sof/pipe-volume-playback.m4 +++ b/topology/sof/pipe-volume-playback.m4 @@ -47,7 +47,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_BE, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/test/test-capture-ssp.m4 b/topology/test/test-capture- ssp.m4 index 8950222..3d10d7a 100644 --- a/topology/test/test-capture-ssp.m4 +++ b/topology/test/test-capture-ssp.m4 @@ -53,7 +53,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-capture.m4, # capture DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, TEST_SSP_PORT,
- 2, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SINK_2, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-playback-ssp.m4 b/topology/test/test- playback-ssp.m4 index db6cb6c..ab775a4 100644 --- a/topology/test/test-playback-ssp.m4 +++ b/topology/test/test-playback-ssp.m4 @@ -53,7 +53,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-playback.m4, # playback DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, TEST_SSP_PORT,
- 1, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_1, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-ssp.m4 b/topology/test/test-ssp.m4 index 01e3a02..fa5fd29 100644 --- a/topology/test/test-ssp.m4 +++ b/topology/test/test-ssp.m4 @@ -64,14 +64,14 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-TEST_PIPE_NAME-capture.m4, # playback DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, TEST_SSP_PORT,
1, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_1, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
# capture DAI is SSP TEST_SSP_PORT using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, TEST_SSP_PORT,
- 2, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SINK_2, 2, TEST_SSP_FORMAT, 48, 1000, 0, 0)
diff --git a/topology/test/test-tone-playback-ssp.m4 b/topology/test/test- tone-playback-ssp.m4 index 9231316..7cf1ed5 100644 --- a/topology/test/test-tone-playback-ssp.m4 +++ b/topology/test/test-tone-playback-ssp.m4 @@ -45,7 +45,7 @@ PIPELINE_ADD(sof/pipe-tone.m4, # playback DAI is SSP2 using 2 periods # Buffers use TEST_SSP_FORMAT format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 5, SSP, TEST_SSP_PORT,
- 5, SSP, TEST_SSP_PORT, TEST_DAI_LINK_NAME, PIPELINE_SOURCE_5, 2, TEST_SSP_FORMAT, 48, 1000, 2, 0)

On 03/13/2018 04:00 PM, Liam Girdwood wrote:
On Tue, 2018-03-13 at 15:42 -0500, Pierre-Louis Bossart wrote:
On 3/13/18 3:18 PM, Liam Girdwood wrote:
DAI Widgets need bound to a DAI link to complete the DAPM graph. This is only working atm as we are only using one DAI. Add stream name to DAI widgets to be used by topology binder.
I am pretty sure we removed the stream_name in December since no machine driver actually used them
We did, but everything worked accidentally for one DAI link due to DAI link stream name being NULL and widget name being "". This obviously wont work for multiple DAI links.
IIRC this stream_name created a mess with the topology binding, if you specify a stream_name but the machine driver doesn't have one the binding fails.
Patches sent for that part that also fix the binding logic.
ok, but this will break firmware if I don't take your ASoC patches... And I had to look at the details to figure out that:
"most BE links dont set stream name, so set it to dai link name if it's NULL to help bind widgets."
Now that makes sense :-)

diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 9fa15a2..c971d41 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5640" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, Audio PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
This is wrong, should be SSP-Codec just like all other byt machine drivers. 'Audio' is for the old unmaintained byt-rt5640 driver...

On Wed, 2018-03-14 at 15:12 -0500, Pierre-Louis Bossart wrote:
diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 9fa15a2..c971d41 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5640" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, Audio PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
This is wrong, should be SSP-Codec just like all other byt machine drivers. 'Audio' is for the old unmaintained byt-rt5640 driver...
Thanks, my T100 is broken so can no longer test that one. I'll send fix and iiuc this is the only deprecated machine driver in the Intel directory ?
Thanks
Liam

On 03/14/2018 04:02 PM, Liam Girdwood wrote:
On Wed, 2018-03-14 at 15:12 -0500, Pierre-Louis Bossart wrote:
diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 9fa15a2..c971d41 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -76,14 +76,14 @@ SectionGraph."pipe-byt-rt5640" { # playback DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with priority 0 DAI_ADD(sof/pipe-dai-playback.m4,
- 1, SSP, 2,
1, SSP, 2, Audio PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
# capture DAI is SSP2 using 2 periods # Buffers use s24le format, with 48 frame per 1000us on core 0 with
priority 0 DAI_ADD(sof/pipe-dai-capture.m4,
- 2, SSP, 2,
- 2, SSP, 2, Audio, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
This is wrong, should be SSP-Codec just like all other byt machine drivers. 'Audio' is for the old unmaintained byt-rt5640 driver...
Thanks, my T100 is broken so can no longer test that one. I'll send fix and iiuc this is the only deprecated machine driver in the Intel directory ?
byt-rt5640 and byt-max98090 are deprecated. The supported ones are bytcr-rt5640 and cht-bsw-max98090_ti
Thanks
Liam _______________________________________________ Sound-open-firmware mailing list Sound-open-firmware@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/sound-open-firmware
participants (2)
-
Liam Girdwood
-
Pierre-Louis Bossart