lkml.org 
[lkml]   [2018]   [Jan]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] usb: dwc3: core: Don't try to get PHYs during suspend/resume
    Date
    The USB PHYs should be requested only once during the life cycle of
    this driver.

    As dwc3_core_init() is called during system suspend/resume
    it will result in multiple calls to dwc3_core_get_phy() which is wrong.

    To prevent that let's move dwc3_core_get_phy() call
    outside dwc3_core_init().

    Fixes: 541768b08a4 ("usb: dwc3: core: Call dwc3_core_get_phy() before initializing phys")
    Cc: linux-stable <stable@vger.kernel.org> # >= v4.13
    Signed-off-by: Roger Quadros <rogerq@ti.com>
    ---
    drivers/usb/dwc3/core.c | 10 ++++------
    1 file changed, 4 insertions(+), 6 deletions(-)

    diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
    index 0783250..1274251 100644
    --- a/drivers/usb/dwc3/core.c
    +++ b/drivers/usb/dwc3/core.c
    @@ -722,8 +722,6 @@ static void dwc3_core_setup_global_control(struct dwc3 *dwc)
    dwc3_writel(dwc->regs, DWC3_GCTL, reg);
    }

    -static int dwc3_core_get_phy(struct dwc3 *dwc);
    -
    /**
    * dwc3_core_init - Low-level initialization of DWC3 Core
    * @dwc: Pointer to our controller context structure
    @@ -754,10 +752,6 @@ static int dwc3_core_init(struct dwc3 *dwc)
    dwc->maximum_speed = USB_SPEED_HIGH;
    }

    - ret = dwc3_core_get_phy(dwc);
    - if (ret)
    - goto err0;
    -
    ret = dwc3_core_soft_reset(dwc);
    if (ret)
    goto err0;
    @@ -1177,6 +1171,10 @@ static int dwc3_probe(struct platform_device *pdev)
    platform_set_drvdata(pdev, dwc);
    dwc3_cache_hwparams(dwc);

    + ret = dwc3_core_get_phy(dwc);
    + if (ret)
    + goto err0;
    +
    spin_lock_init(&dwc->lock);

    pm_runtime_set_active(dev);
    --
    cheers,
    -roger
    Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

    \
     
     \ /
      Last update: 2018-01-14 23:21    [W:4.636 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site