Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1339526 > unrolled thread

[PATCH 00/61] gpio: Add and use devm_gpiochip_add_data()

Started byLaxman Dewangan <ldewangan@nvidia.com>
First post2016-02-22 15:30 +0100
Last post2016-02-22 15:50 +0100
Articles 20 on this page of 55 — 5 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 00/61] gpio: Add and use devm_gpiochip_add_data() Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 35/61] gpio: palmas: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 21/61] gpio: generic: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 50/61] gpio: tps65912: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 03/61] gpio: Add missing devm_gpio_ wrapper in devres.txt Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 11/61] gpio: bcm-kona: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
      Re: [PATCH 11/61] gpio: bcm-kona: Use devm_gpiochip_add_data() for  gpio registration Ray Jui <ray.jui@broadcom.com> - 2016-02-22 18:20 +0100
    [PATCH 39/61] gpio: spear-spics: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 29/61] gpio: moxart: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 28/61] gpio: mc9s08dz60: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 51/61] gpio: ts4800: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 49/61] gpio: tps65910: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 60/61] gpio: xgene-sb: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 12/61] gpio: clps711x: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 27/61] gpio: lynxpoint: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 06/61] gpio: adp5520: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 31/61] gpio: mxc: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 44/61] gpio: tb10x: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 58/61] gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
      Re: [PATCH 58/61] gpio: wm8350: Use devm_gpiochip_add_data() for  gpio registration Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2016-02-22 17:40 +0100
    [PATCH 40/61] gpio: sta2x11: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 46/61] gpio: tegra: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
      Re: [PATCH 46/61] gpio: tegra: Use devm_gpiochip_add_data() for gpio  registration Thierry Reding <thierry.reding@gmail.com> - 2016-02-23 17:40 +0100
    [PATCH 18/61] gpio: ep93xx: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 25/61] gpio: lp3943: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 33/61] gpio: pca953x: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 17/61] gpio: dln2: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 05/61] gpio: adnp: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 32/61] gpio: octeon: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 57/61] gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
      Re: [PATCH 57/61] gpio: wm8350: Use devm_gpiochip_add_data() for  gpio registration Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2016-02-22 17:40 +0100
    [PATCH 22/61] gpio: iop: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 55/61] gpio: viperboard: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 43/61] gpio: syscon: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 15/61] gpio: da9052: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 02/61] gpio: Add resource management devm_gpio_chip_{add_data,remove} Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 34/61] gpio: pcf857x: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 59/61] gpio: wm8994: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
      Re: [PATCH 59/61] gpio: wm8994: Use devm_gpiochip_add_data() for  gpio registration Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2016-02-22 17:40 +0100
    [PATCH 16/61] gpio: da9055: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:30 +0100
    [PATCH 20/61] gpio: ge: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 38/61] gpio: sch: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 26/61] gpio: lpc32xx: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 19/61] gpio: f7188x: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 45/61] gpio: tc3589x: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 48/61] gpio: tps6586x: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 41/61] gpio: stp-xway: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 36/61] gpio: rc5t583: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    [PATCH 23/61] gpio: janz-ttl: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:40 +0100
    Re: [PATCH 00/61] gpio: Add and use devm_gpiochip_add_data() Linus Walleij <linus.walleij@linaro.org> - 2016-02-22 15:50 +0100
      Re: [PATCH 00/61] gpio: Add and use devm_gpiochip_add_data() Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-23 10:20 +0100
        Re: [PATCH 00/61] gpio: Add and use devm_gpiochip_add_data() Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-23 16:30 +0100
          Re: [PATCH 00/61] gpio: Add and use devm_gpiochip_add_data() Linus Walleij <linus.walleij@linaro.org> - 2016-02-25 14:30 +0100
            Re: [PATCH 00/61] gpio: Add and use devm_gpiochip_add_data() Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-28 15:50 +0100
    [PATCH 07/61] gpio: adp5588: Use devm_gpiochip_add_data() for gpio registration Laxman Dewangan <ldewangan@nvidia.com> - 2016-02-22 15:50 +0100

Page 1 of 3  [1] 2 3  Next page →


#1339526 — [PATCH 00/61] gpio: Add and use devm_gpiochip_add_data()

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 00/61] gpio: Add and use devm_gpiochip_add_data()
Message-ID<r4ZER-741-3@gated-at.bofh.it>
Add resource management APIs for gpiochip_add_data() and
gpiochip_remove() and use these APIs from different HW drivers.


This is based on discussion on patch to use the new APIs.
	gpio: Add devm_ apis for gpio_chip_add and remove

