greybus: arche-platform: ensure wake-detect pin is deasserted
authorMichael Scott <michael.scott@linaro.org>
Thu, 28 Jan 2016 00:40:58 +0000 (16:40 -0800)
committerGreg Kroah-Hartman <gregkh@google.com>
Fri, 29 Jan 2016 16:50:13 +0000 (08:50 -0800)
During DB3.5 bringup, it was noted that wake_detect signal was not
properly generating SVC edge IRQ.  To ensure signal goes from low
to high correctly, let's bring signal low (regardless of default
pin state).

Testing Done:
- Used for DB3.5/EVT1.5 hardware during bringup
- Regression tested on DB3.1+ES2, DB3.1+ES3

Signed-off-by: Michael Scott <michael.scott@linaro.org>
Reviewed-by: Vaibhav Hiremath <vaibhav.hiremath@linaro.org>
Tested-by: Vaibhav Hiremath <vaibhav.hiremath@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/arche-platform.c

index b5596ec..4e49be8 100644 (file)
@@ -211,6 +211,8 @@ static int arche_platform_probe(struct platform_device *pdev)
                                arche_pdata->wake_detect_gpio);
                goto exit;
        }
+       /* deassert wake detect */
+       gpio_direction_output(arche_pdata->wake_detect_gpio, 0);
 
        arche_pdata->dev = &pdev->dev;
        INIT_DELAYED_WORK(&arche_pdata->delayed_work, svc_delayed_work);