aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/alsa/alsa-state
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/alsa/alsa-state
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
downloadopenembedded-709c4d66e0b107ca606941b988bad717c0b45d9b.tar.gz
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/alsa/alsa-state')
-rw-r--r--recipes/alsa/alsa-state/a780/gsmhandset.state55
-rw-r--r--recipes/alsa/alsa-state/a780/gsmheadset.state55
-rw-r--r--recipes/alsa/alsa-state/a780/stereoout.state55
-rw-r--r--recipes/alsa/alsa-state/akita/asound.state619
-rwxr-xr-xrecipes/alsa/alsa-state/alsa-state29
-rw-r--r--recipes/alsa/alsa-state/asound.conf12
-rw-r--r--recipes/alsa/alsa-state/asound.state1
-rw-r--r--recipes/alsa/alsa-state/at91sam9263ek/asound.conf2
-rw-r--r--recipes/alsa/alsa-state/at91sam9263ek/asound.state283
-rw-r--r--recipes/alsa/alsa-state/c7x0/asound.state150
-rw-r--r--recipes/alsa/alsa-state/hx4700/asound.state37
-rw-r--r--recipes/alsa/alsa-state/magician/asound.state202
-rw-r--r--recipes/alsa/alsa-state/nokia800/asound.state105
-rw-r--r--recipes/alsa/alsa-state/spitz/asound.state619
-rw-r--r--recipes/alsa/alsa-state/tosa/asound.state769
15 files changed, 2993 insertions, 0 deletions
diff --git a/recipes/alsa/alsa-state/a780/gsmhandset.state b/recipes/alsa/alsa-state/a780/gsmhandset.state
new file mode 100644
index 0000000000..c9adfb3340
--- /dev/null
+++ b/recipes/alsa/alsa-state/a780/gsmhandset.state
@@ -0,0 +1,55 @@
+state.EZX {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Master Playback Volume'
+ value 6
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 Mono
+ comment.item.2 BP
+ iface MIXER
+ name 'DAI Select'
+ value BP
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Capture Volume'
+ value 14
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 '2->1ch'
+ comment.item.2 '2->1ch -3db'
+ comment.item.3 '2->1ch -6db'
+ iface MIXER
+ name Downmixer
+ value Off
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 Loudspeaker
+ comment.item.2 Earpiece
+ comment.item.3 Headset
+ iface MIXER
+ name 'Output mode'
+ value Earpiece
+ }
+}
diff --git a/recipes/alsa/alsa-state/a780/gsmheadset.state b/recipes/alsa/alsa-state/a780/gsmheadset.state
new file mode 100644
index 0000000000..7b72789410
--- /dev/null
+++ b/recipes/alsa/alsa-state/a780/gsmheadset.state
@@ -0,0 +1,55 @@
+state.EZX {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Master Playback Volume'
+ value 6
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 Mono
+ comment.item.2 BP
+ iface MIXER
+ name 'DAI Select'
+ value BP
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Capture Volume'
+ value 14
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 '2->1ch'
+ comment.item.2 '2->1ch -3db'
+ comment.item.3 '2->1ch -6db'
+ iface MIXER
+ name Downmixer
+ value Off
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 Loudspeaker
+ comment.item.2 Earpiece
+ comment.item.3 Headset
+ iface MIXER
+ name 'Output mode'
+ value Headset
+ }
+}
diff --git a/recipes/alsa/alsa-state/a780/stereoout.state b/recipes/alsa/alsa-state/a780/stereoout.state
new file mode 100644
index 0000000000..64b36a0572
--- /dev/null
+++ b/recipes/alsa/alsa-state/a780/stereoout.state
@@ -0,0 +1,55 @@
+state.EZX {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Master Playback Volume'
+ value 6
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 Mono
+ comment.item.2 BP
+ iface MIXER
+ name 'DAI Select'
+ value Stereo
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Capture Volume'
+ value 14
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 '2->1ch'
+ comment.item.2 '2->1ch -3db'
+ comment.item.3 '2->1ch -6db'
+ iface MIXER
+ name Downmixer
+ value Off
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 Loudspeaker
+ comment.item.2 Earpiece
+ comment.item.3 Headset
+ iface MIXER
+ name 'Output mode'
+ value Loudspeaker
+ }
+}
diff --git a/recipes/alsa/alsa-state/akita/asound.state b/recipes/alsa/alsa-state/akita/asound.state
new file mode 100644
index 0000000000..d1bacfb708
--- /dev/null
+++ b/recipes/alsa/alsa-state/akita/asound.state
@@ -0,0 +1,619 @@
+state.Spitz {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 63'
+ iface MIXER
+ name 'Capture Volume'
+ value.0 48
+ value.1 48
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Capture ZC Switch'
+ value.0 true
+ value.1 true
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Capture Switch'
+ value.0 true
+ value.1 true
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Headphone Playback ZC Switch'
+ value.0 true
+ value.1 true
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Speaker Playback ZC Switch'
+ value.0 true
+ value.1 true
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 None
+ comment.item.1 '32Khz'
+ comment.item.2 '44.1Khz'
+ comment.item.3 '48Khz'
+ iface MIXER
+ name 'Playback De-emphasis'
+ value None
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Normal
+ comment.item.1 'L Invert'
+ comment.item.2 'R Invert'
+ comment.item.3 'L + R Invert'
+ iface MIXER
+ name 'Capture Polarity'
+ value Normal
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Playback 6dB Attenuate'
+ value false
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture 6dB Attenuate'
+ value false
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 255'
+ iface MIXER
+ name 'PCM Volume'
+ value.0 220
+ value.1 220
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Linear Control'
+ comment.item.1 'Adaptive Boost'
+ iface MIXER
+ name 'Bass Boost'
+ value 'Linear Control'
+ }
+ control.12 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '130Hz @ 48kHz'
+ comment.item.1 '200Hz @ 48kHz'
+ iface MIXER
+ name 'Bass Filter'
+ value '130Hz @ 48kHz'
+ }
+ control.13 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Bass Volume'
+ value 0
+ }
+ control.14 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Treble Volume'
+ value 0
+ }
+ control.15 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '8kHz'
+ comment.item.1 '4kHz'
+ iface MIXER
+ name 'Treble Cut-off'
+ value '8kHz'
+ }
+ control.16 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name '3D Switch'
+ value false
+ }
+ control.17 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name '3D Volume'
+ value 0
+ }
+ control.18 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '200Hz'
+ comment.item.1 '500Hz'
+ iface MIXER
+ name '3D Lower Cut-off'
+ value '200Hz'
+ }
+ control.19 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '2.2kHz'
+ comment.item.1 '1.5kHz'
+ iface MIXER
+ name '3D Upper Cut-off'
+ value '2.2kHz'
+ }
+ control.20 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Capture
+ comment.item.1 Playback
+ iface MIXER
+ name '3D Mode'
+ value Playback
+ }
+ control.21 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'ALC Capture Target Volume'
+ value 3
+ }
+ control.22 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'ALC Capture Max Volume'
+ value 7
+ }
+ control.23 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 Right
+ comment.item.2 Left
+ comment.item.3 Stereo
+ iface MIXER
+ name 'ALC Capture Function'
+ value Left
+ }
+ control.24 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ALC Capture ZC Switch'
+ value true
+ }
+ control.25 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Capture Hold Time'
+ value 9
+ }
+ control.26 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Capture Decay Time'
+ value 9
+ }
+ control.27 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Capture Attack Time'
+ value 3
+ }
+ control.28 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'ALC Capture NG Threshold'
+ value 0
+ }
+ control.29 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '2.2kHz'
+ comment.item.1 '1.5kHz'
+ iface MIXER
+ name 'ALC Capture NG Type'
+ value '2.2kHz'
+ }
+ control.30 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ALC Capture NG Switch'
+ value false
+ }
+ control.31 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 255'
+ iface MIXER
+ name 'Left ADC Capture Volume'
+ value 195
+ }
+ control.32 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 255'
+ iface MIXER
+ name 'Right ADC Capture Volume'
+ value 195
+ }
+ control.33 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ZC Timeout Switch'
+ value true
+ }
+ control.34 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Playback Invert Switch'
+ value false
+ }
+ control.35 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Speaker Playback Invert Switch'
+ value true
+ }
+ control.36 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 3'
+ iface MIXER
+ name 'Mic Boost'
+ value.0 3
+ value.1 3
+ }
+ control.37 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Bypass Left Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.38 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Bypass Right Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.39 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Bypass Mono Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.40 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Playback ZC Switch'
+ value false
+ }
+ control.41 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Headphone Playback Volume'
+ value.0 105
+ value.1 105
+ }
+ control.42 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Speaker Playback Volume'
+ value.0 127
+ value.1 127
+ }
+ control.43 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Mono Playback Volume'
+ value 0
+ }
+ control.44 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 'Mono (Left)'
+ comment.item.2 'Mono (Right)'
+ comment.item.3 'Digital Mono'
+ iface MIXER
+ name 'Right ADC Mux'
+ value 'Digital Mono'
+ }
+ control.45 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 'Mono (Left)'
+ comment.item.2 'Mono (Right)'
+ comment.item.3 'Digital Mono'
+ iface MIXER
+ name 'Left ADC Mux'
+ value 'Digital Mono'
+ }
+ control.46 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ iface MIXER
+ name 'Differential Mux'
+ value 'Line 1'
+ }
+ control.47 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 VREF
+ comment.item.1 'ROUT1 + Vol'
+ comment.item.2 MonoOut
+ comment.item.3 ROUT1
+ iface MIXER
+ name 'Out3 Mux'
+ value VREF
+ }
+ control.48 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 PGA
+ comment.item.4 Differential
+ iface MIXER
+ name 'Right Line Mux'
+ value Differential
+ }
+ control.49 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 PGA
+ comment.item.4 Differential
+ iface MIXER
+ name 'Left Line Mux'
+ value Differential
+ }
+ control.50 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 Differential
+ iface MIXER
+ name 'Right PGA Mux'
+ value Differential
+ }
+ control.51 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 Differential
+ iface MIXER
+ name 'Left PGA Mux'
+ value Differential
+ }
+ control.52 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Left Playback Switch'
+ value false
+ }
+ control.53 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Left Bypass Switch'
+ value false
+ }
+ control.54 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Right Playback Switc'
+ value false
+ }
+ control.55 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Right Bypass Switch'
+ value false
+ }
+ control.56 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Left Playback Switc'
+ value false
+ }
+ control.57 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Left Bypass Switch'
+ value false
+ }
+ control.58 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Playback Switch'
+ value true
+ }
+ control.59 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Right Bypass Switch'
+ value false
+ }
+ control.60 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Playback Switch'
+ value true
+ }
+ control.61 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Left Bypass Switch'
+ value false
+ }
+ control.62 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Right Playback Switc'
+ value false
+ }
+ control.63 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Right Bypass Switch'
+ value false
+ }
+ control.64 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Headphone
+ comment.item.1 Mic
+ comment.item.2 Line
+ comment.item.3 Headset
+ comment.item.4 Off
+ iface MIXER
+ name 'Jack Function'
+ value Off
+ }
+ control.65 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 On
+ comment.item.1 Off
+ iface MIXER
+ name 'Speaker Function'
+ value On
+ }
+}
diff --git a/recipes/alsa/alsa-state/alsa-state b/recipes/alsa/alsa-state/alsa-state
new file mode 100755
index 0000000000..84cdf03750
--- /dev/null
+++ b/recipes/alsa/alsa-state/alsa-state
@@ -0,0 +1,29 @@
+#! /bin/sh
+#
+# Copyright Matthias Hentges <devel@hentges.net> (c) 2007
+# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license)
+#
+# Filename: alsa-state
+# Date: 20070308 (YMD)
+
+
+asound_restore(){
+ echo "ALSA: Restoring mixer settings..."
+ if test -x /usr/sbin/alsactl -a -e /etc/asound.state
+ then
+ /usr/sbin/alsactl -f /etc/asound.state restore &
+ fi
+}
+
+asound_store(){
+ echo "ALSA: Storing mixer settings..."
+ if test -x /usr/sbin/alsactl
+ then
+ /usr/sbin/alsactl -f /etc/asound.state store
+ fi
+}
+
+case "$1" in
+start) asound_restore ;;
+stop) asound_store ;;
+esac
diff --git a/recipes/alsa/alsa-state/asound.conf b/recipes/alsa/alsa-state/asound.conf
new file mode 100644
index 0000000000..6be024201c
--- /dev/null
+++ b/recipes/alsa/alsa-state/asound.conf
@@ -0,0 +1,12 @@
+# default dmix configuration
+
+pcm.!default {
+ type plug
+ slave.pcm "dmix"
+}
+
+ctl.mixer0 {
+ type hw
+ card 0
+}
+
diff --git a/recipes/alsa/alsa-state/asound.state b/recipes/alsa/alsa-state/asound.state
new file mode 100644
index 0000000000..88b0d02657
--- /dev/null
+++ b/recipes/alsa/alsa-state/asound.state
@@ -0,0 +1 @@
+# Dummy file, do not delete \ No newline at end of file
diff --git a/recipes/alsa/alsa-state/at91sam9263ek/asound.conf b/recipes/alsa/alsa-state/at91sam9263ek/asound.conf
new file mode 100644
index 0000000000..87bb5ec050
--- /dev/null
+++ b/recipes/alsa/alsa-state/at91sam9263ek/asound.conf
@@ -0,0 +1,2 @@
+pcm.!default { type hw card 0 }
+ctl.!default { type hw card 0 }
diff --git a/recipes/alsa/alsa-state/at91sam9263ek/asound.state b/recipes/alsa/alsa-state/at91sam9263ek/asound.state
new file mode 100644
index 0000000000..ee646a1341
--- /dev/null
+++ b/recipes/alsa/alsa-state/at91sam9263ek/asound.state
@@ -0,0 +1,283 @@
+state.AC97 {
+ control.1 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Master Playback Switch'
+ value.0 true
+ value.1 true
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin -4650
+ comment.dbmax 0
+ iface MIXER
+ name 'Master Playback Volume'
+ value.0 22
+ value.1 22
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Headphone Playback Switch'
+ value.0 true
+ value.1 true
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin -4650
+ comment.dbmax 0
+ iface MIXER
+ name 'Headphone Playback Volume'
+ value.0 22
+ value.1 22
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Master Mono Playback Switch'
+ value false
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ comment.dbmin -4650
+ comment.dbmax 0
+ iface MIXER
+ name 'Master Mono Playback Volume'
+ value 0
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Phone Playback Switch'
+ value false
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ comment.dbmin -3450
+ comment.dbmax 1200
+ iface MIXER
+ name 'Phone Playback Volume'
+ value 0
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mic Playback Switch'
+ value false
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ comment.dbmin -3450
+ comment.dbmax 1200
+ iface MIXER
+ name 'Mic Playback Volume'
+ value 0
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mic Boost (+20dB)'
+ value false
+ }
+ control.12 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Line Playback Switch'
+ value.0 false
+ value.1 false
+ }
+ control.13 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin -3450
+ comment.dbmax 1200
+ iface MIXER
+ name 'Line Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.14 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'CD Playback Switch'
+ value.0 false
+ value.1 false
+ }
+ control.15 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin -3450
+ comment.dbmax 1200
+ iface MIXER
+ name 'CD Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.16 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Aux Playback Switch'
+ value.0 false
+ value.1 false
+ }
+ control.17 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin -3450
+ comment.dbmax 1200
+ iface MIXER
+ name 'Aux Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.18 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'PCM Playback Switch'
+ value.0 true
+ value.1 true
+ }
+ control.19 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ comment.dbmin -3450
+ comment.dbmax 1200
+ iface MIXER
+ name 'PCM Playback Volume'
+ value.0 22
+ value.1 22
+ }
+ control.20 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 2
+ comment.item.0 Mic
+ comment.item.1 CD
+ comment.item.2 Video
+ comment.item.3 Aux
+ comment.item.4 Line
+ comment.item.5 Mix
+ comment.item.6 'Mix Mono'
+ comment.item.7 Phone
+ iface MIXER
+ name 'Capture Source'
+ value.0 Mic
+ value.1 Mic
+ }
+ control.21 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Capture Switch'
+ value.0 true
+ value.1 true
+ }
+ control.22 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 15'
+ comment.dbmin 0
+ comment.dbmax 2250
+ iface MIXER
+ name 'Capture Volume'
+ value.0 11
+ value.1 11
+ }
+ control.23 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Mix
+ comment.item.1 Mic
+ iface MIXER
+ name 'Mono Output Select'
+ value Mix
+ }
+ control.24 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Mic1
+ comment.item.1 Mic2
+ iface MIXER
+ name 'Mic Select'
+ value Mic1
+ }
+ control.25 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Stereo Mic'
+ value false
+ }
+ control.26 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Headphone Jack Sense'
+ value false
+ }
+ control.27 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Line Jack Sense'
+ value false
+ }
+ control.28 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'External Amplifier'
+ value true
+ }
+}
diff --git a/recipes/alsa/alsa-state/c7x0/asound.state b/recipes/alsa/alsa-state/c7x0/asound.state
new file mode 100644
index 0000000000..caef65c120
--- /dev/null
+++ b/recipes/alsa/alsa-state/c7x0/asound.state
@@ -0,0 +1,150 @@
+state.Corgi {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Master Playback Volume'
+ value.0 98
+ value.1 98
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Master Playback ZC Switch'
+ value.0 false
+ value.1 false
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Capture Volume'
+ value.0 31
+ value.1 31
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Line Capture Switch'
+ value.0 false
+ value.1 false
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mic Boost (+20dB)'
+ value false
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture Mic Switch'
+ value false
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 3'
+ iface MIXER
+ name 'Sidetone Playback Volume'
+ value 3
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ADC High Pass Filter Switch'
+ value true
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Store DC Offset Switch'
+ value false
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 None
+ comment.item.1 '32Khz'
+ comment.item.2 '44.1Khz'
+ comment.item.3 '48Khz'
+ iface MIXER
+ name 'Playback De-emphasis'
+ value None
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line In'
+ comment.item.1 Mic
+ iface MIXER
+ name 'Input Mux'
+ value 'Line In'
+ }
+ control.12 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Output Mixer Line Bypass Switch'
+ value false
+ }
+ control.13 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Output Mixer Mic Sidetone Switc'
+ value false
+ }
+ control.14 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Output Mixer HiFi Playback Swit'
+ value true
+ }
+ control.15 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Headphone
+ comment.item.1 Mic
+ comment.item.2 Line
+ comment.item.3 Headset
+ comment.item.4 Off
+ iface MIXER
+ name 'Jack Function'
+ value Headphone
+ }
+ control.16 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 On
+ comment.item.1 Off
+ iface MIXER
+ name 'Speaker Function'
+ value Off
+ }
+}
diff --git a/recipes/alsa/alsa-state/hx4700/asound.state b/recipes/alsa/alsa-state/hx4700/asound.state
new file mode 100644
index 0000000000..98661f5e3a
--- /dev/null
+++ b/recipes/alsa/alsa-state/hx4700/asound.state
@@ -0,0 +1,37 @@
+state.'hx4700 Audio' {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 255'
+ iface MIXER
+ name 'Master Playback Volume'
+ value.0 205
+ value.1 205
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Master Playback Switch'
+ value true
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Mic Capture Gain'
+ value 16
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mic Boost (+20dB)'
+ value true
+ }
+}
diff --git a/recipes/alsa/alsa-state/magician/asound.state b/recipes/alsa/alsa-state/magician/asound.state
new file mode 100644
index 0000000000..edc85dd364
--- /dev/null
+++ b/recipes/alsa/alsa-state/magician/asound.state
@@ -0,0 +1,202 @@
+state.Magician {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 255'
+ iface MIXER
+ name 'Playback Volume'
+ value.0 205
+ value.1 205
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 255'
+ iface MIXER
+ name 'Mixer Volume'
+ value.0 255
+ value.1 0
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Flat
+ comment.item.1 Minimum1
+ comment.item.2 Minimum2
+ comment.item.3 Maximum
+ iface MIXER
+ name 'Sound Processing Filter Mode'
+ value Flat
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 3'
+ iface MIXER
+ name 'Treble Volume'
+ value.0 0
+ value.1 0
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Bass Volume'
+ value.0 0
+ value.1 0
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 2
+ comment.item.0 None
+ comment.item.1 '32kHz'
+ comment.item.2 '44.1kHz'
+ comment.item.3 '48kHz'
+ comment.item.4 '96kHz'
+ iface MIXER
+ name 'Playback De-emphasis'
+ value.0 None
+ value.1 None
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Capture Volume'
+ value.0 0
+ value.1 0
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Line Capture Volume'
+ value.0 0
+ value.1 0
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 11'
+ iface MIXER
+ name 'Mic Capture Volume'
+ value 0
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Playback Switch'
+ value.0 true
+ value.1 false
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture Switch'
+ value true
+ }
+ control.12 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'AGC Timing'
+ value 0
+ }
+ control.13 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 3'
+ iface MIXER
+ name 'AGC Target level'
+ value 3
+ }
+ control.14 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'AGC Switch'
+ value false
+ }
+ control.15 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name Silence
+ value false
+ }
+ control.16 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Silence Detection'
+ value false
+ }
+ control.17 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Direct
+ comment.item.1 Mixer
+ iface MIXER
+ name 'Output Mux'
+ value Direct
+ }
+ control.18 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Line
+ comment.item.1 Mic
+ iface MIXER
+ name 'Input Mux'
+ value Line
+ }
+ control.19 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Headphone Switch'
+ value false
+ }
+ control.20 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Switch'
+ value true
+ }
+ control.21 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Call Mic'
+ comment.item.1 'Headset Mic'
+ iface MIXER
+ name 'Input Select'
+ value 'Call Mic'
+ }
+}
diff --git a/recipes/alsa/alsa-state/nokia800/asound.state b/recipes/alsa/alsa-state/nokia800/asound.state
new file mode 100644
index 0000000000..6ae874c2e2
--- /dev/null
+++ b/recipes/alsa/alsa-state/nokia800/asound.state
@@ -0,0 +1,105 @@
+state.EAC {
+ control.1 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Capture Switch'
+ value.0 false
+ value.1 false
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '6 - 127'
+ iface MIXER
+ name 'Capture Volume'
+ value.0 87
+ value.1 87
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'PCM Playback Switch'
+ value.0 true
+ value.1 true
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 127'
+ iface MIXER
+ name 'PCM Playback Volume'
+ value.0 103
+ value.1 103
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Line Playback Switch'
+ value.0 false
+ value.1 false
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '31 - 127'
+ iface MIXER
+ name 'Line Playback Volume'
+ value.0 103
+ value.1 103
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '1 - 3'
+ iface MIXER
+ name 'Mic Boost'
+ value 0
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 2
+ comment.item.0 Mic
+ comment.item.1 Line
+ comment.item.2 'Line swapped'
+ comment.item.3 'Line mono'
+ iface MIXER
+ name 'Capture Source'
+ value.0 Mic
+ value.1 Mic
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Headset Amplifier'
+ value false
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Amplifier'
+ value true
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Headset Mic Select'
+ value false
+ }
+}
diff --git a/recipes/alsa/alsa-state/spitz/asound.state b/recipes/alsa/alsa-state/spitz/asound.state
new file mode 100644
index 0000000000..d1bacfb708
--- /dev/null
+++ b/recipes/alsa/alsa-state/spitz/asound.state
@@ -0,0 +1,619 @@
+state.Spitz {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 63'
+ iface MIXER
+ name 'Capture Volume'
+ value.0 48
+ value.1 48
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Capture ZC Switch'
+ value.0 true
+ value.1 true
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Capture Switch'
+ value.0 true
+ value.1 true
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Headphone Playback ZC Switch'
+ value.0 true
+ value.1 true
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 2
+ iface MIXER
+ name 'Speaker Playback ZC Switch'
+ value.0 true
+ value.1 true
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 None
+ comment.item.1 '32Khz'
+ comment.item.2 '44.1Khz'
+ comment.item.3 '48Khz'
+ iface MIXER
+ name 'Playback De-emphasis'
+ value None
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Normal
+ comment.item.1 'L Invert'
+ comment.item.2 'R Invert'
+ comment.item.3 'L + R Invert'
+ iface MIXER
+ name 'Capture Polarity'
+ value Normal
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Playback 6dB Attenuate'
+ value false
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture 6dB Attenuate'
+ value false
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 255'
+ iface MIXER
+ name 'PCM Volume'
+ value.0 220
+ value.1 220
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Linear Control'
+ comment.item.1 'Adaptive Boost'
+ iface MIXER
+ name 'Bass Boost'
+ value 'Linear Control'
+ }
+ control.12 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '130Hz @ 48kHz'
+ comment.item.1 '200Hz @ 48kHz'
+ iface MIXER
+ name 'Bass Filter'
+ value '130Hz @ 48kHz'
+ }
+ control.13 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Bass Volume'
+ value 0
+ }
+ control.14 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Treble Volume'
+ value 0
+ }
+ control.15 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '8kHz'
+ comment.item.1 '4kHz'
+ iface MIXER
+ name 'Treble Cut-off'
+ value '8kHz'
+ }
+ control.16 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name '3D Switch'
+ value false
+ }
+ control.17 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name '3D Volume'
+ value 0
+ }
+ control.18 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '200Hz'
+ comment.item.1 '500Hz'
+ iface MIXER
+ name '3D Lower Cut-off'
+ value '200Hz'
+ }
+ control.19 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '2.2kHz'
+ comment.item.1 '1.5kHz'
+ iface MIXER
+ name '3D Upper Cut-off'
+ value '2.2kHz'
+ }
+ control.20 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Capture
+ comment.item.1 Playback
+ iface MIXER
+ name '3D Mode'
+ value Playback
+ }
+ control.21 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'ALC Capture Target Volume'
+ value 3
+ }
+ control.22 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'ALC Capture Max Volume'
+ value 7
+ }
+ control.23 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Off
+ comment.item.1 Right
+ comment.item.2 Left
+ comment.item.3 Stereo
+ iface MIXER
+ name 'ALC Capture Function'
+ value Left
+ }
+ control.24 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ALC Capture ZC Switch'
+ value true
+ }
+ control.25 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Capture Hold Time'
+ value 9
+ }
+ control.26 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Capture Decay Time'
+ value 9
+ }
+ control.27 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Capture Attack Time'
+ value 3
+ }
+ control.28 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'ALC Capture NG Threshold'
+ value 0
+ }
+ control.29 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 '2.2kHz'
+ comment.item.1 '1.5kHz'
+ iface MIXER
+ name 'ALC Capture NG Type'
+ value '2.2kHz'
+ }
+ control.30 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ALC Capture NG Switch'
+ value false
+ }
+ control.31 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 255'
+ iface MIXER
+ name 'Left ADC Capture Volume'
+ value 195
+ }
+ control.32 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 255'
+ iface MIXER
+ name 'Right ADC Capture Volume'
+ value 195
+ }
+ control.33 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ZC Timeout Switch'
+ value true
+ }
+ control.34 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Playback Invert Switch'
+ value false
+ }
+ control.35 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Speaker Playback Invert Switch'
+ value true
+ }
+ control.36 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 3'
+ iface MIXER
+ name 'Mic Boost'
+ value.0 3
+ value.1 3
+ }
+ control.37 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Bypass Left Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.38 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Bypass Right Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.39 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Bypass Mono Playback Volume'
+ value.0 0
+ value.1 0
+ }
+ control.40 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Playback ZC Switch'
+ value false
+ }
+ control.41 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Headphone Playback Volume'
+ value.0 105
+ value.1 105
+ }
+ control.42 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Speaker Playback Volume'
+ value.0 127
+ value.1 127
+ }
+ control.43 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 127'
+ iface MIXER
+ name 'Mono Playback Volume'
+ value 0
+ }
+ control.44 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 'Mono (Left)'
+ comment.item.2 'Mono (Right)'
+ comment.item.3 'Digital Mono'
+ iface MIXER
+ name 'Right ADC Mux'
+ value 'Digital Mono'
+ }
+ control.45 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 'Mono (Left)'
+ comment.item.2 'Mono (Right)'
+ comment.item.3 'Digital Mono'
+ iface MIXER
+ name 'Left ADC Mux'
+ value 'Digital Mono'
+ }
+ control.46 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ iface MIXER
+ name 'Differential Mux'
+ value 'Line 1'
+ }
+ control.47 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 VREF
+ comment.item.1 'ROUT1 + Vol'
+ comment.item.2 MonoOut
+ comment.item.3 ROUT1
+ iface MIXER
+ name 'Out3 Mux'
+ value VREF
+ }
+ control.48 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 PGA
+ comment.item.4 Differential
+ iface MIXER
+ name 'Right Line Mux'
+ value Differential
+ }
+ control.49 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 PGA
+ comment.item.4 Differential
+ iface MIXER
+ name 'Left Line Mux'
+ value Differential
+ }
+ control.50 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 Differential
+ iface MIXER
+ name 'Right PGA Mux'
+ value Differential
+ }
+ control.51 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Line 1'
+ comment.item.1 'Line 2'
+ comment.item.2 'Line 3'
+ comment.item.3 Differential
+ iface MIXER
+ name 'Left PGA Mux'
+ value Differential
+ }
+ control.52 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Left Playback Switch'
+ value false
+ }
+ control.53 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Left Bypass Switch'
+ value false
+ }
+ control.54 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Right Playback Switc'
+ value false
+ }
+ control.55 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Mixer Right Bypass Switch'
+ value false
+ }
+ control.56 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Left Playback Switc'
+ value false
+ }
+ control.57 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Left Bypass Switch'
+ value false
+ }
+ control.58 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Playback Switch'
+ value true
+ }
+ control.59 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right Mixer Right Bypass Switch'
+ value false
+ }
+ control.60 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Playback Switch'
+ value true
+ }
+ control.61 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Left Bypass Switch'
+ value false
+ }
+ control.62 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Right Playback Switc'
+ value false
+ }
+ control.63 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left Mixer Right Bypass Switch'
+ value false
+ }
+ control.64 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Headphone
+ comment.item.1 Mic
+ comment.item.2 Line
+ comment.item.3 Headset
+ comment.item.4 Off
+ iface MIXER
+ name 'Jack Function'
+ value Off
+ }
+ control.65 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 On
+ comment.item.1 Off
+ iface MIXER
+ name 'Speaker Function'
+ value On
+ }
+}
diff --git a/recipes/alsa/alsa-state/tosa/asound.state b/recipes/alsa/alsa-state/tosa/asound.state
new file mode 100644
index 0000000000..c38265d792
--- /dev/null
+++ b/recipes/alsa/alsa-state/tosa/asound.state
@@ -0,0 +1,769 @@
+state.Tosa {
+ control.1 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Speaker Playback Volume'
+ value.0 25
+ value.1 25
+ }
+ control.2 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Playback Switch'
+ value true
+ }
+ control.3 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Headphone Playback Volume'
+ value.0 20
+ value.1 20
+ }
+ control.4 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Headphone Playback Switch'
+ value true
+ }
+ control.5 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ iface MIXER
+ name 'PCM Playback Volume'
+ value.0 23
+ value.1 23
+ }
+ control.6 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Playback ZC Switch'
+ value true
+ }
+ control.7 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Playback Invert Switch'
+ value true
+ }
+ control.8 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Headphone Playback ZC Switch'
+ value true
+ }
+ control.9 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mono Playback ZC Switch'
+ value false
+ }
+ control.10 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Mono Playback Volume'
+ value 0
+ }
+ control.11 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Target Volume'
+ value 11
+ }
+ control.12 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Hold Time'
+ value 2
+ }
+ control.13 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Decay Time'
+ value 3
+ }
+ control.14 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'ALC Attack Time'
+ value 2
+ }
+ control.15 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 None
+ comment.item.1 Left
+ comment.item.2 Right
+ comment.item.3 Stereo
+ iface MIXER
+ name 'ALC Function'
+ value None
+ }
+ control.16 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'ALC Max Volume'
+ value 7
+ }
+ control.17 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 3'
+ iface MIXER
+ name 'ALC ZC Timeout'
+ value 0
+ }
+ control.18 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ALC ZC Switch'
+ value false
+ }
+ control.19 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'ALC NG Switch'
+ value false
+ }
+ control.20 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Constant Gain'
+ comment.item.1 Mute
+ iface MIXER
+ name 'ALC NG Type'
+ value 'Constant Gain'
+ }
+ control.21 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'ALC NG Threshold'
+ value 31
+ }
+ control.22 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Mic Headphone Volume'
+ value 7
+ }
+ control.23 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'ALC Headphone Volume'
+ value 5
+ }
+ control.24 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Out3 Switch'
+ value false
+ }
+ control.25 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Out3 ZC Switch'
+ value true
+ }
+ control.26 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Out3 Volume'
+ value 0
+ }
+ control.27 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'PCBeep Bypass Headphone Volume'
+ value 0
+ }
+ control.28 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'PCBeep Bypass Speaker Volume'
+ value 0
+ }
+ control.29 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'PCBeep Bypass Phone Volume'
+ value 0
+ }
+ control.30 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Aux Playback Headphone Volume'
+ value 5
+ }
+ control.31 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Aux Playback Speaker Volume'
+ value 0
+ }
+ control.32 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 7'
+ iface MIXER
+ name 'Aux Playback Phone Volume'
+ value 0
+ }
+ control.33 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Phone Volume'
+ value 0
+ }
+ control.34 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Line Capture Volume'
+ value.0 23
+ value.1 23
+ }
+ control.35 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture 20dB Boost Switch'
+ value true
+ }
+ control.36 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture to Phone 20dB Boost Switch'
+ value true
+ }
+ control.37 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name '3D Upper Cut-off Switch'
+ value false
+ }
+ control.38 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name '3D Lower Cut-off Switch'
+ value false
+ }
+ control.39 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name '3D Playback Volume'
+ value 0
+ }
+ control.40 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Linear Control'
+ comment.item.1 'Adaptive Boost'
+ iface MIXER
+ name 'Bass Control'
+ value 'Adaptive Boost'
+ }
+ control.41 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Bass Cut-off Switch'
+ value true
+ }
+ control.42 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Tone Cut-off Switch'
+ value false
+ }
+ control.43 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Playback Attenuate (-6dB) Switch'
+ value false
+ }
+ control.44 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Bass Volume'
+ value 8
+ }
+ control.45 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 15'
+ iface MIXER
+ name 'Treble Volume'
+ value 5
+ }
+ control.46 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture ADC Switch'
+ value false
+ }
+ control.47 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 2
+ comment.item.0 '+1.5dB Steps'
+ comment.item.1 '+0.75dB Steps'
+ iface MIXER
+ name 'Capture Volume Steps'
+ value.0 '+0.75dB Steps'
+ value.1 '+0.75dB Steps'
+ }
+ control.48 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 2
+ comment.range '0 - 63'
+ iface MIXER
+ name 'Capture Volume'
+ value.0 0
+ value.1 0
+ }
+ control.49 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Capture ZC Switch'
+ value false
+ }
+ control.50 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Mic 1 Volume'
+ value 23
+ }
+ control.51 {
+ comment.access 'read write'
+ comment.type INTEGER
+ comment.count 1
+ comment.range '0 - 31'
+ iface MIXER
+ name 'Mic 2 Volume'
+ value 23
+ }
+ control.52 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Mic 20dB Boost Switch'
+ value false
+ }
+ control.53 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Mixer PCBeep Bypass Swi'
+ value false
+ }
+ control.54 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Mixer Aux Playback Swit'
+ value false
+ }
+ control.55 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Mixer Phone Bypass Swit'
+ value false
+ }
+ control.56 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Mixer Line Bypass Switc'
+ value false
+ }
+ control.57 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Speaker Mixer PCM Playback Swit'
+ value true
+ }
+ control.58 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Phone Mixer PCBeep Bypass Switc'
+ value false
+ }
+ control.59 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Phone Mixer Aux Playback Switch'
+ value false
+ }
+ control.60 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Phone Mixer Line Bypass Switch'
+ value false
+ }
+ control.61 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Phone Mixer PCM Playback Switch'
+ value false
+ }
+ control.62 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Phone Mixer Mic 1 Sidetone Swit'
+ value false
+ }
+ control.63 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Phone Mixer Mic 2 Sidetone Swit'
+ value false
+ }
+ control.64 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right HP Mixer PCBeep Bypass Sw'
+ value false
+ }
+ control.65 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right HP Mixer Aux Playback Swi'
+ value false
+ }
+ control.66 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right HP Mixer Phone Bypass Swi'
+ value false
+ }
+ control.67 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right HP Mixer Line Bypass Swit'
+ value false
+ }
+ control.68 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right HP Mixer PCM Playback Swi'
+ value true
+ }
+ control.69 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Right HP Mixer Mic Sidetone Swi'
+ value false
+ }
+ control.70 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left HP Mixer PCBeep Bypass Swi'
+ value false
+ }
+ control.71 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left HP Mixer Aux Playback Swit'
+ value false
+ }
+ control.72 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left HP Mixer Phone Bypass Swit'
+ value false
+ }
+ control.73 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left HP Mixer Line Bypass Switc'
+ value false
+ }
+ control.74 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left HP Mixer PCM Playback Swit'
+ value true
+ }
+ control.75 {
+ comment.access 'read write'
+ comment.type BOOLEAN
+ comment.count 1
+ iface MIXER
+ name 'Left HP Mixer Mic Sidetone Swit'
+ value false
+ }
+ control.76 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Mic
+ comment.item.1 Line
+ iface MIXER
+ name 'Differential Source'
+ value Mic
+ }
+ control.77 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Mic 1'
+ comment.item.1 Differential
+ comment.item.2 'Mic 2'
+ comment.item.3 Stereo
+ iface MIXER
+ name 'Mic Select Source'
+ value Differential
+ }
+ control.78 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Mic
+ comment.item.1 NC
+ comment.item.2 NC
+ comment.item.3 'Speaker Mixer'
+ comment.item.4 Line
+ comment.item.5 'Headphone Mixer'
+ comment.item.6 'Phone Mixer'
+ comment.item.7 Phone
+ iface MIXER
+ name 'Right Capture Select'
+ value Mic
+ }
+ control.79 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Mic
+ comment.item.1 NC
+ comment.item.2 NC
+ comment.item.3 'Speaker Mixer'
+ comment.item.4 Line
+ comment.item.5 'Headphone Mixer'
+ comment.item.6 'Phone Mixer'
+ comment.item.7 Phone
+ iface MIXER
+ name 'Left Capture Select'
+ value Mic
+ }
+ control.80 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 Left
+ comment.item.2 Right
+ comment.item.3 Mute
+ iface MIXER
+ name 'Capture Phone Mux'
+ value Mute
+ }
+ control.81 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 'Speaker Mix'
+ comment.item.1 'Headphone Mix'
+ iface MIXER
+ name 'Speaker Mux'
+ value 'Speaker Mix'
+ }
+ control.82 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Left
+ comment.item.1 VREF
+ comment.item.2 'Left + Right'
+ comment.item.3 Mono
+ iface MIXER
+ name 'Out3 Mux'
+ value Left
+ }
+ control.83 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Stereo
+ comment.item.1 Left
+ comment.item.2 Right
+ comment.item.3 None
+ iface MIXER
+ name 'ALC Sidetone Mux'
+ value Stereo
+ }
+ control.84 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 Headphone
+ comment.item.1 Mic
+ comment.item.2 Line
+ comment.item.3 Headset
+ comment.item.4 Off
+ iface MIXER
+ name 'Jack Function'
+ value Off
+ }
+ control.85 {
+ comment.access 'read write'
+ comment.type ENUMERATED
+ comment.count 1
+ comment.item.0 On
+ comment.item.1 Off
+ iface MIXER
+ name 'Speaker Function'
+ value On
+ }
+}