Laxman Dewangan (61):
  gpio: Add devm_ apis for gpiochip_add_data and gpiochip_remove
  gpio: Add resource management devm_gpio_chip_{add_data,remove}
  gpio: Add missing devm_gpio_ wrapper in devres.txt
  gpio: 74xx-mmio: Use devm_gpiochip_add_data() for gpio registration
  gpio: adnp: Use devm_gpiochip_add_data() for gpio registration
  gpio: adp5520: Use devm_gpiochip_add_data() for gpio registration
  gpio: adp5588: Use devm_gpiochip_add_data() for gpio registration
  gpio: amdpt: Use devm_gpiochip_add_data() for gpio registration
  gpio: arizona: Use devm_gpiochip_add_data() for gpio registration
  gpio: ath79: Use devm_gpiochip_add_data() for gpio registration
  gpio: bcm-kona: Use devm_gpiochip_add_data() for gpio registration
  gpio: clps711x: Use devm_gpiochip_add_data() for gpio registration
  gpio: crystalcove: Use devm_gpiochip_add_data() for gpio registration
  gpio: cs5535: Use devm_gpiochip_add_data() for gpio registration
  gpio: da9052: Use devm_gpiochip_add_data() for gpio registration
  gpio: da9055: Use devm_gpiochip_add_data() for gpio registration
  gpio: dln2: Use devm_gpiochip_add_data() for gpio registration
  gpio: ep93xx: Use devm_gpiochip_add_data() for gpio registration
  gpio: f7188x: Use devm_gpiochip_add_data() for gpio registration
  gpio: ge: Use devm_gpiochip_add_data() for gpio registration
  gpio: generic: Use devm_gpiochip_add_data() for gpio registration
  gpio: iop: Use devm_gpiochip_add_data() for gpio registration
  gpio: janz-ttl: Use devm_gpiochip_add_data() for gpio registration
  gpio: kempld: Use devm_gpiochip_add_data() for gpio registration
  gpio: lp3943: Use devm_gpiochip_add_data() for gpio registration
  gpio: lpc32xx: Use devm_gpiochip_add_data() for gpio registration
  gpio: lynxpoint: Use devm_gpiochip_add_data() for gpio registration
  gpio: mc9s08dz60: Use devm_gpiochip_add_data() for gpio registration
  gpio: moxart: Use devm_gpiochip_add_data() for gpio registration
  gpio: mvebu: Use devm_gpiochip_add_data() for gpio registration
  gpio: mxc: Use devm_gpiochip_add_data() for gpio registration
  gpio: octeon: Use devm_gpiochip_add_data() for gpio registration
  gpio: pca953x: Use devm_gpiochip_add_data() for gpio registration
  gpio: pcf857x: Use devm_gpiochip_add_data() for gpio registration
  gpio: palmas: Use devm_gpiochip_add_data() for gpio registration
  gpio: rc5t583: Use devm_gpiochip_add_data() for gpio registration
  gpio: rdc321x: Use devm_gpiochip_add_data() for gpio registration
  gpio: sch: Use devm_gpiochip_add_data() for gpio registration
  gpio: spear-spics: Use devm_gpiochip_add_data() for gpio registration
  gpio: sta2x11: Use devm_gpiochip_add_data() for gpio registration
  gpio: stp-xway: Use devm_gpiochip_add_data() for gpio registration
  gpio: sx150x: Use devm_gpiochip_add_data() for gpio registration
  gpio: syscon: Use devm_gpiochip_add_data() for gpio registration
  gpio: tb10x: Use devm_gpiochip_add_data() for gpio registration
  gpio: tc3589x: Use devm_gpiochip_add_data() for gpio registration
  gpio: tegra: Use devm_gpiochip_add_data() for gpio registration
  gpio: timberdale Use devm_gpiochip_add_data() for gpio registration
  gpio: tps6586x: Use devm_gpiochip_add_data() for gpio registration
  gpio: tps65910: Use devm_gpiochip_add_data() for gpio registration
  gpio: tps65912: Use devm_gpiochip_add_data() for gpio registration
  gpio: ts4800: Use devm_gpiochip_add_data() for gpio registration
  gpio: ts5500: Use devm_gpiochip_add_data() for gpio registration
  gpio: twl6040: Use devm_gpiochip_add_data() for gpio registration
  gpio: ucb1400: Use devm_gpiochip_add_data() for gpio registration
  gpio: viperboard: Use devm_gpiochip_add_data() for gpio registration
  gpio: vx855: Use devm_gpiochip_add_data() for gpio registration
  gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration
  gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration
  gpio: wm8994: Use devm_gpiochip_add_data() for gpio registration
  gpio: xgene-sb: Use devm_gpiochip_add_data() for gpio registration
  gpio: xgene: Use devm_gpiochip_add_data() for gpio registration

 Documentation/driver-model/devres.txt |  5 +++
 drivers/gpio/gpio-74xx-mmio.c         | 11 +-----
 drivers/gpio/gpio-adnp.c              | 11 +-----
 drivers/gpio/gpio-adp5520.c           | 13 +-----
 drivers/gpio/gpio-adp5588.c           |  4 +-
 drivers/gpio/gpio-amdpt.c             | 12 +-----
 drivers/gpio/gpio-arizona.c           | 12 +-----
 drivers/gpio/gpio-ath79.c             |  2 +-
 drivers/gpio/gpio-bcm-kona.c          |  2 +-
 drivers/gpio/gpio-clps711x.c          | 11 +-----
 drivers/gpio/gpio-crystalcove.c       |  9 +----
 drivers/gpio/gpio-cs5535.c            | 20 +++-------
 drivers/gpio/gpio-da9052.c            | 11 +-----
 drivers/gpio/gpio-da9055.c            | 16 +-------
 drivers/gpio/gpio-dln2.c              | 16 ++------
 drivers/gpio/gpio-ep93xx.c            |  2 +-
 drivers/gpio/gpio-f7188x.c            | 26 +-----------
 drivers/gpio/gpio-ge.c                |  2 +-
 drivers/gpio/gpio-generic.c           | 11 +-----
 drivers/gpio/gpio-iop.c               |  2 +-
 drivers/gpio/gpio-janz-ttl.c          | 12 +-----
 drivers/gpio/gpio-kempld.c            | 11 +-----
 drivers/gpio/gpio-lp3943.c            | 12 +-----
 drivers/gpio/gpio-lpc32xx.c           |  2 +-
 drivers/gpio/gpio-lynxpoint.c         |  4 +-
 drivers/gpio/gpio-mc9s08dz60.c        | 13 +-----
 drivers/gpio/gpio-moxart.c            |  2 +-
 drivers/gpio/gpio-mvebu.c             | 11 ++----
 drivers/gpio/gpio-mxc.c               |  6 +--
 drivers/gpio/gpio-octeon.c            | 10 +----
 drivers/gpio/gpio-palmas.c            | 12 +-----
 drivers/gpio/gpio-pca953x.c           |  4 +-
 drivers/gpio/gpio-pcf857x.c           | 10 ++---
 drivers/gpio/gpio-rc5t583.c           | 12 +-----
 drivers/gpio/gpio-rdc321x.c           | 13 +-----
 drivers/gpio/gpio-sch.c               | 11 +-----
 drivers/gpio/gpio-spear-spics.c       |  2 +-
 drivers/gpio/gpio-sta2x11.c           |  2 +-
 drivers/gpio/gpio-stp-xway.c          |  2 +-
 drivers/gpio/gpio-sx150x.c            | 18 +--------
 drivers/gpio/gpio-syscon.c            | 11 +-----
 drivers/gpio/gpio-tb10x.c             | 22 +++--------
 drivers/gpio/gpio-tc3589x.c           | 13 +-----
 drivers/gpio/gpio-tegra.c             |  2 +-
 drivers/gpio/gpio-timberdale.c        |  4 +-
 drivers/gpio/gpio-tps6586x.c          | 12 +-----
 drivers/gpio/gpio-tps65910.c          | 12 +-----
 drivers/gpio/gpio-tps65912.c          | 12 +-----
 drivers/gpio/gpio-ts4800.c            | 12 +-----
 drivers/gpio/gpio-ts5500.c            |  9 ++---
 drivers/gpio/gpio-twl6040.c           |  9 +----
 drivers/gpio/gpio-ucb1400.c           |  3 +-
 drivers/gpio/gpio-viperboard.c        | 24 ++----------
 drivers/gpio/gpio-vx855.c             | 12 +-----
 drivers/gpio/gpio-wm831x.c            | 12 +-----
 drivers/gpio/gpio-wm8350.c            | 12 +-----
 drivers/gpio/gpio-wm8994.c            | 17 ++------
 drivers/gpio/gpio-xgene-sb.c          |  3 +-
 drivers/gpio/gpio-xgene.c             | 11 +-----
 drivers/gpio/gpiolib.c                | 74 +++++++++++++++++++++++++++++++++++
 include/linux/gpio/driver.h           |  4 ++
 61 files changed, 180 insertions(+), 477 deletions(-)

