diff options
author | Krzysztof Helt <krzysztof.h1@wp.pl> | 2008-07-31 15:08:32 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-08-06 09:39:55 -0400 |
commit | 5664daa1c1fa250dd7f6b336278b0402638e8edc (patch) | |
tree | a128ca1e8ead396c43bb50827ef989cdd34f5ca9 /include | |
parent | 811585e9d1769d6e282852fc0675735209547ca0 (diff) |
ALSA: wss_lib: use wss mixer code instead of ad1848 one
Use the wss mixer code and kill the ad1848 mixer code.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'include')
-rw-r--r-- | include/sound/ad1848.h | 1 | ||||
-rw-r--r-- | include/sound/wss.h | 25 |
2 files changed, 25 insertions, 1 deletions
diff --git a/include/sound/ad1848.h b/include/sound/ad1848.h index 29f63b786351..03e2abf64a7c 100644 --- a/include/sound/ad1848.h +++ b/include/sound/ad1848.h | |||
@@ -115,6 +115,5 @@ int snd_ad1848_create(struct snd_card *card, | |||
115 | 115 | ||
116 | int snd_ad1848_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm); | 116 | int snd_ad1848_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm); |
117 | const struct snd_pcm_ops *snd_ad1848_get_pcm_ops(int direction); | 117 | const struct snd_pcm_ops *snd_ad1848_get_pcm_ops(int direction); |
118 | int snd_ad1848_mixer(struct snd_wss *chip); | ||
119 | 118 | ||
120 | #endif /* __SOUND_AD1848_H */ | 119 | #endif /* __SOUND_AD1848_H */ |
diff --git a/include/sound/wss.h b/include/sound/wss.h index 2cc1f1462d8e..c896f6e1f937 100644 --- a/include/sound/wss.h +++ b/include/sound/wss.h | |||
@@ -193,6 +193,31 @@ int snd_wss_put_single(struct snd_kcontrol *kcontrol, | |||
193 | .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | \ | 193 | .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | \ |
194 | (shift_right << 19) | (mask << 24) | (invert << 22) } | 194 | (shift_right << 19) | (mask << 24) | (invert << 22) } |
195 | 195 | ||
196 | #define WSS_SINGLE_TLV(xname, xindex, reg, shift, mask, invert, xtlv) \ | ||
197 | { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, \ | ||
198 | .access = SNDRV_CTL_ELEM_ACCESS_READWRITE | SNDRV_CTL_ELEM_ACCESS_TLV_READ, \ | ||
199 | .name = xname, \ | ||
200 | .index = xindex, \ | ||
201 | .info = snd_wss_info_single, \ | ||
202 | .get = snd_wss_get_single, \ | ||
203 | .put = snd_wss_put_single, \ | ||
204 | .private_value = reg | (shift << 8) | (mask << 16) | (invert << 24), \ | ||
205 | .tlv = { .p = (xtlv) } } | ||
206 | |||
207 | #define WSS_DOUBLE_TLV(xname, xindex, left_reg, right_reg, \ | ||
208 | shift_left, shift_right, mask, invert, xtlv) \ | ||
209 | { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, \ | ||
210 | .access = SNDRV_CTL_ELEM_ACCESS_READWRITE | SNDRV_CTL_ELEM_ACCESS_TLV_READ, \ | ||
211 | .name = xname, \ | ||
212 | .index = xindex, \ | ||
213 | .info = snd_wss_info_double, \ | ||
214 | .get = snd_wss_get_double, \ | ||
215 | .put = snd_wss_put_double, \ | ||
216 | .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | \ | ||
217 | (shift_right << 19) | (mask << 24) | (invert << 22), \ | ||
218 | .tlv = { .p = (xtlv) } } | ||
219 | |||
220 | |||
196 | int snd_wss_info_double(struct snd_kcontrol *kcontrol, | 221 | int snd_wss_info_double(struct snd_kcontrol *kcontrol, |
197 | struct snd_ctl_elem_info *uinfo); | 222 | struct snd_ctl_elem_info *uinfo); |
198 | int snd_wss_get_double(struct snd_kcontrol *kcontrol, | 223 | int snd_wss_get_double(struct snd_kcontrol *kcontrol, |