From: Sean Cross Date: Fri, 12 Sep 2014 03:18:33 +0000 (+0800) Subject: mfd: stmpe: Support gpio over irq under device tree X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=851ec59614d8cd0d122319c32a5be0f8799d36be;p=deliverable%2Flinux.git mfd: stmpe: Support gpio over irq under device tree The stmpe_platform_data has a irq_over_gpio field, which allows the system to read STMPE events whenever an IRQ occurs on a GPIO pin. This patch adds the ability to configure this field and to use a GPIO as an IRQ source for boards configuring the STMPE in device tree. Signed-off-by: Sean Cross Signed-off-by: Lee Jones --- diff --git a/drivers/mfd/stmpe.c b/drivers/mfd/stmpe.c index f9d46f035bb1..e2f9df1c0c36 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);