-- 
2.1.4

[toc] | [next] | [standalone]


#1339527 — [PATCH 35/61] gpio: palmas: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 35/61] gpio: palmas: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZET-741-43@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-palmas.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/gpio/gpio-palmas.c b/drivers/gpio/gpio-palmas.c
index fdfb3b1..6f27b3d 100644
--- a/drivers/gpio/gpio-palmas.c
+++ b/drivers/gpio/gpio-palmas.c
@@ -195,7 +195,8 @@ static int palmas_gpio_probe(struct platform_device *pdev)
 	else
 		palmas_gpio->gpio_chip.base = -1;
 
-	ret = gpiochip_add_data(&palmas_gpio->gpio_chip, palmas_gpio);
+	ret = devm_gpiochip_add_data(&pdev->dev, &palmas_gpio->gpio_chip,
+				     palmas_gpio);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
 		return ret;
@@ -205,20 +206,11 @@ static int palmas_gpio_probe(struct platform_device *pdev)
 	return ret;
 }
 
-static int palmas_gpio_remove(struct platform_device *pdev)
-{
-	struct palmas_gpio *palmas_gpio = platform_get_drvdata(pdev);
-
-	gpiochip_remove(&palmas_gpio->gpio_chip);
-	return 0;
-}
-
 static struct platform_driver palmas_gpio_driver = {
 	.driver.name	= "palmas-gpio",
 	.driver.owner	= THIS_MODULE,
 	.driver.of_match_table = of_palmas_gpio_match,
 	.probe		= palmas_gpio_probe,
-	.remove		= palmas_gpio_remove,
 };
 
 static int __init palmas_gpio_init(void)
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339528 — [PATCH 21/61] gpio: generic: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 21/61] gpio: generic: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZET-741-45@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-generic.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/drivers/gpio/gpio-generic.c b/drivers/gpio/gpio-generic.c
index 2a4f233..54cddfa 100644
--- a/drivers/gpio/gpio-generic.c
+++ b/drivers/gpio/gpio-generic.c
@@ -628,15 +628,7 @@ static int bgpio_pdev_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, gc);
 
