diff --git a/sound/soc/fsl/imx-wm8960.c b/sound/soc/fsl/imx-wm8960.c
index 6ae6c462c47eb2b7fc9abb0efd7098d6e555c19a..39f69085f802d6e1bc3d149be18231d0083f6cc5 100644
--- a/sound/soc/fsl/imx-wm8960.c
+++ b/sound/soc/fsl/imx-wm8960.c
@@ -44,10 +44,8 @@ struct imx_priv {
 	enum of_gpio_flags hp_active_low;
 	enum of_gpio_flags mic_active_low;
 	bool is_headset_jack;
-	struct snd_jack jack_data;
 	struct platform_device *pdev;
 	struct platform_device *asrc_pdev;
-	struct snd_card *snd_card;
 };
 
 static struct imx_priv card_priv;
@@ -92,7 +90,6 @@ static int hp_jack_status_check(void *data)
 			snd_soc_dapm_disable_pin(dapm, "Main MIC");
 		}
 		ret = imx_hp_jack_gpio.report;
-		snd_jack_report(jack->jack, 1);
 	} else {
 		snd_soc_dapm_enable_pin(dapm, "Ext Spk");
 		if (priv->is_headset_jack) {
@@ -100,7 +97,6 @@ static int hp_jack_status_check(void *data)
 			snd_soc_dapm_enable_pin(dapm, "Main MIC");
 		}
 		ret = 0;
-		snd_jack_report(jack->jack, 0);
 	}
 
 	return ret;
@@ -603,8 +599,6 @@ static int imx_wm8960_probe(struct platform_device *pdev)
 		goto fail;
 	}
 
-	priv->snd_card = data->card.snd_card;
-
 	imx_hp_jack_gpio.gpio = of_get_named_gpio_flags(pdev->dev.of_node,
 			"hp-det-gpios", 0, &priv->hp_active_low);
 
@@ -622,14 +616,6 @@ static int imx_wm8960_probe(struct platform_device *pdev)
 			imx_hp_jack_gpio.report |= SND_JACK_MICROPHONE;
 		}
 
-		priv->jack_data.card = data->card.snd_card;
-		INIT_LIST_HEAD(&priv->jack_data.kctl_list);
-
-		ret = snd_jack_add_new_kctl(&priv->jack_data,
-					"Headphone", imx_hp_jack_pin.mask);
-		if (ret)
-			dev_warn(&pdev->dev, "failed to create headphone jack kctl\n");
-
 		imx_hp_jack_gpio.jack_status_check = hp_jack_status_check;
 		imx_hp_jack_gpio.data = &imx_hp_jack;
 		ret = imx_wm8960_jack_init(&data->card, &imx_hp_jack,