ASoC: tegra: Add DAPM switches for headphones and mic jack
Subsystems (3)
PATCH 1/2 ASoC: tegra: Add DAPM switches for headphones and mic jack
UCM of Acer Chromebook (Nyan) uses DAPM switches of headphones and mic jack. These switches were lost by accident during unification of the machine drivers, restore them.
--- sound/soc/tegra/tegra_asoc_machine.c | 2 ++ 1 file changed, 2 insertions(+)
sound/soc/tegra/tegra_asoc_machine.c +2 -0
@@ -116,6 +116,8 @@ static const struct snd_kcontrol_new tegra_machine_controls[] = {SOC_DAPM_PIN_SWITCH ("Headset Mic" ),SOC_DAPM_PIN_SWITCH ("Internal Mic 1" ),SOC_DAPM_PIN_SWITCH ("Internal Mic 2" ), +SOC_DAPM_PIN_SWITCH ("Headphones" ), + SOC_DAPM_PIN_SWITCH("Mic Jack"), };int tegra_asoc_machine_init (struct snd_soc_pcm_runtime *rtd)
Signature · 1 line
2.33.1
PATCH 2/2 ASoC: tegra: Restore headphones jack name on Nyan Big
UCM of Acer Chromebook (Nyan) uses a different name for the headphones jack. The name was changed during unification of the machine drivers and UCM fails now to load because of that. Restore the old jack name.
--- sound/soc/tegra/tegra_asoc_machine.c | 9 ++++++++- sound/soc/tegra/tegra_asoc_machine.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-)
sound/soc/tegra/tegra_asoc_machine.c +8 -1
@@ -124,10 +124,16 @@ int tegra_asoc_machine_init(struct snd_soc_pcm_runtime *rtd) {struct snd_soc_card *card = rtd->card;struct tegra_machine *machine =snd_soc_card_get_drvdata (card); +const char *jack_name;int err;if (machine->gpiod_hp_det && machine->asoc->add_hp_jack) { - err = snd_soc_card_jack_new(card, "Headphones Jack", +if (machine->asoc->hp_jack_name) + jack_name = machine->asoc->hp_jack_name; +else + jack_name ="Headphones Jack" ; + + err = snd_soc_card_jack_new(card, jack_name, SND_JACK_HEADPHONE, &tegra_machine_hp_jack, tegra_machine_hp_jack_pins,
@@ -660,6 +666,7 @@ static struct snd_soc_card snd_soc_tegra_max98090 = {static const struct tegra_asoc_data tegra_max98090_data = { .mclk_rate = tegra_machine_mclk_rate_12mhz, .card = &snd_soc_tegra_max98090, + .hp_jack_name ="Headphones" , .add_common_dapm_widgets = true, .add_common_controls = true, .add_common_snd_ops = true,
sound/soc/tegra/tegra_asoc_machine.h +1 -0
@@ -14,6 +14,7 @@ struct snd_soc_pcm_runtime;struct tegra_asoc_data {unsigned int (*mclk_rate)(unsigned int srate);const char *codec_dev_name; +const char *hp_jack_name;struct snd_soc_card *card;unsigned int mclk_id;bool hp_jack_gpio_active_low;
Signature · 1 line
2.33.1
Mark Brown
maintainerQuoted 5 lines · Dmitry Osipenko
UCM of Acer Chromebook (Nyan) uses DAPM switches of headphones and mic jack. These switches were lost by accident during unification of the machine drivers, restore them.
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-linus
Thanks!
[1/2] ASoC: tegra: Add DAPM switches for headphones and mic jack
commit: d341b427c3c3fd6a58263ce01e01700d16861c28
[2/2] ASoC: tegra: Restore headphones jack name on Nyan Big
commit: db635ba4fadf3ba676d07537f3b3f58166aa7b0eAll being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying to this mail.
Thanks,
Mark