-	return gpiochip_add_data(gc, NULL);
-}
-
-static int bgpio_pdev_remove(struct platform_device *pdev)
-{
-	struct gpio_chip *gc = platform_get_drvdata(pdev);
-
-	gpiochip_remove(gc);
-	return 0;
+	return devm_gpiochip_add_data(&pdev->dev, gc, NULL);
 }
 
 static const struct platform_device_id bgpio_id_table[] = {
@@ -657,7 +649,6 @@ static struct platform_driver bgpio_driver = {
 	},
 	.id_table = bgpio_id_table,
 	.probe = bgpio_pdev_probe,
-	.remove = bgpio_pdev_remove,
 };
 
 module_platform_driver(bgpio_driver);
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339529 — [PATCH 50/61] gpio: tps65912: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 50/61] gpio: tps65912: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZET-741-47@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-tps65912.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/gpio/gpio-tps65912.c b/drivers/gpio/gpio-tps65912.c
index 4f2029c..e72302d 100644
--- a/drivers/gpio/gpio-tps65912.c
+++ b/drivers/gpio/gpio-tps65912.c
@@ -106,7 +106,8 @@ static int tps65912_gpio_probe(struct platform_device *pdev)
 	if (pdata && pdata->gpio_base)
 		tps65912_gpio->gpio_chip.base = pdata->gpio_base;
 
-	ret = gpiochip_add_data(&tps65912_gpio->gpio_chip, tps65912_gpio);
+	ret = devm_gpiochip_add_data(&pdev->dev, &tps65912_gpio->gpio_chip,
+				     tps65912_gpio);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "Failed to register gpiochip, %d\n", ret);
 		return ret;
@@ -117,20 +118,11 @@ static int tps65912_gpio_probe(struct platform_device *pdev)
 	return ret;
 }
 
-static int tps65912_gpio_remove(struct platform_device *pdev)
-{
-	struct tps65912_gpio_data  *tps65912_gpio = platform_get_drvdata(pdev);
-
-	gpiochip_remove(&tps65912_gpio->gpio_chip);
-	return 0;
-}
-
 static struct platform_driver tps65912_gpio_driver = {
 	.driver = {
 		.name = "tps65912-gpio",
 	},
 	.probe = tps65912_gpio_probe,
-	.remove = tps65912_gpio_remove,
 };
 
 static int __init tps65912_gpio_init(void)
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339530 — [PATCH 03/61] gpio: Add missing devm_gpio_ wrapper in devres.txt

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 03/61] gpio: Add missing devm_gpio_ wrapper in devres.txt
Message-ID<r4ZET-741-49@gated-at.bofh.it>
In reply to#1339526
Add following missing devm wrappers in file devrs.txt under
list of managed interfaces.
  devm_gpio_request()
  devm_gpio_request_one()
  devm_gpio_free()

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 Documentation/driver-model/devres.txt | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/driver-model/devres.txt b/Documentation/driver-model/devres.txt
index 8d8f944..73b98df 100644
--- a/Documentation/driver-model/devres.txt
+++ b/Documentation/driver-model/devres.txt
@@ -254,6 +254,9 @@ GPIO
   devm_gpiod_put()
   devm_gpiochip_add_data()
   devm_gpiochip_remove()
+  devm_gpio_request()
+  devm_gpio_request_one()
+  devm_gpio_free()
 
 IIO
   devm_iio_device_alloc()
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339531 — [PATCH 11/61] gpio: bcm-kona: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 11/61] gpio: bcm-kona: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZET-741-53@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Cc: Ray Jui <rjui@broadcom.com>
---
 drivers/gpio/gpio-bcm-kona.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c
index b6c5abe..2fd38d5 100644
--- a/drivers/gpio/gpio-bcm-kona.c
+++ b/drivers/gpio/gpio-bcm-kona.c
@@ -630,7 +630,7 @@ static int bcm_kona_gpio_probe(struct platform_device *pdev)
 
 	bcm_kona_gpio_reset(kona_gpio);
 
