[Sound-open-firmware] [PATCH v3 6/8] topology: create m4 wrapper SectionPCMCapabilities

Ranjani Sridharan ranjani.sridharan at linux.intel.com
Mon Mar 5 21:40:22 CET 2018


This patch adds a m4 wrpper for PCM Capabilities sections
in pipeline definition

Signed-off-by: Ranjani Sridharan <ranjani.sridharan at linux.intel.com>
---
 topology/m4/local.m4                      | 16 ++++++++++++++++
 topology/sof/pipe-low-latency-capture.m4  | 16 +---------------
 topology/sof/pipe-low-latency-playback.m4 | 16 ++--------------
 topology/sof/pipe-passthrough-capture.m4  | 15 +--------------
 topology/sof/pipe-passthrough-playback.m4 | 15 +--------------
 topology/sof/pipe-pcm-media.m4            | 14 +-------------
 topology/sof/pipe-src-capture.m4          | 15 +--------------
 topology/sof/pipe-src-playback.m4         | 15 +--------------
 topology/sof/pipe-volume-capture.m4       | 14 +-------------
 topology/sof/pipe-volume-playback.m4      | 17 ++---------------
 10 files changed, 27 insertions(+), 126 deletions(-)

diff --git a/topology/m4/local.m4 b/topology/m4/local.m4
index 690f677..90d690e 100644
--- a/topology/m4/local.m4
+++ b/topology/m4/local.m4
@@ -615,6 +615,22 @@ define(`P_GRAPH',
 `	]'
 `}')
 
+dnl PCM_CAPABILITIES(name, formats, rate_min, rate_max, channels_min, channels_max, periods_min, periods_max, period_size_min, period_size_max, buffer_size_min, buffer_size_max)
+define(`PCM_CAPABILITIES',
+`SectionPCMCapabilities.STR($1) {'
+`'
+`	formats "$2"'
+`	rate_min STR($3)'
+`	rate_max STR($4)'
+`	channels_min STR($5)'
+`	channels_max STR($6)'
+`	periods_min STR($7)'
+`	periods_max STR($8)'
+`	period_size_min	STR($9)'
+`	period_size_max	STR($10)'
+`	buffer_size_min	STR($11)'
+`	buffer_size_max	STR($12)'
+`}')
 
 divert(0) dnl
 
diff --git a/topology/sof/pipe-low-latency-capture.m4 b/topology/sof/pipe-low-latency-capture.m4
index 07b59ad..7adfd14 100644
--- a/topology/sof/pipe-low-latency-capture.m4
+++ b/topology/sof/pipe-low-latency-capture.m4
@@ -60,18 +60,4 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Low Latency Capture PCM_ID
 # PCM Configuration
 #
 
