When using the STMPE610 or STMPE811 as a platform device, the platform data
struct allows for irq_over_gpio to be set.  This patch allows for using a
GPIO as an IRQ source when using device tree by specifying an irq-gpio
property.

Signed-off-by: Sean Cross <x...@kosagi.com>
---
 Documentation/devicetree/bindings/mfd/stmpe.txt | 1 +
 drivers/mfd/stmpe.c                             | 7 ++++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/mfd/stmpe.txt 
b/Documentation/devicetree/bindings/mfd/stmpe.txt
index 56edb55..3fb68bf 100644
--- a/Documentation/devicetree/bindings/mfd/stmpe.txt
+++ b/Documentation/devicetree/bindings/mfd/stmpe.txt
@@ -13,6 +13,7 @@ Optional properties:
  - interrupt-parent             : Specifies which IRQ controller we're 
connected to
  - wakeup-source                : Marks the input device as wakable
  - st,autosleep-timeout         : Valid entries (ms); 4, 16, 32, 64, 128, 256, 
512 and 1024
+ - irq-gpio                     : If present, which GPIO to use for event IRQ
 
 Example:
 
diff --git a/drivers/mfd/stmpe.c b/drivers/mfd/stmpe.c
index 3b6bfa7..4c42b05 100644
--- a/drivers/mfd/stmpe.c
+++ b/drivers/mfd/stmpe.c
@@ -1122,7 +1122,12 @@ static void stmpe_of_probe(struct stmpe_platform_data 
*pdata,
        if (pdata->id < 0)
                pdata->id = -1;
 
-       pdata->irq_trigger = IRQF_TRIGGER_NONE;
+       pdata->irq_gpio = of_get_named_gpio_flags(np, "irq-gpio", 0,
+                               &pdata->irq_trigger);
+       if (gpio_is_valid(pdata->irq_gpio))
+               pdata->irq_over_gpio = 1;
+       else
+               pdata->irq_trigger = IRQF_TRIGGER_NONE;
 
        of_property_read_u32(np, "st,autosleep-timeout",
                        &pdata->autosleep_timeout);
-- 
2.0.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to