-	ret = gpiochip_add_data(chip, kona_gpio);
+	ret = devm_gpiochip_add_data(dev, chip, kona_gpio);
 	if (ret < 0) {
 		dev_err(dev, "Couldn't add GPIO chip -- %d\n", ret);
 		goto err_irq_domain;
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339743 — Re: [PATCH 11/61] gpio: bcm-kona: Use devm_gpiochip_add_data() for gpio registration

FromRay Jui <ray.jui@broadcom.com>
Date2016-02-22 18:20 +0100
SubjectRe: [PATCH 11/61] gpio: bcm-kona: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r52jo-FX-11@gated-at.bofh.it>
In reply to#1339531

On 2/22/2016 6:08 AM, Laxman Dewangan wrote:
> Use devm_gpiochip_add_data() for GPIO registration.
>
> Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
> Cc: Ray Jui <rjui@broadcom.com>
> ---
>  drivers/gpio/gpio-bcm-kona.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c
> index b6c5abe..2fd38d5 100644
> --- a/drivers/gpio/gpio-bcm-kona.c
> +++ b/drivers/gpio/gpio-bcm-kona.c
> @@ -630,7 +630,7 @@ static int bcm_kona_gpio_probe(struct platform_device *pdev)
>
>  	bcm_kona_gpio_reset(kona_gpio);
>
> -	ret = gpiochip_add_data(chip, kona_gpio);
> +	ret = devm_gpiochip_add_data(dev, chip, kona_gpio);
>  	if (ret < 0) {
>  		dev_err(dev, "Couldn't add GPIO chip -- %d\n", ret);
>  		goto err_irq_domain;
>

Acked-by: Ray Jui <ray.jui@broadcom.com>

Thanks!

[toc] | [prev] | [next] | [standalone]


#1339532 — [PATCH 39/61] gpio: spear-spics: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 39/61] gpio: spear-spics: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-55@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-spear-spics.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-spear-spics.c b/drivers/gpio/gpio-spear-spics.c
index 50fb090..7ffd164 100644
--- a/drivers/gpio/gpio-spear-spics.c
+++ b/drivers/gpio/gpio-spear-spics.c
@@ -165,7 +165,7 @@ static int spics_gpio_probe(struct platform_device *pdev)
 	spics->chip.owner = THIS_MODULE;
 	spics->last_off = -1;
 
-	ret = gpiochip_add_data(&spics->chip, spics);
+	ret = devm_gpiochip_add_data(&pdev->dev, &spics->chip, spics);
 	if (ret) {
 		dev_err(&pdev->dev, "unable to add gpio chip\n");
 		return ret;
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339533 — [PATCH 29/61] gpio: moxart: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 29/61] gpio: moxart: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZET-741-51@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-moxart.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-moxart.c b/drivers/gpio/gpio-moxart.c
index ca60453..869002b 100644
--- a/drivers/gpio/gpio-moxart.c
+++ b/drivers/gpio/gpio-moxart.c
@@ -63,7 +63,7 @@ static int moxart_gpio_probe(struct platform_device *pdev)
 	gc->parent = dev;
 	gc->owner = THIS_MODULE;
 
-	ret = gpiochip_add_data(gc, NULL);
+	ret = devm_gpiochip_add_data(dev, gc, NULL);
 	if (ret) {
 		dev_err(dev, "%s: gpiochip_add failed\n",
 			dev->of_node->full_name);
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339534 — [PATCH 28/61] gpio: mc9s08dz60: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 28/61] gpio: mc9s08dz60: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-57@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-mc9s08dz60.c | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/gpio/gpio-mc9s08dz60.c b/drivers/gpio/gpio-mc9s08dz60.c
index ba22fb9..14f252f 100644
--- a/drivers/gpio/gpio-mc9s08dz60.c
+++ b/drivers/gpio/gpio-mc9s08dz60.c
@@ -103,17 +103,7 @@ static int mc9s08dz60_probe(struct i2c_client *client,
 	mc9s->client = client;
 	i2c_set_clientdata(client, mc9s);
 
-	return gpiochip_add_data(&mc9s->chip, mc9s);
-}
-
-static int mc9s08dz60_remove(struct i2c_client *client)
-{
-	struct mc9s08dz60 *mc9s;
-
-	mc9s = i2c_get_clientdata(client);
-
-	gpiochip_remove(&mc9s->chip);
-	return 0;
+	return devm_gpiochip_add_data(&client->dev, &mc9s->chip, mc9s);
 }
 
 static const struct i2c_device_id mc9s08dz60_id[] = {
@@ -128,7 +118,6 @@ static struct i2c_driver mc9s08dz60_i2c_driver = {
 		.name = "mc9s08dz60",
 	},
 	.probe = mc9s08dz60_probe,
-	.remove = mc9s08dz60_remove,
 	.id_table = mc9s08dz60_id,
 };
 
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339535 — [PATCH 51/61] gpio: ts4800: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 51/61] gpio: ts4800: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-59@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-ts4800.c | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/drivers/gpio/gpio-ts4800.c b/drivers/gpio/gpio-ts4800.c
index c4908a4..b8762d9 100644
--- a/drivers/gpio/gpio-ts4800.c
+++ b/drivers/gpio/gpio-ts4800.c
@@ -61,16 +61,7 @@ static int ts4800_gpio_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, chip);
 
