mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] mfd: stmpe: add OF support for irq-over-gpio
@ 2014-08-19  9:24 Sean Cross
  2014-08-29 11:20 ` Lee Jones
  0 siblings, 1 reply; 2+ messages in thread
From: Sean Cross @ 2014-08-19  9:24 UTC (permalink / raw)
  To: Samuel Ortiz, Lee Jones, linux-kernel; +Cc: bunnie, Sean Cross

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 <xobs@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


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] mfd: stmpe: add OF support for irq-over-gpio
  2014-08-19  9:24 [PATCH] mfd: stmpe: add OF support for irq-over-gpio Sean Cross
@ 2014-08-29 11:20 ` Lee Jones
  0 siblings, 0 replies; 2+ messages in thread
From: Lee Jones @ 2014-08-29 11:20 UTC (permalink / raw)
  To: Sean Cross; +Cc: Samuel Ortiz, linux-kernel, bunnie

On Tue, 19 Aug 2014, Sean Cross wrote:

> 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 <xobs@kosagi.com>
> ---
>  Documentation/devicetree/bindings/mfd/stmpe.txt | 1 +
>  drivers/mfd/stmpe.c                             | 7 ++++++-
>  2 files changed, 7 insertions(+), 1 deletion(-)

See: Documentation/devicetree/bindings/submitting-patches.txt

- You need to break this up into two patches
- You need to CC the DT folks.

> 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);

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-08-29 11:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-19  9:24 [PATCH] mfd: stmpe: add OF support for irq-over-gpio Sean Cross
2014-08-29 11:20 ` Lee Jones

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®