All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/30] ASoC: Move jack registration to the card level
@ 2015-03-04  9:33 Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 01/30] ASoC: sn95031: Pass CODEC to sn95031_jack_detection() Lars-Peter Clausen
                   ` (30 more replies)
  0 siblings, 31 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

Audio jacks are typically card level elements and when initially introduced
the API to register a jack took a card as its parameter. Back at that time
there was only one CODEC per card and DAPM support was only available at the
CODEC level and all DAPM elements, including the card level elements, were
registered with the CODEC's DAPM context. So naturally for all its DAPM
operations the jack API used the CODEC's DAPM context. With the
multi-component patchset support for multiple CODECs per card was introduced
and since it was no longer clear which DAPM context to use for the jack
operations the jack API was updated to take a CODEC instead of a card to
make it unambiguous again. Shortly after DAPM support was decoupled from the
CODECs and became available at the card level as well.  Since then card
drivers have been updated to register their card level DAPM elements with
the card's DAPM context, but the jack API is still CODEC centric and uses
the CODEC's DAPM context. This leaves us with some issues.

The DAPM pins that are managed by the jack detection logic are part of the
card DAPM context but are accessed through a CODEC DAPM context. Currently
this works fine and is more of an inelegance, but might break in the future
if we take a more hierarchical approach to DAPM contexts.

Furthermore with componentization progressing systems that do not register a
snd_soc_codec might appear, while these system may still want to able to
register a jack.

This patchset introduces a new function called snd_soc_card_jack_register()
which allows to register the jacks at the card level again and updates all
the existing card drivers to use the new API.

- Lars

Lars-Peter Clausen (30):
  ASoC: sn95031: Pass CODEC to sn95031_jack_detection()
  ASoC: Allow to register jacks at the card level
  ASoC: simple-card: Register jacks at the card level
  ASoC: imx-es8328: Register jacks at the card level
  ASoC: wm1133-ev: Register jacks at the card level
  ASoC: broadwell: Register jacks at the card level
  ASoC: byt-max98090: Register jacks at the card level
  ASoC: cht_bsw_rt5645: Register jacks at the card level
  ASoC: mfld_machine: Register jacks at the card level
  ASoC: ams-deltea: Register jacks at the card level
  ASoC: omap-abe-twl6040: Register jacks at the card level
  ASoC: omap-twl4030: Register jacks at the card level
  ASoC: rx51: Register jacks at the card level
  ASoC: hx4700: Register jacks at the card level
  ASoC: palm27x: Register jacks at the card level
  ASoC: ttc-dkb: Register jacks at the card level
  ASoC: z2: Register jacks at the card level
  ASoC: h1980_uda1380: Register jacks at the card level
  ASoC: littlemill: Register jacks at the card level
  ASoC: lowland: Register jacks at the card level
  ASoC: rx1950_uda1380: Register jacks at the card level
  ASoC: smartq: Register jacks at the card level
  ASoC: speyside: Register jacks at the card level
  ASoC: tobermory: Register jacks at the card level
  ASoC: tegra_alc5632: Register jacks at the card level
  ASoC: tegra_max98090: Register jacks at the card level
  ASoC: tegra_rt5640: Register jacks at the card level
  ASoC: tegra_rt5677: Register jacks at the card level
  ASoC: tegra_wm8903: Register jacks at the card level
  ASoC: Remove snd_soc_jack_new()

 include/sound/soc.h                |  8 +++++---
 sound/soc/codecs/sn95031.c         | 14 +++++++------
 sound/soc/codecs/sn95031.h         |  3 ++-
 sound/soc/fsl/imx-es8328.c         |  6 +++---
 sound/soc/fsl/wm1133-ev1.c         | 12 +++++------
 sound/soc/generic/simple-card.c    | 20 +++++++++---------
 sound/soc/intel/broadwell.c        | 12 +++--------
 sound/soc/intel/byt-max98090.c     | 11 +++-------
 sound/soc/intel/cht_bsw_rt5645.c   | 12 +++++------
 sound/soc/intel/mfld_machine.c     | 24 +++++++++-------------
 sound/soc/omap/ams-delta.c         |  4 ++--
 sound/soc/omap/omap-abe-twl6040.c  | 10 ++++-----
 sound/soc/omap/omap-twl4030.c      | 12 ++++-------
 sound/soc/omap/rx51.c              |  6 +++---
 sound/soc/pxa/hx4700.c             | 11 +++-------
 sound/soc/pxa/palm27x.c            | 11 +++-------
 sound/soc/pxa/ttc-dkb.c            | 15 ++++++--------
 sound/soc/pxa/z2.c                 | 10 +++------
 sound/soc/samsung/h1940_uda1380.c  |  9 ++------
 sound/soc/samsung/littlemill.c     | 12 +++++------
 sound/soc/samsung/lowland.c        | 14 ++++---------
 sound/soc/samsung/rx1950_uda1380.c |  9 ++------
 sound/soc/samsung/smartq_wm8987.c  | 11 ++++------
 sound/soc/samsung/speyside.c       | 14 ++++---------
 sound/soc/samsung/tobermory.c      | 13 ++++--------
 sound/soc/soc-jack.c               | 42 +++++++++++++++++++++++---------------
 sound/soc/tegra/tegra_alc5632.c    |  9 ++++----
 sound/soc/tegra/tegra_max98090.c   | 22 +++++++++-----------
 sound/soc/tegra/tegra_rt5640.c     | 10 +++------
 sound/soc/tegra/tegra_rt5677.c     | 14 ++++++-------
 sound/soc/tegra/tegra_wm8903.c     | 18 ++++++++--------
 31 files changed, 167 insertions(+), 231 deletions(-)

-- 
1.8.0

^ permalink raw reply	[flat|nested] 39+ messages in thread

* [PATCH 01/30] ASoC: sn95031: Pass CODEC to sn95031_jack_detection()
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 02/30] ASoC: Allow to register jacks at the card level Lars-Peter Clausen
                   ` (29 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The sn95031 driver currently gets the CODEC implicitly from the jack that is
passed to sn95031_jack_detection(). But the codec field is going to be
removed from the snd_soc_jack struct, so refactor things to pass the CODEC
explicitly.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/codecs/sn95031.c     | 14 ++++++++------
 sound/soc/codecs/sn95031.h     |  3 ++-
 sound/soc/intel/mfld_machine.c | 13 +++++++------
 3 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/sound/soc/codecs/sn95031.c b/sound/soc/codecs/sn95031.c
index 47b257e..1e5d264 100644
--- a/sound/soc/codecs/sn95031.c
+++ b/sound/soc/codecs/sn95031.c
@@ -783,19 +783,21 @@ static inline void sn95031_enable_jack_btn(struct snd_soc_codec *codec)
 	snd_soc_write(codec, SN95031_BTNCTRL2, 0x01);
 }
 
-static int sn95031_get_headset_state(struct snd_soc_jack *mfld_jack)
+static int sn95031_get_headset_state(struct snd_soc_codec *codec,
+	struct snd_soc_jack *mfld_jack)
 {
-	int micbias = sn95031_get_mic_bias(mfld_jack->codec);
+	int micbias = sn95031_get_mic_bias(codec);
 
 	int jack_type = snd_soc_jack_get_type(mfld_jack, micbias);
 
 	pr_debug("jack type detected = %d\n", jack_type);
 	if (jack_type == SND_JACK_HEADSET)
-		sn95031_enable_jack_btn(mfld_jack->codec);
+		sn95031_enable_jack_btn(codec);
 	return jack_type;
 }
 
