Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1303216 > unrolled thread
| Started by | Stephen Boyd <sboyd@codeaurora.org> |
|---|---|
| First post | 2016-01-07 02:20 +0100 |
| Last post | 2016-01-07 11:40 +0100 |
| Articles | 5 — 5 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH 1/3] driver-core: platform: Add platform_irq_count() Stephen Boyd <sboyd@codeaurora.org> - 2016-01-07 02:20 +0100
Re: [PATCH 1/3] driver-core: platform: Add platform_irq_count() Rob Herring <robh+dt@kernel.org> - 2016-01-07 02:20 +0100
Re: [PATCH 1/3] driver-core: platform: Add platform_irq_count() Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-01-07 02:50 +0100
Re: [PATCH 1/3] driver-core: platform: Add platform_irq_count() Linus Walleij <linus.walleij@linaro.org> - 2016-01-07 10:40 +0100
Re: [PATCH 1/3] driver-core: platform: Add platform_irq_count() Arnd Bergmann <arnd@arndb.de> - 2016-01-07 11:40 +0100
| From | Stephen Boyd <sboyd@codeaurora.org> |
|---|---|
| Date | 2016-01-07 02:20 +0100 |
| Subject | [PATCH 1/3] driver-core: platform: Add platform_irq_count() |
| Message-ID | <qO7p7-KS-7@gated-at.bofh.it> |
A recent patch added calls to of_irq_count() in the qcom pinctrl
drivers and that caused module build failures because
of_irq_count() is not an exported symbol. We shouldn't export
of_irq_count() to modules because it's an internal OF API that
shouldn't be used by drivers. Platform drivers should use
platform device APIs instead. Therefore, add a platform_irq_count()
API that mirrors the of_irq_count() API so that platform drivers
can stay DT agnostic.
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Andy Gross <andy.gross@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
---
drivers/base/platform.c | 20 ++++++++++++++++++++
include/linux/platform_device.h | 1 +
2 files changed, 21 insertions(+)
diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index d77ed0c946dd..8dcbb266643b 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -118,6 +118,26 @@ int platform_get_irq(struct platform_device *dev, unsigned int num)
EXPORT_SYMBOL_GPL(platform_get_irq);
/**
+ * platform_irq_count - Count the number of IRQs a platform device uses
+ * @dev: platform device
+ *
+ * Return: Number of IRQs a platform device uses or EPROBE_DEFER
+ */
+int platform_irq_count(struct platform_device *dev)
+{
+ int ret, nr = 0;
+
+ while ((ret = platform_get_irq(dev, nr)) >= 0)
+ nr++;
+
+ if (ret == -EPROBE_DEFER)
+ return ret;
+
+ return nr;
+}
+EXPORT_SYMBOL_GPL(platform_irq_count);
+
+/**
* platform_get_resource_byname - get a resource for a device by name
* @dev: platform device
* @type: resource type
diff --git a/include/linux/platform_device.h b/include/linux/platform_device.h
index dba40b1c41dc..03b755521fd9 100644
--- a/include/linux/platform_device.h
+++ b/include/linux/platform_device.h
@@ -52,6 +52,7 @@ extern void arch_setup_pdev_archdata(struct platform_device *);
extern struct resource *platform_get_resource(struct platform_device *,
unsigned int, unsigned int);
extern int platform_get_irq(struct platform_device *, unsigned int);
+extern int platform_irq_count(struct platform_device *);
extern struct resource *platform_get_resource_byname(struct platform_device *,
unsigned int,
const char *);
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Rob Herring <robh+dt@kernel.org> |
|---|---|
| Date | 2016-01-07 02:20 +0100 |
| Message-ID | <qO7p8-KS-21@gated-at.bofh.it> |
| In reply to | #1303216 |
On Wed, Jan 6, 2016 at 7:12 PM, Stephen Boyd <sboyd@codeaurora.org> wrote: > A recent patch added calls to of_irq_count() in the qcom pinctrl > drivers and that caused module build failures because > of_irq_count() is not an exported symbol. We shouldn't export > of_irq_count() to modules because it's an internal OF API that > shouldn't be used by drivers. Platform drivers should use > platform device APIs instead. Therefore, add a platform_irq_count() > API that mirrors the of_irq_count() API so that platform drivers > can stay DT agnostic. > > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Cc: Andy Gross <andy.gross@linaro.org> > Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Acked-by: Rob Herring <robh@kernel.org> -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
|---|---|
| Date | 2016-01-07 02:50 +0100 |
| Message-ID | <qO7Sa-XB-9@gated-at.bofh.it> |
| In reply to | #1303216 |
On Wed, Jan 06, 2016 at 05:12:47PM -0800, Stephen Boyd wrote: > A recent patch added calls to of_irq_count() in the qcom pinctrl > drivers and that caused module build failures because > of_irq_count() is not an exported symbol. We shouldn't export > of_irq_count() to modules because it's an internal OF API that > shouldn't be used by drivers. Platform drivers should use > platform device APIs instead. Therefore, add a platform_irq_count() > API that mirrors the of_irq_count() API so that platform drivers > can stay DT agnostic. > > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Cc: Andy Gross <andy.gross@linaro.org> > Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> > --- > drivers/base/platform.c | 20 ++++++++++++++++++++ > include/linux/platform_device.h | 1 + > 2 files changed, 21 insertions(+) Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Linus Walleij <linus.walleij@linaro.org> |
|---|---|
| Date | 2016-01-07 10:40 +0100 |
| Message-ID | <qOfd1-6ef-29@gated-at.bofh.it> |
| In reply to | #1303216 |
On Thu, Jan 7, 2016 at 2:12 AM, Stephen Boyd <sboyd@codeaurora.org> wrote: > A recent patch added calls to of_irq_count() in the qcom pinctrl > drivers and that caused module build failures because > of_irq_count() is not an exported symbol. We shouldn't export > of_irq_count() to modules because it's an internal OF API that > shouldn't be used by drivers. Platform drivers should use > platform device APIs instead. Therefore, add a platform_irq_count() > API that mirrors the of_irq_count() API so that platform drivers > can stay DT agnostic. > > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Cc: Andy Gross <andy.gross@linaro.org> > Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Patch applied with Rob's and Greg's ACKs. Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2016-01-07 11:40 +0100 |
| Message-ID | <qOg94-6Q0-11@gated-at.bofh.it> |
| In reply to | #1303216 |
On Wednesday 06 January 2016 17:12:47 Stephen Boyd wrote: > A recent patch added calls to of_irq_count() in the qcom pinctrl > drivers and that caused module build failures because > of_irq_count() is not an exported symbol. We shouldn't export > of_irq_count() to modules because it's an internal OF API that > shouldn't be used by drivers. Platform drivers should use > platform device APIs instead. Therefore, add a platform_irq_count() > API that mirrors the of_irq_count() API so that platform drivers > can stay DT agnostic. > > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Cc: Andy Gross <andy.gross@linaro.org> > Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> > Acked-by: Arnd Bergmann <arnd@arndb.de> I think there are a couple of other drivers that can use this too. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web