Przeglądaj źródła

audio-lnx: Enable compilation for sdm670 audio

Enable compilation for sdm670 audio. Update
for both internal and external codecs.

Change-Id: I030837a2c0180a5a31d0ab786ad5de607027050f
Signed-off-by: Laxminath Kasam <[email protected]>
Laxminath Kasam 7 lat temu
rodzic
commit
7e057cf8cd

+ 9 - 0
Makefile

@@ -3,6 +3,10 @@ ifeq ($(CONFIG_ARCH_SDM845), y)
 include $(srctree)/techpack/audio/config/sdm845auto.conf
 export
 endif
+ifeq ($(CONFIG_ARCH_SDM670), y)
+include $(srctree)/techpack/audio/config/sdm670auto.conf
+export
+endif
 
 # Use USERINCLUDE when you must reference the UAPI directories only.
 USERINCLUDE     += \
@@ -18,6 +22,11 @@ ifeq ($(CONFIG_ARCH_SDM845), y)
 LINUXINCLUDE    += \
                 -include $(srctree)/techpack/audio/config/sdm845autoconf.h
 endif
+ifeq ($(CONFIG_ARCH_SDM670), y)
+LINUXINCLUDE    += \
+                -include $(srctree)/techpack/audio/config/sdm670autoconf.h
+endif
+
 
 obj-y += asoc/
 obj-y += dsp/

+ 1 - 1
asoc/Makefile

@@ -21,7 +21,7 @@ obj-$(CONFIG_SND_SOC_MACHINE_MSM8998) += snd-soc-msm8998.o
 
 # for SDM660 sound card driver
 snd-soc-sdm660-common-objs := sdm660-common.o
-obj-$(CONFIG_SND_SOC_SDM660_COMMON) += snd-soc-sdm660-common.o
+obj-$(CONFIG_SND_SOC_SDM670) += snd-soc-sdm660-common.o
 
 # for SDM660 sound card driver
 snd-soc-int-codec-objs := sdm660-internal.o

+ 13 - 1
asoc/codecs/Makefile

@@ -1,12 +1,24 @@
 snd-soc-wcd9xxx-v2-objs := wcd9xxx-common-v2.o wcd9xxx-resmgr-v2.o wcdcal-hwdep.o wcd9xxx-soc-init.o
 snd-soc-wcd-cpe-objs := wcd_cpe_services.o wcd_cpe_core.o
 snd-soc-wsa881x-objs := wsa881x.o wsa881x-tables.o wsa881x-regmap.o wsa881x-temp-sensor.o
-snd-soc-wcd-mbhc-objs := wcd-mbhc-v2.o wcd-mbhc-adc.o
+snd-soc-wcd-mbhc-objs := wcd-mbhc-v2.o
+ifneq (,$(filter $(CONFIG_SND_SOC_WCD_MBHC_LEGACY),y m))
+	snd-soc-wcd-mbhc-objs += wcd-mbhc-legacy.o
+endif
+ifneq (,$(filter $(CONFIG_SND_SOC_WCD_MBHC_ADC),y m))
+	snd-soc-wcd-mbhc-objs += wcd-mbhc-adc.o
+endif
 snd-soc-wcd-dsp-utils-objs := wcd-dsp-utils.o
 snd-soc-wcd-dsp-mgr-objs := wcd-dsp-mgr.o
 snd-soc-wcd-spi-objs := wcd-spi.o
+snd-soc-wcd9335-objs := wcd9335.o
+snd-soc-wcd-cpe-objs := wcd_cpe_services.o wcd_cpe_core.o
 
+obj-$(CONFIG_SND_SOC_WCD9335) += snd-soc-wcd9335.o
+obj-$(CONFIG_SND_SOC_WCD_CPE)   += snd-soc-wcd-cpe.o
 obj-$(CONFIG_SND_SOC_WCD934X)	+= wcd934x/
+obj-$(CONFIG_SND_SOC_SDM660_CDC) += sdm660_cdc/
+obj-$(CONFIG_SND_SOC_MSM_SDW) += msm_sdw/
 ifeq ($(CONFIG_COMMON_CLK_MSM), y)
 	obj-$(CONFIG_AUDIO_EXT_CLK)	+= audio-ext-clk.o
 endif

+ 0 - 1
asoc/codecs/msm_sdw/Makefile

@@ -1,3 +1,2 @@
 snd-soc-msm-sdw-objs := msm_sdw_cdc.o msm_sdw_regmap.o msm-sdw-tables.o msm_sdw_cdc_utils.o
 obj-$(CONFIG_SND_SOC_MSM_SDW)	+= snd-soc-msm-sdw.o
-ccflags-y += -I$(srctree)/sound/soc/msm

+ 1 - 1
asoc/codecs/msm_sdw/msm_sdw.h

@@ -13,7 +13,7 @@
 #define MSM_SDW_H
 
 #include <sound/soc.h>
