pmaports/device/linux-samsung-i927/0013-ASoC-tegra_wm8994-cleanup.patch
Sergey Larin 6b1072a789 samsung-i927: Kernel updates (!217)
- Use separated patches
- Use new panel driver (with backlight support)
- Battery fixes
- Fix compass (AK8975) (not tested, only probing works, but sometimes
  doesn't - says "Unexpected device" - need to investigate that)
- Touchkey is working + LED
- Keyboard backlight + HALL for slideout detection
2019-02-12 23:28:56 +01:00

211 lines
5.4 KiB
Diff

From 392be1c5347b89a0c353e861a1222f925fe5b8a5 Mon Sep 17 00:00:00 2001
From: Sergey Larin <cerg2010cerg2010@mail.ru>
Date: Mon, 28 Jan 2019 11:35:06 +0300
Subject: [PATCH 13/34] ASoC: tegra_wm8994: cleanup
Remove unnecessary functions. Also, S/PDIF support
is not needed.
Signed-off-by: Sergey Larin <cerg2010cerg2010@mail.ru>
---
sound/soc/tegra/Kconfig | 3 -
sound/soc/tegra/tegra_wm8994.c | 155 ---------------------------------
2 files changed, 158 deletions(-)
diff --git a/sound/soc/tegra/Kconfig b/sound/soc/tegra/Kconfig
index a95c7feee491..99be3ef82d85 100644
--- a/sound/soc/tegra/Kconfig
+++ b/sound/soc/tegra/Kconfig
@@ -91,9 +91,6 @@ config SND_SOC_TEGRA_WM8994
depends on SND_SOC_TEGRA && I2C
select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC
- select SND_SOC_TEGRA20_SPDIF if ARCH_TEGRA_2x_SOC
- select SND_SOC_TEGRA30_SPDIF if ARCH_TEGRA_3x_SOC
- select SND_SOC_SPDIF
select SND_SOC_TEGRA30_DAM if ARCH_TEGRA_3x_SOC
help
Say Y or M here if you want to add support for SoC audio on Tegra
diff --git a/sound/soc/tegra/tegra_wm8994.c b/sound/soc/tegra/tegra_wm8994.c
index bf928d7f4813..87cb36df3bcf 100755
--- a/sound/soc/tegra/tegra_wm8994.c
+++ b/sound/soc/tegra/tegra_wm8994.c
@@ -138,117 +138,6 @@ static int tegra_wm8994_hw_params(struct snd_pcm_substream *substream,
return 0;
}
-static int tegra_bt_sco_hw_params(struct snd_pcm_substream *substream,
- struct snd_pcm_hw_params *params)
-{
- struct snd_soc_pcm_runtime *rtd = substream->private_data;
- struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
- struct snd_soc_card *card = rtd->card;
- struct tegra_wm8994 *machine = snd_soc_card_get_drvdata(card);
- int srate, mclk, min_mclk;
- int err;
-
- srate = params_rate(params);
- switch (srate) {
- case 11025:
- case 22050:
- case 44100:
- case 88200:
- mclk = 11289600;
- break;
- case 8000:
- case 16000:
- case 32000:
- case 48000:
- case 64000:
- case 96000:
- mclk = 12288000;
- break;
- default:
- return -EINVAL;
- }
- min_mclk = 64 * srate;
-
- err = tegra_asoc_utils_set_rate(&machine->util_data, srate, mclk);
- if (err < 0) {
- if (!(machine->util_data.set_mclk % min_mclk))
- mclk = machine->util_data.set_mclk;
- else {
- dev_err(card->dev, "Can't configure clocks\n");
- return err;
- }
- }
-
- err = snd_soc_dai_set_fmt(cpu_dai,
- SND_SOC_DAIFMT_DSP_A |
- SND_SOC_DAIFMT_NB_NF |
- SND_SOC_DAIFMT_CBS_CFS);
- if (err < 0) {
- dev_err(card->dev, "cpu_dai fmt not set\n");
- return err;
- }
-
-#ifdef CONFIG_ARCH_TEGRA_2x_SOC
- err = tegra20_das_connect_dac_to_dap(TEGRA20_DAS_DAP_SEL_DAC2,
- TEGRA20_DAS_DAP_ID_4);
- if (err < 0) {
- dev_err(card->dev, "failed to set dac-dap path\n");
- return err;
- }
-
- err = tegra20_das_connect_dap_to_dac(TEGRA20_DAS_DAP_ID_4,
- TEGRA20_DAS_DAP_SEL_DAC2);
- if (err < 0) {
- dev_err(card->dev, "failed to set dac-dap path\n");
- return err;
- }
-#endif
- return 0;
-}
-
-static int tegra_spdif_hw_params(struct snd_pcm_substream *substream,
- struct snd_pcm_hw_params *params)
-{
- struct snd_soc_pcm_runtime *rtd = substream->private_data;
- struct snd_soc_card *card = rtd->card;
- struct tegra_wm8994 *machine = snd_soc_card_get_drvdata(card);
- int srate, mclk, min_mclk;
- int err;
-
- srate = params_rate(params);
- switch (srate) {
- case 11025:
- case 22050:
- case 44100:
- case 88200:
- mclk = 11289600;
- break;
- case 8000:
- case 16000:
- case 32000:
- case 48000:
- case 64000:
- case 96000:
- mclk = 12288000;
- break;
- default:
- return -EINVAL;
- }
- min_mclk = 128 * srate;
-
- err = tegra_asoc_utils_set_rate(&machine->util_data, srate, mclk);
- if (err < 0) {
- if (!(machine->util_data.set_mclk % min_mclk))
- mclk = machine->util_data.set_mclk;
- else {
- dev_err(card->dev, "Can't configure clocks\n");
- return err;
- }
- }
-
- return 0;
-}
-
static int tegra_hw_free(struct snd_pcm_substream *substream)
{
return 0;
@@ -284,28 +173,6 @@ static struct snd_soc_dai_link tegra_wm8994_dai[] = {
// .codec_dai_name = "WM8994 PAIFRX",
.ops = &tegra_wm8994_ops,
},
-/*
- {
- .name = "SPDIF",
- .stream_name = "SPDIF PCM",
- .codec_name = "spdif-dit.0",
- .platform_name = "tegra-pcm-audio",
- .cpu_dai_name = "tegra20-spdif",
- .codec_dai_name = "dit-hifi",
- .ops = &tegra_spdif_ops,
- },
-*/
-/*
- {
- .name = "BT-SCO",
- .stream_name = "BT SCO PCM",
- .codec_name = "spdif-dit.1",
- .platform_name = "tegra-pcm-audio",
- .cpu_dai_name = "tegra20-i2s.1",
- .codec_dai_name = "dit-hifi",
- .ops = &tegra_wm8994_bt_sco_ops,
- },
-*/
};
static struct snd_soc_card snd_soc_tegra_wm8994 = {
@@ -369,28 +236,6 @@ static int tegra_wm8994_driver_probe(struct platform_device *pdev)
}
tegra_wm8994_dai[0].platform_of_node = tegra_wm8994_dai[0].cpu_of_node;
-/*
- tegra_wm8994_dai[1].codec_of_node = of_parse_phandle(np,
- "nvidia,spdif-codec", 0);
- if (!tegra_wm8994_dai[1].codec_of_node) {
- dev_err(&pdev->dev,
- "Property 'nvidia,spdif-codec' missing or invalid\n");
- ret = -EINVAL;
- goto err;
- }
-
- tegra_wm8994_dai[1].cpu_of_node = of_parse_phandle(np,
- "nvidia,spdif-controller", 0);
- if (!tegra_wm8994_dai[1].cpu_of_node) {
- dev_err(&pdev->dev,
- "Property 'nvidia,spdif-controller' missing or invalid\n");
- ret = -EINVAL;
- goto err;
- }
-
- tegra_wm8994_dai[1].platform_of_node = tegra_wm8994_dai[1].cpu_of_node;
-*/
-
ret = tegra_asoc_utils_init(&machine->util_data, &pdev->dev);
if (ret) {
dev_err(&pdev->dev, "tegra_asoc_utils_init failed (%d)\n",
--
2.20.1