|
@@ -121,7 +121,7 @@ static int sdp4430_twl6040_init(struct snd_soc_pcm_runtime *rtd)
|
|
|
{
|
|
|
struct snd_soc_codec *codec = rtd->codec;
|
|
|
struct snd_soc_dapm_context *dapm = &codec->dapm;
|
|
|
- int ret;
|
|
|
+ int ret, hs_trim;
|
|
|
|
|
|
/* Add SDP4430 specific widgets */
|
|
|
ret = snd_soc_dapm_new_controls(dapm, sdp4430_twl6040_dapm_widgets,
|
|
@@ -144,6 +144,14 @@ static int sdp4430_twl6040_init(struct snd_soc_pcm_runtime *rtd)
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|
|
|
+ /*
|
|
|
+ * Configure McPDM offset cancellation based on the HSOTRIM value from
|
|
|
+ * twl6040.
|
|
|
+ */
|
|
|
+ hs_trim = twl6040_get_trim_value(codec, TWL6040_TRIM_HSOTRIM);
|
|
|
+ omap_mcpdm_configure_dn_offsets(rtd, TWL6040_HSF_TRIM_LEFT(hs_trim),
|
|
|
+ TWL6040_HSF_TRIM_RIGHT(hs_trim));
|
|
|
+
|
|
|
/* Headset jack detection */
|
|
|
ret = snd_soc_jack_new(codec, "Headset Jack",
|
|
|
SND_JACK_HEADSET, &hs_jack);
|