[Sound-open-firmware] [PATCH 4/6] topology: add files for SSP2-Codec machine drivers

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Thu Dec 7 02:41:07 CET 2017


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 at 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))
-- 
2.14.1



More information about the Sound-open-firmware mailing list