All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laxman Dewangan <ldewangan@nvidia.com>
To: linus.walleij@linaro.org, corbet@lwn.net, lee@kernel.org
Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-gpio@vger.kernel.org, linux-rpi-kernel@lists.infradead.org,
	linux-arm-kernel@lists.infradead.org,
	bcm-kernel-feedback-list@broadcom.com,
	linux-mediatek@lists.infradead.org,
	Laxman Dewangan <ldewangan@nvidia.com>
Subject: [PATCH 01/50] pinctrl: Add devm_ apis for pinctrl_{register, unregister}
Date: Wed, 24 Feb 2016 18:45:26 +0530	[thread overview]
Message-ID: <1456319775-3216-2-git-send-email-ldewangan@nvidia.com> (raw)
In-Reply-To: <1456319775-3216-1-git-send-email-ldewangan@nvidia.com>

Add device managed APIs devm_pinctrl_register() and
devm_pinctrl_unregister() for the APIs pinctrl_register()
and pinctrl_unregister().

This helps in reducing code in error path and sometimes
removal of .remove callback for driver unbind.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/pinctrl/core.c          | 69 +++++++++++++++++++++++++++++++++++++++++
 include/linux/pinctrl/pinctrl.h |  6 ++++
 2 files changed, 75 insertions(+)

diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c
index 2686a44..ea4a7e6 100644
--- a/drivers/pinctrl/core.c
+++ b/drivers/pinctrl/core.c
@@ -1861,6 +1861,75 @@ void pinctrl_unregister(struct pinctrl_dev *pctldev)
 }
 EXPORT_SYMBOL_GPL(pinctrl_unregister);
 
