From: Michael Scott Date: Thu, 28 Jan 2016 00:40:59 +0000 (-0800) Subject: greybus: arche-platform: bring SVC out of reset later in probe X-Git-Tag: v4.9-rc1~119^2~378^2~21^2~741 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=9e1aef82af47edd1697449ca8be5fd3c1c58b9bb;p=karo-tx-linux.git 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 Reviewed-by: Vaibhav Hiremath Tested-by: Vaibhav Hiremath Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/greybus/arche-platform.c b/drivers/staging/greybus/arche-platform.c index 4e49be837b0e..b6fb90e9c7dc 100644 --- a/drivers/staging/greybus/arche-platform.c +++ b/drivers/staging/greybus/arche-platform.c @@ -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));