summaryrefslogtreecommitdiff
path: root/drivers/base
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-09-11 23:19:14 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2016-09-11 23:19:13 -0700
commitf31b1001e1da778af43e20db693949ee4b9417b5 (patch)
tree5478100a51c8d221930f6e1f2968088a1473bc86 /drivers/base
parent911e592fdc0d6c8f63ea2aec181122a5621d4cee (diff)
parentdaa482503de812c4f8b147bf30459ad20a65d225 (diff)
Merge "pinctrl: qcom: spmi-gpio: Add support for GPIO LV/MV subtype"
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/platform.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index 176b59f5bc47..bd70f8db469b 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -117,6 +117,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