+static void devm_pinctrl_dev_release(struct device *dev, void *res)
+{
+	struct pinctrl_dev *pctldev = *(struct pinctrl_dev **)res;
+
+	pinctrl_unregister(pctldev);
+}
+
+static int devm_pinctrl_dev_match(struct device *dev, void *res, void *data)
+{
+	struct pctldev **r = res;
+
+	if (!r || !*r) {
+		WARN_ON(!r || !*r);
+		return 0;
+	}
+
+	return *r == data;
+}
+
+/**
+ * devm_pinctrl_register() - Resource manager pinctrl_register()
+ * @dev: parent device for this pin controller
+ * @pctldesc: descriptor for this pin controller
+ * @driver_data: private pin controller data for this pin controller
+ *
+ * Returns an error pointer if pincontrol register failed. Otherwise
+ * it returns valid pinctrl handle.
+ *
+ * The pinctrl device will be automatically released when the device is unbound.
+ */
+struct pinctrl_dev *devm_pinctrl_register(struct device *dev,
+					  struct pinctrl_desc *pctldesc,
+					  void *driver_data)
+{
+	struct pinctrl_dev **ptr, *pctldev;
+
+	ptr = devres_alloc(devm_pinctrl_dev_release, sizeof(*ptr), GFP_KERNEL);
+	if (!ptr)
+		return ERR_PTR(-ENOMEM);
+
+	pctldev = pinctrl_register(pctldesc, dev, driver_data);
+	if (IS_ERR(pctldev)) {
+		devres_free(ptr);
+		return pctldev;
+	}
+
+	*ptr = pctldev;
+	devres_add(dev, ptr);
+
+	return pctldev;
+}
+EXPORT_SYMBOL_GPL(devm_pinctrl_register);
+
+/**
+ * devm_pinctrl_unregister() - Resource manager of pinctrl_unregister()
+ * @dev: device for which which resource was allocated
+ * @pctldev: the pinctrl device to unregister.
+ */
+void devm_pinctrl_unregister(struct device *dev, struct pinctrl_dev *pctldev)
+{
+	int ret;
+
+	ret = devres_release(dev, devm_pinctrl_dev_release,
+			     devm_pinctrl_dev_match, pctldev);
+	if (!ret)
+		WARN_ON(ret);
+}
+EXPORT_SYMBOL_GPL(devm_pinctrl_unregister);
+
 static int __init pinctrl_init(void)
 {
 	pr_info("initialized pinctrl subsystem\n");
diff --git a/include/linux/pinctrl/pinctrl.h b/include/linux/pinctrl/pinctrl.h
index 9ba59fc..a42e57d 100644
--- a/include/linux/pinctrl/pinctrl.h
+++ b/include/linux/pinctrl/pinctrl.h
@@ -144,6 +144,12 @@ struct pinctrl_desc {
 extern struct pinctrl_dev *pinctrl_register(struct pinctrl_desc *pctldesc,
 				struct device *dev, void *driver_data);
 extern void pinctrl_unregister(struct pinctrl_dev *pctldev);
+extern struct pinctrl_dev *devm_pinctrl_register(struct device *dev,
+				struct pinctrl_desc *pctldesc,
+				void *driver_data);
+extern void devm_pinctrl_unregister(struct device *dev,
+				struct pinctrl_dev *pctldev);
+
 extern bool pin_is_valid(struct pinctrl_dev *pctldev, int pin);
 extern void pinctrl_add_gpio_range(struct pinctrl_dev *pctldev,
 				struct pinctrl_gpio_range *range);
-- 
2.1.4

WARNING: multiple messages have this Message-ID (diff)
From: Laxman Dewangan <ldewangan@nvidia.com>
To: <linus.walleij@linaro.org>, <corbet@lwn.net>, <lee@kernel.org>
Cc: <linux-doc@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<linux-gpio@vger.kernel.org>,
	<linux-rpi-kernel@lists.infradead.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<bcm-kernel-feedback-list@broadcom.com>,
	<linux-mediatek@lists.infradead.org>,
	Laxman Dewangan <ldewangan@nvidia.com>
Subject: [PATCH 01/50] pinctrl: Add devm_ apis for pinctrl_{register, unregister}
Date: Wed, 24 Feb 2016 18:45:26 +0530	[thread overview]
Message-ID: <1456319775-3216-2-git-send-email-ldewangan@nvidia.com> (raw)
In-Reply-To: <1456319775-3216-1-git-send-email-ldewangan@nvidia.com>

Add device managed APIs devm_pinctrl_register() and
devm_pinctrl_unregister() for the APIs pinctrl_register()
and pinctrl_unregister().

This helps in reducing code in error path and sometimes
removal of .remove callback for driver unbind.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/pinctrl/core.c          | 69 +++++++++++++++++++++++++++++++++++++++++
 include/linux/pinctrl/pinctrl.h |  6 ++++
 2 files changed, 75 insertions(+)

diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c
index 2686a44..ea4a7e6 100644
--- a/drivers/pinctrl/core.c
+++ b/drivers/pinctrl/core.c
@@ -1861,6 +1861,75 @@ void pinctrl_unregister(struct pinctrl_dev *pctldev)
 }
 EXPORT_SYMBOL_GPL(pinctrl_unregister);
 
+static void devm_pinctrl_dev_release(struct device *dev, void *res)
+{
+	struct pinctrl_dev *pctldev = *(struct pinctrl_dev **)res;
+
+	pinctrl_unregister(pctldev);
+}
+
+static int devm_pinctrl_dev_match(struct device *dev, void *res, void *data)
+{
+	struct pctldev **r = res;
+
+	if (!r || !*r) {
+		WARN_ON(!r || !*r);
+		return 0;
+	}
+
+	return *r == data;
+}
+
+/**
+ * devm_pinctrl_register() - Resource manager pinctrl_register()
+ * @dev: parent device for this pin controller
+ * @pctldesc: descriptor for this pin controller
+ * @driver_data: private pin controller data for this pin controller
+ *
+ * Returns an error pointer if pincontrol register failed. Otherwise
+ * it returns valid pinctrl handle.
+ *
+ * The pinctrl device will be automatically released when the device is unbound.
+ */
+struct pinctrl_dev *devm_pinctrl_register(struct device *dev,
+					  struct pinctrl_desc *pctldesc,
+					  void *driver_data)
+{
+	struct pinctrl_dev **ptr, *pctldev;
+
+	ptr = devres_alloc(devm_pinctrl_dev_release, sizeof(*ptr), GFP_KERNEL);
+	if (!ptr)
+		return ERR_PTR(-ENOMEM);
+
+	pctldev = pinctrl_register(pctldesc, dev, driver_data);
+	if (IS_ERR(pctldev)) {
+		devres_free(ptr);
+		return pctldev;
+	}
+
+	*ptr = pctldev;
+	devres_add(dev, ptr);
+
+	return pctldev;
+}
+EXPORT_SYMBOL_GPL(devm_pinctrl_register);
+
+/**
+ * devm_pinctrl_unregister() - Resource manager of pinctrl_unregister()
+ * @dev: device for which which resource was allocated
+ * @pctldev: the pinctrl device to unregister.
+ */
+void devm_pinctrl_unregister(struct device *dev, struct pinctrl_dev *pctldev)
+{
+	int ret;
+
+	ret = devres_release(dev, devm_pinctrl_dev_release,
+			     devm_pinctrl_dev_match, pctldev);
+	if (!ret)
+		WARN_ON(ret);
+}
+EXPORT_SYMBOL_GPL(devm_pinctrl_unregister);
+
 static int __init pinctrl_init(void)
 {
 	pr_info("initialized pinctrl subsystem\n");
diff --git a/include/linux/pinctrl/pinctrl.h b/include/linux/pinctrl/pinctrl.h
index 9ba59fc..a42e57d 100644
--- a/include/linux/pinctrl/pinctrl.h
+++ b/include/linux/pinctrl/pinctrl.h
@@ -144,6 +144,12 @@ struct pinctrl_desc {
 extern struct pinctrl_dev *pinctrl_register(struct pinctrl_desc *pctldesc,
 				struct device *dev, void *driver_data);
 extern void pinctrl_unregister(struct pinctrl_dev *pctldev);
+extern struct pinctrl_dev *devm_pinctrl_register(struct device *dev,
+				struct pinctrl_desc *pctldesc,
+				void *driver_data);
+extern void devm_pinctrl_unregister(struct device *dev,
+				struct pinctrl_dev *pctldev);
+
 extern bool pin_is_valid(struct pinctrl_dev *pctldev, int pin);
 extern void pinctrl_add_gpio_range(struct pinctrl_dev *pctldev,
 				struct pinctrl_gpio_range *range);
-- 
2.1.4

WARNING: multiple messages have this Message-ID (diff)
From: ldewangan@nvidia.com (Laxman Dewangan)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 01/50] pinctrl: Add devm_ apis for pinctrl_{register, unregister}
Date: Wed, 24 Feb 2016 18:45:26 +0530	[thread overview]
Message-ID: <1456319775-3216-2-git-send-email-ldewangan@nvidia.com> (raw)
In-Reply-To: <1456319775-3216-1-git-send-email-ldewangan@nvidia.com>

Add device managed APIs devm_pinctrl_register() and
devm_pinctrl_unregister() for the APIs pinctrl_register()
and pinctrl_unregister().

This helps in reducing code in error path and sometimes
removal of .remove callback for driver unbind.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
 drivers/pinctrl/core.c          | 69 +++++++++++++++++++++++++++++++++++++++++
 include/linux/pinctrl/pinctrl.h |  6 ++++
 2 files changed, 75 insertions(+)

diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c
index 2686a44..ea4a7e6 100644
--- a/drivers/pinctrl/core.c
+++ b/drivers/pinctrl/core.c
@@ -1861,6 +1861,75 @@ void pinctrl_unregister(struct pinctrl_dev *pctldev)
 }
 EXPORT_SYMBOL_GPL(pinctrl_unregister);
 
+static void devm_pinctrl_dev_release(struct device *dev, void *res)
+{
+	struct pinctrl_dev *pctldev = *(struct pinctrl_dev **)res;
+
+	pinctrl_unregister(pctldev);
+}
+
+static int devm_pinctrl_dev_match(struct device *dev, void *res, void *data)
+{
+	struct pctldev **r = res;
+
+	if (!r || !*r) {
+		WARN_ON(!r || !*r);
+		return 0;
+	}
+
+	return *r == data;
+}
+
+/**
+ * devm_pinctrl_register() - Resource manager pinctrl_register()
+ * @dev: parent device for this pin controller
+ * @pctldesc: descriptor for this pin controller
+ * @driver_data: private pin controller data for this pin controller
+ *
+ * Returns an error pointer if pincontrol register failed. Otherwise
+ * it returns valid pinctrl handle.
+ *
+ * The pinctrl device will be automatically released when the device is unbound.
+ */
+struct pinctrl_dev *devm_pinctrl_register(struct device *dev,
+					  struct pinctrl_desc *pctldesc,
+					  void *driver_data)
+{
+	struct pinctrl_dev **ptr, *pctldev;
+
+	ptr = devres_alloc(devm_pinctrl_dev_release, sizeof(*ptr), GFP_KERNEL);
+	if (!ptr)
+		return ERR_PTR(-ENOMEM);
+
+	pctldev = pinctrl_register(pctldesc, dev, driver_data);
+	if (IS_ERR(pctldev)) {
+		devres_free(ptr);
+		return pctldev;
+	}
+
+	*ptr = pctldev;
+	devres_add(dev, ptr);
+
+	return pctldev;
+}
+EXPORT_SYMBOL_GPL(devm_pinctrl_register);
+
+/**
+ * devm_pinctrl_unregister() - Resource manager of pinctrl_unregister()
+ * @dev: device for which which resource was allocated
+ * @pctldev: the pinctrl device to unregister.
+ */
+void devm_pinctrl_unregister(struct device *dev, struct pinctrl_dev *pctldev)
+{
+	int ret;
+
+	ret = devres_release(dev, devm_pinctrl_dev_release,
+			     devm_pinctrl_dev_match, pctldev);
+	if (!ret)
+		WARN_ON(ret);
+}
+EXPORT_SYMBOL_GPL(devm_pinctrl_unregister);
+
 static int __init pinctrl_init(void)
 {
 	pr_info("initialized pinctrl subsystem\n");
diff --git a/include/linux/pinctrl/pinctrl.h b/include/linux/pinctrl/pinctrl.h
index 9ba59fc..a42e57d 100644
--- a/include/linux/pinctrl/pinctrl.h
+++ b/include/linux/pinctrl/pinctrl.h
@@ -144,6 +144,12 @@ struct pinctrl_desc {
 extern struct pinctrl_dev *pinctrl_register(struct pinctrl_desc *pctldesc,
 				struct device *dev, void *driver_data);
 extern void pinctrl_unregister(struct pinctrl_dev *pctldev);
+extern struct pinctrl_dev *devm_pinctrl_register(struct device *dev,
+				struct pinctrl_desc *pctldesc,
+				void *driver_data);
+extern void devm_pinctrl_unregister(struct device *dev,
+				struct pinctrl_dev *pctldev);
+
 extern bool pin_is_valid(struct pinctrl_dev *pctldev, int pin);
 extern void pinctrl_add_gpio_range(struct pinctrl_dev *pctldev,
 				struct pinctrl_gpio_range *range);
-- 
2.1.4

  reply	other threads:[~2016-02-24 13:15 UTC|newest]

Thread overview: 265+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-24 13:15 [PATCH 00/50] pinctrl: Add and use devm_ apis for pinctrl_{register, unregister} Laxman Dewangan
2016-02-24 13:15 ` Laxman Dewangan
2016-02-24 13:15 ` Laxman Dewangan
2016-02-24 13:15 ` Laxman Dewangan [this message]
2016-02-24 13:15   ` [PATCH 01/50] pinctrl: Add " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:21   ` Bjorn Andersson
2016-02-24 18:21     ` Bjorn Andersson
2016-02-25 14:46   ` Philipp Zabel
2016-02-25 14:46     ` Philipp Zabel
2016-02-24 13:15 ` [PATCH 03/50] pinctrl: bcm281xx: Use devm_pinctrl_register() for pinctrl registration Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:25   ` Ray Jui
2016-02-24 18:25     ` Ray Jui
2016-02-24 13:15 ` [PATCH 05/50] pinctrl: cygnus-mux: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:27   ` Ray Jui
2016-02-24 18:27     ` Ray Jui
2016-02-24 13:15 ` [PATCH 06/50] pinctrl: iproc-gpio: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:29   ` Ray Jui
2016-02-24 18:29     ` Ray Jui
2016-02-24 13:15 ` [PATCH 07/50] pinctrl: nsp-gpio: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:30   ` Ray Jui
2016-02-24 18:30     ` Ray Jui
2016-02-24 13:15 ` [PATCH 09/50] pinctrl: imx: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-25 14:47   ` Philipp Zabel
2016-02-25 14:47     ` Philipp Zabel
2016-02-29  3:04   ` Shawn Guo
2016-02-29  3:04     ` Shawn Guo
2016-02-24 13:15 ` [PATCH 10/50] pinctrl: imxl: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15 ` [PATCH 12/50] pinctrl: intel: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-25 11:44   ` Heikki Krogerus
2016-02-25 11:44     ` Heikki Krogerus
2016-02-24 13:15 ` [PATCH 13/50] pinctrl: mtk-common: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:36   ` Matthias Brugger
2016-02-24 13:36     ` Matthias Brugger
2016-02-24 20:28   ` Hongzhou Yang
2016-02-24 20:28     ` Hongzhou Yang
2016-02-24 20:28     ` Hongzhou Yang
2016-02-24 13:15 ` [PATCH 14/50] pinctrl: meson: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-26 20:58   ` Carlo Caione
2016-02-26 20:58     ` Carlo Caione
2016-02-24 13:15 ` [PATCH 15/50] pinctrl: mvebu: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 14:07   ` Thomas Petazzoni
2016-02-24 14:07     ` Thomas Petazzoni
2016-02-24 14:07     ` Thomas Petazzoni
2016-02-24 18:28   ` kbuild test robot
2016-02-24 18:28     ` kbuild test robot
2016-02-24 18:28     ` kbuild test robot
2016-02-24 13:15 ` [PATCH 16/50] pinctrl: nomadic: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15 ` [PATCH 17/50] pinctrl: spmi-gpio: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:06   ` Bjorn Andersson
2016-02-24 18:06     ` Bjorn Andersson
2016-02-24 13:15 ` [PATCH 18/50] pinctrl: spmi: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:07   ` Bjorn Andersson
2016-02-24 18:07     ` Bjorn Andersson
2016-02-24 13:15 ` [PATCH 19/50] pinctrl: ssbi-gpi: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:08   ` Bjorn Andersson
2016-02-24 18:08     ` Bjorn Andersson
2016-02-24 13:15 ` [PATCH 20/50] pinctrl: ssbi-mpp: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:09   ` Bjorn Andersson
2016-02-24 18:09     ` Bjorn Andersson
2016-02-24 13:15 ` [PATCH 21/50] pinctrl: msm: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:11   ` Bjorn Andersson
2016-02-24 18:11     ` Bjorn Andersson
2016-02-24 13:15 ` [PATCH 22/50] pinctrl: pxa: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-26 22:25   ` Robert Jarzmik
2016-02-26 22:25     ` Robert Jarzmik
2016-02-26 22:25     ` Robert Jarzmik
2016-02-24 13:15 ` [PATCH 24/50] pinctrl: samsung: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15 ` [PATCH 26/50] pinctrl: spear: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-25  2:10   ` Viresh Kumar
2016-02-25  2:10     ` Viresh Kumar
     [not found] ` <1456319775-3216-1-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2016-02-24 13:15   ` [PATCH 02/50] pinctrl: Add resource management devm_pinctrl_{register, unregister} Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15   ` [PATCH 04/50] pinctrl: bcm2835: Use devm_pinctrl_register() for pinctrl registration Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 18:27     ` Ray Jui
2016-02-24 18:27       ` Ray Jui
2016-02-24 13:15   ` [PATCH 08/50] pinctrl: berlin: " Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 17:28     ` Antoine Ténart
2016-02-24 17:28       ` Antoine Ténart
2016-02-24 13:15   ` [PATCH 11/50] pinctrl: cherryview: " Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-25 11:42     ` Heikki Krogerus
2016-02-25 11:42       ` Heikki Krogerus
2016-02-24 13:15   ` [PATCH 23/50] pinctrl: exynos5440: " Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15   ` [PATCH 25/50] pinctrl: ish-pfc: " Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:59     ` Geert Uytterhoeven
2016-02-24 13:59       ` Geert Uytterhoeven
2016-02-24 13:59       ` Geert Uytterhoeven
2016-02-24 13:15   ` [PATCH 27/50] pinctrl: stm32: " Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-25 14:00     ` Maxime Coquelin
2016-02-25 14:00       ` Maxime Coquelin
2016-02-25 14:00       ` Maxime Coquelin
2016-02-24 13:15   ` [PATCH 30/50] pinctrl: tegra-xusb: " Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 16:41     ` Stephen Warren
2016-02-24 16:41       ` Stephen Warren
2016-02-24 13:15   ` [PATCH 34/50] pinctrl: amd: " Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 13:15     ` Laxman Dewangan
2016-02-24 17:22   ` [PATCH 00/50] pinctrl: Add and use devm_ apis for pinctrl_{register, unregister} Stefan Wahren
2016-02-24 17:22     ` Stefan Wahren
2016-02-24 17:22     ` Stefan Wahren
2016-02-24 17:14     ` Laxman Dewangan
2016-02-24 17:14       ` Laxman Dewangan
2016-02-24 17:14       ` Laxman Dewangan
2016-02-24 13:15 ` [PATCH 28/50] pinctrl: ssbi-mpp: Use devm_pinctrl_register() for pinctrl registration Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 18:00   ` Maxime Ripard
2016-02-24 18:00     ` Maxime Ripard
2016-02-24 13:15 ` [PATCH 29/50] pinctrl: tegra: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 16:44   ` Stephen Warren
2016-02-24 16:44     ` Stephen Warren
2016-02-24 13:15 ` [PATCH 31/50] pinctrl: uniphier: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-26 10:06   ` Masahiro Yamada
2016-02-26 10:06     ` Masahiro Yamada
2016-02-26 10:06     ` Masahiro Yamada
2016-02-24 13:15 ` [PATCH 32/50] pinctrl: vt8500: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15 ` [PATCH 33/50] pinctrl: adi2: " Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:15   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 35/50] pinctrl: as3722: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 36/50] pinctrl: at91-pio4: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 37/50] pinctrl: at91: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 38/50] pinctrl: digicolor: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:42   ` Baruch Siach
2016-02-24 13:42     ` Baruch Siach
2016-02-24 13:16 ` [PATCH 39/50] pinctrl: lantiq: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-25 14:24   ` John Crispin
2016-02-25 14:24     ` John Crispin
2016-02-24 13:16 ` [PATCH 40/50] pinctrl: lpc18xx: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 15:06   ` Joachim Eastwood
2016-02-24 15:06     ` Joachim Eastwood
2016-02-24 15:06     ` Joachim Eastwood
2016-02-24 13:16 ` [PATCH 41/50] pinctrl: palmas: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 42/50] pinctrl: pic32: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-25 20:30   ` Joshua Henderson
2016-02-25 20:30     ` Joshua Henderson
2016-02-25 20:30     ` Joshua Henderson
2016-02-24 13:16 ` [PATCH 43/50] pinctrl: pistachio: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 44/50] pinctrl: rockchip: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-03-02 21:48   ` Heiko Stübner
2016-03-02 21:48     ` Heiko Stübner
2016-02-24 13:16 ` [PATCH 45/50] pinctrl: st: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
     [not found]   ` <1456319775-3216-46-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2016-02-24 16:14     ` Maxime Coquelin
2016-02-24 16:14       ` Maxime Coquelin
2016-02-24 16:14       ` Maxime Coquelin
2016-02-24 13:16 ` [PATCH 46/50] pinctrl: tb10x: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 47/50] pinctrl: tz1090-pdc: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 48/50] pinctrl: tz1090 " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 49/50] pinctrl: u300: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16 ` [PATCH 50/50] pinctrl: zynq: " Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-24 13:16   ` Laxman Dewangan
2016-02-26  3:45   ` Sören Brinkmann
2016-02-26  3:45     ` Sören Brinkmann
2016-02-26  3:45     ` Sören Brinkmann
2016-02-25 14:13 ` [PATCH 00/50] pinctrl: Add and use devm_ apis for pinctrl_{register, unregister} Linus Walleij
2016-02-25 14:13   ` Linus Walleij
2016-02-25 14:13   ` Linus Walleij
2016-02-28 14:44   ` Laxman Dewangan
2016-02-28 14:44     ` Laxman Dewangan
2016-02-28 14:44     ` Laxman Dewangan
2016-03-09 14:23     ` Laxman Dewangan
2016-03-09 14:23       ` Laxman Dewangan
2016-03-09 14:23       ` Laxman Dewangan
2016-03-15  8:31       ` Linus Walleij
2016-03-15  8:31         ` Linus Walleij
2016-03-15  8:31         ` Linus Walleij
2016-03-15 13:25         ` Laxman Dewangan
2016-03-15 13:25           ` Laxman Dewangan
2016-03-15 13:25           ` Laxman Dewangan
2016-03-16 13:03           ` Linus Walleij
2016-03-16 13:03             ` Linus Walleij
2016-03-16 13:03             ` Linus Walleij
2016-04-20  4:12         ` Masahiro Yamada
2016-04-20  4:12           ` Masahiro Yamada
2016-04-20  4:12           ` Masahiro Yamada

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1456319775-3216-2-git-send-email-ldewangan@nvidia.com \
    --to=ldewangan@nvidia.com \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=corbet@lwn.net \
    --cc=lee@kernel.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-rpi-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.