-	return gpiochip_add_data(chip, NULL);
-}
-
-static int ts4800_gpio_remove(struct platform_device *pdev)
-{
-	struct gpio_chip *chip = platform_get_drvdata(pdev);
-
-	gpiochip_remove(chip);
-
-	return 0;
+	return devm_gpiochip_add_data(&pdev->dev, chip, NULL);
 }
 
 static const struct of_device_id ts4800_gpio_of_match[] = {
@@ -84,7 +75,6 @@ static struct platform_driver ts4800_gpio_driver = {
 		   .of_match_table = ts4800_gpio_of_match,
 		   },
 	.probe = ts4800_gpio_probe,
-	.remove = ts4800_gpio_remove,
 };
 
 module_platform_driver_probe(ts4800_gpio_driver, ts4800_gpio_probe);
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339536 — [PATCH 49/61] gpio: tps65910: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 49/61] gpio: tps65910: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-63@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-tps65910.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/gpio/gpio-tps65910.c b/drivers/gpio/gpio-tps65910.c
index e81eee7..cdbd7c7 100644
--- a/drivers/gpio/gpio-tps65910.c
+++ b/drivers/gpio/gpio-tps65910.c
@@ -170,7 +170,8 @@ static int tps65910_gpio_probe(struct platform_device *pdev)
 	}
 
 skip_init:
-	ret = gpiochip_add_data(&tps65910_gpio->gpio_chip, tps65910_gpio);
+	ret = devm_gpiochip_add_data(&pdev->dev, &tps65910_gpio->gpio_chip,
+				     tps65910_gpio);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
 		return ret;
@@ -181,19 +182,10 @@ skip_init:
 	return ret;
 }
 
-static int tps65910_gpio_remove(struct platform_device *pdev)
-{
-	struct tps65910_gpio *tps65910_gpio = platform_get_drvdata(pdev);
-
-	gpiochip_remove(&tps65910_gpio->gpio_chip);
-	return 0;
-}
-
 static struct platform_driver tps65910_gpio_driver = {
 	.driver.name    = "tps65910-gpio",
 	.driver.owner   = THIS_MODULE,
 	.probe		= tps65910_gpio_probe,
-	.remove		= tps65910_gpio_remove,
 };
 
 static int __init tps65910_gpio_init(void)
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339537 — [PATCH 60/61] gpio: xgene-sb: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 60/61] gpio: xgene-sb: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-65@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-xgene-sb.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpio/gpio-xgene-sb.c b/drivers/gpio/gpio-xgene-sb.c
index 282004d..e665770 100644
--- a/drivers/gpio/gpio-xgene-sb.c
+++ b/drivers/gpio/gpio-xgene-sb.c
@@ -116,7 +116,7 @@ static int xgene_gpio_sb_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, priv);
 
-	ret = gpiochip_add_data(&priv->gc, priv);
+	ret = devm_gpiochip_add_data(&pdev->dev, &priv->gc, priv);
 	if (ret)
 		dev_err(&pdev->dev, "failed to register X-Gene GPIO Standby driver\n");
 	else
@@ -138,7 +138,6 @@ static int xgene_gpio_sb_remove(struct platform_device *pdev)
 		acpi_gpiochip_free_interrupts(&priv->gc);
 	}
 
-	gpiochip_remove(&priv->gc);
 	return 0;
 }
 
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339538 — [PATCH 12/61] gpio: clps711x: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 12/61] gpio: clps711x: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-69@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-clps711x.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/drivers/gpio/gpio-clps711x.c b/drivers/gpio/gpio-clps711x.c
index c84f955..5a69025 100644
--- a/drivers/gpio/gpio-clps711x.c
+++ b/drivers/gpio/gpio-clps711x.c
@@ -67,15 +67,7 @@ static int clps711x_gpio_probe(struct platform_device *pdev)
 	gc->owner = THIS_MODULE;
 	platform_set_drvdata(pdev, gc);
 
-	return gpiochip_add_data(gc, NULL);
-}
-
-static int clps711x_gpio_remove(struct platform_device *pdev)
-{
-	struct gpio_chip *gc = platform_get_drvdata(pdev);
-
-	gpiochip_remove(gc);
-	return 0;
+	return devm_gpiochip_add_data(&pdev->dev, gc, NULL);
 }
 
 static const struct of_device_id __maybe_unused clps711x_gpio_ids[] = {
@@ -90,7 +82,6 @@ static struct platform_driver clps711x_gpio_driver = {
 		.of_match_table	= of_match_ptr(clps711x_gpio_ids),
 	},
 	.probe	= clps711x_gpio_probe,
-	.remove	= clps711x_gpio_remove,
 };
 module_platform_driver(clps711x_gpio_driver);
 
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339540 — [PATCH 27/61] gpio: lynxpoint: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 27/61] gpio: lynxpoint: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-77@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-lynxpoint.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/gpio/gpio-lynxpoint.c b/drivers/gpio/gpio-lynxpoint.c
index 1310777..9df015e 100644
--- a/drivers/gpio/gpio-lynxpoint.c
+++ b/drivers/gpio/gpio-lynxpoint.c
@@ -370,7 +370,7 @@ static int lp_gpio_probe(struct platform_device *pdev)
 	gc->can_sleep = false;
 	gc->parent = dev;
 