-#include <sound/q6afe-v2.h>
+#include <dsp/q6afe-v2.h>
 #include "msm_sdw_registers.h"
 
 #define MSM_SDW_MAX_REGISTER 0x400

+ 10 - 12
asoc/codecs/msm_sdw/msm_sdw_cdc.c

@@ -14,25 +14,25 @@
 #include <linux/io.h>
 #include <linux/init.h>
 #include <linux/platform_device.h>
-#include <linux/mfd/msm-cdc-pinctrl.h>
 #include <linux/printk.h>
 #include <linux/debugfs.h>
 #include <linux/bitops.h>
 #include <linux/regmap.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
-#include <linux/qdsp6v2/apr.h>
-#include <linux/soundwire/swr-wcd.h>
-#include <linux/qdsp6v2/audio_notifier.h>
-#include <sound/apr_audio-v2.h>
 #include <sound/pcm.h>
 #include <sound/pcm_params.h>
 #include <sound/soc.h>
 #include <sound/soc-dapm.h>
-#include <sound/q6core.h>
 #include <sound/tlv.h>
+#include <ipc/apr.h>
+#include <soc/swr-wcd.h>
+#include <dsp/audio_notifier.h>
+#include <dsp/apr_audio-v2.h>
+#include <dsp/q6core.h>
 #include "msm_sdw.h"
 #include "msm_sdw_registers.h"
+#include "../msm-cdc-pinctrl.h"
 
 #define MSM_SDW_RATES (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 |\
 			SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_48000)
@@ -937,9 +937,8 @@ static int msm_sdw_ear_spkr_pa_gain_put(struct snd_kcontrol *kcontrol,
 static int msm_sdw_vi_feed_mixer_get(struct snd_kcontrol *kcontrol,
 				   struct snd_ctl_elem_value *ucontrol)
 {
-	struct snd_soc_dapm_widget_list *wlist =
-					dapm_kcontrol_get_wlist(kcontrol);
-	struct snd_soc_dapm_widget *widget = wlist->widgets[0];
+	struct snd_soc_dapm_widget *widget =
+				snd_soc_dapm_kcontrol_widget(kcontrol);
 	struct snd_soc_codec *codec = snd_soc_dapm_to_codec(widget->dapm);
 	struct msm_sdw_priv *msm_sdw_p = snd_soc_codec_get_drvdata(codec);
 
@@ -951,9 +950,8 @@ static int msm_sdw_vi_feed_mixer_get(struct snd_kcontrol *kcontrol,
 static int msm_sdw_vi_feed_mixer_put(struct snd_kcontrol *kcontrol,
 				   struct snd_ctl_elem_value *ucontrol)
 {
-	struct snd_soc_dapm_widget_list *wlist =
-					dapm_kcontrol_get_wlist(kcontrol);
-	struct snd_soc_dapm_widget *widget = wlist->widgets[0];
+	struct snd_soc_dapm_widget *widget =
+				snd_soc_dapm_kcontrol_widget(kcontrol);
 	struct snd_soc_codec *codec = snd_soc_dapm_to_codec(widget->dapm);
 	struct msm_sdw_priv *msm_sdw_p = snd_soc_codec_get_drvdata(codec);
 	struct soc_multi_mixer_control *mixer =

+ 1 - 1
asoc/codecs/wcd_cpe_core.c

@@ -23,12 +23,12 @@
 #include <sound/soc.h>
 #include <sound/info.h>
 #include <sound/lsm_params.h>
-#include <sound/cpe_cmi.h>
 #include <soc/qcom/pm.h>
 #include <dsp/audio_cal_utils.h>
 #include "core.h"
 #include "cpe_core.h"
 #include "cpe_err.h"
+#include "cpe_cmi.h"
 #include "wcd_cpe_core.h"
 #include "wcd_cpe_services.h"
 #include "wcd_cmi_api.h"

+ 1 - 2
asoc/codecs/wcd_cpe_services.c

@@ -18,8 +18,7 @@
 #include <linux/kthread.h>
 #include <linux/delay.h>
 #include <sound/soc.h>
-#include <linux/mfd/wcd9xxx/wcd9330_registers.h>
-#include <linux/mfd/wcd9335/registers.h>
+#include "wcd9335_registers.h"
 #include "core.h"
 #include "cpe_cmi.h"
 #include "wcd_cpe_services.h"

+ 1 - 1
asoc/sdm660-ext-dai-links.c

@@ -16,7 +16,7 @@
 #include <sound/soc-dapm.h>
 #include <sound/pcm.h>
 #include <sound/pcm_params.h>
-#include "qdsp6v2/msm-pcm-routing-v2.h"
+#include "msm-pcm-routing-v2.h"
 #include "sdm660-common.h"
 #include "sdm660-external.h"
 #include "codecs/core.h"