From e882fea9cd2289032664fb2ec8bdb58024014878 Mon Sep 17 00:00:00 2001 From: Sudheer Papothi Date: Sat, 3 Mar 2018 07:47:38 +0530 Subject: [PATCH] ASoC: wcd9360: Fix re-definition errors due to dynamic detection Enablement of WCD934x and WCD9360 codecs for dynamic detection results in redefinition errors due to same enums and API definition in WCD934x and WCD9360 codec drivers. Resolve the same. Change-Id: Ifed50dc1df0562ba62b14187597cad2bed6c1115 Signed-off-by: Sudheer Papothi --- asoc/codecs/wcd9360/wcd9360-dsp-cntl.c | 4 ++-- asoc/codecs/wcd9360/wcd9360.c | 17 ++++++++++++++++- asoc/codecs/wcd9360/wcd9360.h | 18 +----------------- 3 files changed, 19 insertions(+), 20 deletions(-) diff --git a/asoc/codecs/wcd9360/wcd9360-dsp-cntl.c b/asoc/codecs/wcd9360/wcd9360-dsp-cntl.c index 5a67aa62cd20..4b46032ffc32 100644 --- a/asoc/codecs/wcd9360/wcd9360-dsp-cntl.c +++ b/asoc/codecs/wcd9360/wcd9360-dsp-cntl.c @@ -1078,7 +1078,7 @@ static int wcd_ctrl_component_bind(struct device *dev, return -EINVAL; } - cntl = pahu_get_wcd_dsp_cntl(dev); + cntl = (struct wcd_dsp_cntl *) pahu_get_wcd_dsp_cntl(dev); if (!cntl) { dev_err(dev, "%s: Failed to get cntl reference\n", __func__); @@ -1165,7 +1165,7 @@ static void wcd_ctrl_component_unbind(struct device *dev, return; } - cntl = pahu_get_wcd_dsp_cntl(dev); + cntl = (struct wcd_dsp_cntl *) pahu_get_wcd_dsp_cntl(dev); if (!cntl) { dev_err(dev, "%s: Failed to get cntl reference\n", __func__); diff --git a/asoc/codecs/wcd9360/wcd9360.c b/asoc/codecs/wcd9360/wcd9360.c index d195152d2a8d..5b8da208a61b 100644 --- a/asoc/codecs/wcd9360/wcd9360.c +++ b/asoc/codecs/wcd9360/wcd9360.c @@ -153,6 +153,21 @@ static const struct snd_kcontrol_new name##_mux = \ #define WCD9360_DIG_CORE_COLLAPSE_TIMER_MS (5 * 1000) +enum { + INTERP_EAR = 0, + /* Headset and Lineout are not avalible in pahu */ + INTERP_HPHL_NA, + INTERP_HPHR_NA, + INTERP_LO1_NA, + INTERP_LO2_NA, + INTERP_LO3_NA, + INTERP_LO4_NA, + INTERP_SPKR1, + INTERP_SPKR2, + INTERP_AUX, + INTERP_MAX, +}; + enum { POWER_COLLAPSE, POWER_RESUME, @@ -7904,7 +7919,7 @@ static int __pahu_enable_efuse_sensing(struct pahu_priv *pahu) * * This API gets the reference to codec's struct wcd_dsp_cntl */ -struct wcd_dsp_cntl *pahu_get_wcd_dsp_cntl(struct device *dev) +void *pahu_get_wcd_dsp_cntl(struct device *dev) { struct platform_device *pdev; struct pahu_priv *pahu; diff --git a/asoc/codecs/wcd9360/wcd9360.h b/asoc/codecs/wcd9360/wcd9360.h index 21f4e73fff73..2c70a6853499 100644 --- a/asoc/codecs/wcd9360/wcd9360.h +++ b/asoc/codecs/wcd9360/wcd9360.h @@ -14,7 +14,6 @@ #define __WCD9360_H__ #include -#include "wcd9360-dsp-cntl.h" #include "../wcd9xxx-slimslave.h" #include "../wcd9xxx-common-v2.h" @@ -75,21 +74,6 @@ enum { WCD9360_TX_MAX, }; -enum { - INTERP_EAR = 0, - /* Headset and Lineout are not avalible in pahu */ - INTERP_HPHL_NA, - INTERP_HPHR_NA, - INTERP_LO1_NA, - INTERP_LO2_NA, - INTERP_LO3_NA, - INTERP_LO4_NA, - INTERP_SPKR1, - INTERP_SPKR2, - INTERP_AUX, - INTERP_MAX, -}; - /* * Selects compander and smart boost settings * for a given speaker mode @@ -149,7 +133,7 @@ extern int pahu_cdc_mclk_enable(struct snd_soc_codec *codec, bool enable); extern int pahu_cdc_mclk_tx_enable(struct snd_soc_codec *codec, bool enable); extern int pahu_set_spkr_mode(struct snd_soc_codec *codec, int mode); extern int pahu_set_spkr_gain_offset(struct snd_soc_codec *codec, int offset); -extern struct wcd_dsp_cntl *pahu_get_wcd_dsp_cntl(struct device *dev); +extern void *pahu_get_wcd_dsp_cntl(struct device *dev); extern int wcd9360_get_micb_vout_ctl_val(u32 micb_mv); extern int pahu_codec_info_create_codec_entry( struct snd_info_entry *codec_root,