Blob Blame History Raw
From e02f8e8aba21357eacce483bd46106624863c5a3 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Wed, 12 Aug 2009 12:45:05 +0200
Subject: [PATCH] alsactl - Initialize Speaker volume to 0dB when Master is present

Initialize Speaker volume to 0dB as well as Headphone when Master
is present.  Also initialize Headphone,1 for machines with dual
headphones.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 alsactl/init/default |   27 +++++++++++++++++++++------
 1 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/alsactl/init/default b/alsactl/init/default
index f2c0539..a2069e3 100644
--- a/alsactl/init/default
+++ b/alsactl/init/default
@@ -39,7 +39,7 @@ CTL{reset}="mixer"
 CTL{name}="Front Playback Volume",PROGRAM!="__ctl_search",GOTO="front0_end"
 # if master volume control is present, turn front volume to max
 ENV{has_pmaster_vol}=="true",CTL{values}="0dB",RESULT=="0",GOTO="front0_end"
-ENV{has_pmaster_vol}=="true",CTL{values)="100%",GOTO="front0_end"
+ENV{has_pmaster_vol}=="true",CTL{values}="100%",GOTO="front0_end"
 CTL{values}="$env{pvolume}",RESULT!="0",CTL{values}="$env{ppercent}"
 LABEL="front0_end"
 CTL{name}="Front Playback Switch",PROGRAM=="__ctl_search", \
@@ -56,8 +56,23 @@ CTL{name}="Headphone Playback Switch",PROGRAM=="__ctl_search", \
   CTL{values}="on"
 
 CTL{reset}="mixer"
-CTL{name}="Speaker Playback Volume",PROGRAM=="__ctl_search", \
-  CTL{values}="$env{pvolume}",RESULT!="0",CTL{values}="$env{ppercent}"
+CTL{name}="Headphone Playback Volume",CTL{index}="1",PROGRAM!="__ctl_search",\
+  GOTO="headphone1_end"
+# if master volume control is present, turn headphone volume to max
+ENV{has_pmaster_vol}=="true",CTL{values}="0dB",RESULT=="0",GOTO="headphone1_end"
+ENV{has_pmaster_vol}=="true",CTL{values}="100%",GOTO="headphone1_end"
+CTL{values}="$env{pvolume}",RESULT!="0",CTL{values}="$env{ppercent}"
+LABEL="headphone1_end"
+CTL{name}="Headphone Playback Switch",CTL{index}="1",PROGRAM=="__ctl_search", \
+  CTL{values}="on"
+
+CTL{reset}="mixer"
+CTL{name}="Sepaker Playback Volume",PROGRAM!="__ctl_search",GOTO="speaker0_end"
+# if master volume control is present, turn speaker volume to max
+ENV{has_pmaster_vol}=="true",CTL{values}="0dB",RESULT=="0",GOTO="speaker0_end"
+ENV{has_pmaster_vol}=="true",CTL{values}="100%",GOTO="speaker0_end"
+CTL{values}="$env{pvolume}",RESULT!="0",CTL{values}="$env{ppercent}"
+LABEL="speaker0_end"
 CTL{name}="Speaker Playback Switch",PROGRAM=="__ctl_search", \
   CTL{values}="on"
 
@@ -72,7 +87,7 @@ CTL{name}="PCM Playback Volume",PROGRAM!="__ctl_search", \
  CTL{name}="PCM Volume",PROGRAM!="__ctl_search", GOTO="pcm0_end"
 # if master volume control is present, turn PCM volume to max
 ENV{has_pmaster_vol}=="true",CTL{values}="0dB",RESULT=="0",GOTO="pcm0_end"
-ENV{has_pmaster_vol}=="true",CTL{values)="100%",GOTO="pcm0_end"
+ENV{has_pmaster_vol}=="true",CTL{values}="100%",GOTO="pcm0_end"
 # exception - some HDA codecs have shifted dB range
 CTL{dBmin}=="-34.50dB",CTL{dBmax}=="12.00dB",CTL{values}="0dB",GOTO="pcm0_end"
 CTL{dBmin}=="-30.00dB",CTL{dBmax}=="0dB",CTL{values}="0dB",GOTO="pcm0_end"
@@ -86,7 +101,7 @@ CTL{name}="PCM Playback Volume",CTL{index}="1",PROGRAM!="__ctl_search", \
   CTL{name}="PCM Volume",PROGRAM!="__ctl_search",GOTO="pcm1_end"
 # if master volume control is present, turn PCM volume to max
 ENV{has_pmaster_vol}=="true",CTL{values}="0dB",RESULT=="0",GOTO="pcm1_end"
-ENV{has_pmaster_vol}=="true",CTL{values)="100%",GOTO="pcm1_end"
+ENV{has_pmaster_vol}=="true",CTL{values}="100%",GOTO="pcm1_end"
 # exception - some HDA codecs have shifted dB range
 CTL{dBmin}=="-34.50dB",CTL{dBmax}=="12.00dB",CTL{values}="0dB",GOTO="pcm1_end"
 CTL{dBmin}=="-30.00dB",CTL{dBmax}=="0dB",CTL{values}="0dB",GOTO="pcm1_end"
@@ -125,7 +140,7 @@ CTL{reset}="mixer"
 CTL{name}="CD Playback Volume",PROGRAM!="__ctl_search", GOTO="cd0_end"
 # if master volume control is present, turn CD volume to max
 ENV{has_pmaster_vol}=="true",CTL{values}="0dB",RESULT=="0",GOTO="cd0_end"
-ENV{has_pmaster_vol}=="true",CTL{values)="100%",GOTO="cd0_end"
+ENV{has_pmaster_vol}=="true",CTL{values}="100%",GOTO="cd0_end"
 # exception - some HDA codecs have shifted dB range
 CTL{dBmin}=="-34.50dB",CTL{dBmax}=="12.00dB",CTL{values}="0dB",GOTO="cd0_end"
 CTL{dBmin}=="-30.00dB",CTL{dBmax}=="0dB",CTL{values}="0dB",GOTO="cd0_end"
-- 
1.5.5.1