-	ret = gpiochip_add_data(gc, lg);
+	ret = devm_gpiochip_add_data(dev, gc, lg);
 	if (ret) {
 		dev_err(dev, "failed adding lp-gpio chip\n");
 		return ret;
@@ -439,9 +439,7 @@ MODULE_DEVICE_TABLE(acpi, lynxpoint_gpio_acpi_match);
 
 static int lp_gpio_remove(struct platform_device *pdev)
 {
-	struct lp_gpio *lg = platform_get_drvdata(pdev);
 	pm_runtime_disable(&pdev->dev);
-	gpiochip_remove(&lg->chip);
 	return 0;
 }
 
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339541 — [PATCH 06/61] gpio: adp5520: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 06/61] gpio: adp5520: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEU-741-79@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
call for gpiochip_remove() from error path.

Also remove the need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Cc: Michael Hennerich <michael.hennerich@analog.com>
---
 drivers/gpio/gpio-adp5520.c | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/gpio/gpio-adp5520.c b/drivers/gpio/gpio-adp5520.c
index 4fa7ff1..abf1996 100644
--- a/drivers/gpio/gpio-adp5520.c
+++ b/drivers/gpio/gpio-adp5520.c
@@ -153,7 +153,7 @@ static int adp5520_gpio_probe(struct platform_device *pdev)
 		goto err;
 	}
 
-	ret = gpiochip_add_data(&dev->gpio_chip, dev);
+	ret = devm_gpiochip_add_data(&pdev->dev, &dev->gpio_chip, dev);
 	if (ret)
 		goto err;
 
@@ -164,22 +164,11 @@ err:
 	return ret;
 }
 
-static int adp5520_gpio_remove(struct platform_device *pdev)
-{
-	struct adp5520_gpio *dev;
-
-	dev = platform_get_drvdata(pdev);
-	gpiochip_remove(&dev->gpio_chip);
-
-	return 0;
-}
-
 static struct platform_driver adp5520_gpio_driver = {
 	.driver	= {
 		.name	= "adp5520-gpio",
 	},
 	.probe		= adp5520_gpio_probe,
-	.remove		= adp5520_gpio_remove,
 };
 
 module_platform_driver(adp5520_gpio_driver);
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339542 — [PATCH 31/61] gpio: mxc: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 31/61] gpio: mxc: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEV-741-83@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and clean the
error path.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-mxc.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/gpio/gpio-mxc.c b/drivers/gpio/gpio-mxc.c
index 7fd21cb..1b342a3 100644
--- a/drivers/gpio/gpio-mxc.c
+++ b/drivers/gpio/gpio-mxc.c
@@ -462,14 +462,14 @@ static int mxc_gpio_probe(struct platform_device *pdev)
 	port->gc.base = (pdev->id < 0) ? of_alias_get_id(np, "gpio") * 32 :
 					     pdev->id * 32;
 
-	err = gpiochip_add_data(&port->gc, port);
+	err = devm_gpiochip_add_data(&pdev->dev, &port->gc, port);
 	if (err)
 		goto out_bgio;
 
 	irq_base = irq_alloc_descs(-1, 0, 32, numa_node_id());
 	if (irq_base < 0) {
 		err = irq_base;
-		goto out_gpiochip_remove;
+		goto out_bgio;
 	}
 
 	port->domain = irq_domain_add_legacy(np, 32, irq_base, 0,
@@ -492,8 +492,6 @@ out_irqdomain_remove:
 	irq_domain_remove(port->domain);
 out_irqdesc_free:
 	irq_free_descs(irq_base, 32);
-out_gpiochip_remove:
-	gpiochip_remove(&port->gc);
 out_bgio:
 	dev_info(&pdev->dev, "%s failed with errno %d\n", __func__, err);
 	return err;
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339543 — [PATCH 44/61] gpio: tb10x: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 44/61] gpio: tb10x: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEV-741-91@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and clean the
error path.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/gpio/gpio-tb10x.c | 22 ++++++----------------
 1 file changed, 6 insertions(+), 16 deletions(-)

diff --git a/drivers/gpio/gpio-tb10x.c b/drivers/gpio/gpio-tb10x.c
index 5eaec20..80b6959a 100644
--- a/drivers/gpio/gpio-tb10x.c
+++ b/drivers/gpio/gpio-tb10x.c
@@ -205,10 +205,10 @@ static int tb10x_gpio_probe(struct platform_device *pdev)
 	tb10x_gpio->gc.can_sleep	= false;
 
 
-	ret = gpiochip_add_data(&tb10x_gpio->gc, tb10x_gpio);
+	ret = devm_gpiochip_add_data(&pdev->dev, &tb10x_gpio->gc, tb10x_gpio);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "Could not add gpiochip.\n");
-		goto fail_gpiochip_registration;
+		return ret;
 	}
 
 	platform_set_drvdata(pdev, tb10x_gpio);
