diff options
Diffstat (limited to 'asoc/codecs')
-rw-r--r-- | asoc/codecs/Kbuild | 5 | ||||
-rw-r--r-- | asoc/codecs/wcd9335-regmap.c | 2 | ||||
-rw-r--r-- | asoc/codecs/wcd934x/Kbuild | 6 | ||||
-rw-r--r-- | asoc/codecs/wcd934x/wcd934x.c | 27 | ||||
-rw-r--r-- | asoc/codecs/wcd934x/wcd934x.h | 2 | ||||
-rw-r--r-- | asoc/codecs/wcd9xxx-core.c | 5 |
6 files changed, 31 insertions, 16 deletions
diff --git a/asoc/codecs/Kbuild b/asoc/codecs/Kbuild index 3d302bd7..efd91953 100644 --- a/asoc/codecs/Kbuild +++ b/asoc/codecs/Kbuild @@ -82,6 +82,11 @@ ifeq ($(KERNEL_BUILD), 0) export INCS += -include $(AUDIO_ROOT)/config/gvmautoconf.h endif + ifeq ($(CONFIG_ARCH_SDXLEMUR), y) + include $(AUDIO_ROOT)/config/sdxlemurauto.conf + export + INCS += -include $(AUDIO_ROOT)/config/sdxlemurautoconf.h + endif endif endif diff --git a/asoc/codecs/wcd9335-regmap.c b/asoc/codecs/wcd9335-regmap.c index 7b3363f0..14e0561d 100644 --- a/asoc/codecs/wcd9335-regmap.c +++ b/asoc/codecs/wcd9335-regmap.c @@ -7,7 +7,7 @@ #include <linux/device.h> #include <asoc/core.h> #include <asoc/wcd9xxx-regmap.h> -#include <asoc/wcd9335_registers.h> +#include "wcd9335_registers.h" static const struct reg_sequence wcd9335_1_x_defaults[] = { { WCD9335_CODEC_RPM_CLK_GATE, 0x03, 0x00 }, diff --git a/asoc/codecs/wcd934x/Kbuild b/asoc/codecs/wcd934x/Kbuild index 989e905d..4c796519 100644 --- a/asoc/codecs/wcd934x/Kbuild +++ b/asoc/codecs/wcd934x/Kbuild @@ -36,6 +36,11 @@ ifeq ($(KERNEL_BUILD), 0) export INCS += -include $(AUDIO_ROOT)/config/sm8150autoconf.h endif + ifeq ($(CONFIG_ARCH_SDXLEMUR), y) + include $(AUDIO_ROOT)/config/sdxlemurauto.conf + export + INCS += -include $(AUDIO_ROOT)/config/sdxlemurautoconf.h + endif endif # As per target team, build is done as follows: @@ -72,6 +77,7 @@ ifdef CONFIG_SND_SOC_WCD934X WCD934X_OBJS += wcd934x-dsd.o endif + LINUX_INC += -Iinclude/linux INCS += $(COMMON_INC) \ diff --git a/asoc/codecs/wcd934x/wcd934x.c b/asoc/codecs/wcd934x/wcd934x.c index 3d7d39bb..088784ab 100644 --- a/asoc/codecs/wcd934x/wcd934x.c +++ b/asoc/codecs/wcd934x/wcd934x.c @@ -41,10 +41,9 @@ #include <asoc/wcd9xxx-common-v2.h> #include <asoc/wcd9xxx-resmgr-v2.h> #include <asoc/wcdcal-hwdep.h> +#include <ipc/gpr-lite.h> #include "wcd934x-dsd.h" -#define DRV_NAME "tavil_codec" - #define WCD934X_RATES_MASK (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 |\ SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_48000 |\ SNDRV_PCM_RATE_96000 | SNDRV_PCM_RATE_192000 |\ @@ -8116,16 +8115,16 @@ static const struct snd_soc_dapm_widget tavil_dapm_widgets[] = { SND_SOC_DAPM_INPUT("AMIC4"), SND_SOC_DAPM_INPUT("AMIC5"), - SND_SOC_DAPM_MICBIAS_E("MIC BIAS1", SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY("MIC BIAS1", SND_SOC_NOPM, 0, 0, tavil_codec_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD), - SND_SOC_DAPM_MICBIAS_E("MIC BIAS2", SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY("MIC BIAS2", SND_SOC_NOPM, 0, 0, tavil_codec_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD), - SND_SOC_DAPM_MICBIAS_E("MIC BIAS3", SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY("MIC BIAS3", SND_SOC_NOPM, 0, 0, tavil_codec_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD), - SND_SOC_DAPM_MICBIAS_E("MIC BIAS4", SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY("MIC BIAS4", SND_SOC_NOPM, 0, 0, tavil_codec_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD), @@ -8137,16 +8136,16 @@ static const struct snd_soc_dapm_widget tavil_dapm_widgets[] = { 0, 0, tavil_codec_reset_hph_registers, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), - SND_SOC_DAPM_MICBIAS_E(DAPM_MICBIAS1_STANDALONE, SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY(DAPM_MICBIAS1_STANDALONE, SND_SOC_NOPM, 0, 0, tavil_codec_force_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), - SND_SOC_DAPM_MICBIAS_E(DAPM_MICBIAS2_STANDALONE, SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY(DAPM_MICBIAS2_STANDALONE, SND_SOC_NOPM, 0, 0, tavil_codec_force_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), - SND_SOC_DAPM_MICBIAS_E(DAPM_MICBIAS3_STANDALONE, SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY(DAPM_MICBIAS3_STANDALONE, SND_SOC_NOPM, 0, 0, tavil_codec_force_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), - SND_SOC_DAPM_MICBIAS_E(DAPM_MICBIAS4_STANDALONE, SND_SOC_NOPM, 0, 0, + SND_SOC_DAPM_SUPPLY(DAPM_MICBIAS4_STANDALONE, SND_SOC_NOPM, 0, 0, tavil_codec_force_enable_micbias, SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), @@ -9485,7 +9484,7 @@ int tavil_codec_info_create_codec_entry(struct snd_info_entry *codec_root, tavil = snd_soc_component_get_drvdata(component); card = component->card; - tavil->entry = snd_info_create_subdir(codec_root->module, + tavil->entry = snd_info_create_module_entry(codec_root->module, "tavil", codec_root); if (!tavil->entry) { dev_dbg(component->dev, "%s: failed to create wcd934x entry\n", @@ -10356,7 +10355,7 @@ static int tavil_post_reset_cb(struct wcd9xxx *wcd9xxx) component = (struct snd_soc_component *)(wcd9xxx->ssr_priv); if (!component->card) { - dev_err(codec->dev, "%s: sound card is not enumerated.\n", + dev_err(component->dev, "%s: sound card is not enumerated.\n", __func__); return -EINVAL; } @@ -10665,7 +10664,7 @@ static void tavil_soc_codec_remove(struct snd_soc_component *component) } static const struct snd_soc_component_driver soc_codec_dev_tavil = { - .name = DRV_NAME, + .name = WCD934X_DRV_NAME, .probe = tavil_soc_codec_probe, .remove = tavil_soc_codec_remove, .controls = tavil_snd_controls, @@ -11286,7 +11285,7 @@ static int tavil_probe(struct platform_device *pdev) } if (tavil->intf_type == WCD9XXX_INTERFACE_TYPE_I2C) { - if (apr_get_subsys_state() == APR_SUBSYS_DOWN) { + if (gpr_get_modem_state() == GPR_SUBSYS_DOWN) { dev_dbg(&pdev->dev, "%s: dsp down\n", __func__); devm_kfree(&pdev->dev, tavil); return -EPROBE_DEFER; diff --git a/asoc/codecs/wcd934x/wcd934x.h b/asoc/codecs/wcd934x/wcd934x.h index 7cc0ec17..f2924cd1 100644 --- a/asoc/codecs/wcd934x/wcd934x.h +++ b/asoc/codecs/wcd934x/wcd934x.h @@ -11,6 +11,8 @@ #include <asoc/wcd9xxx-common-v2.h> #include <asoc/wcd-mbhc-v2.h> +#define WCD934X_DRV_NAME "tavil_codec" + #define WCD934X_REGISTER_START_OFFSET 0x800 #define WCD934X_SB_PGD_PORT_RX_BASE 0x40 #define WCD934X_SB_PGD_PORT_TX_BASE 0x50 diff --git a/asoc/codecs/wcd9xxx-core.c b/asoc/codecs/wcd9xxx-core.c index 40d9c8e5..37099e5d 100644 --- a/asoc/codecs/wcd9xxx-core.c +++ b/asoc/codecs/wcd9xxx-core.c @@ -63,13 +63,16 @@ static struct regmap_config wcd9xxx_base_regmap_config = { .reg_bits = 16, .val_bits = 8, .can_multi_write = true, + .use_single_read = true, + .use_single_write = true, }; static struct regmap_config wcd9xxx_i2c_base_regmap_config = { .reg_bits = 16, .val_bits = 8, .can_multi_write = false, - .use_single_rw = true, + .use_single_read = true, + .use_single_write = true, }; static u8 wcd9xxx_pgd_la; |