[Sound-open-firmware] [RFC PATCH 1/5] topology: mixer: Add CONTROLMIXER_MIN

Xiuli Pan xiuli.pan at linux.intel.com
Wed May 30 11:51:25 CEST 2018


From: Pan Xiuli <xiuli.pan at linux.intel.com>

CONTROLMIXER_MIN should go pair with CONTROLMIXER_MAX.

Signed-off-by: Pan Xiuli <xiuli.pan at linux.intel.com>
---
 topology/m4/mixercontrol.m4               | 16 +++++++++++-----
 topology/sof/pipe-low-latency-capture.m4  |  3 ++-
 topology/sof/pipe-low-latency-playback.m4 |  2 ++
 topology/sof/pipe-pcm-media.m4            |  1 +
 topology/sof/pipe-tone.m4                 |  2 ++
 topology/sof/pipe-volume-capture.m4       |  1 +
 topology/sof/pipe-volume-playback.m4      |  1 +
 7 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/topology/m4/mixercontrol.m4 b/topology/m4/mixercontrol.m4
index a3423c3..2a16d2c 100644
--- a/topology/m4/mixercontrol.m4
+++ b/topology/m4/mixercontrol.m4
@@ -14,6 +14,11 @@ define(`CONTROLMIXER_MAX',
 `#$1'
 `	max STR($2)')
 
+dnl CONTROLMIXER_MIN(comment, value)
+define(`CONTROLMIXER_MIN',
+`#$1'
+`	min STR($2)')
+
 dnl CONTROLMIXER_TLV(comment, value)
 define(`CONTROLMIXER_TLV',
 `#$1'
@@ -28,21 +33,22 @@ define(`CONTROLMIXER_OPS',
 `		put STR($4)'
 `	}')
 
-dnl C_CONTROLMIXER(name, index, ops, max, invert, tlv, KCONTROL_CHANNELS)
+dnl C_CONTROLMIXER(name, index, ops, min, max, invert, tlv, KCONTROL_CHANNELS)
 define(`C_CONTROLMIXER',
 `SectionControlMixer."$1 PIPELINE_ID" {'
 `'
 `	# control belongs to this index group'
 `	index STR($2)'
 `'
-`	#$7'
-`	$8'
+`	#$8'
+`	$9'
 `	# control uses bespoke driver get/put/info ID'
 `	$3'
 `'
 `	$4'
-`	invert STR($5)'
-`	$6'
+`	$5'
+`	invert STR($6)'
+`	$7'
 
 `}')
 
diff --git a/topology/sof/pipe-low-latency-capture.m4 b/topology/sof/pipe-low-latency-capture.m4
index 39be2bc..73340a4 100644
--- a/topology/sof/pipe-low-latency-capture.m4
+++ b/topology/sof/pipe-low-latency-capture.m4
@@ -17,7 +17,8 @@ include(`mixercontrol.m4')
 # Volume Mixer control with max value of 32
 C_CONTROLMIXER(PCM PCM_ID Capture Volume, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
-	CONTROLMIXER_MAX(, 40),
+	CONTROLMIXER_MIN(, 0),
+	CONTROLMIXER_MAX(, 32),
 	false,
 	CONTROLMIXER_TLV(TLV 32 steps from -90dB to +6dB for 3dB, vtlv_m90s3),
 	Channel register and shift for Front Left/Right,
diff --git a/topology/sof/pipe-low-latency-playback.m4 b/topology/sof/pipe-low-latency-playback.m4
index b40b793..b4451ff 100644
--- a/topology/sof/pipe-low-latency-playback.m4
+++ b/topology/sof/pipe-low-latency-playback.m4
@@ -33,6 +33,7 @@ include(`mixercontrol.m4')
 # Volume Mixer control with max value of 32
 C_CONTROLMIXER(PCM PCM_ID Playback Volume, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
+	CONTROLMIXER_MIN(, 0),
 	CONTROLMIXER_MAX(, 32),
 	false,
 	CONTROLMIXER_TLV(TLV 32 steps from -90dB to +6dB for 3dB, vtlv_m90s3),
@@ -42,6 +43,7 @@ C_CONTROLMIXER(PCM PCM_ID Playback Volume, PIPELINE_ID,
 # Volume Mixer control with max value of 32
 C_CONTROLMIXER(Master Playback Volume, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
+	CONTROLMIXER_MIN(, 0),
 	CONTROLMIXER_MAX(, 32),
 	false,
 	CONTROLMIXER_TLV(TLV 32 steps from -90dB to +6dB for 3dB, vtlv_m90s3),
diff --git a/topology/sof/pipe-pcm-media.m4 b/topology/sof/pipe-pcm-media.m4
index 7f68977..2c0ebee 100644
--- a/topology/sof/pipe-pcm-media.m4
+++ b/topology/sof/pipe-pcm-media.m4
@@ -22,6 +22,7 @@ include(`pcm.m4')
 # Volume Mixer control with max value of 32
 C_CONTROLMIXER(PCM PCM_ID Playback Volume, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
+	CONTROLMIXER_MIN(, 0),
 	CONTROLMIXER_MAX(, 32),
 	false,
 	CONTROLMIXER_TLV(TLV 32 steps from -90dB to +6dB for 3dB, vtlv_m90s3),
diff --git a/topology/sof/pipe-tone.m4 b/topology/sof/pipe-tone.m4
index 3cdd408..2bba8b7 100644
--- a/topology/sof/pipe-tone.m4
+++ b/topology/sof/pipe-tone.m4
@@ -22,6 +22,7 @@ include(`pipeline.m4')
 # Volume Mixer control with max value of 32
 C_CONTROLMIXER(Tone Volume, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
+	CONTROLMIXER_MIN(, 0),
 	CONTROLMIXER_MAX(, 32),
 	false,
 	CONTROLMIXER_TLV(TLV 32 steps from -90dB to +6dB for 3dB, vtlv_m90s3),
@@ -31,6 +32,7 @@ C_CONTROLMIXER(Tone Volume, PIPELINE_ID,
 # Switch type Mixer Control with max value of 1
 C_CONTROLMIXER(Tone Switch, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
+	CONTROLMIXER_MIN(, 0),
 	CONTROLMIXER_MAX(max 1 indicates switch type control, 1),
 	false,
 	,
diff --git a/topology/sof/pipe-volume-capture.m4 b/topology/sof/pipe-volume-capture.m4
index b3d3206..71ff970 100644
--- a/topology/sof/pipe-volume-capture.m4
+++ b/topology/sof/pipe-volume-capture.m4
@@ -19,6 +19,7 @@ include(`pipeline.m4')
 # Volume Mixer control with max value of 32
 C_CONTROLMIXER(Master Capture Volume, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
+	CONTROLMIXER_MIN(, 0),
 	CONTROLMIXER_MAX(, 32),
 	false,
 	CONTROLMIXER_TLV(TLV 32 steps from -90dB to +6dB for 3dB, vtlv_m90s3),
diff --git a/topology/sof/pipe-volume-playback.m4 b/topology/sof/pipe-volume-playback.m4
index 4b12d2a..163507c 100644
--- a/topology/sof/pipe-volume-playback.m4
+++ b/topology/sof/pipe-volume-playback.m4
@@ -19,6 +19,7 @@ include(`pipeline.m4')
 # Volume Mixer control with max value of 32
 C_CONTROLMIXER(Master Playback Volume, PIPELINE_ID,
 	CONTROLMIXER_OPS(volsw, 256 binds the mixer control to volume get/put handlers, 256, 256),
+	CONTROLMIXER_MIN(, 0),
 	CONTROLMIXER_MAX(, 32),
 	false,
 	CONTROLMIXER_TLV(TLV 32 steps from -90dB to +6dB for 3dB, vtlv_m90s3),
-- 
2.7.4



More information about the Sound-open-firmware mailing list