summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/sound/ux500_ab8500.h14
-rw-r--r--sound/soc/ux500/u8500.c9
2 files changed, 20 insertions, 3 deletions
diff --git a/include/sound/ux500_ab8500.h b/include/sound/ux500_ab8500.h
index ff114d82d9e..7858bfdb4fa 100644
--- a/include/sound/ux500_ab8500.h
+++ b/include/sound/ux500_ab8500.h
@@ -16,12 +16,20 @@
extern struct snd_soc_ops ux500_ab8500_ops[];
-int ux500_ab8500_machine_codec_init(struct snd_soc_pcm_runtime *runtime);
+struct snd_soc_pcm_runtime;
+
+int ux500_ab8500_startup(struct snd_pcm_substream *substream);
+
+void ux500_ab8500_shutdown(struct snd_pcm_substream *substream);
+
+int ux500_ab8500_hw_params(struct snd_pcm_substream *substream,
+ struct snd_pcm_hw_params *params);
+
+int ux500_ab8500_soc_machine_drv_init(void);
void ux500_ab8500_soc_machine_drv_cleanup(void);
-int enable_regulator(const char *name);
-void disable_regulator(const char *name);
+int ux500_ab8500_machine_codec_init(struct snd_soc_pcm_runtime *runtime);
extern void ux500_ab8500_jack_report(int);
diff --git a/sound/soc/ux500/u8500.c b/sound/soc/ux500/u8500.c
index 4172dcb1eb1..a0ced866def 100644
--- a/sound/soc/ux500/u8500.c
+++ b/sound/soc/ux500/u8500.c
@@ -166,6 +166,15 @@ static int __init u8500_soc_init(void)
platform_device_register(&cg29xx_codec);
#endif
+ #ifdef CONFIG_SND_SOC_UX500_AB8500
+ pr_debug("%s: Calling init-function for AB8500 machine driver.\n",
+ __func__);
+ ret = ux500_ab8500_soc_machine_drv_init();
+ if (ret)
+ pr_err("%s: ux500_ab8500_soc_machine_drv_init failed (%d).\n",
+ __func__, ret);
+ #endif
+
pr_debug("%s: Register device to generate a probe for Ux500-pcm platform.\n",
__func__);
platform_device_register(&ux500_pcm);