-void sn95031_jack_detection(struct mfld_jack_data *jack_data)
+void sn95031_jack_detection(struct snd_soc_codec *codec,
+	struct mfld_jack_data *jack_data)
 {
 	unsigned int status;
 	unsigned int mask = SND_JACK_BTN_0 | SND_JACK_BTN_1 | SND_JACK_HEADSET;
@@ -809,11 +811,11 @@ void sn95031_jack_detection(struct mfld_jack_data *jack_data)
 		status = SND_JACK_HEADSET | SND_JACK_BTN_1;
 	} else if (jack_data->intr_id & 0x4) {
 		pr_debug("headset or headphones inserted\n");
-		status = sn95031_get_headset_state(jack_data->mfld_jack);
+		status = sn95031_get_headset_state(codec, jack_data->mfld_jack);
 	} else if (jack_data->intr_id & 0x8) {
 		pr_debug("headset or headphones removed\n");
 		status = 0;
-		sn95031_disable_jack_btn(jack_data->mfld_jack->codec);
+		sn95031_disable_jack_btn(codec);
 	} else {
 		pr_err("unidentified interrupt\n");
 		return;
diff --git a/sound/soc/codecs/sn95031.h b/sound/soc/codecs/sn95031.h
index 20376d2..7651fe4 100644
--- a/sound/soc/codecs/sn95031.h
+++ b/sound/soc/codecs/sn95031.h
@@ -127,6 +127,7 @@ struct mfld_jack_data {
 	struct snd_soc_jack *mfld_jack;
 };
 
-extern void sn95031_jack_detection(struct mfld_jack_data *jack_data);
+extern void sn95031_jack_detection(struct snd_soc_codec *codec,
+	struct mfld_jack_data *jack_data);
 
 #endif
diff --git a/sound/soc/intel/mfld_machine.c b/sound/soc/intel/mfld_machine.c
index 90b7a57..d22b44d 100644
--- a/sound/soc/intel/mfld_machine.c
+++ b/sound/soc/intel/mfld_machine.c
@@ -228,10 +228,13 @@ static void mfld_jack_check(unsigned int intr_status)
 {
 	struct mfld_jack_data jack_data;
 
+	if (!mfld_codec)
+		return;
+
 	jack_data.mfld_jack = &mfld_jack;
 	jack_data.intr_id = intr_status;
 
-	sn95031_jack_detection(&jack_data);
+	sn95031_jack_detection(mfld_codec, &jack_data);
 	/* TODO: add american headset detection post gpiolib support */
 }
 
@@ -240,8 +243,6 @@ static int mfld_init(struct snd_soc_pcm_runtime *runtime)
 	struct snd_soc_dapm_context *dapm = &runtime->card->dapm;
 	int ret_val;
 
-	mfld_codec = runtime->codec;
-
 	/* default is earpiece pin, userspace sets it explcitly */
 	snd_soc_dapm_disable_pin(dapm, "Headphones");
 	/* default is lineout NC, userspace sets it explcitly */
@@ -254,7 +255,7 @@ static int mfld_init(struct snd_soc_pcm_runtime *runtime)
 	snd_soc_dapm_disable_pin(dapm, "LINEINR");
 
 	/* Headset and button jack detection */
-	ret_val = snd_soc_jack_new(mfld_codec, "Intel(R) MID Audio Jack",
+	ret_val = snd_soc_jack_new(runtime->codec, "Intel(R) MID Audio Jack",
 			SND_JACK_HEADSET | SND_JACK_BTN_0 |
 			SND_JACK_BTN_1, &mfld_jack);
 	if (ret_val) {
@@ -275,6 +276,8 @@ static int mfld_init(struct snd_soc_pcm_runtime *runtime)
 		return ret_val;
 	}
 
+	mfld_codec = runtime->codec;
+
 	/* we want to check if anything is inserted at boot,
 	 * so send a fake event to codec and it will read adc
 	 * to find if anything is there or not */
@@ -359,8 +362,6 @@ static irqreturn_t snd_mfld_jack_detection(int irq, void *data)
 {
 	struct mfld_mc_private *mc_drv_ctx = (struct mfld_mc_private *) data;
 
-	if (mfld_jack.codec == NULL)
-		return IRQ_HANDLED;
 	mfld_jack_check(mc_drv_ctx->interrupt_status);
 
 	return IRQ_HANDLED;
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 02/30] ASoC: Allow to register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 01/30] ASoC: sn95031: Pass CODEC to sn95031_jack_detection() Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 03/30] ASoC: simple-card: Register " Lars-Peter Clausen
                   ` (28 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

Jacks are typically card level elements, but are currently registered with a
CODEC. When it was originally introduced snd_soc_jack_new() took a
snd_soc_card as its parameter, but at that time DAPM was only implemented at
the CODEC level and there was only one CODEC per card. This made it clear
which CODEC to use for the jack DAPM operations. But the multi-component
patchset added support for having multiple CODECs per card and with it the
API was updated to register jacks with a specific CODEC instance instead.
Subsequently DAPM support at the card level has been introduced, but the
snd_soc_jack_new() API has so remained unchanged.

This leaves us with the issue that the DAPM pins that are managed by the
jack detection logic usually are part of the card DAPM context but are
accessed through a CODEC DAPM context. Currently this works fine, but might
break in the future if we take a more hierarchical approach to DAPM
contexts.

Furthermore with componentization progressing systems that do not register
a snd_soc_codec might appear, while these system may still want to able to
register a jack.

This patch addresses these issues by adding a new function called
snd_soc_card_jack_new() that can be used to register jacks with the card
rather than a CODEC.

This new function is mostly identical to snd_soc_jack_new() except that it
additionally allows to directly specify the DAPM pins associated with the
jack. This was done since most users of snd_soc_jack_new() typically call
snd_soc_jack_add_pins() right after it, which is not necessary with the new
API and allows to reduce the amount of boiler plate code.

The old snd_soc_jack_new() is re-implemented as a wrapper around
snd_soc_card_jack_new().

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 include/sound/soc.h  | 28 +++++++++++++++++++++++++---
 sound/soc/soc-jack.c | 42 ++++++++++++++++++++++++++----------------
 2 files changed, 51 insertions(+), 19 deletions(-)

diff --git a/include/sound/soc.h b/include/sound/soc.h
index a8ccc1de..e750e4b 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -450,8 +450,10 @@ int soc_dai_hw_params(struct snd_pcm_substream *substream,
 		      struct snd_soc_dai *dai);
 
 /* Jack reporting */
-int snd_soc_jack_new(struct snd_soc_codec *codec, const char *id, int type,
-		     struct snd_soc_jack *jack);
+int snd_soc_card_jack_new(struct snd_soc_card *card, const char *id, int type,
+	struct snd_soc_jack *jack, struct snd_soc_jack_pin *pins,
+	unsigned int num_pins);
+
 void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask);
 int snd_soc_jack_add_pins(struct snd_soc_jack *jack, int count,
 			  struct snd_soc_jack_pin *pins);
@@ -659,7 +661,7 @@ struct snd_soc_jack_gpio {
 struct snd_soc_jack {
 	struct mutex mutex;
 	struct snd_jack *jack;
-	struct snd_soc_codec *codec;
+	struct snd_soc_card *card;
 	struct list_head pins;
 	int status;
 	struct blocking_notifier_head notifier;
@@ -1490,6 +1492,26 @@ static inline struct snd_soc_platform *snd_soc_kcontrol_platform(
 	return snd_soc_component_to_platform(snd_soc_kcontrol_component(kcontrol));
 }
 
+/**
+ * snd_soc_jack_new - Create a new jack
+ * @codec: ASoC CODEC
+ * @id:    an identifying string for this jack
+ * @type:  a bitmask of enum snd_jack_type values that can be detected by
+ *         this jack
+ * @jack:  structure to use for the jack
+ *
+ * Creates a new jack object.
+ *
+ * Returns zero if successful, or a negative error code on failure.
+ * On success jack will be initialised.
+ */
+static inline int snd_soc_jack_new(struct snd_soc_codec *codec, const char *id,
+	int type, struct snd_soc_jack *jack)
+{
+	return snd_soc_card_jack_new(codec->component.card, id, type, jack,
+		NULL, 0);
+}
+
 int snd_soc_util_init(void);
 void snd_soc_util_exit(void);
 
diff --git a/sound/soc/soc-jack.c b/sound/soc/soc-jack.c
index 4380dcc..9f60c25 100644
--- a/sound/soc/soc-jack.c
+++ b/sound/soc/soc-jack.c
@@ -22,30 +22,42 @@
 #include <trace/events/asoc.h>
 
 /**
- * snd_soc_jack_new - Create a new jack
- * @codec: ASoC codec
+ * snd_soc_card_jack_new - Create a new jack
+ * @card:  ASoC card
  * @id:    an identifying string for this jack
  * @type:  a bitmask of enum snd_jack_type values that can be detected by
  *         this jack
  * @jack:  structure to use for the jack
+ * @pins:  Array of jack pins to be added to the jack or NULL
+ * @num_pins: Number of elements in the @pins array
  *
  * Creates a new jack object.
  *
  * Returns zero if successful, or a negative error code on failure.
  * On success jack will be initialised.
  */
-int snd_soc_jack_new(struct snd_soc_codec *codec, const char *id, int type,
-		     struct snd_soc_jack *jack)
+int snd_soc_card_jack_new(struct snd_soc_card *card, const char *id, int type,
+	struct snd_soc_jack *jack, struct snd_soc_jack_pin *pins,
+	unsigned int num_pins)
 {
+	int ret;
+
 	mutex_init(&jack->mutex);
-	jack->codec = codec;
+	jack->card = card;
 	INIT_LIST_HEAD(&jack->pins);
 	INIT_LIST_HEAD(&jack->jack_zones);
 	BLOCKING_INIT_NOTIFIER_HEAD(&jack->notifier);
 
-	return snd_jack_new(codec->component.card->snd_card, id, type, &jack->jack);
+	ret = snd_jack_new(card->snd_card, id, type, &jack->jack);
+	if (ret)
+		return ret;
+
+	if (num_pins)
+		return snd_soc_jack_add_pins(jack, num_pins, pins);
+
+	return 0;
 }
-EXPORT_SYMBOL_GPL(snd_soc_jack_new);
+EXPORT_SYMBOL_GPL(snd_soc_card_jack_new);
 
 /**
  * snd_soc_jack_report - Report the current status for a jack
@@ -63,7 +75,6 @@ EXPORT_SYMBOL_GPL(snd_soc_jack_new);
  */
 void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
 {
-	struct snd_soc_codec *codec;
 	struct snd_soc_dapm_context *dapm;
 	struct snd_soc_jack_pin *pin;
 	unsigned int sync = 0;
@@ -74,8 +85,7 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
 	if (!jack)
 		return;
 
-	codec = jack->codec;
-	dapm =  &codec->dapm;
+	dapm = &jack->card->dapm;
 
 	mutex_lock(&jack->mutex);
 
@@ -175,12 +185,12 @@ int snd_soc_jack_add_pins(struct snd_soc_jack *jack, int count,
 
 	for (i = 0; i < count; i++) {
 		if (!pins[i].pin) {
-			dev_err(jack->codec->dev, "ASoC: No name for pin %d\n",
+			dev_err(jack->card->dev, "ASoC: No name for pin %d\n",
 				i);
 			return -EINVAL;
 		}
 		if (!pins[i].mask) {
-			dev_err(jack->codec->dev, "ASoC: No mask for pin %d"
+			dev_err(jack->card->dev, "ASoC: No mask for pin %d"
 				" (%s)\n", i, pins[i].pin);
 			return -EINVAL;
 		}
@@ -260,7 +270,7 @@ static void snd_soc_jack_gpio_detect(struct snd_soc_jack_gpio *gpio)
 static irqreturn_t gpio_handler(int irq, void *data)
 {
 	struct snd_soc_jack_gpio *gpio = data;
-	struct device *dev = gpio->jack->codec->component.card->dev;
+	struct device *dev = gpio->jack->card->dev;
 
 	trace_snd_soc_jack_irq(gpio->name);
 
@@ -299,7 +309,7 @@ int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count,
 
 	for (i = 0; i < count; i++) {
 		if (!gpios[i].name) {
-			dev_err(jack->codec->dev,
+			dev_err(jack->card->dev,
 				"ASoC: No name for gpio at index %d\n", i);
 			ret = -EINVAL;
 			goto undo;
@@ -320,7 +330,7 @@ int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count,
 		} else {
 			/* legacy GPIO number */
 			if (!gpio_is_valid(gpios[i].gpio)) {
-				dev_err(jack->codec->dev,
+				dev_err(jack->card->dev,
 					"ASoC: Invalid gpio %d\n",
 					gpios[i].gpio);
 				ret = -EINVAL;
@@ -350,7 +360,7 @@ int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count,
 		if (gpios[i].wake) {
 			ret = irq_set_irq_wake(gpiod_to_irq(gpios[i].desc), 1);
 			if (ret != 0)
-				dev_err(jack->codec->dev,
+				dev_err(jack->card->dev,
 					"ASoC: Failed to mark GPIO at index %d as wake source: %d\n",
 					i, ret);
 		}
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 03/30] ASoC: simple-card: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 01/30] ASoC: sn95031: Pass CODEC to sn95031_jack_detection() Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 02/30] ASoC: Allow to register jacks at the card level Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 04/30] ASoC: imx-es8328: " Lars-Peter Clausen
                   ` (27 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/generic/simple-card.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c
index fb550b5..c49a408 100644
--- a/sound/soc/generic/simple-card.c
+++ b/sound/soc/generic/simple-card.c
@@ -176,11 +176,11 @@ static int asoc_simple_card_dai_init(struct snd_soc_pcm_runtime *rtd)
 		return ret;
 
 	if (gpio_is_valid(priv->gpio_hp_det)) {
-		snd_soc_jack_new(codec->codec, "Headphones", SND_JACK_HEADPHONE,
-				 &simple_card_hp_jack);
-		snd_soc_jack_add_pins(&simple_card_hp_jack,
-				      ARRAY_SIZE(simple_card_hp_jack_pins),
-				      simple_card_hp_jack_pins);
+		snd_soc_card_jack_new(rtd->card, "Headphones",
+				      SND_JACK_HEADPHONE,
+				      &simple_card_hp_jack,
+				      simple_card_hp_jack_pins,
+				      ARRAY_SIZE(simple_card_hp_jack_pins));
 
 		simple_card_hp_jack_gpio.gpio = priv->gpio_hp_det;
 		simple_card_hp_jack_gpio.invert = priv->gpio_hp_det_invert;
@@ -189,11 +189,11 @@ static int asoc_simple_card_dai_init(struct snd_soc_pcm_runtime *rtd)
 	}
 
 	if (gpio_is_valid(priv->gpio_mic_det)) {
-		snd_soc_jack_new(codec->codec, "Mic Jack", SND_JACK_MICROPHONE,
-				 &simple_card_mic_jack);
-		snd_soc_jack_add_pins(&simple_card_mic_jack,
-				      ARRAY_SIZE(simple_card_mic_jack_pins),
-				      simple_card_mic_jack_pins);
+		snd_soc_card_jack_new(rtd->card, "Mic Jack",
+				      SND_JACK_MICROPHONE,
+				      &simple_card_mic_jack,
+				      simple_card_mic_jack_pins,
+				      ARRAY_SIZE(simple_card_mic_jack_pins));
 		simple_card_mic_jack_gpio.gpio = priv->gpio_mic_det;
 		simple_card_mic_jack_gpio.invert = priv->gpio_mic_det_invert;
 		snd_soc_jack_add_gpios(&simple_card_mic_jack, 1,
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 04/30] ASoC: imx-es8328: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (2 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 03/30] ASoC: simple-card: Register " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 05/30] ASoC: wm1133-ev: " Lars-Peter Clausen
                   ` (26 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/fsl/imx-es8328.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sound/soc/fsl/imx-es8328.c b/sound/soc/fsl/imx-es8328.c
index f8cf10e..20e7400 100644
--- a/sound/soc/fsl/imx-es8328.c
+++ b/sound/soc/fsl/imx-es8328.c
@@ -53,9 +53,9 @@ static int imx_es8328_dai_init(struct snd_soc_pcm_runtime *rtd)
 
 	/* Headphone jack detection */
 	if (gpio_is_valid(data->jack_gpio)) {
-		ret = snd_soc_jack_new(rtd->codec, "Headphone",
-				       SND_JACK_HEADPHONE | SND_JACK_BTN_0,
-				       &headset_jack);
+		ret = snd_soc_card_jack_new(rtd->card, "Headphone",
+					    SND_JACK_HEADPHONE | SND_JACK_BTN_0,
+					    &headset_jack, NULL, 0);
 		if (ret)
 			return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 05/30] ASoC: wm1133-ev: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (3 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 04/30] ASoC: imx-es8328: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 06/30] ASoC: broadwell: " Lars-Peter Clausen
                   ` (25 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/fsl/wm1133-ev1.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/sound/soc/fsl/wm1133-ev1.c b/sound/soc/fsl/wm1133-ev1.c
index a958937..0653aa8 100644
--- a/sound/soc/fsl/wm1133-ev1.c
+++ b/sound/soc/fsl/wm1133-ev1.c
@@ -205,16 +205,14 @@ static int wm1133_ev1_init(struct snd_soc_pcm_runtime *rtd)
 	struct snd_soc_dapm_context *dapm = &codec->dapm;
 
 	/* Headphone jack detection */
-	snd_soc_jack_new(codec, "Headphone", SND_JACK_HEADPHONE, &hp_jack);
-	snd_soc_jack_add_pins(&hp_jack, ARRAY_SIZE(hp_jack_pins),
-			      hp_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Headphone", SND_JACK_HEADPHONE,
+			      &hp_jack, hp_jack_pins, ARRAY_SIZE(hp_jack_pins));
 	wm8350_hp_jack_detect(codec, WM8350_JDR, &hp_jack, SND_JACK_HEADPHONE);
 
 	/* Microphone jack detection */
-	snd_soc_jack_new(codec, "Microphone",
-			 SND_JACK_MICROPHONE | SND_JACK_BTN_0, &mic_jack);
-	snd_soc_jack_add_pins(&mic_jack, ARRAY_SIZE(mic_jack_pins),
-			      mic_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Microphone",
+			      SND_JACK_MICROPHONE | SND_JACK_BTN_0, &mic_jack,
+			      mic_jack_pins, ARRAY_SIZE(mic_jack_pins));
 	wm8350_mic_jack_detect(codec, &mic_jack, SND_JACK_MICROPHONE,
 			       SND_JACK_BTN_0);
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 06/30] ASoC: broadwell: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (4 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 05/30] ASoC: wm1133-ev: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 07/30] ASoC: byt-max98090: " Lars-Peter Clausen
                   ` (24 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/intel/broadwell.c | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/sound/soc/intel/broadwell.c b/sound/soc/intel/broadwell.c
index fba2ef5..fc55420 100644
--- a/sound/soc/intel/broadwell.c
+++ b/sound/soc/intel/broadwell.c
@@ -80,15 +80,9 @@ static int broadwell_rt286_codec_init(struct snd_soc_pcm_runtime *rtd)
 {
 	struct snd_soc_codec *codec = rtd->codec;
 	int ret = 0;
-	ret = snd_soc_jack_new(codec, "Headset",
-		SND_JACK_HEADSET | SND_JACK_BTN_0, &broadwell_headset);
-
-	if (ret)
-		return ret;
-
-	ret = snd_soc_jack_add_pins(&broadwell_headset,
-		ARRAY_SIZE(broadwell_headset_pins),
-		broadwell_headset_pins);
+	ret = snd_soc_card_jack_new(rtd->card, "Headset",
+		SND_JACK_HEADSET | SND_JACK_BTN_0, &broadwell_headset,
+		broadwell_headset_pins, ARRAY_SIZE(broadwell_headset_pins));
 	if (ret)
 		return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 07/30] ASoC: byt-max98090: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (5 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 06/30] ASoC: broadwell: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 08/30] ASoC: cht_bsw_rt5645: " Lars-Peter Clausen
                   ` (23 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/intel/byt-max98090.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/sound/soc/intel/byt-max98090.c b/sound/soc/intel/byt-max98090.c
index 9832afe..d8b1f03 100644
--- a/sound/soc/intel/byt-max98090.c
+++ b/sound/soc/intel/byt-max98090.c
@@ -84,7 +84,6 @@ static struct snd_soc_jack_gpio hs_jack_gpios[] = {
 static int byt_max98090_init(struct snd_soc_pcm_runtime *runtime)
 {
 	int ret;
-	struct snd_soc_codec *codec = runtime->codec;
 	struct snd_soc_card *card = runtime->card;
 	struct byt_max98090_private *drv = snd_soc_card_get_drvdata(card);
 	struct snd_soc_jack *jack = &drv->jack;
@@ -100,13 +99,9 @@ static int byt_max98090_init(struct snd_soc_pcm_runtime *runtime)
 	}
 
 	/* Enable jack detection */
-	ret = snd_soc_jack_new(codec, "Headset",
-			       SND_JACK_LINEOUT | SND_JACK_HEADSET, jack);
-	if (ret)
-		return ret;
-
-	ret = snd_soc_jack_add_pins(jack, ARRAY_SIZE(hs_jack_pins),
-				    hs_jack_pins);
+	ret = snd_soc_card_jack_new(runtime->card, "Headset",
+				    SND_JACK_LINEOUT | SND_JACK_HEADSET, jack,
+				    hs_jack_pins, ARRAY_SIZE(hs_jack_pins));
 	if (ret)
 		return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 08/30] ASoC: cht_bsw_rt5645: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (6 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 07/30] ASoC: byt-max98090: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 09/30] ASoC: mfld_machine: " Lars-Peter Clausen
                   ` (22 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/intel/cht_bsw_rt5645.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/sound/soc/intel/cht_bsw_rt5645.c b/sound/soc/intel/cht_bsw_rt5645.c
index dd93525..01222799 100644
--- a/sound/soc/intel/cht_bsw_rt5645.c
+++ b/sound/soc/intel/cht_bsw_rt5645.c
@@ -169,17 +169,17 @@ static int cht_codec_init(struct snd_soc_pcm_runtime *runtime)
 		return ret;
 	}
 
-	ret = snd_soc_jack_new(codec, "Headphone Jack",
-				SND_JACK_HEADPHONE,
-				&ctx->hp_jack);
+	ret = snd_soc_card_jack_new(runtime->card, "Headphone Jack",
+				    SND_JACK_HEADPHONE, &ctx->hp_jack,
+				    NULL, 0);
 	if (ret) {
 		dev_err(runtime->dev, "HP jack creation failed %d\n", ret);
 		return ret;
 	}
 
-	ret = snd_soc_jack_new(codec, "Mic Jack",
-				SND_JACK_MICROPHONE,
-				&ctx->mic_jack);
+	ret = snd_soc_card_jack_new(runtime->card, "Mic Jack",
+				    SND_JACK_MICROPHONE, &ctx->mic_jack,
+				    NULL, 0);
 	if (ret) {
 		dev_err(runtime->dev, "Mic jack creation failed %d\n", ret);
 		return ret;
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 09/30] ASoC: mfld_machine: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (7 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 08/30] ASoC: cht_bsw_rt5645: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04 11:58   ` Vinod Koul
  2015-03-04  9:33 ` [PATCH 10/30] ASoC: ams-deltea: " Lars-Peter Clausen
                   ` (21 subsequent siblings)
  30 siblings, 1 reply; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/intel/mfld_machine.c | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/sound/soc/intel/mfld_machine.c b/sound/soc/intel/mfld_machine.c
index d22b44d..49c09a0 100644
--- a/sound/soc/intel/mfld_machine.c
+++ b/sound/soc/intel/mfld_machine.c
@@ -255,20 +255,15 @@ static int mfld_init(struct snd_soc_pcm_runtime *runtime)
 	snd_soc_dapm_disable_pin(dapm, "LINEINR");
 
 	/* Headset and button jack detection */
-	ret_val = snd_soc_jack_new(runtime->codec, "Intel(R) MID Audio Jack",
-			SND_JACK_HEADSET | SND_JACK_BTN_0 |
-			SND_JACK_BTN_1, &mfld_jack);
+	ret_val = snd_soc_card_jack_new(runtime->card,
+			"Intel(R) MID Audio Jack", SND_JACK_HEADSET |
+			SND_JACK_BTN_0 | SND_JACK_BTN_1, &mfld_jack,
+			mfld_jack_pins, ARRAY_SIZE(mfld_jack_pins));
 	if (ret_val) {
 		pr_err("jack creation failed\n");
 		return ret_val;
 	}
 
-	ret_val = snd_soc_jack_add_pins(&mfld_jack,
-			ARRAY_SIZE(mfld_jack_pins), mfld_jack_pins);
-	if (ret_val) {
-		pr_err("adding jack pins failed\n");
-		return ret_val;
-	}
 	ret_val = snd_soc_jack_add_zones(&mfld_jack,
 			ARRAY_SIZE(mfld_zones), mfld_zones);
 	if (ret_val) {
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 10/30] ASoC: ams-deltea: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (8 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 09/30] ASoC: mfld_machine: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 11/30] ASoC: omap-abe-twl6040: " Lars-Peter Clausen
                   ` (20 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/omap/ams-delta.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/soc/omap/ams-delta.c b/sound/soc/omap/ams-delta.c
index 7066130..16cc95f 100644
--- a/sound/soc/omap/ams-delta.c
+++ b/sound/soc/omap/ams-delta.c
@@ -479,8 +479,8 @@ static int ams_delta_cx20442_init(struct snd_soc_pcm_runtime *rtd)
 
 	/* Add hook switch - can be used to control the codec from userspace
 	 * even if line discipline fails */
-	ret = snd_soc_jack_new(rtd->codec, "hook_switch",
-				SND_JACK_HEADSET, &ams_delta_hook_switch);
+	ret = snd_soc_card_jack_new(card, "hook_switch", SND_JACK_HEADSET,
+				    &ams_delta_hook_switch, NULL, 0);
 	if (ret)
 		dev_warn(card->dev,
 				"Failed to allocate resources for hook switch, "
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 11/30] ASoC: omap-abe-twl6040: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (9 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 10/30] ASoC: ams-deltea: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:47   ` Peter Ujfalusi
  2015-03-04  9:33 ` [PATCH 12/30] ASoC: omap-twl4030: " Lars-Peter Clausen
                   ` (19 subsequent siblings)
  30 siblings, 1 reply; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/omap/omap-abe-twl6040.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/sound/soc/omap/omap-abe-twl6040.c b/sound/soc/omap/omap-abe-twl6040.c