-SectionPCMCapabilities.STR(Low Latency Capture PCM_ID) {
-
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "48000"
-	rate_max "48000"
-	channels_min "2"
-	channels_max "4"
-	periods_min "2"
-	periods_max "4"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
-
+PCM_CAPABILITIES(Low Latency Capture PCM_ID, `S32_LE,S24_LE,S16_LE', 48000, 48000, 2, 4, 2, 4, 192, 16384, 65536, 65536)
diff --git a/topology/sof/pipe-low-latency-playback.m4 b/topology/sof/pipe-low-latency-playback.m4
index 7c39f16..11cf07d 100644
--- a/topology/sof/pipe-low-latency-playback.m4
+++ b/topology/sof/pipe-low-latency-playback.m4
@@ -108,19 +108,7 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Low Latency Playback PCM_I
 # PCM Configuration
 #
 
+
 # PCM capabilities supported by FW
-SectionPCMCapabilities.STR(Low Latency Playback PCM_ID) {
-
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "48000"
-	rate_max "48000"
-	channels_min "2"
-	channels_max "2"
-	periods_min "2"
-	periods_max "16"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
+PCM_CAPABILITIES(Low Latency Playback PCM_ID, `S32_LE,S24_LE,S16_LE', 48000, 48000, 2, 2, 2, 16, 192, 16384, 65536, 65536)
 
diff --git a/topology/sof/pipe-passthrough-capture.m4 b/topology/sof/pipe-passthrough-capture.m4
index 8ef8a81..cfa357a 100644
--- a/topology/sof/pipe-passthrough-capture.m4
+++ b/topology/sof/pipe-passthrough-capture.m4
@@ -51,17 +51,4 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Passthrough Capture PCM_ID
 # PCM Configuration
 #
 
-SectionPCMCapabilities.STR(Passthrough Capture PCM_ID) {
-
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "48000"
-	rate_max "48000"
-	channels_min "2"
-	channels_max "4"
-	periods_min "2"
-	periods_max "16"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
+PCM_CAPABILITIES(Passthrough Capture PCM_ID, `S32_LE,S24_LE,S16_LE', 48000, 48000, 2, 4, 2, 16, 192, 16384, 65536, 65536)
diff --git a/topology/sof/pipe-passthrough-playback.m4 b/topology/sof/pipe-passthrough-playback.m4
index a26b5eb..3218431 100644
--- a/topology/sof/pipe-passthrough-playback.m4
+++ b/topology/sof/pipe-passthrough-playback.m4
@@ -51,17 +51,4 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Passthrough Playback PCM_I
 # PCM Configuration
 #
 
-SectionPCMCapabilities.STR(Passthrough Playback PCM_ID) {
-
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "48000"
-	rate_max "48000"
-	channels_min "2"
-	channels_max "4"
-	periods_min "2"
-	periods_max "16"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
+PCM_CAPABILITIES(Passthrough Playback PCM_ID, `S32_LE,S24_LE,S16_LE', 48000, 48000, 2, 4, 2, 16, 192, 16384, 65536, 65536)
diff --git a/topology/sof/pipe-pcm-media.m4 b/topology/sof/pipe-pcm-media.m4
index 8cb8ed5..1171d07 100644
--- a/topology/sof/pipe-pcm-media.m4
+++ b/topology/sof/pipe-pcm-media.m4
@@ -97,19 +97,7 @@ W_PIPELINE(N_SRC(0), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHE
 
 # PCM capabilities supported by FW
 
-SectionPCMCapabilities.STR(Media Playback PCM_ID) {
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "8000"
-	rate_max "192000"
-	channels_min "2"
-	channels_max "2"
-	periods_min "2"
-	periods_max "32"
-	period_size_min	"192"
-	period_size_max	"262144"
-	buffer_size_min	"8388608"
-	buffer_size_max	"8388608"
-}
+PCM_CAPABILITIES(Media Playback PCM_ID, `S32_LE,S24_LE,S16_LE', 8000, 192000, 2, 2, 2, 32, 192, 262144, 8388608, 8388608)
 
 # PCM Low Latency Playback and Capture
 SectionPCM.STR(Media Playback PCM_ID) {
diff --git a/topology/sof/pipe-src-capture.m4 b/topology/sof/pipe-src-capture.m4
index 44bb030..d8e04a8 100644
--- a/topology/sof/pipe-src-capture.m4
+++ b/topology/sof/pipe-src-capture.m4
@@ -77,17 +77,4 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Passthrough Capture PCM_ID
 # PCM Configuration
 #
 
-SectionPCMCapabilities.STR(Passthrough Capture PCM_ID) {
-
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "8000"
-	rate_max "96000"
-	channels_min "2"
-	channels_max "4"
-	periods_min "2"
-	periods_max "16"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
+PCM_CAPABILITIES(Passthrough Capture PCM_ID, `S32_LE,S24_LE,S16_LE', 8000, 96000, 2, 4, 2, 16, 192, 16384, 65536, 65536)
diff --git a/topology/sof/pipe-src-playback.m4 b/topology/sof/pipe-src-playback.m4
index d34bc8a..c9b4159 100644
--- a/topology/sof/pipe-src-playback.m4
+++ b/topology/sof/pipe-src-playback.m4
@@ -77,18 +77,5 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Passthrough Playback PCM_I
 # PCM Configuration
 #
 
-SectionPCMCapabilities.STR(Passthrough Playback PCM_ID) {
-
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "8000"
-	rate_max "96000"
-	channels_min "2"
-	channels_max "4"
-	periods_min "2"
-	periods_max "16"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
+PCM_CAPABILITIES(Passthrough Playback PCM_ID, `S32_LE,S24_LE,S16_LE', 8000, 96000, 2, 4, 2, 16, 192, 16384, 65536, 65536)
 
diff --git a/topology/sof/pipe-volume-capture.m4 b/topology/sof/pipe-volume-capture.m4
index 0aa10bc..299a0f8 100644
--- a/topology/sof/pipe-volume-capture.m4
+++ b/topology/sof/pipe-volume-capture.m4
@@ -72,17 +72,5 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Passthrough Capture PCM_ID
 # PCM Configuration
 #
 
-SectionPCMCapabilities.STR(Passthrough Capture PCM_ID) {
+PCM_CAPABILITIES(Passthrough Capture PCM_ID, `S32_LE,S24_LE,S16_LE', 48000, 48000, 2, 4, 2, 16, 192, 16384, 65536, 65536)
 
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "48000"
-	rate_max "48000"
-	channels_min "2"
-	channels_max "4"
-	periods_min "2"
-	periods_max "16"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
diff --git a/topology/sof/pipe-volume-playback.m4 b/topology/sof/pipe-volume-playback.m4
index 4ca8ab7..3e3f98e 100644
--- a/topology/sof/pipe-volume-playback.m4
+++ b/topology/sof/pipe-volume-playback.m4
@@ -80,20 +80,7 @@ indir(`define', concat(`PIPELINE_PCM_', PIPELINE_ID), Passthrough Playback PCM_I
 
 #
 # PCM Configuration
-#
 
-SectionPCMCapabilities.STR(Passthrough Playback PCM_ID) {
-
-	formats "S32_LE,S24_LE,S16_LE"
-	rate_min "48000"
-	rate_max "48000"
-	channels_min "2"
-	channels_max "4"
-	periods_min "2"
-	periods_max "16"
-	period_size_min	"192"
-	period_size_max	"16384"
-	buffer_size_min	"65536"
-	buffer_size_max	"65536"
-}
+#
+PCM_CAPABILITIES(Passthrough Playback PCM_ID, `S32_LE,S24_LE,S16_LE', 48000, 48000, 2, 4, 2, 16, 192, 16384, 65536, 65536)
 
-- 
2.14.1



More information about the Sound-open-firmware mailing list