Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 33382403 authored by Matt Porter's avatar Matt Porter Committed by Jaroslav Kysela
Browse files

[ALSA] hda: add sigmatel 9205 eapd support



Adds support for handling EAPD on 9205 codecs

Signed-off-by: default avatarMatt Porter <mporter@embeddedalley.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarJaroslav Kysela <perex@suse.cz>
parent cdf88efa
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -1859,6 +1859,18 @@ static int patch_stac9205(struct hda_codec *codec)

	spec->multiout.dac_nids = spec->dac_nids;

	/* Configure GPIO0 as EAPD output */
	snd_hda_codec_write(codec, codec->afg, 0,
			    AC_VERB_SET_GPIO_DIRECTION, 0x00000001);
	/* Configure GPIO0 as CMOS */
	snd_hda_codec_write(codec, codec->afg, 0, 0x7e7, 0x00000000);
	/* Assert GPIO0 high */
	snd_hda_codec_write(codec, codec->afg, 0,
			    AC_VERB_SET_GPIO_DATA, 0x00000001);
	/* Enable GPIO0 */
	snd_hda_codec_write(codec, codec->afg, 0,
			    AC_VERB_SET_GPIO_MASK, 0x00000001);

	err = stac92xx_parse_auto_config(codec, 0x1f, 0x20);
	if (err < 0) {
		stac92xx_free(codec);