[alsa-devel] [PATCH] snd-sbxfi: rename erroneous Master mixer control to "PCM Playback Volume".

William Pitcock nenolod at petrie.sacredspiral.co.uk
Sun Oct 19 03:42:24 CEST 2008


The OSS4-provided master mixer control is actually relative to EMU20K1 port
volume settings. So, it should be named PCM. The Master mixer control will be
shortly readded as a control which sets the master volume.

Signed-off-by: William Pitcock <nenolod at petrie.sacredspiral.co.uk>
---
 sound/pci/sbxfi/sbxfi.c |   28 ++++++++++++++--------------
 1 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/sound/pci/sbxfi/sbxfi.c b/sound/pci/sbxfi/sbxfi.c
index c006278..3e99a97 100644
--- a/sound/pci/sbxfi/sbxfi.c
+++ b/sound/pci/sbxfi/sbxfi.c
@@ -155,7 +155,7 @@ struct sbxfi {
 	int timer_reprogram;
 
 	unsigned int base_rate;
-	int master_vol[2];
+	int pcm_vol[2];
 	int capture_vol[2];
 	int capsrc;
 	int micboost;
@@ -1103,7 +1103,7 @@ static void sbxfi_setup_play_mixer(struct sbxfi *chip,
 	int i, vol, audio_ch;
 
 	for (i = 0; i < 2; i++) {
-		vol = port->vol[i] + chip->master_vol[i] - MAX_VOLUME;
+		vol = port->vol[i] + chip->pcm_vol[i] - MAX_VOLUME;
 		if (vol < 0)
 			vol = 0;
 		vol = amop_vol_table[vol];
@@ -1124,9 +1124,9 @@ static int sbxfi_update_play_mixer(struct sbxfi *chip, int *vol)
 	struct sbxfi_port *port;
 
 	for (i = 0; i < 2; i++) {
-		if (vol[i] == chip->master_vol[i])
+		if (vol[i] == chip->pcm_vol[i])
 			continue;
-		chip->master_vol[i] = vol[i];
+		chip->pcm_vol[i] = vol[i];
 		spin_lock_irq(&chip->port_lock);
 		list_for_each_entry(port, &chip->port_list, list) {
 			if (port->substream->stream !=
@@ -1516,7 +1516,7 @@ static int __devinit sbxfi_create_pcm(struct sbxfi *chip)
 /*
  * Mixer interface
  */
-static int sbxfi_master_vol_info(struct snd_kcontrol *kcontrol,
+static int sbxfi_pcm_vol_info(struct snd_kcontrol *kcontrol,
 				 struct snd_ctl_elem_info *uinfo)
 {
 	uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
@@ -1526,16 +1526,16 @@ static int sbxfi_master_vol_info(struct snd_kcontrol *kcontrol,
 	return 0;
 }
 
-static int sbxfi_master_vol_get(struct snd_kcontrol *kcontrol,
+static int sbxfi_pcm_vol_get(struct snd_kcontrol *kcontrol,
 				struct snd_ctl_elem_value *ucontrol)
 {
 	struct sbxfi *chip = snd_kcontrol_chip(kcontrol);
-	ucontrol->value.integer.value[0] = chip->master_vol[0];
-	ucontrol->value.integer.value[1] = chip->master_vol[1];
+	ucontrol->value.integer.value[0] = chip->pcm_vol[0];
+	ucontrol->value.integer.value[1] = chip->pcm_vol[1];
 	return 0;
 }
 
-static int sbxfi_master_vol_put(struct snd_kcontrol *kcontrol,
+static int sbxfi_pcm_vol_put(struct snd_kcontrol *kcontrol,
 				struct snd_ctl_elem_value *ucontrol)
 {
 	struct sbxfi *chip = snd_kcontrol_chip(kcontrol);
@@ -1543,7 +1543,7 @@ static int sbxfi_master_vol_put(struct snd_kcontrol *kcontrol,
 
 	vol[0] = ucontrol->value.integer.value[0];
 	vol[1] = ucontrol->value.integer.value[1];
-	if (!memcmp(vol, chip->master_vol, sizeof(vol)))
+	if (!memcmp(vol, chip->pcm_vol, sizeof(vol)))
 		return 0;
 
 	if (vol[0] < 0)
@@ -1658,13 +1658,13 @@ static int sbxfi_micboost_put(struct snd_kcontrol *kcontrol,
 
 static struct snd_kcontrol_new mixers[] __devinitdata = {
 	{
-		.name = "Master Playback Volume",
+		.name = "PCM Playback Volume",
 		.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
 		.access = (SNDRV_CTL_ELEM_ACCESS_READWRITE
 			   /* | SNDRV_CTL_ELEM_ACCESS_TLV_READ*/),
-		.info = sbxfi_master_vol_info,
-		.get = sbxfi_master_vol_get,
-		.put = sbxfi_master_vol_put,
+		.info = sbxfi_pcm_vol_info,
+		.get = sbxfi_pcm_vol_get,
+		.put = sbxfi_pcm_vol_put,
 		/*.tlv = { .p = db_master_vol }*/
 	},
 	{
-- 
1.5.5.4



More information about the Alsa-devel mailing list