SRU - LP #293271 - UBUNTU: SAUCE: ALSA: hda: make a STAC_DELL_EQ option (version 2)
Ben Collins
ben.collins at canonical.com
Wed Nov 5 17:50:13 UTC 2008
Tim Gardner wrote:
>>From fd14aa2eecbcbabef5b20654e0c90e6a3227eb16 Mon Sep 17 00:00:00 2001
> From: Tim Gardner <tim.gardner at canonical.com>
> Date: Tue, 4 Nov 2008 13:43:47 -0700
> Subject: [PATCH] UBUNTU: SAUCE: ALSA: hda: make a STAC_DELL_EQ option (version 2)
> OriginalAuthor: Matthew Ranostay <mranostay at embeddedalley.com>
> Bug: #293271
>
> Add support for explicitly enabling the EQ distortion hack for
> systems without software biquad support.
>
> Backported from 2.6.28-rc3 6b3ab21ef1ac15db4b053ce0ba8eae0ef9361c8a
> by Matthew Ranostay.
ACK
> Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
> ---
> sound/pci/hda/patch_sigmatel.c | 15 +++++++++------
> 1 files changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
> index f3da621..732ce13 100644
> --- a/sound/pci/hda/patch_sigmatel.c
> +++ b/sound/pci/hda/patch_sigmatel.c
> @@ -67,6 +67,7 @@ enum {
> enum {
> STAC_92HD73XX_REF,
> STAC_DELL_M6,
> + STAC_DELL_EQ,
> STAC_92HD73XX_MODELS
> };
>
> @@ -560,9 +561,7 @@ static struct hda_verb dell_eq_core_init[] = {
> };
>
> static struct hda_verb dell_m6_core_init[] = {
> - /* set master volume to max value without distortion
> - * and direct control */
> - { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xec},
> + { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff},
> /* setup audio connections */
> { 0x0d, AC_VERB_SET_CONNECT_SEL, 0x00},
> { 0x0a, AC_VERB_SET_CONNECT_SEL, 0x01},
> @@ -1297,11 +1296,13 @@ static unsigned int dell_m6_pin_configs[13] = {
> static unsigned int *stac92hd73xx_brd_tbl[STAC_92HD73XX_MODELS] = {
> [STAC_92HD73XX_REF] = ref92hd73xx_pin_configs,
> [STAC_DELL_M6] = dell_m6_pin_configs,
> + [STAC_DELL_EQ] = dell_m6_pin_configs,
> };
>
> static const char *stac92hd73xx_models[STAC_92HD73XX_MODELS] = {
> [STAC_92HD73XX_REF] = "ref",
> [STAC_DELL_M6] = "dell-m6",
> + [STAC_DELL_EQ] = "dell-eq",
> };
>
> static struct snd_pci_quirk stac92hd73xx_cfg_tbl[] = {
> @@ -3560,8 +3561,12 @@ again:
> spec->gpio_data = 0x01;
>
> switch (spec->board_config) {
> - case STAC_DELL_M6:
> + case STAC_DELL_EQ:
> spec->init = dell_eq_core_init;
> + /* fallthru */
> + case STAC_DELL_M6:
> + if (!spec->init)
> + spec->init = dell_m6_core_init;
> switch (codec->subsystem_id) {
> case 0x1028025e: /* Analog Mics */
> case 0x1028025f:
> @@ -3570,8 +3575,6 @@ again:
> break;
> case 0x10280271: /* Digital Mics */
> case 0x10280272:
> - spec->init = dell_m6_core_init;
> - /* fall-through */
> case 0x10280254:
> case 0x10280255:
> stac92xx_set_config_reg(codec, 0x13, 0x90A60160);
More information about the kernel-team
mailing list