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

Commit 9cae0c63 authored by Robin H. Johnson's avatar Robin H. Johnson Committed by Jaroslav Kysela
Browse files

ALSA: HDA: patch_analog: Implement multiple outputs for AD1988



Implement the slave_dig_outs for AD1989 cards. Untested due to lack of
hardware.

Signed-off-by: default avatarRobin H. Johnson <robbat2@gentoo.org>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarJaroslav Kysela <perex@perex.cz>
parent 0481f453
Loading
Loading
Loading
Loading
+8 −1
Original line number Original line Diff line number Diff line
@@ -1827,8 +1827,13 @@ static hda_nid_t ad1988_capsrc_nids[3] = {
};
};


#define AD1988_SPDIF_OUT		0x02
#define AD1988_SPDIF_OUT		0x02
#define AD1988_SPDIF_OUT_HDMI	0x0b
#define AD1988_SPDIF_IN		0x07
#define AD1988_SPDIF_IN		0x07


static hda_nid_t ad1989b_slave_dig_outs[2] = {
	AD1988_SPDIF_OUT, AD1988_SPDIF_OUT_HDMI
};

static struct hda_input_mux ad1988_6stack_capture_source = {
static struct hda_input_mux ad1988_6stack_capture_source = {
	.num_items = 5,
	.num_items = 5,
	.items = {
	.items = {
@@ -2143,6 +2148,7 @@ static struct snd_kcontrol_new ad1988_spdif_in_mixers[] = {


static struct snd_kcontrol_new ad1989_spdif_out_mixers[] = {
static struct snd_kcontrol_new ad1989_spdif_out_mixers[] = {
	HDA_CODEC_VOLUME("IEC958 Playback Volume", 0x1b, 0x0, HDA_OUTPUT),
	HDA_CODEC_VOLUME("IEC958 Playback Volume", 0x1b, 0x0, HDA_OUTPUT),
	HDA_CODEC_VOLUME("HDMI Playback Volume", 0x1d, 0x0, HDA_OUTPUT),
	{ } /* end */
	{ } /* end */
};
};


@@ -2985,6 +2991,7 @@ static int patch_ad1988(struct hda_codec *codec)
				ad1989_spdif_out_mixers;
				ad1989_spdif_out_mixers;
			spec->init_verbs[spec->num_init_verbs++] =
			spec->init_verbs[spec->num_init_verbs++] =
				ad1989_spdif_init_verbs;
				ad1989_spdif_init_verbs;
			codec->slave_dig_outs = ad1989b_slave_dig_outs;
		} else {
		} else {
			spec->mixers[spec->num_mixers++] =
			spec->mixers[spec->num_mixers++] =
				ad1988_spdif_out_mixers;
				ad1988_spdif_out_mixers;