lkml.org 
[lkml]   [2011]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 1/2] DMA: PL330: Remove pm_runtime_xxx calls from pl330 probe/remove
    Date
    amba_probe() now calls pm_runtime_get_noresume() and pm_runtime_enable()
    for the devices before the device probe is called. Hence we don't need
    to call pm_runtime_get_xxx and pm_runtime_enable() in device probe again.
    In the same way, since amba_remove() calls the respective pm_runtime
    functions, those functions need not be called from device remove.

    This patch fixes following run time error with pl330 driver.

    dma-pl330 dma-pl330.0: Unbalanced pm_runtime_enable!
    dma-pl330 dma-pl330.0: failed to get runtime pm

    Signed-off-by: Giridhar Maruthy <giridhar.maruthy@linaro.org>
    Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
    ---
    drivers/dma/pl330.c | 17 ++---------------
    1 files changed, 2 insertions(+), 15 deletions(-)

    diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
    index a626e15..cd07121 100644
    --- a/drivers/dma/pl330.c
    +++ b/drivers/dma/pl330.c
    @@ -834,17 +834,7 @@ pl330_probe(struct amba_device *adev, const struct amba_id *id)

    amba_set_drvdata(adev, pdmac);

    -#ifdef CONFIG_PM_RUNTIME
    - /* to use the runtime PM helper functions */
    - pm_runtime_enable(&adev->dev);
    -
    - /* enable the power domain */
    - if (pm_runtime_get_sync(&adev->dev)) {
    - dev_err(&adev->dev, "failed to get runtime pm\n");
    - ret = -ENODEV;
    - goto probe_err1;
    - }
    -#else
    +#ifndef CONFIG_PM_RUNTIME
    /* enable dma clk */
    clk_enable(pdmac->clk);
    #endif
    @@ -977,10 +967,7 @@ static int __devexit pl330_remove(struct amba_device *adev)
    res = &adev->res;
    release_mem_region(res->start, resource_size(res));

    -#ifdef CONFIG_PM_RUNTIME
    - pm_runtime_put(&adev->dev);
    - pm_runtime_disable(&adev->dev);
    -#else
    +#ifndef CONFIG_PM_RUNTIME
    clk_disable(pdmac->clk);
    #endif

    --
    1.7.4.1


    \
     
     \ /
      Last update: 2011-12-06 11:51    [W:0.023 / U:30.132 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site