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

Commit f2e2026c authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: Add WM8958 based headset detection on Littlemill



The board supports CODECs that won't work with this but the CODEC driver
will check to see if it's running on the right chip for us.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 3631e8d4
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -154,8 +154,11 @@ static struct snd_soc_dapm_route audio_paths[] = {
	{ "Headphone", NULL, "HPOUT1R" },
};

static struct snd_soc_jack littlemill_headset;

static int littlemill_late_probe(struct snd_soc_card *card)
{
	struct snd_soc_codec *codec = card->rtd[0].codec;
	struct snd_soc_dai *codec_dai = card->rtd[0].codec_dai;
	int ret;

@@ -164,6 +167,18 @@ static int littlemill_late_probe(struct snd_soc_card *card)
	if (ret < 0)
		return ret;

	ret = snd_soc_jack_new(codec, "Headset",
			       SND_JACK_HEADSET | SND_JACK_MECHANICAL |
			       SND_JACK_BTN_0 | SND_JACK_BTN_1 |
			       SND_JACK_BTN_2 | SND_JACK_BTN_3 |
			       SND_JACK_BTN_4 | SND_JACK_BTN_5,
			       &littlemill_headset);
	if (ret)
		return ret;

	/* This will check device compatibility itself */
	wm8958_mic_detect(codec, &littlemill_headset, NULL, NULL);

	return 0;
}