index b9c65f1..0843a68 100644
--- a/sound/soc/omap/omap-abe-twl6040.c
+++ b/sound/soc/omap/omap-abe-twl6040.c
@@ -182,17 +182,17 @@ static int omap_abe_twl6040_init(struct snd_soc_pcm_runtime *rtd)
 
 	/* Headset jack detection only if it is supported */
 	if (priv->jack_detection) {
-		ret = snd_soc_jack_new(codec, "Headset Jack",
-					SND_JACK_HEADSET, &hs_jack);
+		ret = snd_soc_card_jack_new(rtd->card, "Headset Jack",
+					    SND_JACK_HEADSET, &hs_jack,
+					    hs_jack_pins,
+					    ARRAY_SIZE(hs_jack_pins));
 		if (ret)
 			return ret;
 
-		ret = snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pins),
-					hs_jack_pins);
 		twl6040_hs_jack_detect(codec, &hs_jack, SND_JACK_HEADSET);
 	}
 
-	return ret;
+	return 0;
 }
 
 static const struct snd_soc_dapm_route dmic_audio_map[] = {
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 12/30] ASoC: omap-twl4030: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (10 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 11/30] ASoC: omap-abe-twl6040: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:47   ` Peter Ujfalusi
  2015-03-04  9:33 ` [PATCH 13/30] ASoC: rx51: " Lars-Peter Clausen
                   ` (18 subsequent siblings)
  30 siblings, 1 reply; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/omap/omap-twl4030.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/sound/soc/omap/omap-twl4030.c b/sound/soc/omap/omap-twl4030.c
index fb1f6bb..3673ada 100644
--- a/sound/soc/omap/omap-twl4030.c
+++ b/sound/soc/omap/omap-twl4030.c
@@ -170,14 +170,10 @@ static int omap_twl4030_init(struct snd_soc_pcm_runtime *rtd)
 	if (priv->jack_detect > 0) {
 		hs_jack_gpios[0].gpio = priv->jack_detect;
 
-		ret = snd_soc_jack_new(codec, "Headset Jack", SND_JACK_HEADSET,
-				       &priv->hs_jack);
-		if (ret)
-			return ret;
-
-		ret = snd_soc_jack_add_pins(&priv->hs_jack,
-					    ARRAY_SIZE(hs_jack_pins),
-					    hs_jack_pins);
+		ret = snd_soc_card_jack_new(rtd->card, "Headset Jack",
+					    SND_JACK_HEADSET, &priv->hs_jack,
+					    hs_jack_pins,
+					    ARRAY_SIZE(hs_jack_pins));
 		if (ret)
 			return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 13/30] ASoC: rx51: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (11 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 12/30] ASoC: omap-twl4030: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 14/30] ASoC: hx4700: " Lars-Peter Clausen
                   ` (17 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/omap/rx51.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sound/soc/omap/rx51.c b/sound/soc/omap/rx51.c
index 7f29935..c2ddf0f 100644
--- a/sound/soc/omap/rx51.c
+++ b/sound/soc/omap/rx51.c
@@ -311,9 +311,9 @@ static int rx51_aic34_init(struct snd_soc_pcm_runtime *rtd)
 	}
 
 	/* AV jack detection */
