[alsa-devel] [PATCH 4/6] ESI W192M : Add TLV support to control volume using dB scale
Clément Guedez
klem.dev at gmail.com
Sat Mar 14 05:01:50 CET 2015
Hi,
sorry there is an error on this patch, please ignore it.
I will send the correct one.
Thanks
2015-03-14 3:31 GMT+01:00 <klem.dev at gmail.com>:
> From: Clément Guedez <klem.dev at gmail.com>
>
> Add TLV support to control volume using dB scale for input and ouput on
> ESI W192M.
>
>
> Signed-off-by: Clément Guedez <klem.dev at gmail.com>
>
> diff --git a/sound/pci/ice1712/wtm.c b/sound/pci/ice1712/wtm.c
> index 59483b4..3af9daf 100644
> --- a/sound/pci/ice1712/wtm.c
> +++ b/sound/pci/ice1712/wtm.c
> @@ -29,6 +29,7 @@
> #include <linux/interrupt.h>
> #include <linux/init.h>
> #include <sound/core.h>
> +#include <sound/tlv.h>
>
> #include "ice1712.h"
> #include "envy24ht.h"
> @@ -380,17 +381,25 @@ static int stac9460_mic_sw_put(struct snd_kcontrol
> *kcontrol,
> return change;
> }
>
> +
> +/*Limits value in dB for fader*/
> +static const DECLARE_TLV_DB_SCALE(db_scale_dac, -19125, 75, 0);
> +static const DECLARE_TLV_DB_SCALE(db_scale_adc, 0, 150, 0);
> +
> /*
> * Control tabs
> */
> static struct snd_kcontrol_new stac9640_controls[] = {
> {
> .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
> + .access = (SNDRV_CTL_ELEM_ACCESS_READWRITE |
> + SNDRV_CTL_ELEM_ACCESS_TLV_READ),
> .name = "Master Playback Switch",
> .info = stac9460_dac_mute_info,
> .get = stac9460_dac_mute_get,
> .put = stac9460_dac_mute_put,
> .private_value = 1
> + .tlv = { .p = db_scale_dac }
> },
> {
> .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
> @@ -419,11 +428,15 @@ static struct snd_kcontrol_new stac9640_controls[] =
> {
> },
> {
> .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
> + .access = (SNDRV_CTL_ELEM_ACCESS_READWRITE |
> + SNDRV_CTL_ELEM_ACCESS_TLV_READ),
> +
> .name = "DAC Volume",
> .count = 8,
> .info = stac9460_dac_vol_info,
> .get = stac9460_dac_vol_get,
> .put = stac9460_dac_vol_put,
> + .tlv = { .p = db_scale_dac }
> },
> {
> .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
> @@ -435,12 +448,15 @@ static struct snd_kcontrol_new stac9640_controls[] =
> {
> },
> {
> .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
> + .access = (SNDRV_CTL_ELEM_ACCESS_READWRITE |
> + SNDRV_CTL_ELEM_ACCESS_TLV_READ),
> +
> .name = "ADC Volume",
> .count = 2,
> .info = stac9460_adc_vol_info,
> .get = stac9460_adc_vol_get,
> .put = stac9460_adc_vol_put,
> -
> + .tlv = { .p = db_scale_adc }
> }
> };
>
> --
> 2.1.4
>
>
More information about the Alsa-devel
mailing list