greybus: arche-platform: bring SVC out of reset later in probe

Move SVC deassert reset to after wake-detect pin has been pulled
low in probe.  Otherwise, SVC may trigger WAKE_OUT based on a
default high signal.

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>
This commit is contained in:
Michael Scott
2016-01-27 16:40:59 -08:00
committed by Greg Kroah-Hartman
parent 057aad29f9
commit 9e1aef82af

View File

@@ -191,10 +191,6 @@ static int arche_platform_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, arche_pdata);
/* bring SVC out of reset */
svc_reset_onoff(arche_pdata->svc_reset_gpio,
!arche_pdata->is_reset_act_hi);
arche_pdata->num_apbs = of_get_child_count(np);
dev_dbg(dev, "Number of APB's available - %d\n", arche_pdata->num_apbs);
@@ -214,6 +210,10 @@ static int arche_platform_probe(struct platform_device *pdev)
/* deassert wake detect */
gpio_direction_output(arche_pdata->wake_detect_gpio, 0);
/* bring SVC out of reset */
svc_reset_onoff(arche_pdata->svc_reset_gpio,
!arche_pdata->is_reset_act_hi);
arche_pdata->dev = &pdev->dev;
INIT_DELAYED_WORK(&arche_pdata->delayed_work, svc_delayed_work);
schedule_delayed_work(&arche_pdata->delayed_work, msecs_to_jiffies(2000));