-	err = snd_soc_jack_new(codec, "AV Jack",
-			       SND_JACK_HEADSET | SND_JACK_VIDEOOUT,
-			       &rx51_av_jack);
+	err = snd_soc_card_jack_new(rtd->card, "AV Jack",
+				    SND_JACK_HEADSET | SND_JACK_VIDEOOUT,
+				    &rx51_av_jack, NULL, 0);
 	if (err) {
 		dev_err(card->dev, "Failed to add AV Jack\n");
 		return err;
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 14/30] ASoC: hx4700: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (12 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 13/30] ASoC: rx51: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 15/30] ASoC: palm27x: " Lars-Peter Clausen
                   ` (16 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/pxa/hx4700.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/sound/soc/pxa/hx4700.c b/sound/soc/pxa/hx4700.c
index 73eb5dd..9f8be7c 100644
--- a/sound/soc/pxa/hx4700.c
+++ b/sound/soc/pxa/hx4700.c
@@ -126,17 +126,12 @@ static const struct snd_soc_dapm_route hx4700_audio_map[] = {
  */
 static int hx4700_ak4641_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct snd_soc_codec *codec = rtd->codec;
 	int err;
 
 	/* Jack detection API stuff */
-	err = snd_soc_jack_new(codec, "Headphone Jack",
-				SND_JACK_HEADPHONE, &hs_jack);
-	if (err)
-		return err;
-
-	err = snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pin),
-					hs_jack_pin);
+	err = snd_soc_card_jack_new(rtd->card, "Headphone Jack",
+				    SND_JACK_HEADPHONE, &hs_jack, hs_jack_pin,
+				    ARRAY_SIZE(hs_jack_pin));
 	if (err)
 		return err;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 15/30] ASoC: palm27x: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (13 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 14/30] ASoC: hx4700: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 16/30] ASoC: ttc-dkb: " Lars-Peter Clausen
                   ` (15 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/pxa/palm27x.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/sound/soc/pxa/palm27x.c b/sound/soc/pxa/palm27x.c
index 910336c..c20bbc0 100644
--- a/sound/soc/pxa/palm27x.c
+++ b/sound/soc/pxa/palm27x.c
@@ -75,17 +75,12 @@ static struct snd_soc_card palm27x_asoc;
 
 static int palm27x_ac97_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct snd_soc_codec *codec = rtd->codec;
 	int err;
 
 	/* Jack detection API stuff */
-	err = snd_soc_jack_new(codec, "Headphone Jack",
-				SND_JACK_HEADPHONE, &hs_jack);
-	if (err)
-		return err;
-
-	err = snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pins),
-				hs_jack_pins);
+	err = snd_soc_card_jack_new(rtd->card, "Headphone Jack",
+				    SND_JACK_HEADPHONE, &hs_jack, hs_jack_pins,
+				    ARRAY_SIZE(hs_jack_pins));
 	if (err)
 		return err;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 16/30] ASoC: ttc-dkb: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (14 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 15/30] ASoC: palm27x: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 17/30] ASoC: z2: " Lars-Peter Clausen
                   ` (14 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/pxa/ttc-dkb.c | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/sound/soc/pxa/ttc-dkb.c b/sound/soc/pxa/ttc-dkb.c
index 5001dbb..1753c7d 100644
--- a/sound/soc/pxa/ttc-dkb.c
+++ b/sound/soc/pxa/ttc-dkb.c
@@ -78,15 +78,12 @@ static int ttc_pm860x_init(struct snd_soc_pcm_runtime *rtd)
 	struct snd_soc_codec *codec = rtd->codec;
 
 	/* Headset jack detection */
-	snd_soc_jack_new(codec, "Headphone Jack", SND_JACK_HEADPHONE
-			| SND_JACK_BTN_0 | SND_JACK_BTN_1 | SND_JACK_BTN_2,
-			&hs_jack);
-	snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pins),
-			      hs_jack_pins);
-	snd_soc_jack_new(codec, "Microphone Jack", SND_JACK_MICROPHONE,
-			 &mic_jack);
-	snd_soc_jack_add_pins(&mic_jack, ARRAY_SIZE(mic_jack_pins),
-			      mic_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Headphone Jack", SND_JACK_HEADPHONE |
+			      SND_JACK_BTN_0 | SND_JACK_BTN_1 | SND_JACK_BTN_2,
+			      &hs_jack, hs_jack_pins, ARRAY_SIZE(hs_jack_pins));
+	snd_soc_card_jack_new(rtd->card, "Microphone Jack", SND_JACK_MICROPHONE,
+			      &mic_jack, mic_jack_pins,
+			      ARRAY_SIZE(mic_jack_pins));
 
 	/* headphone, microphone detection & headset short detection */
 	pm860x_hs_jack_detect(codec, &hs_jack, SND_JACK_HEADPHONE,
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 17/30] ASoC: z2: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (15 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 16/30] ASoC: ttc-dkb: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 18/30] ASoC: h1980_uda1380: " Lars-Peter Clausen
                   ` (13 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/pxa/z2.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/sound/soc/pxa/z2.c b/sound/soc/pxa/z2.c
index 76ccb17..bcbfbe8 100644
--- a/sound/soc/pxa/z2.c
+++ b/sound/soc/pxa/z2.c
@@ -143,13 +143,9 @@ static int z2_wm8750_init(struct snd_soc_pcm_runtime *rtd)
 	snd_soc_dapm_disable_pin(dapm, "MONO1");
 
 	/* Jack detection API stuff */
-	ret = snd_soc_jack_new(codec, "Headset Jack", SND_JACK_HEADSET,
-				&hs_jack);
-	if (ret)
-		goto err;
-
-	ret = snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pins),
-				hs_jack_pins);
+	ret = snd_soc_card_jack_new(rtd->card, "Headset Jack", SND_JACK_HEADSET,
+				    &hs_jack, hs_jack_pins,
+				    ARRAY_SIZE(hs_jack_pins));
 	if (ret)
 		goto err;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 18/30] ASoC: h1980_uda1380: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (16 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 17/30] ASoC: z2: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 19/30] ASoC: littlemill: " Lars-Peter Clausen
                   ` (12 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/samsung/h1940_uda1380.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/sound/soc/samsung/h1940_uda1380.c b/sound/soc/samsung/h1940_uda1380.c
index 59b0442..c72e9fb 100644
--- a/sound/soc/samsung/h1940_uda1380.c
+++ b/sound/soc/samsung/h1940_uda1380.c
@@ -162,13 +162,8 @@ static struct platform_device *s3c24xx_snd_device;
 
 static int h1940_uda1380_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct snd_soc_codec *codec = rtd->codec;
-
-	snd_soc_jack_new(codec, "Headphone Jack", SND_JACK_HEADPHONE,
-		&hp_jack);
-
-	snd_soc_jack_add_pins(&hp_jack, ARRAY_SIZE(hp_jack_pins),
-		hp_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Headphone Jack", SND_JACK_HEADPHONE,
+		&hp_jack, hp_jack_pins, ARRAY_SIZE(hp_jack_pins));
 
 	snd_soc_jack_add_gpios(&hp_jack, ARRAY_SIZE(hp_jack_gpios),
 		hp_jack_gpios);
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 19/30] ASoC: littlemill: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (17 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 18/30] ASoC: h1980_uda1380: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-05  9:57   ` Charles Keepax
  2015-03-04  9:33 ` [PATCH 20/30] ASoC: lowland: " Lars-Peter Clausen
                   ` (11 subsequent siblings)
  30 siblings, 1 reply; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/samsung/littlemill.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/sound/soc/samsung/littlemill.c b/sound/soc/samsung/littlemill.c
