diff mbox series

[v1,1/1] ASoC: soc-jack: Get rid of legacy GPIO support

Message ID 20240318202602.182619-1-andriy.shevchenko@linux.intel.com (mailing list archive)
State Superseded
Headers show
Series [v1,1/1] ASoC: soc-jack: Get rid of legacy GPIO support | expand

Commit Message

Andy Shevchenko March 18, 2024, 8:25 p.m. UTC
No more users.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 include/sound/soc-jack.h |  2 --

If I am not mistaken, after
https://lore.kernel.org/r/20240318200804.181516-1-andriy.shevchenko@linux.intel.com
there is no more users. Hence the above is the only dependency.

 sound/soc/soc-jack.c     | 23 ++++-------------------
 2 files changed, 4 insertions(+), 21 deletions(-)

Comments

Mark Brown March 25, 2024, 2:16 p.m. UTC | #1
On Mon, Mar 18, 2024 at 10:25:16PM +0200, Andy Shevchenko wrote:
> No more users.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
>  include/sound/soc-jack.h |  2 --
> 
> If I am not mistaken, after
> https://lore.kernel.org/r/20240318200804.181516-1-andriy.shevchenko@linux.intel.com
> there is no more users. Hence the above is the only dependency.

You are mistaken, please try compile tests:

/build/stage/linux/sound/soc/generic/simple-card-utils.c: In function ‘simple_util_init_jack’:
/build/stage/linux/sound/soc/generic/simple-card-utils.c:755:20: error: ‘struct snd_soc_jack_gpio’ has no member named ‘gpio’
  755 |         sjack->gpio.gpio = -ENOENT;
      |                    ^

(this is among other things in x86 allmodconfig).
Andy Shevchenko March 25, 2024, 2:24 p.m. UTC | #2
On Mon, Mar 25, 2024 at 02:16:15PM +0000, Mark Brown wrote:
> On Mon, Mar 18, 2024 at 10:25:16PM +0200, Andy Shevchenko wrote:

...

> > If I am not mistaken, after
> > https://lore.kernel.org/r/20240318200804.181516-1-andriy.shevchenko@linux.intel.com
> > there is no more users. Hence the above is the only dependency.
> 
> You are mistaken, please try compile tests:
> 
> /build/stage/linux/sound/soc/generic/simple-card-utils.c: In function ‘simple_util_init_jack’:
> /build/stage/linux/sound/soc/generic/simple-card-utils.c:755:20: error: ‘struct snd_soc_jack_gpio’ has no member named ‘gpio’
>   755 |         sjack->gpio.gpio = -ENOENT;
>       |                    ^
> 
> (this is among other things in x86 allmodconfig).

I usually enable the particular drivers and I have compile tested this,
but indeed, I haven't enabled _all_ modules.

Thank you for the pointing out.
Mark Brown March 25, 2024, 5:22 p.m. UTC | #3
On Mon, Mar 25, 2024 at 04:24:19PM +0200, Andy Shevchenko wrote:
> On Mon, Mar 25, 2024 at 02:16:15PM +0000, Mark Brown wrote:
> > On Mon, Mar 18, 2024 at 10:25:16PM +0200, Andy Shevchenko wrote:

> > > If I am not mistaken, after
> > > https://lore.kernel.org/r/20240318200804.181516-1-andriy.shevchenko@linux.intel.com
> > > there is no more users. Hence the above is the only dependency.

> > You are mistaken, please try compile tests:

...

> > (this is among other things in x86 allmodconfig).

> I usually enable the particular drivers and I have compile tested this,
> but indeed, I haven't enabled _all_ modules.

> Thank you for the pointing out.

Especially if you're doing this sort of "I think I got everything" type
change it's sensible to do at least one allmodconfig build, it won't get
everything but it'll catch a lot.
Andy Shevchenko March 25, 2024, 5:32 p.m. UTC | #4
On Mon, Mar 25, 2024 at 05:22:55PM +0000, Mark Brown wrote:
> On Mon, Mar 25, 2024 at 04:24:19PM +0200, Andy Shevchenko wrote:
> > On Mon, Mar 25, 2024 at 02:16:15PM +0000, Mark Brown wrote:
> > > On Mon, Mar 18, 2024 at 10:25:16PM +0200, Andy Shevchenko wrote:

...

> > > > If I am not mistaken, after
> > > > https://lore.kernel.org/r/20240318200804.181516-1-andriy.shevchenko@linux.intel.com
> > > > there is no more users. Hence the above is the only dependency.
> 
> > > You are mistaken, please try compile tests:

...

> > > (this is among other things in x86 allmodconfig).
> 
> > I usually enable the particular drivers and I have compile tested this,
> > but indeed, I haven't enabled _all_ modules.
> 
> > Thank you for the pointing out.
> 
> Especially if you're doing this sort of "I think I got everything" type
> change it's sensible to do at least one allmodconfig build, it won't get
> everything but it'll catch a lot.

True, as even `git grep` output can be misinterpreted and some occurrences
may disappear from the sight.
Mark Brown March 26, 2024, 7:40 p.m. UTC | #5
On Mon, 18 Mar 2024 22:25:16 +0200, Andy Shevchenko wrote:
> No more users.
> 
> 

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[1/1] ASoC: soc-jack: Get rid of legacy GPIO support
      commit: 7b95ee0db7e0a7f99077f1b926323c7bf0d2e8f8

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark
diff mbox series

Patch

diff --git a/include/sound/soc-jack.h b/include/sound/soc-jack.h
index a0abb1ee5110..3a81d4b8ca8a 100644
--- a/include/sound/soc-jack.h
+++ b/include/sound/soc-jack.h
@@ -44,7 +44,6 @@  struct snd_soc_jack_zone {
 /**
  * struct snd_soc_jack_gpio - Describes a gpio pin for jack detection
  *
- * @gpio:         legacy gpio number
  * @idx:          gpio descriptor index within the function of the GPIO
  *                consumer device
  * @gpiod_dev:    GPIO consumer device
@@ -59,7 +58,6 @@  struct snd_soc_jack_zone {
  *		       ADC).
  */
 struct snd_soc_jack_gpio {
-	unsigned int gpio;
 	unsigned int idx;
 	struct device *gpiod_dev;
 	const char *name;
diff --git a/sound/soc/soc-jack.c b/sound/soc/soc-jack.c
index b2cc13b9c77b..63971396b708 100644
--- a/sound/soc/soc-jack.c
+++ b/sound/soc/soc-jack.c
@@ -8,7 +8,6 @@ 
 
 #include <sound/jack.h>
 #include <sound/soc.h>
-#include <linux/gpio.h>
 #include <linux/gpio/consumer.h>
 #include <linux/interrupt.h>
 #include <linux/workqueue.h>
@@ -345,21 +344,9 @@  int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count,
 				goto undo;
 			}
 		} else {
-			/* legacy GPIO number */
-			if (!gpio_is_valid(gpios[i].gpio)) {
-				dev_err(jack->card->dev,
-					"ASoC: Invalid gpio %d\n",
-					gpios[i].gpio);
-				ret = -EINVAL;
-				goto undo;
-			}
-
-			ret = gpio_request_one(gpios[i].gpio, GPIOF_IN,
-					       gpios[i].name);
-			if (ret)
-				goto undo;
-
-			gpios[i].desc = gpio_to_desc(gpios[i].gpio);
+			dev_err(jack->card->dev, "ASoC: Invalid gpio at index %d\n", i);
+		        ret = -EINVAL;
+		        goto undo;
 		}
 got_gpio:
 		INIT_DELAYED_WORK(&gpios[i].work, gpio_work);
@@ -373,7 +360,7 @@  int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count,
 					      gpios[i].name,
 					      &gpios[i]);
 		if (ret < 0)
-			goto err;
+			goto undo;
 
 		if (gpios[i].wake) {
 			ret = irq_set_irq_wake(gpiod_to_irq(gpios[i].desc), 1);
@@ -401,8 +388,6 @@  int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count,
 	devres_add(jack->card->dev, tbl);
 	return 0;
 
-err:
-	gpio_free(gpios[i].gpio);
 undo:
 	jack_free_gpios(jack, i, gpios);
 	devres_free(tbl);