aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx88/cx88-alsa.c
diff options
context:
space:
mode:
authorTrent Piepho <xyzzy@speakeasy.org>2007-09-06 22:02:25 -0400
committerMauro Carvalho Chehab <mchehab@infradead.org>2007-10-22 10:01:18 -0400
commitbbaccc04459d5cedb342228084223143fbc285e5 (patch)
tree8d6fdee011532e769db017e9575df676701b360c /drivers/media/video/cx88/cx88-alsa.c
parent54ac005adcda1a9e4566df6fa87acd4a1c135b80 (diff)
V4L/DVB (6187): cx88-alsa: Add TLV support
Lets mixer apps display a dB range for the volume control. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/cx88/cx88-alsa.c')
-rw-r--r--drivers/media/video/cx88/cx88-alsa.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/media/video/cx88/cx88-alsa.c b/drivers/media/video/cx88/cx88-alsa.c
index 6cf8609588a5..40ffd7a5579a 100644
--- a/drivers/media/video/cx88/cx88-alsa.c
+++ b/drivers/media/video/cx88/cx88-alsa.c
@@ -39,6 +39,7 @@
39#include <sound/pcm_params.h> 39#include <sound/pcm_params.h>
40#include <sound/control.h> 40#include <sound/control.h>
41#include <sound/initval.h> 41#include <sound/initval.h>
42#include <sound/tlv.h>
42 43
43#include "cx88.h" 44#include "cx88.h"
44#include "cx88-reg.h" 45#include "cx88-reg.h"
@@ -605,12 +606,17 @@ static int snd_cx88_volume_put(struct snd_kcontrol *kcontrol,
605 return changed; 606 return changed;
606} 607}
607 608
609static const DECLARE_TLV_DB_SCALE(snd_cx88_db_scale, -6300, 100, 0);
610
608static struct snd_kcontrol_new snd_cx88_volume = { 611static struct snd_kcontrol_new snd_cx88_volume = {
609 .iface = SNDRV_CTL_ELEM_IFACE_MIXER, 612 .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
613 .access = SNDRV_CTL_ELEM_ACCESS_READWRITE |
614 SNDRV_CTL_ELEM_ACCESS_TLV_READ,
610 .name = "Playback Volume", 615 .name = "Playback Volume",
611 .info = snd_cx88_volume_info, 616 .info = snd_cx88_volume_info,
612 .get = snd_cx88_volume_get, 617 .get = snd_cx88_volume_get,
613 .put = snd_cx88_volume_put, 618 .put = snd_cx88_volume_put,
619 .tlv.p = snd_cx88_db_scale,
614}; 620};
615 621
616static int snd_cx88_switch_get(struct snd_kcontrol *kcontrol, 622static int snd_cx88_switch_get(struct snd_kcontrol *kcontrol,