index 141519c..31a820e 100644
--- a/sound/soc/samsung/littlemill.c
+++ b/sound/soc/samsung/littlemill.c
@@ -260,12 +260,12 @@ static int littlemill_late_probe(struct snd_soc_card *card)
 	if (ret < 0)
 		return ret;
 
-	ret = snd_soc_jack_new(codec, "Headset",
-			       SND_JACK_HEADSET | SND_JACK_MECHANICAL |
-			       SND_JACK_BTN_0 | SND_JACK_BTN_1 |
-			       SND_JACK_BTN_2 | SND_JACK_BTN_3 |
-			       SND_JACK_BTN_4 | SND_JACK_BTN_5,
-			       &littlemill_headset);
+	ret = snd_soc_card_jack_new(card, "Headset",
+				    SND_JACK_HEADSET | SND_JACK_MECHANICAL |
+				    SND_JACK_BTN_0 | SND_JACK_BTN_1 |
+				    SND_JACK_BTN_2 | SND_JACK_BTN_3 |
+				    SND_JACK_BTN_4 | SND_JACK_BTN_5,
+				    &littlemill_headset, NULL, 0);
 	if (ret)
 		return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 20/30] ASoC: lowland: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (18 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 19/30] ASoC: littlemill: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-05  9:57   ` Charles Keepax
  2015-03-04  9:33 ` [PATCH 21/30] ASoC: rx1950_uda1380: " Lars-Peter Clausen
                   ` (10 subsequent siblings)
  30 siblings, 1 reply; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/samsung/lowland.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/sound/soc/samsung/lowland.c b/sound/soc/samsung/lowland.c
index 243dea7..5f15609 100644
--- a/sound/soc/samsung/lowland.c
+++ b/sound/soc/samsung/lowland.c
@@ -56,16 +56,10 @@ static int lowland_wm5100_init(struct snd_soc_pcm_runtime *rtd)
 		return ret;
 	}
 
-	ret = snd_soc_jack_new(codec, "Headset",
-			       SND_JACK_LINEOUT | SND_JACK_HEADSET |
-			       SND_JACK_BTN_0,
-			       &lowland_headset);
-	if (ret)
-		return ret;
-
-	ret = snd_soc_jack_add_pins(&lowland_headset,
-				    ARRAY_SIZE(lowland_headset_pins),
-				    lowland_headset_pins);
+	ret = snd_soc_card_jack_new(rtd->card, "Headset", SND_JACK_LINEOUT |
+				    SND_JACK_HEADSET | SND_JACK_BTN_0,
+				    &lowland_headset, lowland_headset_pins,
+				    ARRAY_SIZE(lowland_headset_pins));
 	if (ret)
 		return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 21/30] ASoC: rx1950_uda1380: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (19 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 20/30] ASoC: lowland: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 22/30] ASoC: smartq: " Lars-Peter Clausen
                   ` (9 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/samsung/rx1950_uda1380.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/sound/soc/samsung/rx1950_uda1380.c b/sound/soc/samsung/rx1950_uda1380.c
index 873f2cb..35e37c4 100644
--- a/sound/soc/samsung/rx1950_uda1380.c
+++ b/sound/soc/samsung/rx1950_uda1380.c
@@ -211,13 +211,8 @@ static int rx1950_hw_params(struct snd_pcm_substream *substream,
 
 static int rx1950_uda1380_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct snd_soc_codec *codec = rtd->codec;
-
-	snd_soc_jack_new(codec, "Headphone Jack", SND_JACK_HEADPHONE,
-		&hp_jack);
-
-	snd_soc_jack_add_pins(&hp_jack, ARRAY_SIZE(hp_jack_pins),
-		hp_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Headphone Jack", SND_JACK_HEADPHONE,
+		&hp_jack, hp_jack_pins, ARRAY_SIZE(hp_jack_pins));
 
 	snd_soc_jack_add_gpios(&hp_jack, ARRAY_SIZE(hp_jack_gpios),
 		hp_jack_gpios);
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 22/30] ASoC: smartq: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (20 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 21/30] ASoC: rx1950_uda1380: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 23/30] ASoC: speyside: " Lars-Peter Clausen
                   ` (8 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/samsung/smartq_wm8987.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/sound/soc/samsung/smartq_wm8987.c b/sound/soc/samsung/smartq_wm8987.c
index 8291d2a..dfbe2db 100644
--- a/sound/soc/samsung/smartq_wm8987.c
+++ b/sound/soc/samsung/smartq_wm8987.c
@@ -151,13 +151,10 @@ static int smartq_wm8987_init(struct snd_soc_pcm_runtime *rtd)
 	snd_soc_dapm_disable_pin(dapm, "Headphone Jack");
 
 	/* Headphone jack detection */
-	err = snd_soc_jack_new(codec, "Headphone Jack",
-			       SND_JACK_HEADPHONE, &smartq_jack);
-	if (err)
-		return err;
-
-	err = snd_soc_jack_add_pins(&smartq_jack, ARRAY_SIZE(smartq_jack_pins),
-				    smartq_jack_pins);
+	err = snd_soc_card_jack_new(rtd->card, "Headphone Jack",
+				    SND_JACK_HEADPHONE, &smartq_jack,
+				    smartq_jack_pins,
+				    ARRAY_SIZE(smartq_jack_pins));
 	if (err)
 		return err;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 23/30] ASoC: speyside: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (21 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 22/30] ASoC: smartq: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-05  9:58   ` Charles Keepax
  2015-03-04  9:33 ` [PATCH 24/30] ASoC: tobermory: " Lars-Peter Clausen
                   ` (7 subsequent siblings)
  30 siblings, 1 reply; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/samsung/speyside.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/sound/soc/samsung/speyside.c b/sound/soc/samsung/speyside.c
