diff options
author | Jani Alinikula <janialinikula@gmail.com> | 2006-06-27 09:00:55 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2006-06-28 13:31:03 -0400 |
commit | c83c0c470565a0aed2f6fcbaa6c80a98ef250586 (patch) | |
tree | 5f6810822c019af78dcb95f67565101cb97198c0 /sound/pci/ice1712/revo.c | |
parent | be7ee27822975cee5dabb2cfd7f03e7fde38e3f4 (diff) |
[ALSA] Stereo controls for M-Audio Revolution cards
This patch adds stereo controls to revo cards by making the ak4xxx
driver mixers configurable from the card driver.
Signed-off-by: Jani Alinikula <janialinikula@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/pci/ice1712/revo.c')
-rw-r--r-- | sound/pci/ice1712/revo.c | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/sound/pci/ice1712/revo.c b/sound/pci/ice1712/revo.c index b5754b32b802..fec9440cb310 100644 --- a/sound/pci/ice1712/revo.c +++ b/sound/pci/ice1712/revo.c | |||
@@ -87,12 +87,25 @@ static void revo_set_rate_val(struct snd_akm4xxx *ak, unsigned int rate) | |||
87 | * initialize the chips on M-Audio Revolution cards | 87 | * initialize the chips on M-Audio Revolution cards |
88 | */ | 88 | */ |
89 | 89 | ||
90 | static unsigned int revo71_num_stereo_front[] = {2}; | ||
91 | static char *revo71_channel_names_front[] = {"PCM Playback Volume"}; | ||
92 | |||
93 | static unsigned int revo71_num_stereo_surround[] = {1, 1, 2, 2}; | ||
94 | static char *revo71_channel_names_surround[] = {"PCM Center Playback Volume", "PCM LFE Playback Volume", | ||
95 | "PCM Side Playback Volume", "PCM Rear Playback Volume"}; | ||
96 | |||
97 | static unsigned int revo51_num_stereo[] = {2, 1, 1, 2}; | ||
98 | static char *revo51_channel_names[] = {"PCM Playback Volume", "PCM Center Playback Volume", | ||
99 | "PCM LFE Playback Volume", "PCM Rear Playback Volume"}; | ||
100 | |||
90 | static struct snd_akm4xxx akm_revo_front __devinitdata = { | 101 | static struct snd_akm4xxx akm_revo_front __devinitdata = { |
91 | .type = SND_AK4381, | 102 | .type = SND_AK4381, |
92 | .num_dacs = 2, | 103 | .num_dacs = 2, |
93 | .ops = { | 104 | .ops = { |
94 | .set_rate_val = revo_set_rate_val | 105 | .set_rate_val = revo_set_rate_val |
95 | } | 106 | }, |
107 | .num_stereo = revo71_num_stereo_front, | ||
108 | .channel_names = revo71_channel_names_front | ||
96 | }; | 109 | }; |
97 | 110 | ||
98 | static struct snd_ak4xxx_private akm_revo_front_priv __devinitdata = { | 111 | static struct snd_ak4xxx_private akm_revo_front_priv __devinitdata = { |
@@ -113,7 +126,9 @@ static struct snd_akm4xxx akm_revo_surround __devinitdata = { | |||
113 | .num_dacs = 6, | 126 | .num_dacs = 6, |
114 | .ops = { | 127 | .ops = { |
115 | .set_rate_val = revo_set_rate_val | 128 | .set_rate_val = revo_set_rate_val |
116 | } | 129 | }, |
130 | .num_stereo = revo71_num_stereo_surround, | ||
131 | .channel_names = revo71_channel_names_surround | ||
117 | }; | 132 | }; |
118 | 133 | ||
119 | static struct snd_ak4xxx_private akm_revo_surround_priv __devinitdata = { | 134 | static struct snd_ak4xxx_private akm_revo_surround_priv __devinitdata = { |
@@ -133,7 +148,9 @@ static struct snd_akm4xxx akm_revo51 __devinitdata = { | |||
133 | .num_dacs = 6, | 148 | .num_dacs = 6, |
134 | .ops = { | 149 | .ops = { |
135 | .set_rate_val = revo_set_rate_val | 150 | .set_rate_val = revo_set_rate_val |
136 | } | 151 | }, |
152 | .num_stereo = revo51_num_stereo, | ||
153 | .channel_names = revo51_channel_names | ||
137 | }; | 154 | }; |
138 | 155 | ||
139 | static struct snd_ak4xxx_private akm_revo51_priv __devinitdata = { | 156 | static struct snd_ak4xxx_private akm_revo51_priv __devinitdata = { |