[Sound-open-firmware] [PATCH 0/6] topology updates for 1.0-rc3
Stream name was removed in kernel machine drivers, remove stream name in topology files. This will break if you don't use the right version of the kernel patches.
Pierre-Louis Bossart (6): topology: remove stream_name parameter from DAI_CONFIG topology: remove stream_name for all DAI definitions topology: add support for Dialog, Realtek and Maxim codecs topology: add files for SSP2-Codec machine drivers soft: topology: add 16 and 24 bit passthrough for nocodec soft: topology: fix cht.m4
topology/Makefile.am | 7 ++ topology/dsps/cht.m4 | 14 +++ topology/m4/build.m4 | 26 +++-- topology/m4/local.m4 | 107 ++++++++++----------- topology/reef-apl-nocodec.m4 | 10 +- topology/reef-bdw-rt286.m4 | 10 +- topology/reef-bdw-rt5640.m4 | 10 +- topology/reef-bxt-nocodec.m4 | 10 +- topology/reef-byt-da7212.m4 | 99 +++++++++++++++++++ topology/reef-byt-nocodec.m4 | 10 +- topology/reef-byt-rt5640.m4 | 10 +- topology/reef-byt-rt5645.m4 | 99 +++++++++++++++++++ topology/reef-byt-rt5651.m4 | 10 +- topology/reef-cht-max98090.m4 | 99 +++++++++++++++++++ topology/reef-cht-nocodec.m4 | 10 +- topology/reef-hsw-rt5640.m4 | 10 +- topology/sof/pipe-dai-capture.m4 | 2 +- topology/sof/pipe-dai-playback.m4 | 2 +- topology/sof/pipe-passthrough-playback.m4 | 2 +- topology/sof/pipe-passthrough-src-playback.m4 | 2 +- topology/sof/pipe-passthrough-vol-playback.m4 | 2 +- .../test-passthrough-16bit-48k-ssp2-SSP2-Codec.m4 | 51 ++++++++++ .../test-passthrough-16bit-48k-ssp2-nocodec.m4 | 51 ++++++++++ topology/test-passthrough-16bit-48k-ssp2.m4 | 7 +- topology/test-passthrough-24bit-48k-src-ssp2.m4 | 8 +- .../test-passthrough-24bit-48k-ssp2-SSP2-Codec.m4 | 51 ++++++++++ .../test-passthrough-24bit-48k-ssp2-nocodec.m4 | 51 ++++++++++ topology/test-passthrough-24bit-48k-ssp2.m4 | 7 +- topology/test-passthrough-24bit-48k-vol-ssp2.m4 | 8 +- 29 files changed, 643 insertions(+), 142 deletions(-) create mode 100644 topology/reef-byt-da7212.m4 create mode 100644 topology/reef-byt-rt5645.m4 create mode 100644 topology/reef-cht-max98090.m4 create mode 100644 topology/test-passthrough-16bit-48k-ssp2-SSP2-Codec.m4 create mode 100644 topology/test-passthrough-16bit-48k-ssp2-nocodec.m4 create mode 100644 topology/test-passthrough-24bit-48k-ssp2-SSP2-Codec.m4 create mode 100644 topology/test-passthrough-24bit-48k-ssp2-nocodec.m4
This value is never set in machine drivers, no point in setting it here
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- topology/m4/local.m4 | 9 ++++----- topology/reef-apl-nocodec.m4 | 2 +- topology/reef-bdw-rt286.m4 | 2 +- topology/reef-bdw-rt5640.m4 | 2 +- topology/reef-bxt-nocodec.m4 | 2 +- topology/reef-byt-nocodec.m4 | 2 +- topology/reef-byt-rt5640.m4 | 2 +- topology/reef-byt-rt5651.m4 | 2 +- topology/reef-cht-nocodec.m4 | 2 +- topology/reef-hsw-rt5640.m4 | 2 +- topology/test-passthrough-16bit-48k-ssp2.m4 | 2 +- topology/test-passthrough-24bit-48k-src-ssp2.m4 | 2 +- topology/test-passthrough-24bit-48k-ssp2.m4 | 2 +- topology/test-passthrough-24bit-48k-vol-ssp2.m4 | 2 +- 14 files changed, 17 insertions(+), 18 deletions(-)
diff --git a/topology/m4/local.m4 b/topology/m4/local.m4 index e521267..e31ba0e 100644 --- a/topology/m4/local.m4 +++ b/topology/m4/local.m4 @@ -422,17 +422,17 @@ define(`DAI_TDM', dnl Pipeline name) define(`N_DAI_CONFIG', `DAICONFIG.'$1)
-dnl DAI_CONFIG(type, idx, name, sname, format, valid bits, mclk, bclk, fsync, tdm) +dnl DAI_CONFIG(type, idx, name, format, valid bits, mclk, bclk, fsync, tdm) define(`DAI_CONFIG', `SectionHWConfig."'$1$2`" {' `' ` id "'$2`"' -` format "'$5`"' +` format "'$4`"' `' +` '$6 ` '$7 ` '$8 ` '$9 -` '$10 `}' `SectionVendorTuples."'N_DAI_CONFIG($1$2)`_tuples_str" {' ` tokens "sof_dai_tokens"' @@ -446,7 +446,7 @@ define(`DAI_CONFIG', `SectionVendorTuples."'N_DAI_CONFIG($1$2)`_tuples" {' ` tokens "sof_dai_tokens"' ` tuples."word" {' -` SOF_TKN_DAI_SAMPLE_BITS' STR($6) +` SOF_TKN_DAI_SAMPLE_BITS' STR($5) ` }' `}' `SectionData."'N_DAI_CONFIG($1$2)`_data" {' @@ -456,7 +456,6 @@ define(`DAI_CONFIG', `SectionBE."'$3`" {' ` index "0"' `' -` stream_name "'$4`"' ` hw_configs [' ` "'$1$2`"' ` ]' diff --git a/topology/reef-apl-nocodec.m4 b/topology/reef-apl-nocodec.m4 index 96f28d5..b62d9ed 100644 --- a/topology/reef-apl-nocodec.m4 +++ b/topology/reef-apl-nocodec.m4 @@ -103,7 +103,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 2, NoCodec, I2S, I2S, 24, +DAI_CONFIG(SSP, 2, NoCodec, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-bdw-rt286.m4 b/topology/reef-bdw-rt286.m4 index 512efe9..16b5dd1 100644 --- a/topology/reef-bdw-rt286.m4 +++ b/topology/reef-bdw-rt286.m4 @@ -103,7 +103,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 0, Codec, I2S, I2S, 24, +DAI_CONFIG(SSP, 0, Codec, I2S, 24, DAI_CLOCK(mclk, 24000000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-bdw-rt5640.m4 b/topology/reef-bdw-rt5640.m4 index 5e259a6..f0071ee 100644 --- a/topology/reef-bdw-rt5640.m4 +++ b/topology/reef-bdw-rt5640.m4 @@ -103,7 +103,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 0, Codec, I2S, I2S, 24, +DAI_CONFIG(SSP, 0, Codec, I2S, 24, DAI_CLOCK(mclk, 24000000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-bxt-nocodec.m4 b/topology/reef-bxt-nocodec.m4 index e3c45c9..ff506dd 100644 --- a/topology/reef-bxt-nocodec.m4 +++ b/topology/reef-bxt-nocodec.m4 @@ -103,7 +103,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 2, NoCodec, I2S, I2S, 24, +DAI_CONFIG(SSP, 2, NoCodec, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-byt-nocodec.m4 b/topology/reef-byt-nocodec.m4 index 3db415d..17203f5 100644 --- a/topology/reef-byt-nocodec.m4 +++ b/topology/reef-byt-nocodec.m4 @@ -92,7 +92,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 2, NoCodec, I2S, I2S, 24, +DAI_CONFIG(SSP, 2, NoCodec, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 1e9bb5f..3234b94 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -92,7 +92,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 2, Baytrail Audio, Audio, I2S, 24, +DAI_CONFIG(SSP, 2, Baytrail Audio, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-byt-rt5651.m4 b/topology/reef-byt-rt5651.m4 index 0867f91..26ea742 100644 --- a/topology/reef-byt-rt5651.m4 +++ b/topology/reef-byt-rt5651.m4 @@ -92,7 +92,7 @@ PCM_DUPLEX_ADD(Low Latency, 3, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 2, Baytrail Audio, Audio, I2S, 24, +DAI_CONFIG(SSP, 2, Baytrail Audio, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-cht-nocodec.m4 b/topology/reef-cht-nocodec.m4 index 195ae5c..908c037 100644 --- a/topology/reef-cht-nocodec.m4 +++ b/topology/reef-cht-nocodec.m4 @@ -92,7 +92,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 2, NoCodec, I2S, I2S, 24, +DAI_CONFIG(SSP, 2, NoCodec, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/reef-hsw-rt5640.m4 b/topology/reef-hsw-rt5640.m4 index 1b06828..13d073a 100644 --- a/topology/reef-hsw-rt5640.m4 +++ b/topology/reef-hsw-rt5640.m4 @@ -103,7 +103,7 @@ PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) # # BE configurations - overrides config in ACPI if present # -DAI_CONFIG(SSP, 0, Codec, I2S, I2S, 24, +DAI_CONFIG(SSP, 0, Codec, I2S, 24, DAI_CLOCK(mclk, 24000000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/test-passthrough-16bit-48k-ssp2.m4 b/topology/test-passthrough-16bit-48k-ssp2.m4 index 197d8ad..bf4963b 100644 --- a/topology/test-passthrough-16bit-48k-ssp2.m4 +++ b/topology/test-passthrough-16bit-48k-ssp2.m4 @@ -47,7 +47,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, # # 16bit I2S using 20bit sample conatiner on SSP2 # -DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, TEST_DAI_LINK_STREAM_NAME, I2S, 16, +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 16, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 1920000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/test-passthrough-24bit-48k-src-ssp2.m4 b/topology/test-passthrough-24bit-48k-src-ssp2.m4 index 5f88d7d..bcaed51 100644 --- a/topology/test-passthrough-24bit-48k-src-ssp2.m4 +++ b/topology/test-passthrough-24bit-48k-src-ssp2.m4 @@ -48,7 +48,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-src-playback.m4, # # 24bit I2S using 25bit sample conatiner on SSP2 # -DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, TEST_DAI_LINK_STREAM_NAME, I2S, 24, +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/test-passthrough-24bit-48k-ssp2.m4 b/topology/test-passthrough-24bit-48k-ssp2.m4 index 8ea4748..74c3b1a 100644 --- a/topology/test-passthrough-24bit-48k-ssp2.m4 +++ b/topology/test-passthrough-24bit-48k-ssp2.m4 @@ -47,7 +47,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, # # 24bit I2S using 25bit sample conatiner on SSP2 # -DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, TEST_DAI_LINK_STREAM_NAME, I2S, 24, +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave), diff --git a/topology/test-passthrough-24bit-48k-vol-ssp2.m4 b/topology/test-passthrough-24bit-48k-vol-ssp2.m4 index b1a0dab..3ff80fc 100644 --- a/topology/test-passthrough-24bit-48k-vol-ssp2.m4 +++ b/topology/test-passthrough-24bit-48k-vol-ssp2.m4 @@ -48,7 +48,7 @@ PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-vol-playback.m4, # # 24bit I2S using 25bit sample conatiner on SSP2 # -DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, TEST_DAI_LINK_STREAM_NAME, I2S, 24, +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 24, DAI_CLOCK(mclk, 19200000, slave), DAI_CLOCK(bclk, 2400000, slave), DAI_CLOCK(fsync, 48000, slave),
stream_name is not used by any machine drivers, there is no point in providing the information to topology layers
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- topology/m4/build.m4 | 26 +++---- topology/m4/local.m4 | 98 ++++++++++++------------- topology/reef-apl-nocodec.m4 | 8 +- topology/reef-bdw-rt286.m4 | 8 +- topology/reef-bdw-rt5640.m4 | 8 +- topology/reef-bxt-nocodec.m4 | 8 +- topology/reef-byt-nocodec.m4 | 8 +- topology/reef-byt-rt5640.m4 | 8 +- topology/reef-byt-rt5651.m4 | 8 +- topology/reef-cht-nocodec.m4 | 8 +- topology/reef-hsw-rt5640.m4 | 8 +- topology/sof/pipe-dai-capture.m4 | 2 +- topology/sof/pipe-dai-playback.m4 | 2 +- topology/sof/pipe-passthrough-playback.m4 | 2 +- topology/sof/pipe-passthrough-src-playback.m4 | 2 +- topology/sof/pipe-passthrough-vol-playback.m4 | 2 +- topology/test-passthrough-16bit-48k-ssp2.m4 | 5 +- topology/test-passthrough-24bit-48k-src-ssp2.m4 | 6 +- topology/test-passthrough-24bit-48k-ssp2.m4 | 5 +- topology/test-passthrough-24bit-48k-vol-ssp2.m4 | 6 +- 20 files changed, 104 insertions(+), 124 deletions(-)
diff --git a/topology/m4/build.m4 b/topology/m4/build.m4 index d6801de..9361219 100644 --- a/topology/m4/build.m4 +++ b/topology/m4/build.m4 @@ -30,7 +30,7 @@ define(`PIPELINE_PCM_ADD', dnl PIPELINE_PCM_DAI_ADD(pipeline, dnl pipe id, pcm, max channels, format, dnl frames, deadline, priority, core, dmac, dmac_chan, -dnl dai type, dai_index, stream_name, dai format, periods) +dnl dai type, dai_index, dai format, periods) define(`PIPELINE_PCM_DAI_ADD', `undefine(`PCM_ID')' `undefine(`PIPELINE_ID')' @@ -44,7 +44,6 @@ define(`PIPELINE_PCM_DAI_ADD', `undefine(`PIPELINE_DMAC_CHAN')' `undefine(`DAI_TYPE')' `undefine(`DAI_INDEX')' -`undefine(`DAI_SNAME')' `undefine(`DAI_FORMAT')' `undefine(`DAI_PERIODS')' `define(`PIPELINE_ID', $2)' @@ -59,9 +58,8 @@ define(`PIPELINE_PCM_DAI_ADD', `define(`PIPELINE_DMAC_CHAN', $11)' `define(`DAI_TYPE', STR($12))' `define(`DAI_INDEX', STR($13))' -`define(`DAI_SNAME', $14)' -`define(`DAI_FORMAT', $15)' -`define(`DAI_PERIODS', $16)' +`define(`DAI_FORMAT', $14)' +`define(`DAI_PERIODS', $15)' `define(`DAI_NAME', $12$13)' `include($1)' ) @@ -88,14 +86,13 @@ define(`PIPELINE_ADD', )
dnl DAI_ADD(pipeline, -dnl pipe id, dai type, dai_index, stream_name, +dnl pipe id, dai type, dai_index, dnl buffer, periods, format, dnl frames, deadline, priority, core) define(`DAI_ADD', `undefine(`PIPELINE_ID')' `undefine(`DAI_TYPE')' `undefine(`DAI_INDEX')' -`undefine(`DAI_SNAME')' `undefine(`DAI_BUF')' `undefine(`DAI_PERIODS')' `undefine(`DAI_FORMAT')' @@ -106,15 +103,14 @@ define(`DAI_ADD', `define(`PIPELINE_ID', $2)' `define(`DAI_TYPE', STR($3))' `define(`DAI_INDEX', STR($4))' -`define(`DAI_SNAME', $5)' -`define(`DAI_BUF', $6)' +`define(`DAI_BUF', $5)' `define(`DAI_NAME', $3$4)' -`define(`DAI_PERIODS', $7)' -`define(`DAI_FORMAT', $8)' -`define(`SCHEDULE_FRAMES', $9)' -`define(`SCHEDULE_DEADLINE', $10)' -`define(`SCHEDULE_PRIORITY', $11)' -`define(`SCHEDULE_CORE', $12)' +`define(`DAI_PERIODS', $6)' +`define(`DAI_FORMAT', $7)' +`define(`SCHEDULE_FRAMES', $8)' +`define(`SCHEDULE_DEADLINE', $9)' +`define(`SCHEDULE_PRIORITY', $10)' +`define(`SCHEDULE_CORE', $11)' `include($1)' )
diff --git a/topology/m4/local.m4 b/topology/m4/local.m4 index e31ba0e..da20e1c 100644 --- a/topology/m4/local.m4 +++ b/topology/m4/local.m4 @@ -257,111 +257,109 @@ define(`N_DAI', DAI_NAME) define(`N_DAI_OUT', DAI_NAME`.OUT') define(`N_DAI_IN', DAI_NAME`.IN')
-dnl W_DAI_OUT(stream, type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_OUT(type, index, format, periods_sink, periods_source, preload, data) define(`W_DAI_OUT', -`SectionVendorTuples."'N_DAI_OUT($1)`_tuples_w_comp" {' +`SectionVendorTuples."'N_DAI_OUT($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) ` }' `}' -`SectionData."'N_DAI_OUT($1)`_data_w_comp" {' -` tuples "'N_DAI_OUT($1)`_tuples_w_comp"' +`SectionData."'N_DAI_OUT($2)`_data_w_comp" {' +` tuples "'N_DAI_OUT($2)`_tuples_w_comp"' `}' -`SectionVendorTuples."'N_DAI_OUT($1)`_tuples_w" {' +`SectionVendorTuples."'N_DAI_OUT($2)`_tuples_w" {' ` tokens "sof_dai_tokens"' ` tuples."word" {' -` SOF_TKN_DAI_INDEX' $3 +` SOF_TKN_DAI_INDEX' $2 ` }' `}' -`SectionData."'N_DAI_OUT($1)`_data_w" {' -` tuples "'N_DAI_OUT($1)`_tuples_w"' +`SectionData."'N_DAI_OUT($2)`_data_w" {' +` tuples "'N_DAI_OUT($2)`_tuples_w"' `}' -`SectionVendorTuples."'N_DAI_OUT($1)`_tuples_str" {' +`SectionVendorTuples."'N_DAI_OUT($2)`_tuples_str" {' ` tokens "sof_dai_tokens"' ` tuples."string" {' -` SOF_TKN_DAI_TYPE' $2 +` SOF_TKN_DAI_TYPE' $1 ` }' `}' -`SectionData."'N_DAI_OUT($1)`_data_str" {' -` tuples "'N_DAI_OUT($1)`_tuples_str"' +`SectionData."'N_DAI_OUT($2)`_data_str" {' +` tuples "'N_DAI_OUT($2)`_tuples_str"' `}' -`SectionVendorTuples."'N_DAI_OUT($1)`_tuples_comp_str" {' +`SectionVendorTuples."'N_DAI_OUT($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($4) +` SOF_TKN_COMP_FORMAT' STR($3) ` }' `}' -`SectionData."'N_DAI_OUT($1)`_data_comp_str" {' -` tuples "'N_DAI_OUT($1)`_tuples_comp_str"' +`SectionData."'N_DAI_OUT($2)`_data_comp_str" {' +` tuples "'N_DAI_OUT($2)`_tuples_comp_str"' `}' `SectionWidget."'N_DAI_OUT`" {' ` index "'PIPELINE_ID`"' ` type "dai_in"' ` no_pm "true"' -` stream_name "'$1`"' ` data [' -` "'N_DAI_OUT($1)`_data_w"' -` "'N_DAI_OUT($1)`_data_w_comp"' -` "'N_DAI_OUT($1)`_data_str"' -` "'N_DAI_OUT($1)`_data_comp_str"' -` "'$8`"' +` "'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`"' ` ]' `}')
-dnl W_DAI_IN(stream, type, index, format, periods_sink, periods_source, preload, data) +dnl W_DAI_IN(type, index, format, periods_sink, periods_source, preload, data) define(`W_DAI_IN', -`SectionVendorTuples."'N_DAI_IN($1)`_tuples_w_comp" {' +`SectionVendorTuples."'N_DAI_IN($2)`_tuples_w_comp" {' ` tokens "sof_comp_tokens"' ` tuples."word" {' -` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($5) -` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($6) -` SOF_TKN_COMP_PRELOAD_COUNT' STR($7) +` SOF_TKN_COMP_PERIOD_SINK_COUNT' STR($4) +` SOF_TKN_COMP_PERIOD_SOURCE_COUNT' STR($5) +` SOF_TKN_COMP_PRELOAD_COUNT' STR($6) ` }' `}' -`SectionData."'N_DAI_IN($1)`_data_w_comp" {' -` tuples "'N_DAI_IN($1)`_tuples_w_comp"' +`SectionData."'N_DAI_IN($2)`_data_w_comp" {' +` tuples "'N_DAI_IN($2)`_tuples_w_comp"' `}' -`SectionVendorTuples."'N_DAI_IN($1)`_tuples_w" {' +`SectionVendorTuples."'N_DAI_IN($2)`_tuples_w" {' ` tokens "sof_dai_tokens"' ` tuples."word" {' -` SOF_TKN_DAI_INDEX' $3 +` SOF_TKN_DAI_INDEX' $2 ` }' `}' -`SectionData."'N_DAI_IN($1)`_data_w" {' -` tuples "'N_DAI_IN($1)`_tuples_w"' +`SectionData."'N_DAI_IN($2)`_data_w" {' +` tuples "'N_DAI_IN($2)`_tuples_w"' `}' -`SectionVendorTuples."'N_DAI_IN($1)`_tuples_str" {' +`SectionVendorTuples."'N_DAI_IN($2)`_tuples_str" {' ` tokens "sof_dai_tokens"' ` tuples."string" {' -` SOF_TKN_DAI_TYPE' $2 +` SOF_TKN_DAI_TYPE' $1 ` }' `}' -`SectionData."'N_DAI_IN($1)`_data_str" {' -` tuples "'N_DAI_IN($1)`_tuples_str"' +`SectionData."'N_DAI_IN($2)`_data_str" {' +` tuples "'N_DAI_IN($2)`_tuples_str"' `}' -`SectionVendorTuples."'N_DAI_IN($1)`_tuples_comp_str" {' +`SectionVendorTuples."'N_DAI_IN($2)`_tuples_comp_str" {' ` tokens "sof_comp_tokens"' ` tuples."string" {' -` SOF_TKN_COMP_FORMAT' STR($4) +` SOF_TKN_COMP_FORMAT' STR($3) ` }' `}' -`SectionData."'N_DAI_IN($1)`_data_comp_str" {' -` tuples "'N_DAI_IN($1)`_tuples_comp_str"' +`SectionData."'N_DAI_IN($2)`_data_comp_str" {' +` tuples "'N_DAI_IN($2)`_tuples_comp_str"' `}' `SectionWidget."'N_DAI_IN`" {' ` index "'PIPELINE_ID`"' ` type "dai_out"' ` no_pm "true"' -` stream_name "'$1`"' ` data [' -` "'N_DAI_IN($1)`_data_w"' -` "'N_DAI_IN($1)`_data_w_comp"' -` "'N_DAI_IN($1)`_data_str"' -` "'N_DAI_OUT($1)`_data_comp_str"' -` "'$8`"' +` "'N_DAI_IN($2)`_data_w"' +` "'N_DAI_IN($2)`_data_w_comp"' +` "'N_DAI_IN($2)`_data_str"' +` "'N_DAI_OUT($2)`_data_comp_str"' +` "'$7`"' ` ]' `}')
diff --git a/topology/reef-apl-nocodec.m4 b/topology/reef-apl-nocodec.m4 index b62d9ed..89ac0b0 100644 --- a/topology/reef-apl-nocodec.m4 +++ b/topology/reef-apl-nocodec.m4 @@ -83,17 +83,17 @@ SectionGraph."pipe-apl-nocodec" { # SSP port 2 is our only pipeline DAI #
-# playback DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 1, SSP, 2, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 2, SSP, 2, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt286.m4 b/topology/reef-bdw-rt286.m4 index 16b5dd1..969d5e0 100644 --- a/topology/reef-bdw-rt286.m4 +++ b/topology/reef-bdw-rt286.m4 @@ -83,17 +83,17 @@ SectionGraph."pipe-bdw-rt286" { # SSP port 0 is our only pipeline DAI #
-# playback DAI is SSP0 using I2S DAPM stream and 2 periods +# 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, I2S, + 1, SSP, 0, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP0 using I2S DAPM stream and 2 periods +# 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, I2S, + 2, SSP, 0, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bdw-rt5640.m4 b/topology/reef-bdw-rt5640.m4 index f0071ee..acf2462 100644 --- a/topology/reef-bdw-rt5640.m4 +++ b/topology/reef-bdw-rt5640.m4 @@ -83,17 +83,17 @@ SectionGraph."pipe-bdw-rt5640" { # SSP port 0 is our only pipeline DAI #
-# playback DAI is SSP0 using I2S DAPM stream and 2 periods +# 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, I2S, + 1, SSP, 0, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP0 using I2S DAPM stream and 2 periods +# 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, I2S, + 2, SSP, 0, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-bxt-nocodec.m4 b/topology/reef-bxt-nocodec.m4 index ff506dd..86cc364 100644 --- a/topology/reef-bxt-nocodec.m4 +++ b/topology/reef-bxt-nocodec.m4 @@ -83,17 +83,17 @@ SectionGraph."pipe-bxt-nocodec" { # SSP port 2 is our only pipeline DAI #
-# playback DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 1, SSP, 2, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 2, SSP, 2, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-nocodec.m4 b/topology/reef-byt-nocodec.m4 index 17203f5..56aee22 100644 --- a/topology/reef-byt-nocodec.m4 +++ b/topology/reef-byt-nocodec.m4 @@ -72,17 +72,17 @@ SectionGraph."pipe-byt-nocodec" { # SSP port 2 is our only pipeline DAI #
-# playback DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 1, SSP, 2, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 2, SSP, 2, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4 index 3234b94..f8d0e40 100644 --- a/topology/reef-byt-rt5640.m4 +++ b/topology/reef-byt-rt5640.m4 @@ -72,17 +72,17 @@ SectionGraph."pipe-byt-rt5640" { # SSP port 2 is our only pipeline DAI #
-# playback DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, Audio, + 1, SSP, 2, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, Audio, + 2, SSP, 2, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-byt-rt5651.m4 b/topology/reef-byt-rt5651.m4 index 26ea742..ccac260 100644 --- a/topology/reef-byt-rt5651.m4 +++ b/topology/reef-byt-rt5651.m4 @@ -72,17 +72,17 @@ SectionGraph."pipe-byt-rt5651" { # SSP port 2 is our only pipeline DAI #
-# playback DAI is SSP2 using "Audio" DAPM stream name and 2 periods +# 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, Audio, + 1, SSP, 2, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP2 using "Audio" DAPM stream name and 2 periods +# 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, Audio, + 2, SSP, 2, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-cht-nocodec.m4 b/topology/reef-cht-nocodec.m4 index 908c037..24560ee 100644 --- a/topology/reef-cht-nocodec.m4 +++ b/topology/reef-cht-nocodec.m4 @@ -72,17 +72,17 @@ SectionGraph."pipe-cht-nocodec" { # SSP port 2 is our only pipeline DAI #
-# playback DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 1, SSP, 2, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP2 using I2S DAPM stream and 2 periods +# 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, I2S, + 2, SSP, 2, PIPELINE_SINK_2, 2, s24le, 48, 1000, 0, 0)
diff --git a/topology/reef-hsw-rt5640.m4 b/topology/reef-hsw-rt5640.m4 index 13d073a..8759704 100644 --- a/topology/reef-hsw-rt5640.m4 +++ b/topology/reef-hsw-rt5640.m4 @@ -83,17 +83,17 @@ SectionGraph."pipe-hsw-rt5640" { # SSP port 0 is our only pipeline DAI #
-# playback DAI is SSP0 using I2S DAPM stream and 2 periods +# 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, I2S, + 1, SSP, 0, PIPELINE_SOURCE_1, 2, s24le, 48, 1000, 0, 0)
-# capture DAI is SSP0 using I2S DAPM stream and 2 periods +# 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, I2S, + 2, SSP, 0, 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 45c6ff4..ab63efd 100644 --- a/topology/sof/pipe-dai-capture.m4 +++ b/topology/sof/pipe-dai-capture.m4 @@ -6,7 +6,7 @@ include(`local.m4') # # DAI definitions # -W_DAI_IN(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf) +W_DAI_IN(DAI_TYPE, DAI_INDEX, 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 f99aac0..3a7a158 100644 --- a/topology/sof/pipe-dai-playback.m4 +++ b/topology/sof/pipe-dai-playback.m4 @@ -6,7 +6,7 @@ include(`local.m4') # # DAI definitions # -W_DAI_OUT(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_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 4e6e705..2b34cef 100644 --- a/topology/sof/pipe-passthrough-playback.m4 +++ b/topology/sof/pipe-passthrough-playback.m4 @@ -23,7 +23,7 @@ W_BUFFER(0, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf) +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
# # DAI pipeline - always use 0 for DAIs diff --git a/topology/sof/pipe-passthrough-src-playback.m4 b/topology/sof/pipe-passthrough-src-playback.m4 index 3cadaf2..b8fae58 100644 --- a/topology/sof/pipe-passthrough-src-playback.m4 +++ b/topology/sof/pipe-passthrough-src-playback.m4 @@ -44,7 +44,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(4, # # DAI definitions # -W_DAI_OUT(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/sof/pipe-passthrough-vol-playback.m4 b/topology/sof/pipe-passthrough-vol-playback.m4 index f0e39e8..6e8aba4 100644 --- a/topology/sof/pipe-passthrough-vol-playback.m4 +++ b/topology/sof/pipe-passthrough-vol-playback.m4 @@ -58,7 +58,7 @@ W_BUFFER(1, COMP_BUFFER_SIZE(2, # # DAI definitions # -W_DAI_OUT(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, +W_DAI_OUT(DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS, DAI_PERIODS, dai0p_plat_conf)
# diff --git a/topology/test-passthrough-16bit-48k-ssp2.m4 b/topology/test-passthrough-16bit-48k-ssp2.m4 index bf4963b..7bf4aaf 100644 --- a/topology/test-passthrough-16bit-48k-ssp2.m4 +++ b/topology/test-passthrough-16bit-48k-ssp2.m4 @@ -22,9 +22,6 @@ include(`dsps/byt.m4') # DAI Link Name define(`TEST_DAI_LINK_NAME', `Baytrail Audio')
-# DAI Link Stream Name -define(`TEST_DAI_LINK_STREAM_NAME', `Audio') - # # Define the pipeline # @@ -38,7 +35,7 @@ define(`TEST_DAI_LINK_STREAM_NAME', `Audio') PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, 1, 0, 2, s16le, 48, 1000, 0, 0, 0, 1, - SSP, 2, TEST_DAI_LINK_STREAM_NAME, s16le, 2) + SSP, 2, s16le, 2)
# # BE configurations - overrides config in ACPI if present diff --git a/topology/test-passthrough-24bit-48k-src-ssp2.m4 b/topology/test-passthrough-24bit-48k-src-ssp2.m4 index bcaed51..61c06e1 100644 --- a/topology/test-passthrough-24bit-48k-src-ssp2.m4 +++ b/topology/test-passthrough-24bit-48k-src-ssp2.m4 @@ -22,10 +22,6 @@ include(`dsps/byt.m4') # DAI Link Name define(`TEST_DAI_LINK_NAME', `Baytrail Audio')
-# DAI Link Stream Name -define(`TEST_DAI_LINK_STREAM_NAME', `Audio') - - # # Define the pipeline # @@ -39,7 +35,7 @@ define(`TEST_DAI_LINK_STREAM_NAME', `Audio') PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-src-playback.m4, 1, 0, 2, s24le, 48, 1000, 0, 0, 0, 1, - SSP, 2, TEST_DAI_LINK_STREAM_NAME, s24le, 2) + SSP, 2, s24le, 2)
# # BE configurations - overrides config in ACPI if present diff --git a/topology/test-passthrough-24bit-48k-ssp2.m4 b/topology/test-passthrough-24bit-48k-ssp2.m4 index 74c3b1a..ca3261d 100644 --- a/topology/test-passthrough-24bit-48k-ssp2.m4 +++ b/topology/test-passthrough-24bit-48k-ssp2.m4 @@ -22,9 +22,6 @@ include(`dsps/byt.m4') # DAI Link Name define(`TEST_DAI_LINK_NAME', `Baytrail Audio')
-# DAI Link Stream Name -define(`TEST_DAI_LINK_STREAM_NAME', `Audio') - # # Define the pipeline # @@ -38,7 +35,7 @@ define(`TEST_DAI_LINK_STREAM_NAME', `Audio') PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, 1, 0, 2, s24le, 48, 1000, 0, 0, 0, 1, - SSP, 2, TEST_DAI_LINK_STREAM_NAME, s24le, 2) + SSP, 2, s24le, 2)
# # BE configurations - overrides config in ACPI if present diff --git a/topology/test-passthrough-24bit-48k-vol-ssp2.m4 b/topology/test-passthrough-24bit-48k-vol-ssp2.m4 index 3ff80fc..7071782 100644 --- a/topology/test-passthrough-24bit-48k-vol-ssp2.m4 +++ b/topology/test-passthrough-24bit-48k-vol-ssp2.m4 @@ -22,10 +22,6 @@ include(`dsps/byt.m4') # DAI Link Name define(`TEST_DAI_LINK_NAME', `Baytrail Audio')
-# DAI Link Stream Name -define(`TEST_DAI_LINK_STREAM_NAME', `Audio') - - # # Define the pipeline # @@ -39,7 +35,7 @@ define(`TEST_DAI_LINK_STREAM_NAME', `Audio') PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-vol-playback.m4, 1, 0, 2, s24le, 48, 1000, 0, 0, 0, 1, - SSP, 2, TEST_DAI_LINK_STREAM_NAME, s24le, 2) + SSP, 2, s24le, 2)
# # BE configurations - overrides config in ACPI if present
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- topology/Makefile.am | 3 ++ topology/reef-byt-da7212.m4 | 99 +++++++++++++++++++++++++++++++++++++++++++ topology/reef-byt-rt5645.m4 | 99 +++++++++++++++++++++++++++++++++++++++++++ topology/reef-cht-max98090.m4 | 99 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 300 insertions(+) create mode 100644 topology/reef-byt-da7212.m4 create mode 100644 topology/reef-byt-rt5645.m4 create mode 100644 topology/reef-cht-max98090.m4
diff --git a/topology/Makefile.am b/topology/Makefile.am index 09618c8..9d89766 100644 --- a/topology/Makefile.am +++ b/topology/Makefile.am @@ -15,13 +15,16 @@ DEPS = \
MACHINES = \ reef-cht-nocodec.tplg \ + reef-cht-max98090.tplg \ reef-apl-nocodec.tplg \ reef-bxt-nocodec.tplg \ reef-byt-nocodec.tplg \ reef-bdw-rt286.tplg \ reef-bdw-rt5640.tplg \ reef-byt-rt5640.tplg \ + reef-byt-rt5645.tplg \ reef-byt-rt5651.tplg \ + reef-byt-da7212.tplg \ reef-hsw-rt5640.tplg \ test-passthrough-24bit-48k-ssp2.tplg \ test-passthrough-24bit-48k-vol-ssp2.tplg \ diff --git a/topology/reef-byt-da7212.m4 b/topology/reef-byt-da7212.m4 new file mode 100644 index 0000000..840ea69 --- /dev/null +++ b/topology/reef-byt-da7212.m4 @@ -0,0 +1,99 @@ +# +# Topology for generic Baytrail board with no codec. +# + +# Include topology builder +include(`local.m4') +include(`build.m4') + +# Include TLV library +include(`common/tlv.m4') + +# Include Token library +include(`sof/tokens.m4') + +# Include Baytrail DSP configuration +include(`dsps/byt.m4') + +# +# Define the pipelines +# +# PCM0 ----> volume ---------------+ +# |--low latency mixer ----> volume ----> SSP2 +# PCM2 ----> SRC -----> volume ----+ +# | +# Tone -----> volume ----+ +# +# PCM1 <---- Volume <---- SSP2 +# + +# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s32le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 1 for PCM audio playback data +PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, + 1, 0, 2, s32le, + 48, 1000, 0, 0, 0, 1) + +# Low Latency capture pipeline 2 on PCM 0 using max 2 channels of s32le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 2 for PCM audio capture data +PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, + 2, 0, 2, s32le, + 48, 1000, 0, 0, 0, 2) + +# PCM Media Playback pipeline 3 on PCM 1 using max 2 channels of s32le. +# Schedule 192 frames per 4000us deadline on core 0 with priority 1 +# Use DMAC 0 channel 3 for PCM audio playback data +PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, + 3, 1, 2, s32le, + 192, 4000, 1, 0, 0, 3) + +# Tone Playback pipeline 5 using max 2 channels of s32le. +# Schedule 192 frames per 4000us deadline on core 0 with priority 2 +PIPELINE_ADD(sof/pipe-tone.m4, + 5, 2, s32le, + 192, 4000, 2, 0) + +# Connect pipelines together +SectionGraph."pipe-byt-da7212" { + index "0" + + lines [ + # media 0 + dapm(PIPELINE_MIXER_1, PIPELINE_SOURCE_3) + #tone + dapm(PIPELINE_MIXER_1, PIPELINE_SOURCE_5) + ] +} + +# +# DAI configuration +# +# SSP port 2 is our only pipeline DAI +# + +# 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, + 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, + PIPELINE_SINK_2, 2, s24le, + 48, 1000, 0, 0) + +# PCM Low Latency +PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) + +# +# BE configurations - overrides config in ACPI if present +# +DAI_CONFIG(SSP, 2, SSP2-Codec, I2S, 24, + DAI_CLOCK(mclk, 19200000, slave), + DAI_CLOCK(bclk, 2400000, slave), + DAI_CLOCK(fsync, 48000, slave), + DAI_TDM(2, 25, 3, 3)) diff --git a/topology/reef-byt-rt5645.m4 b/topology/reef-byt-rt5645.m4 new file mode 100644 index 0000000..023d92d --- /dev/null +++ b/topology/reef-byt-rt5645.m4 @@ -0,0 +1,99 @@ +# +# Topology for generic Baytrail board with no codec. +# + +# Include topology builder +include(`local.m4') +include(`build.m4') + +# Include TLV library +include(`common/tlv.m4') + +# Include Token library +include(`sof/tokens.m4') + +# Include Baytrail DSP configuration +include(`dsps/byt.m4') + +# +# Define the pipelines +# +# PCM0 ----> volume ---------------+ +# |--low latency mixer ----> volume ----> SSP2 +# PCM2 ----> SRC -----> volume ----+ +# | +# Tone -----> volume ----+ +# +# PCM1 <---- Volume <---- SSP2 +# + +# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s32le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 1 for PCM audio playback data +PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, + 1, 0, 2, s32le, + 48, 1000, 0, 0, 0, 1) + +# Low Latency capture pipeline 2 on PCM 0 using max 2 channels of s32le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 2 for PCM audio capture data +PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, + 2, 0, 2, s32le, + 48, 1000, 0, 0, 0, 2) + +# PCM Media Playback pipeline 3 on PCM 1 using max 2 channels of s32le. +# Schedule 192 frames per 4000us deadline on core 0 with priority 1 +# Use DMAC 0 channel 3 for PCM audio playback data +PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, + 3, 1, 2, s32le, + 192, 4000, 1, 0, 0, 3) + +# Tone Playback pipeline 5 using max 2 channels of s32le. +# Schedule 192 frames per 4000us deadline on core 0 with priority 2 +PIPELINE_ADD(sof/pipe-tone.m4, + 5, 2, s32le, + 192, 4000, 2, 0) + +# Connect pipelines together +SectionGraph."pipe-byt-rt5645" { + index "0" + + lines [ + # media 0 + dapm(PIPELINE_MIXER_1, PIPELINE_SOURCE_3) + #tone + dapm(PIPELINE_MIXER_1, PIPELINE_SOURCE_5) + ] +} + +# +# DAI configuration +# +# SSP port 2 is our only pipeline DAI +# + +# 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, + 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, + PIPELINE_SINK_2, 2, s24le, + 48, 1000, 0, 0) + +# PCM Low Latency +PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) + +# +# BE configurations - overrides config in ACPI if present +# +DAI_CONFIG(SSP, 2, SSP2-Codec, I2S, 24, + DAI_CLOCK(mclk, 19200000, slave), + DAI_CLOCK(bclk, 2400000, slave), + DAI_CLOCK(fsync, 48000, slave), + DAI_TDM(2, 25, 3, 3)) diff --git a/topology/reef-cht-max98090.m4 b/topology/reef-cht-max98090.m4 new file mode 100644 index 0000000..3218402 --- /dev/null +++ b/topology/reef-cht-max98090.m4 @@ -0,0 +1,99 @@ +# +# Topology for generic CHT/BSW board with Maxim 98090 codec +# + +# Include topology builder +include(`local.m4') +include(`build.m4') + +# Include TLV library +include(`common/tlv.m4') + +# Include Token library +include(`sof/tokens.m4') + +# Include Cherrytrail DSP configuration +include(`dsps/cht.m4') + +# +# Define the pipelines +# +# PCM0 ----> volume ---------------+ +# |--low latency mixer ----> volume ----> SSP2 +# PCM2 ----> SRC -----> volume ----+ +# | +# Tone -----> volume ----+ +# +# PCM1 <---- Volume <---- SSP2 +# + +# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s32le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 1 for PCM audio playback data +PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, + 1, 0, 2, s32le, + 48, 1000, 0, 0, 0, 1) + +# Low Latency capture pipeline 2 on PCM 0 using max 2 channels of s32le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 2 for PCM audio capture data +PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, + 2, 0, 2, s32le, + 48, 1000, 0, 0, 0, 2) + +# PCM Media Playback pipeline 3 on PCM 1 using max 2 channels of s32le. +# Schedule 192 frames per 4000us deadline on core 0 with priority 1 +# Use DMAC 0 channel 3 for PCM audio playback data +PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, + 3, 1, 2, s32le, + 192, 4000, 1, 0, 0, 3) + +# Tone Playback pipeline 5 using max 2 channels of s32le. +# Schedule 192 frames per 4000us deadline on core 0 with priority 2 +PIPELINE_ADD(sof/pipe-tone.m4, + 5, 2, s32le, + 192, 4000, 2, 0) + +# Connect pipelines together +SectionGraph."pipe-cht-max98090" { + index "0" + + lines [ + # media 0 + dapm(PIPELINE_MIXER_1, PIPELINE_SOURCE_3) + #tone + dapm(PIPELINE_MIXER_1, PIPELINE_SOURCE_5) + ] +} + +# +# DAI configuration +# +# SSP port 2 is our only pipeline DAI +# + +# 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, + 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, + PIPELINE_SINK_2, 2, s16le, + 48, 1000, 0, 0) + +# PCM Low Latency +PCM_DUPLEX_ADD(Low Latency, 6, 0, 0, PIPELINE_PCM_1, PIPELINE_PCM_2) + +# +# BE configurations - overrides config in ACPI if present +# +DAI_CONFIG(SSP, 2, SSP2-Codec, I2S, 16, + DAI_CLOCK(mclk, 19200000, slave), + DAI_CLOCK(bclk, 1920000, slave), + DAI_CLOCK(fsync, 48000, slave), + DAI_TDM(2, 20, 3, 3))
At some point we should have a better way of relying on common parts but for now add a passthrough shortcut directly usable with machine drivers
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- topology/Makefile.am | 2 + .../test-passthrough-16bit-48k-ssp2-SSP2-Codec.m4 | 51 ++++++++++++++++++++++ .../test-passthrough-24bit-48k-ssp2-SSP2-Codec.m4 | 51 ++++++++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 topology/test-passthrough-16bit-48k-ssp2-SSP2-Codec.m4 create mode 100644 topology/test-passthrough-24bit-48k-ssp2-SSP2-Codec.m4
diff --git a/topology/Makefile.am b/topology/Makefile.am index 9d89766..d9be79e 100644 --- a/topology/Makefile.am +++ b/topology/Makefile.am @@ -27,6 +27,8 @@ MACHINES = \ reef-byt-da7212.tplg \ reef-hsw-rt5640.tplg \ test-passthrough-24bit-48k-ssp2.tplg \ + test-passthrough-24bit-48k-ssp2-SSP2-Codec.tplg \ + test-passthrough-16bit-48k-ssp2-SSP2-Codec.tplg \ test-passthrough-24bit-48k-vol-ssp2.tplg \ test-passthrough-24bit-48k-src-ssp2.tplg
diff --git a/topology/test-passthrough-16bit-48k-ssp2-SSP2-Codec.m4 b/topology/test-passthrough-16bit-48k-ssp2-SSP2-Codec.m4 new file mode 100644 index 0000000..e930416 --- /dev/null +++ b/topology/test-passthrough-16bit-48k-ssp2-SSP2-Codec.m4 @@ -0,0 +1,51 @@ +# +# Topology for pass through pipeline +# + +# Include topology builder +include(`local.m4') +include(`build.m4') + +# Include TLV library +include(`common/tlv.m4') + +# Include Token library +include(`sof/tokens.m4') + +# Include Baytrail DSP configuration +include(`dsps/byt.m4') + +# +# Machine Specific Config - !! MUST BE SET TO MATCH TEST MACHINE DRIVER !! +# + +# DAI Link Name +define(`TEST_DAI_LINK_NAME', `SSP2-Codec') + +# +# Define the pipeline +# +# PCM0 ----> SSP2 +# + +# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s24le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 1 for PCM audio playback data + +PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, + 1, 0, 2, s16le, + 48, 1000, 0, 0, 0, 1, + SSP, 2, s16le, 2) + +# +# BE configurations - overrides config in ACPI if present +# +# Clocks masters wrt codec +# +# 24bit I2S using 25bit sample conatiner on SSP2 +# +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 16, + DAI_CLOCK(mclk, 19200000, slave), + DAI_CLOCK(bclk, 1920000, slave), + DAI_CLOCK(fsync, 48000, slave), + DAI_TDM(2, 20, 3, 3)) diff --git a/topology/test-passthrough-24bit-48k-ssp2-SSP2-Codec.m4 b/topology/test-passthrough-24bit-48k-ssp2-SSP2-Codec.m4 new file mode 100644 index 0000000..7e481d3 --- /dev/null +++ b/topology/test-passthrough-24bit-48k-ssp2-SSP2-Codec.m4 @@ -0,0 +1,51 @@ +# +# Topology for pass through pipeline +# + +# Include topology builder +include(`local.m4') +include(`build.m4') + +# Include TLV library +include(`common/tlv.m4') + +# Include Token library +include(`sof/tokens.m4') + +# Include Baytrail DSP configuration +include(`dsps/byt.m4') + +# +# Machine Specific Config - !! MUST BE SET TO MATCH TEST MACHINE DRIVER !! +# + +# DAI Link Name +define(`TEST_DAI_LINK_NAME', `SSP2-Codec') + +# +# Define the pipeline +# +# PCM0 ----> SSP2 +# + +# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s24le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 1 for PCM audio playback data + +PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, + 1, 0, 2, s24le, + 48, 1000, 0, 0, 0, 1, + SSP, 2, s24le, 2) + +# +# BE configurations - overrides config in ACPI if present +# +# Clocks masters wrt codec +# +# 24bit I2S using 25bit sample conatiner on SSP2 +# +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 24, + DAI_CLOCK(mclk, 19200000, slave), + DAI_CLOCK(bclk, 2400000, slave), + DAI_CLOCK(fsync, 48000, slave), + DAI_TDM(2, 25, 3, 3))
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- topology/Makefile.am | 2 + .../test-passthrough-16bit-48k-ssp2-nocodec.m4 | 51 ++++++++++++++++++++++ .../test-passthrough-24bit-48k-ssp2-nocodec.m4 | 51 ++++++++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 topology/test-passthrough-16bit-48k-ssp2-nocodec.m4 create mode 100644 topology/test-passthrough-24bit-48k-ssp2-nocodec.m4
diff --git a/topology/Makefile.am b/topology/Makefile.am index d9be79e..77c146f 100644 --- a/topology/Makefile.am +++ b/topology/Makefile.am @@ -26,6 +26,8 @@ MACHINES = \ reef-byt-rt5651.tplg \ reef-byt-da7212.tplg \ reef-hsw-rt5640.tplg \ + test-passthrough-16bit-48k-ssp2-nocodec.tplg \ + test-passthrough-24bit-48k-ssp2-nocodec.tplg \ test-passthrough-24bit-48k-ssp2.tplg \ test-passthrough-24bit-48k-ssp2-SSP2-Codec.tplg \ test-passthrough-16bit-48k-ssp2-SSP2-Codec.tplg \ diff --git a/topology/test-passthrough-16bit-48k-ssp2-nocodec.m4 b/topology/test-passthrough-16bit-48k-ssp2-nocodec.m4 new file mode 100644 index 0000000..a1c0988 --- /dev/null +++ b/topology/test-passthrough-16bit-48k-ssp2-nocodec.m4 @@ -0,0 +1,51 @@ +# +# Topology for pass through pipeline +# + +# Include topology builder +include(`local.m4') +include(`build.m4') + +# Include TLV library +include(`common/tlv.m4') + +# Include Token library +include(`sof/tokens.m4') + +# Include Baytrail DSP configuration +include(`dsps/byt.m4') + +# +# Machine Specific Config - !! MUST BE SET TO MATCH TEST MACHINE DRIVER !! +# + +# DAI Link Name +define(`TEST_DAI_LINK_NAME', `NoCodec') + +# +# Define the pipeline +# +# PCM0 ----> SSP2 +# + +# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s24le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 1 for PCM audio playback data + +PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, + 1, 0, 2, s16le, + 48, 1000, 0, 0, 0, 1, + SSP, 2, s16le, 2) + +# +# BE configurations - overrides config in ACPI if present +# +# Clocks masters wrt codec +# +# 24bit I2S using 25bit sample conatiner on SSP2 +# +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 16, + DAI_CLOCK(mclk, 19200000, slave), + DAI_CLOCK(bclk, 1920000, slave), + DAI_CLOCK(fsync, 48000, slave), + DAI_TDM(2, 20, 3, 3)) diff --git a/topology/test-passthrough-24bit-48k-ssp2-nocodec.m4 b/topology/test-passthrough-24bit-48k-ssp2-nocodec.m4 new file mode 100644 index 0000000..e0a3d4f --- /dev/null +++ b/topology/test-passthrough-24bit-48k-ssp2-nocodec.m4 @@ -0,0 +1,51 @@ +# +# Topology for pass through pipeline +# + +# Include topology builder +include(`local.m4') +include(`build.m4') + +# Include TLV library +include(`common/tlv.m4') + +# Include Token library +include(`sof/tokens.m4') + +# Include Baytrail DSP configuration +include(`dsps/byt.m4') + +# +# Machine Specific Config - !! MUST BE SET TO MATCH TEST MACHINE DRIVER !! +# + +# DAI Link Name +define(`TEST_DAI_LINK_NAME', `NoCodec') + +# +# Define the pipeline +# +# PCM0 ----> SSP2 +# + +# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s24le. +# Schedule 48 frames per 1000us deadline on core 0 with priority 0 +# Use DMAC 0 channel 1 for PCM audio playback data + +PIPELINE_PCM_DAI_ADD(sof/pipe-passthrough-playback.m4, + 1, 0, 2, s24le, + 48, 1000, 0, 0, 0, 1, + SSP, 2, s24le, 2) + +# +# BE configurations - overrides config in ACPI if present +# +# Clocks masters wrt codec +# +# 24bit I2S using 25bit sample conatiner on SSP2 +# +DAI_CONFIG(SSP, 2, TEST_DAI_LINK_NAME, I2S, 24, + DAI_CLOCK(mclk, 19200000, slave), + DAI_CLOCK(bclk, 2400000, slave), + DAI_CLOCK(fsync, 48000, slave), + DAI_TDM(2, 25, 3, 3))
Not sure why we need these files, but the cht definitions are not aligned with the others. Fix.
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- topology/dsps/cht.m4 | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/topology/dsps/cht.m4 b/topology/dsps/cht.m4 index d315b0c..fdee83d 100644 --- a/topology/dsps/cht.m4 +++ b/topology/dsps/cht.m4 @@ -69,6 +69,20 @@ SectionData."dai0c_plat_conf" { tuples "dai0c_plat_tokens" }
+# PCM platform configuration +SectionVendorTuples."pcm_plat_tokens" { + tokens "sof_dai_tokens" + + tuples."word" { + SOF_TKN_DAI_DMAC PIPELINE_DMAC + SOF_TKN_DAI_DMAC_CHAN PIPELINE_DMAC_CHAN + } +} + +SectionData."pcm_plat_conf" { + tuples "pcm_plat_tokens" +} + # DAI schedule Configuration - scheduled by IRQ SectionVendorTuples."pipe_dai_schedule_plat_tokens" { tokens "sof_sched_tokens"
On Wed, 2017-12-06 at 19:41 -0600, Pierre-Louis Bossart wrote:
Stream name was removed in kernel machine drivers, remove stream name in topology files. This will break if you don't use the right version of the kernel patches.
Pierre-Louis Bossart (6): topology: remove stream_name parameter from DAI_CONFIG topology: remove stream_name for all DAI definitions topology: add support for Dialog, Realtek and Maxim codecs topology: add files for SSP2-Codec machine drivers soft: topology: add 16 and 24 bit passthrough for nocodec soft: topology: fix cht.m4
All applied.
Thanks
Liam --------------------------------------------------------------------- Intel Corporation (UK) Limited Registered No. 1134945 (England) Registered Office: Pipers Way, Swindon SN3 1RJ VAT No: 860 2173 47
This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
participants (2)
-
Liam Girdwood
-
Pierre-Louis Bossart