summaryrefslogtreecommitdiff
path: root/sound/pci/emu10k1/p16v.c
diff options
context:
space:
mode:
authorJames Courtier-Dutton <James@superbug.co.uk>2006-07-22 17:02:10 +0100
committerJaroslav Kysela <perex@suse.cz>2006-09-23 10:38:32 +0200
commit31508f83f591dc8764427b6321c89f8f9e84bad2 (patch)
treee8b131303a9397232b33fbaaf5591f097f93af35 /sound/pci/emu10k1/p16v.c
parentfff36e472b4315df77513f4339c5c199c6aad28b (diff)
[ALSA] snd-emu10k1: Implement dB gain infomation.
Signed-off-by: James Courtier-Dutton <James@superbug.co.uk> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/pci/emu10k1/p16v.c')
-rw-r--r--sound/pci/emu10k1/p16v.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/pci/emu10k1/p16v.c b/sound/pci/emu10k1/p16v.c
index 9905651935fb..1e44714b8623 100644
--- a/sound/pci/emu10k1/p16v.c
+++ b/sound/pci/emu10k1/p16v.c
@@ -100,6 +100,7 @@
#include <sound/pcm.h>
#include <sound/ac97_codec.h>
#include <sound/info.h>
+#include <sound/tlv.h>
#include <sound/emu10k1.h>
#include "p16v.h"
@@ -784,12 +785,16 @@ static int snd_p16v_capture_channel_put(struct snd_kcontrol *kcontrol,
}
return change;
}
+static DECLARE_TLV_DB_SCALE(snd_p16v_db_scale1, -5175, 25, 1);
#define P16V_VOL(xname,xreg,xhl) { \
.iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, \
+ .access = SNDRV_CTL_ELEM_ACCESS_READWRITE | \
+ SNDRV_CTL_ELEM_ACCESS_TLV_READ, \
.info = snd_p16v_volume_info, \
.get = snd_p16v_volume_get, \
.put = snd_p16v_volume_put, \
+ .tlv.p = snd_p16v_db_scale1, \
.private_value = ((xreg) | ((xhl) << 8)) \
}