index 5ec7c52..2dcb988 100644
--- a/sound/soc/samsung/speyside.c
+++ b/sound/soc/samsung/speyside.c
@@ -153,16 +153,10 @@ static int speyside_wm8996_init(struct snd_soc_pcm_runtime *rtd)
 		pr_err("Failed to request HP_SEL GPIO: %d\n", ret);
 	gpio_direction_output(WM8996_HPSEL_GPIO, speyside_jack_polarity);
 
-	ret = snd_soc_jack_new(codec, "Headset",
-			       SND_JACK_LINEOUT | SND_JACK_HEADSET |
-			       SND_JACK_BTN_0,
-			       &speyside_headset);
-	if (ret)
-		return ret;
-
-	ret = snd_soc_jack_add_pins(&speyside_headset,
-				    ARRAY_SIZE(speyside_headset_pins),
-				    speyside_headset_pins);
+	ret = snd_soc_card_jack_new(rtd->card, "Headset", SND_JACK_LINEOUT |
+				    SND_JACK_HEADSET | SND_JACK_BTN_0,
+				    &speyside_headset, speyside_headset_pins,
+				    ARRAY_SIZE(speyside_headset_pins));
 	if (ret)
 		return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 24/30] ASoC: tobermory: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (22 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 23/30] ASoC: speyside: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-05  9:58   ` Charles Keepax
  2015-03-04  9:33 ` [PATCH 25/30] ASoC: tegra_alc5632: " Lars-Peter Clausen
                   ` (6 subsequent siblings)
  30 siblings, 1 reply; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/samsung/tobermory.c | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/sound/soc/samsung/tobermory.c b/sound/soc/samsung/tobermory.c
index 9c80506..85ccfb7 100644
--- a/sound/soc/samsung/tobermory.c
+++ b/sound/soc/samsung/tobermory.c
@@ -179,15 +179,10 @@ static int tobermory_late_probe(struct snd_soc_card *card)
 	if (ret < 0)
 		return ret;
 
-	ret = snd_soc_jack_new(codec, "Headset",
-			       SND_JACK_HEADSET | SND_JACK_BTN_0,
-			       &tobermory_headset);
-	if (ret)
-		return ret;
-
-	ret = snd_soc_jack_add_pins(&tobermory_headset,
-				    ARRAY_SIZE(tobermory_headset_pins),
-				    tobermory_headset_pins);
+	ret = snd_soc_card_jack_new(card, "Headset", SND_JACK_HEADSET |
+				    SND_JACK_BTN_0, &tobermory_headset,
+				    tobermory_headset_pins,
+				    ARRAY_SIZE(tobermory_headset_pins));
 	if (ret)
 		return ret;
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 25/30] ASoC: tegra_alc5632: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (23 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 24/30] ASoC: tobermory: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 26/30] ASoC: tegra_max98090: " Lars-Peter Clausen
                   ` (5 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/tegra/tegra_alc5632.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/sound/soc/tegra/tegra_alc5632.c b/sound/soc/tegra/tegra_alc5632.c
index 769aca2..6dcd06a 100644
--- a/sound/soc/tegra/tegra_alc5632.c
+++ b/sound/soc/tegra/tegra_alc5632.c
@@ -106,11 +106,10 @@ static int tegra_alc5632_asoc_init(struct snd_soc_pcm_runtime *rtd)
 	struct snd_soc_dapm_context *dapm = &codec->dapm;
 	struct tegra_alc5632 *machine = snd_soc_card_get_drvdata(rtd->card);
 
-	snd_soc_jack_new(codec, "Headset Jack", SND_JACK_HEADSET,
-			 &tegra_alc5632_hs_jack);
-	snd_soc_jack_add_pins(&tegra_alc5632_hs_jack,
-			ARRAY_SIZE(tegra_alc5632_hs_jack_pins),
-			tegra_alc5632_hs_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Headset Jack", SND_JACK_HEADSET,
+			      &tegra_alc5632_hs_jack,
+			      tegra_alc5632_hs_jack_pins,
+			      ARRAY_SIZE(tegra_alc5632_hs_jack_pins));
 
 	if (gpio_is_valid(machine->gpio_hp_det)) {
 		tegra_alc5632_hp_jack_gpio.gpio = machine->gpio_hp_det;
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 26/30] ASoC: tegra_max98090: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (24 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 25/30] ASoC: tegra_alc5632: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 27/30] ASoC: tegra_rt5640: " Lars-Peter Clausen
                   ` (4 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/tegra/tegra_max98090.c | 22 ++++++++++------------
 1 file changed, 10 insertions(+), 12 deletions(-)

diff --git a/sound/soc/tegra/tegra_max98090.c b/sound/soc/tegra/tegra_max98090.c
index 1f20c2c..902da36 100644
--- a/sound/soc/tegra/tegra_max98090.c
+++ b/sound/soc/tegra/tegra_max98090.c
@@ -145,16 +145,14 @@ static const struct snd_kcontrol_new tegra_max98090_controls[] = {
 
 static int tegra_max98090_asoc_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct snd_soc_dai *codec_dai = rtd->codec_dai;
-	struct snd_soc_codec *codec = codec_dai->codec;
 	struct tegra_max98090 *machine = snd_soc_card_get_drvdata(rtd->card);
 
 	if (gpio_is_valid(machine->gpio_hp_det)) {
-		snd_soc_jack_new(codec, "Headphones", SND_JACK_HEADPHONE,
-				&tegra_max98090_hp_jack);
-		snd_soc_jack_add_pins(&tegra_max98090_hp_jack,
-				ARRAY_SIZE(tegra_max98090_hp_jack_pins),
-				tegra_max98090_hp_jack_pins);
+		snd_soc_card_jack_new(rtd->card, "Headphones",
+				      SND_JACK_HEADPHONE,
+				      &tegra_max98090_hp_jack,
+				      tegra_max98090_hp_jack_pins,
+				      ARRAY_SIZE(tegra_max98090_hp_jack_pins));
 
 		tegra_max98090_hp_jack_gpio.gpio = machine->gpio_hp_det;
 		snd_soc_jack_add_gpios(&tegra_max98090_hp_jack,
@@ -163,11 +161,11 @@ static int tegra_max98090_asoc_init(struct snd_soc_pcm_runtime *rtd)
 	}
 
 	if (gpio_is_valid(machine->gpio_mic_det)) {
-		snd_soc_jack_new(codec, "Mic Jack", SND_JACK_MICROPHONE,
-				 &tegra_max98090_mic_jack);
-		snd_soc_jack_add_pins(&tegra_max98090_mic_jack,
-				      ARRAY_SIZE(tegra_max98090_mic_jack_pins),
-				      tegra_max98090_mic_jack_pins);
+		snd_soc_card_jack_new(rtd->card, "Mic Jack",
+				      SND_JACK_MICROPHONE,
+				      &tegra_max98090_mic_jack,
+				      tegra_max98090_mic_jack_pins,
+				      ARRAY_SIZE(tegra_max98090_mic_jack_pins));
 
 		tegra_max98090_mic_jack_gpio.gpio = machine->gpio_mic_det;
 		snd_soc_jack_add_gpios(&tegra_max98090_mic_jack,
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 27/30] ASoC: tegra_rt5640: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (25 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 26/30] ASoC: tegra_max98090: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 28/30] ASoC: tegra_rt5677: " Lars-Peter Clausen
                   ` (3 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/tegra/tegra_rt5640.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/sound/soc/tegra/tegra_rt5640.c b/sound/soc/tegra/tegra_rt5640.c
index ed759a3..773daec 100644
--- a/sound/soc/tegra/tegra_rt5640.c
+++ b/sound/soc/tegra/tegra_rt5640.c
@@ -108,15 +108,11 @@ static const struct snd_kcontrol_new tegra_rt5640_controls[] = {
 
 static int tegra_rt5640_asoc_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct snd_soc_dai *codec_dai = rtd->codec_dai;
-	struct snd_soc_codec *codec = codec_dai->codec;
 	struct tegra_rt5640 *machine = snd_soc_card_get_drvdata(rtd->card);
 
-	snd_soc_jack_new(codec, "Headphones", SND_JACK_HEADPHONE,
-			 &tegra_rt5640_hp_jack);
-	snd_soc_jack_add_pins(&tegra_rt5640_hp_jack,
-			ARRAY_SIZE(tegra_rt5640_hp_jack_pins),
-			tegra_rt5640_hp_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Headphones", SND_JACK_HEADPHONE,
+			      &tegra_rt5640_hp_jack, tegra_rt5640_hp_jack_pins,
+			      ARRAY_SIZE(tegra_rt5640_hp_jack_pins));
 
 	if (gpio_is_valid(machine->gpio_hp_det)) {
 		tegra_rt5640_hp_jack_gpio.gpio = machine->gpio_hp_det;
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 28/30] ASoC: tegra_rt5677: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (26 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 27/30] ASoC: tegra_rt5640: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 29/30] ASoC: tegra_wm8903: " Lars-Peter Clausen
                   ` (2 subsequent siblings)
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/tegra/tegra_rt5677.c | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/sound/soc/tegra/tegra_rt5677.c b/sound/soc/tegra/tegra_rt5677.c
index e4cf978..68d8b67 100644
--- a/sound/soc/tegra/tegra_rt5677.c
+++ b/sound/soc/tegra/tegra_rt5677.c
@@ -146,10 +146,9 @@ static int tegra_rt5677_asoc_init(struct snd_soc_pcm_runtime *rtd)
 	struct snd_soc_dapm_context *dapm = &codec->dapm;
 	struct tegra_rt5677 *machine = snd_soc_card_get_drvdata(rtd->card);
 
-	snd_soc_jack_new(codec, "Headphone Jack", SND_JACK_HEADPHONE,
-			&tegra_rt5677_hp_jack);
-	snd_soc_jack_add_pins(&tegra_rt5677_hp_jack, 1,
-			&tegra_rt5677_hp_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Headphone Jack", SND_JACK_HEADPHONE,
+			      &tegra_rt5677_hp_jack,
+			      &tegra_rt5677_hp_jack_pins, 1);
 
 	if (gpio_is_valid(machine->gpio_hp_det)) {
 		tegra_rt5677_hp_jack_gpio.gpio = machine->gpio_hp_det;
@@ -158,10 +157,9 @@ static int tegra_rt5677_asoc_init(struct snd_soc_pcm_runtime *rtd)
 	}
 
 
-	snd_soc_jack_new(codec, "Mic Jack", SND_JACK_MICROPHONE,
-			&tegra_rt5677_mic_jack);
-	snd_soc_jack_add_pins(&tegra_rt5677_mic_jack, 1,
-			&tegra_rt5677_mic_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Mic Jack", SND_JACK_MICROPHONE,
+			      &tegra_rt5677_mic_jack,
+			      &tegra_rt5677_mic_jack_pins, 1);
 
 	if (gpio_is_valid(machine->gpio_mic_present)) {
 		tegra_rt5677_mic_jack_gpio.gpio = machine->gpio_mic_present;
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 29/30] ASoC: tegra_wm8903: Register jacks at the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (27 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 28/30] ASoC: tegra_rt5677: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04  9:33 ` [PATCH 30/30] ASoC: Remove snd_soc_jack_new() Lars-Peter Clausen
  2015-03-04 17:11 ` [PATCH 00/30] ASoC: Move jack registration to the card level Mark Brown
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

The jacks are card level elements so use snd_soc_card_jack_new() instead of
snd_soc_jack_new() to register them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 sound/soc/tegra/tegra_wm8903.c | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

diff --git a/sound/soc/tegra/tegra_wm8903.c b/sound/soc/tegra/tegra_wm8903.c
index e52420d..4a95b70 100644
--- a/sound/soc/tegra/tegra_wm8903.c
+++ b/sound/soc/tegra/tegra_wm8903.c
@@ -177,21 +177,19 @@ static int tegra_wm8903_init(struct snd_soc_pcm_runtime *rtd)
 
 	if (gpio_is_valid(machine->gpio_hp_det)) {
 		tegra_wm8903_hp_jack_gpio.gpio = machine->gpio_hp_det;
-		snd_soc_jack_new(codec, "Headphone Jack", SND_JACK_HEADPHONE,
-				&tegra_wm8903_hp_jack);
-		snd_soc_jack_add_pins(&tegra_wm8903_hp_jack,
-					ARRAY_SIZE(tegra_wm8903_hp_jack_pins),
-					tegra_wm8903_hp_jack_pins);
+		snd_soc_card_jack_new(rtd->card, "Headphone Jack",
+				      SND_JACK_HEADPHONE, &tegra_wm8903_hp_jack,
+				      tegra_wm8903_hp_jack_pins,
+				      ARRAY_SIZE(tegra_wm8903_hp_jack_pins));
 		snd_soc_jack_add_gpios(&tegra_wm8903_hp_jack,
 					1,
 					&tegra_wm8903_hp_jack_gpio);
 	}
 
-	snd_soc_jack_new(codec, "Mic Jack", SND_JACK_MICROPHONE,
-			 &tegra_wm8903_mic_jack);
-	snd_soc_jack_add_pins(&tegra_wm8903_mic_jack,
-			      ARRAY_SIZE(tegra_wm8903_mic_jack_pins),
-			      tegra_wm8903_mic_jack_pins);
+	snd_soc_card_jack_new(rtd->card, "Mic Jack", SND_JACK_MICROPHONE,
+			      &tegra_wm8903_mic_jack,
+			      tegra_wm8903_mic_jack_pins,
+			      ARRAY_SIZE(tegra_wm8903_mic_jack_pins));
 	wm8903_mic_detect(codec, &tegra_wm8903_mic_jack, SND_JACK_MICROPHONE,
 				0);
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* [PATCH 30/30] ASoC: Remove snd_soc_jack_new()
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (28 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 29/30] ASoC: tegra_wm8903: " Lars-Peter Clausen
@ 2015-03-04  9:33 ` Lars-Peter Clausen
  2015-03-04 17:11 ` [PATCH 00/30] ASoC: Move jack registration to the card level Mark Brown
  30 siblings, 0 replies; 39+ messages in thread
From: Lars-Peter Clausen @ 2015-03-04  9:33 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood
  Cc: alsa-devel, Lars-Peter Clausen, Anatol Pomozov,
	Kuninori Morimoto, Stephen Warren, Vinod Koul, Jie Yang,
	Peter Ujfalusi, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

There are no users of snd_soc_jack_new() left and new users should use
snd_soc_card_jack_new() instead. So remove the function.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
 include/sound/soc.h | 20 --------------------
 1 file changed, 20 deletions(-)

diff --git a/include/sound/soc.h b/include/sound/soc.h
index e750e4b..bc6cfab 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -1492,26 +1492,6 @@ static inline struct snd_soc_platform *snd_soc_kcontrol_platform(
 	return snd_soc_component_to_platform(snd_soc_kcontrol_component(kcontrol));
 }
 
-/**
- * snd_soc_jack_new - Create a new jack
- * @codec: ASoC CODEC
- * @id:    an identifying string for this jack
- * @type:  a bitmask of enum snd_jack_type values that can be detected by
- *         this jack
- * @jack:  structure to use for the jack
- *
- * Creates a new jack object.
- *
- * Returns zero if successful, or a negative error code on failure.
- * On success jack will be initialised.
- */
-static inline int snd_soc_jack_new(struct snd_soc_codec *codec, const char *id,
-	int type, struct snd_soc_jack *jack)
-{
-	return snd_soc_card_jack_new(codec->component.card, id, type, jack,
-		NULL, 0);
-}
-
 int snd_soc_util_init(void);
 void snd_soc_util_exit(void);
 
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 39+ messages in thread

* Re: [PATCH 11/30] ASoC: omap-abe-twl6040: Register jacks at the card level
  2015-03-04  9:33 ` [PATCH 11/30] ASoC: omap-abe-twl6040: " Lars-Peter Clausen
@ 2015-03-04  9:47   ` Peter Ujfalusi
  0 siblings, 0 replies; 39+ messages in thread
From: Peter Ujfalusi @ 2015-03-04  9:47 UTC (permalink / raw)
  To: Lars-Peter Clausen, Mark Brown, Liam Girdwood
  Cc: alsa-devel, Anatol Pomozov, Kuninori Morimoto, Stephen Warren,
	Vinod Koul, Jie Yang, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

On 03/04/2015 11:33 AM, Lars-Peter Clausen wrote:
> The jacks are card level elements so use snd_soc_card_jack_new() instead of
> snd_soc_jack_new() to register them.

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>

> 
> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> ---
>  sound/soc/omap/omap-abe-twl6040.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/sound/soc/omap/omap-abe-twl6040.c b/sound/soc/omap/omap-abe-twl6040.c
> index b9c65f1..0843a68 100644
> --- a/sound/soc/omap/omap-abe-twl6040.c
> +++ b/sound/soc/omap/omap-abe-twl6040.c
> @@ -182,17 +182,17 @@ static int omap_abe_twl6040_init(struct snd_soc_pcm_runtime *rtd)
>  
>  	/* Headset jack detection only if it is supported */
>  	if (priv->jack_detection) {
> -		ret = snd_soc_jack_new(codec, "Headset Jack",
> -					SND_JACK_HEADSET, &hs_jack);
> +		ret = snd_soc_card_jack_new(rtd->card, "Headset Jack",
> +					    SND_JACK_HEADSET, &hs_jack,
> +					    hs_jack_pins,
> +					    ARRAY_SIZE(hs_jack_pins));
>  		if (ret)
>  			return ret;
>  
> -		ret = snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pins),
> -					hs_jack_pins);
>  		twl6040_hs_jack_detect(codec, &hs_jack, SND_JACK_HEADSET);
>  	}
>  
> -	return ret;
> +	return 0;
>  }
>  
>  static const struct snd_soc_dapm_route dmic_audio_map[] = {
> 


-- 
Péter

^ permalink raw reply	[flat|nested] 39+ messages in thread

* Re: [PATCH 12/30] ASoC: omap-twl4030: Register jacks at the card level
  2015-03-04  9:33 ` [PATCH 12/30] ASoC: omap-twl4030: " Lars-Peter Clausen
@ 2015-03-04  9:47   ` Peter Ujfalusi
  0 siblings, 0 replies; 39+ messages in thread
From: Peter Ujfalusi @ 2015-03-04  9:47 UTC (permalink / raw)
  To: Lars-Peter Clausen, Mark Brown, Liam Girdwood
  Cc: alsa-devel, Anatol Pomozov, Kuninori Morimoto, Stephen Warren,
	Vinod Koul, Jie Yang, Yang A Fang, Jarkko Nikula, Sean Cross,
	Dylan Reid, Jarkko Nikula

On 03/04/2015 11:33 AM, Lars-Peter Clausen wrote:
> The jacks are card level elements so use snd_soc_card_jack_new() instead of
> snd_soc_jack_new() to register them.

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>

> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> ---
>  sound/soc/omap/omap-twl4030.c | 12 ++++--------
>  1 file changed, 4 insertions(+), 8 deletions(-)
> 
> diff --git a/sound/soc/omap/omap-twl4030.c b/sound/soc/omap/omap-twl4030.c
> index fb1f6bb..3673ada 100644
> --- a/sound/soc/omap/omap-twl4030.c
> +++ b/sound/soc/omap/omap-twl4030.c
> @@ -170,14 +170,10 @@ static int omap_twl4030_init(struct snd_soc_pcm_runtime *rtd)
>  	if (priv->jack_detect > 0) {
>  		hs_jack_gpios[0].gpio = priv->jack_detect;
>  
> -		ret = snd_soc_jack_new(codec, "Headset Jack", SND_JACK_HEADSET,
> -				       &priv->hs_jack);
> -		if (ret)
> -			return ret;
> -
> -		ret = snd_soc_jack_add_pins(&priv->hs_jack,
> -					    ARRAY_SIZE(hs_jack_pins),
> -					    hs_jack_pins);
> +		ret = snd_soc_card_jack_new(rtd->card, "Headset Jack",
> +					    SND_JACK_HEADSET, &priv->hs_jack,
> +					    hs_jack_pins,
> +					    ARRAY_SIZE(hs_jack_pins));
>  		if (ret)
>  			return ret;
>  
> 


-- 
Péter

^ permalink raw reply	[flat|nested] 39+ messages in thread

* Re: [PATCH 09/30] ASoC: mfld_machine: Register jacks at the card level
  2015-03-04  9:33 ` [PATCH 09/30] ASoC: mfld_machine: " Lars-Peter Clausen
@ 2015-03-04 11:58   ` Vinod Koul
  0 siblings, 0 replies; 39+ messages in thread
From: Vinod Koul @ 2015-03-04 11:58 UTC (permalink / raw)
  To: Lars-Peter Clausen
  Cc: alsa-devel, Anatol Pomozov, Kuninori Morimoto, Stephen Warren,
	Yang A Fang, Jie Yang, Liam Girdwood, Peter Ujfalusi, Mark Brown,
	Jarkko Nikula, Sean Cross, Dylan Reid, Jarkko Nikula

On Wed, Mar 04, 2015 at 10:33:24AM +0100, Lars-Peter Clausen wrote:
> The jacks are card level elements so use snd_soc_card_jack_new() instead of
> snd_soc_jack_new() to register them.
> 
Acked-by: Vinod Koul <vinod.koul@intel.com>

-- 
~Vinod

^ permalink raw reply	[flat|nested] 39+ messages in thread

* Re: [PATCH 00/30] ASoC: Move jack registration to the card level
  2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
                   ` (29 preceding siblings ...)
  2015-03-04  9:33 ` [PATCH 30/30] ASoC: Remove snd_soc_jack_new() Lars-Peter Clausen
@ 2015-03-04 17:11 ` Mark Brown
  30 siblings, 0 replies; 39+ messages in thread
From: Mark Brown @ 2015-03-04 17:11 UTC (permalink / raw)
  To: Lars-Peter Clausen
  Cc: alsa-devel, Anatol Pomozov, Kuninori Morimoto, Stephen Warren,
	Vinod Koul, Jie Yang, Liam Girdwood, Peter Ujfalusi, Yang A Fang,
	Jarkko Nikula, Sean Cross, Dylan Reid, Jarkko Nikula


[-- Attachment #1.1: Type: text/plain, Size: 337 bytes --]

On Wed, Mar 04, 2015 at 10:33:15AM +0100, Lars-Peter Clausen wrote:
> Audio jacks are typically card level elements and when initially introduced
> the API to register a jack took a card as its parameter. Back at that time
> there was only one CODEC per card and DAPM support was only available at the

Nice cleanup, applied all thanks.

[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

[-- Attachment #2: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 39+ messages in thread

* Re: [PATCH 19/30] ASoC: littlemill: Register jacks at the card level
  2015-03-04  9:33 ` [PATCH 19/30] ASoC: littlemill: " Lars-Peter Clausen
@ 2015-03-05  9:57   ` Charles Keepax
  0 siblings, 0 replies; 39+ messages in thread
From: Charles Keepax @ 2015-03-05  9:57 UTC (permalink / raw)
  To: Lars-Peter Clausen
  Cc: alsa-devel, Kuninori Morimoto, Anatol Pomozov, Stephen Warren,
	Vinod Koul, Jie Yang, Liam Girdwood, Peter Ujfalusi, Yang A Fang,
	Mark Brown, Jarkko Nikula, Sean Cross, Dylan Reid, Jarkko Nikula

On Wed, Mar 04, 2015 at 10:33:34AM +0100, Lars-Peter Clausen wrote:
> The jacks are card level elements so use snd_soc_card_jack_new() instead of
> snd_soc_jack_new() to register them.
> 
> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> ---

Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 39+ messages in thread

* Re: [PATCH 20/30] ASoC: lowland: Register jacks at the card level
  2015-03-04  9:33 ` [PATCH 20/30] ASoC: lowland: " Lars-Peter Clausen
@ 2015-03-05  9:57   ` Charles Keepax
  0 siblings, 0 replies; 39+ messages in thread
From: Charles Keepax @ 2015-03-05  9:57 UTC (permalink / raw)
  To: Lars-Peter Clausen
  Cc: alsa-devel, Kuninori Morimoto, Anatol Pomozov, Stephen Warren,
	Vinod Koul, Jie Yang, Liam Girdwood, Peter Ujfalusi, Yang A Fang,
	Mark Brown, Jarkko Nikula, Sean Cross, Dylan Reid, Jarkko Nikula

On Wed, Mar 04, 2015 at 10:33:35AM +0100, Lars-Peter Clausen wrote:
> The jacks are card level elements so use snd_soc_card_jack_new() instead of
> snd_soc_jack_new() to register them.
> 
> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> ---

Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 39+ messages in thread

* Re: [PATCH 23/30] ASoC: speyside: Register jacks at the card level
  2015-03-04  9:33 ` [PATCH 23/30] ASoC: speyside: " Lars-Peter Clausen
@ 2015-03-05  9:58   ` Charles Keepax
  0 siblings, 0 replies; 39+ messages in thread
From: Charles Keepax @ 2015-03-05  9:58 UTC (permalink / raw)
  To: Lars-Peter Clausen
  Cc: alsa-devel, Kuninori Morimoto, Anatol Pomozov, Stephen Warren,
	Vinod Koul, Jie Yang, Liam Girdwood, Peter Ujfalusi, Yang A Fang,
	Mark Brown, Jarkko Nikula, Sean Cross, Dylan Reid, Jarkko Nikula

On Wed, Mar 04, 2015 at 10:33:38AM +0100, Lars-Peter Clausen wrote:
> The jacks are card level elements so use snd_soc_card_jack_new() instead of
> snd_soc_jack_new() to register them.
> 
> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> ---

Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 39+ messages in thread

* Re: [PATCH 24/30] ASoC: tobermory: Register jacks at the card level
  2015-03-04  9:33 ` [PATCH 24/30] ASoC: tobermory: " Lars-Peter Clausen
@ 2015-03-05  9:58   ` Charles Keepax
  0 siblings, 0 replies; 39+ messages in thread
From: Charles Keepax @ 2015-03-05  9:58 UTC (permalink / raw)
  To: Lars-Peter Clausen
  Cc: alsa-devel, Kuninori Morimoto, Anatol Pomozov, Stephen Warren,
	Vinod Koul, Jie Yang, Liam Girdwood, Peter Ujfalusi, Yang A Fang,
	Mark Brown, Jarkko Nikula, Sean Cross, Dylan Reid, Jarkko Nikula

On Wed, Mar 04, 2015 at 10:33:39AM +0100, Lars-Peter Clausen wrote:
> The jacks are card level elements so use snd_soc_card_jack_new() instead of
> snd_soc_jack_new() to register them.
> 
> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> ---

Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 39+ messages in thread

end of thread, other threads:[~2015-03-05  9:58 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-04  9:33 [PATCH 00/30] ASoC: Move jack registration to the card level Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 01/30] ASoC: sn95031: Pass CODEC to sn95031_jack_detection() Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 02/30] ASoC: Allow to register jacks at the card level Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 03/30] ASoC: simple-card: Register " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 04/30] ASoC: imx-es8328: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 05/30] ASoC: wm1133-ev: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 06/30] ASoC: broadwell: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 07/30] ASoC: byt-max98090: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 08/30] ASoC: cht_bsw_rt5645: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 09/30] ASoC: mfld_machine: " Lars-Peter Clausen
2015-03-04 11:58   ` Vinod Koul
2015-03-04  9:33 ` [PATCH 10/30] ASoC: ams-deltea: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 11/30] ASoC: omap-abe-twl6040: " Lars-Peter Clausen
2015-03-04  9:47   ` Peter Ujfalusi
2015-03-04  9:33 ` [PATCH 12/30] ASoC: omap-twl4030: " Lars-Peter Clausen
2015-03-04  9:47   ` Peter Ujfalusi
2015-03-04  9:33 ` [PATCH 13/30] ASoC: rx51: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 14/30] ASoC: hx4700: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 15/30] ASoC: palm27x: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 16/30] ASoC: ttc-dkb: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 17/30] ASoC: z2: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 18/30] ASoC: h1980_uda1380: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 19/30] ASoC: littlemill: " Lars-Peter Clausen
2015-03-05  9:57   ` Charles Keepax
2015-03-04  9:33 ` [PATCH 20/30] ASoC: lowland: " Lars-Peter Clausen
2015-03-05  9:57   ` Charles Keepax
2015-03-04  9:33 ` [PATCH 21/30] ASoC: rx1950_uda1380: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 22/30] ASoC: smartq: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 23/30] ASoC: speyside: " Lars-Peter Clausen
2015-03-05  9:58   ` Charles Keepax
2015-03-04  9:33 ` [PATCH 24/30] ASoC: tobermory: " Lars-Peter Clausen
2015-03-05  9:58   ` Charles Keepax
2015-03-04  9:33 ` [PATCH 25/30] ASoC: tegra_alc5632: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 26/30] ASoC: tegra_max98090: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 27/30] ASoC: tegra_rt5640: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 28/30] ASoC: tegra_rt5677: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 29/30] ASoC: tegra_wm8903: " Lars-Peter Clausen
2015-03-04  9:33 ` [PATCH 30/30] ASoC: Remove snd_soc_jack_new() Lars-Peter Clausen
2015-03-04 17:11 ` [PATCH 00/30] ASoC: Move jack registration to the card level Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.