[alsa-devel] [PATCH v2] ALSA: hda - Don't send invalid volume knob command on IDT 92hd75bxx
Takashi Iwai
tiwai at suse.de
Thu Aug 16 14:16:47 CEST 2012
At Thu, 16 Aug 2012 14:11:09 +0200,
David Henningsson wrote:
>
> Instead of blindly initializing a volume knob widget, first check
> that there actually is a volume knob widget.
>
> Signed-off-by: David Henningsson <david.henningsson at canonical.com>
Thanks, applied.
Takashi
> ---
> sound/pci/hda/patch_sigmatel.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
> index 94040cc..ea5775a 100644
> --- a/sound/pci/hda/patch_sigmatel.c
> +++ b/sound/pci/hda/patch_sigmatel.c
> @@ -4272,7 +4272,8 @@ static int stac92xx_init(struct hda_codec *codec)
> unsigned int gpio;
> int i;
>
> - snd_hda_sequence_write(codec, spec->init);
> + if (spec->init)
> + snd_hda_sequence_write(codec, spec->init);
>
> /* power down adcs initially */
> if (spec->powerdown_adcs)
> @@ -5748,7 +5749,6 @@ again:
> /* fallthru */
> case 0x111d76b4: /* 6 Port without Analog Mixer */
> case 0x111d76b5:
> - spec->init = stac92hd71bxx_core_init;
> codec->slave_dig_outs = stac92hd71bxx_slave_dig_outs;
> spec->num_dmics = stac92xx_connected_ports(codec,
> stac92hd71bxx_dmic_nids,
> @@ -5773,7 +5773,6 @@ again:
> spec->stream_delay = 40; /* 40 milliseconds */
>
> /* disable VSW */
> - spec->init = stac92hd71bxx_core_init;
> unmute_init++;
> snd_hda_codec_set_pincfg(codec, 0x0f, 0x40f000f0);
> snd_hda_codec_set_pincfg(codec, 0x19, 0x40f000f3);
> @@ -5788,7 +5787,6 @@ again:
>
> /* fallthru */
> default:
> - spec->init = stac92hd71bxx_core_init;
> codec->slave_dig_outs = stac92hd71bxx_slave_dig_outs;
> spec->num_dmics = stac92xx_connected_ports(codec,
> stac92hd71bxx_dmic_nids,
> @@ -5796,6 +5794,9 @@ again:
> break;
> }
>
> + if (get_wcaps_type(get_wcaps(codec, 0x28)) == AC_WID_VOL_KNB)
> + spec->init = stac92hd71bxx_core_init;
> +
> if (get_wcaps(codec, 0xa) & AC_WCAP_IN_AMP)
> snd_hda_sequence_write_cache(codec, unmute_init);
>
> --
> 1.7.9.5
>
More information about the Alsa-devel
mailing list