[Sound-open-firmware] [PATCH 5/6] topology: Add machine specific topology configurations.
Liam Girdwood
liam.r.girdwood at linux.intel.com
Thu Jul 6 17:53:04 CEST 2017
Add some initial machine specific topology configurations that define
some simple pipelines for certain machines.
Signed-off-by: Liam Girdwood <liam.r.girdwood at linux.intel.com>
---
topology/reef-apl-nocodec.m4 | 79 ++++++++++++++++++++++++++++++++++++++++++++
topology/reef-bdw-rt286.m4 | 76 ++++++++++++++++++++++++++++++++++++++++++
topology/reef-bdw-rt5640.m4 | 76 ++++++++++++++++++++++++++++++++++++++++++
topology/reef-bxt-nocodec.m4 | 77 ++++++++++++++++++++++++++++++++++++++++++
topology/reef-byt-nocodec.m4 | 77 ++++++++++++++++++++++++++++++++++++++++++
topology/reef-byt-rt5640.m4 | 77 ++++++++++++++++++++++++++++++++++++++++++
topology/reef-byt-rt5651.m4 | 76 ++++++++++++++++++++++++++++++++++++++++++
topology/reef-cht-nocodec.m4 | 77 ++++++++++++++++++++++++++++++++++++++++++
topology/reef-hsw-rt5640.m4 | 76 ++++++++++++++++++++++++++++++++++++++++++
9 files changed, 691 insertions(+)
create mode 100644 topology/reef-apl-nocodec.m4
create mode 100644 topology/reef-bdw-rt286.m4
create mode 100644 topology/reef-bdw-rt5640.m4
create mode 100644 topology/reef-bxt-nocodec.m4
create mode 100644 topology/reef-byt-nocodec.m4
create mode 100644 topology/reef-byt-rt5640.m4
create mode 100644 topology/reef-byt-rt5651.m4
create mode 100644 topology/reef-cht-nocodec.m4
create mode 100644 topology/reef-hsw-rt5640.m4
diff --git a/topology/reef-apl-nocodec.m4 b/topology/reef-apl-nocodec.m4
new file mode 100644
index 0000000..f1c1819
--- /dev/null
+++ b/topology/reef-apl-nocodec.m4
@@ -0,0 +1,79 @@
+#
+# Topology for generic Apollolake 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 Apollolake DSP configuration
+include(`dsps/bxt.m4')
+
+#
+# Define the pipelines
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-apl-nocodec" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+
+# BE configurations - overrides config in ACPI if present
+SectionHWConfig."SSP2" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "19200000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
+
diff --git a/topology/reef-bdw-rt286.m4 b/topology/reef-bdw-rt286.m4
new file mode 100644
index 0000000..38d1c6a
--- /dev/null
+++ b/topology/reef-bdw-rt286.m4
@@ -0,0 +1,76 @@
+#
+# Topology for generic Broadwell 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 Broadwell DSP configuration
+include(`dsps/bdw.m4')
+
+#
+# Define the pipelines
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-bdw-rt286" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP0" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "24000000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
diff --git a/topology/reef-bdw-rt5640.m4 b/topology/reef-bdw-rt5640.m4
new file mode 100644
index 0000000..4bdfdb4
--- /dev/null
+++ b/topology/reef-bdw-rt5640.m4
@@ -0,0 +1,76 @@
+#
+# Topology for generic Broadwell 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 Broadwell DSP configuration
+include(`dsps/bdw.m4')
+
+#
+# Define the pipelines
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-bdw-rt5640" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP0" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "24000000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
diff --git a/topology/reef-bxt-nocodec.m4 b/topology/reef-bxt-nocodec.m4
new file mode 100644
index 0000000..8634d3a
--- /dev/null
+++ b/topology/reef-bxt-nocodec.m4
@@ -0,0 +1,77 @@
+#
+# Topology for generic Broxton 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 Broxton DSP configuration
+include(`dsps/bxt.m4')
+
+#
+# Define the pipelines
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-bxt-nocodec" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP2" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "19200000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
+
diff --git a/topology/reef-byt-nocodec.m4 b/topology/reef-byt-nocodec.m4
new file mode 100644
index 0000000..14660fa
--- /dev/null
+++ b/topology/reef-byt-nocodec.m4
@@ -0,0 +1,77 @@
+#
+# 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
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-byt-nocodec" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP2" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "19200000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
+
diff --git a/topology/reef-byt-rt5640.m4 b/topology/reef-byt-rt5640.m4
new file mode 100644
index 0000000..90acec9
--- /dev/null
+++ b/topology/reef-byt-rt5640.m4
@@ -0,0 +1,77 @@
+#
+# 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
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-byt-rt5640" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP2" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "19200000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
+
diff --git a/topology/reef-byt-rt5651.m4 b/topology/reef-byt-rt5651.m4
new file mode 100644
index 0000000..e031807
--- /dev/null
+++ b/topology/reef-byt-rt5651.m4
@@ -0,0 +1,76 @@
+#
+# 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
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-byt-rt5651" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP2" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "19200000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
diff --git a/topology/reef-cht-nocodec.m4 b/topology/reef-cht-nocodec.m4
new file mode 100644
index 0000000..6ceed8e
--- /dev/null
+++ b/topology/reef-cht-nocodec.m4
@@ -0,0 +1,77 @@
+#
+# Topology for generic CherryTrail 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 CherryTrail DSP configuration
+include(`dsps/cht.m4')
+
+#
+# Define the pipelines
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+#PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+#PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+#PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-cht-nocodec" {
+ index "0"
+
+ lines [
+ # media 0
+# dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+# dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+# dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP2" {
+
+ id "2"
+ format "I2S"
+ bclk "master"
+ bclk_freq "2400000"
+ mclk "master"
+ mclk_freq "19200000"
+ fsync "master"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
+
diff --git a/topology/reef-hsw-rt5640.m4 b/topology/reef-hsw-rt5640.m4
new file mode 100644
index 0000000..0648df2
--- /dev/null
+++ b/topology/reef-hsw-rt5640.m4
@@ -0,0 +1,76 @@
+#
+# Topology for generic Haswell 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 Haswell DSP configuration
+include(`dsps/hsw.m4')
+
+#
+# Define the pipelines
+#
+
+# Low Latency playback pipeline 1 on PCM 0
+PIPELINE_PCM_ADD(sof/pipe-low-latency-playback.m4, 1, 0, 768, 768, 48, 1000, 0)
+
+# Low Latency capture pipeline 2 on PCM 1
+PIPELINE_PCM_ADD(sof/pipe-low-latency-capture.m4, 2, 1, 768, 768, 48, 1000, 0)
+
+# PCM Media Playback pipeline 3 on PCM 2
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 3, 2, 1536, 1536, 96, 2000, 1)
+
+# PCM Media Playback pipeline 4 on PCM 3
+PIPELINE_PCM_ADD(sof/pipe-pcm-media.m4, 4, 3, 1536, 1536, 96, 2000, 1)
+
+# Tone Playback pipeline 5
+PIPELINE_ADD(sof/pipe-tone.m4, 5, 3072, 192, 4000, 2)
+
+
+#
+# DAI configuration
+#
+
+# SSP port 2 is our pipeline DAI
+DAI_ADD(sof/pipe-dai.m4, SSP2, I2S Audio, NPIPELINE_BUFFER(2, 0), NPIPELINE_BUFFER(1, 3))
+
+# Connect pipelines together
+SectionGraph."pipe-hsw-rt5640" {
+ index "0"
+
+ lines [
+ # media 0
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(3, 2))
+ # media 1
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(4, 2))
+ #tone
+ dapm(NPIPELINE_MIXER(1, 0), NPIPELINE_BUFFER(5, 1))
+ ]
+}
+
+
+#
+# BE configurations - overrides config in ACPI if present
+#
+SectionHWConfig."SSP0" {
+
+ id "2"
+ format "I2S"
+ bclk_master "true"
+ bclk_freq "2400000"
+ mclk_freq "24000000"
+ fsyn_master "true"
+ fsync_freq "48000"
+ tdm_slots "2"
+ tdm_slot_width "25"
+ tx_slots "2"
+ rx_slots "2"
+}
--
2.11.0
More information about the Sound-open-firmware
mailing list