@@ -219,7 +219,7 @@ static int tb10x_gpio_probe(struct platform_device *pdev)
 		ret = platform_get_irq(pdev, 0);
 		if (ret < 0) {
 			dev_err(&pdev->dev, "No interrupt specified.\n");
-			goto fail_get_irq;
+			return ret;
 		}
 
 		tb10x_gpio->gc.to_irq	= tb10x_gpio_to_irq;
@@ -229,14 +229,13 @@ static int tb10x_gpio_probe(struct platform_device *pdev)
 				IRQF_TRIGGER_NONE | IRQF_SHARED,
 				dev_name(&pdev->dev), tb10x_gpio);
 		if (ret != 0)
-			goto fail_request_irq;
+			return ret;
 
 		tb10x_gpio->domain = irq_domain_add_linear(dn,
 						tb10x_gpio->gc.ngpio,
 						&irq_generic_chip_ops, NULL);
 		if (!tb10x_gpio->domain) {
-			ret = -ENOMEM;
-			goto fail_irq_domain;
+			return -ENOMEM;
 		}
 
 		ret = irq_alloc_domain_generic_chips(tb10x_gpio->domain,
@@ -244,7 +243,7 @@ static int tb10x_gpio_probe(struct platform_device *pdev)
 				handle_edge_irq, IRQ_NOREQUEST, IRQ_NOPROBE,
 				IRQ_GC_INIT_MASK_CACHE);
 		if (ret)
-			goto fail_irq_domain;
+			return ret;
 
 		gc = tb10x_gpio->domain->gc->gc[0];
 		gc->reg_base                         = tb10x_gpio->base;
@@ -258,14 +257,6 @@ static int tb10x_gpio_probe(struct platform_device *pdev)
 	}
 
 	return 0;
-
-fail_irq_domain:
-fail_request_irq:
-fail_get_irq:
-	gpiochip_remove(&tb10x_gpio->gc);
-fail_gpiochip_registration:
-fail_ioremap:
-	return ret;
 }
 
 static int tb10x_gpio_remove(struct platform_device *pdev)
@@ -278,7 +269,6 @@ static int tb10x_gpio_remove(struct platform_device *pdev)
 		kfree(tb10x_gpio->domain->gc);
 		irq_domain_remove(tb10x_gpio->domain);
 	}
-	gpiochip_remove(&tb10x_gpio->gc);
 
 	return 0;
 }
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339544 — [PATCH 58/61] gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-02-22 15:30 +0100
Subject[PATCH 58/61] gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r4ZEV-741-89@gated-at.bofh.it>
In reply to#1339526
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Cc: patches@opensource.wolfsonmicro.com
---
 drivers/gpio/gpio-wm8350.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/gpio/gpio-wm8350.c b/drivers/gpio/gpio-wm8350.c
index 0a306b4..07d45a3 100644
--- a/drivers/gpio/gpio-wm8350.c
+++ b/drivers/gpio/gpio-wm8350.c
@@ -125,7 +125,8 @@ static int wm8350_gpio_probe(struct platform_device *pdev)
 	else
 		wm8350_gpio->gpio_chip.base = -1;
 
-	ret = gpiochip_add_data(&wm8350_gpio->gpio_chip, wm8350_gpio);
+	ret = devm_gpiochip_add_data(&pdev->dev, &wm8350_gpio->gpio_chip,
+				     wm8350_gpio);
 	if (ret < 0) {
 		dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
 		return ret;
@@ -136,19 +137,10 @@ static int wm8350_gpio_probe(struct platform_device *pdev)
 	return ret;
 }
 
-static int wm8350_gpio_remove(struct platform_device *pdev)
-{
-	struct wm8350_gpio_data *wm8350_gpio = platform_get_drvdata(pdev);
-
-	gpiochip_remove(&wm8350_gpio->gpio_chip);
-	return 0;
-}
-
 static struct platform_driver wm8350_gpio_driver = {
 	.driver.name	= "wm8350-gpio",
 	.driver.owner	= THIS_MODULE,
 	.probe		= wm8350_gpio_probe,
-	.remove		= wm8350_gpio_remove,
 };
 
 static int __init wm8350_gpio_init(void)
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1339706 — Re: [PATCH 58/61] gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration

FromCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
Date2016-02-22 17:40 +0100
SubjectRe: [PATCH 58/61] gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration
Message-ID<r51GG-8uQ-13@gated-at.bofh.it>
In reply to#1339544
On Mon, Feb 22, 2016 at 07:38:47PM +0530, Laxman Dewangan wrote:
> Use devm_gpiochip_add_data() for GPIO registration and remove the
> need of driver callback .remove.
> 
> Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
> Cc: patches@opensource.wolfsonmicro.com
> ---

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

Thanks,
Charles

[toc] | [prev] | [next] | [standalone]


Page 1 of 3  [1] 2 3  Next page →

Back to top | Article view | linux.kernel


csiph-web