lkml.org 
[lkml]   [2024]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH v3 06/19] media: venus: pm_helpers: Move reset acquisition to common code
    There is no reason to keep reset_get code local to HFIv4/v6.

    Move it to the common part.

    Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
    ---
    drivers/media/platform/qcom/venus/core.c | 9 ++++++++-
    drivers/media/platform/qcom/venus/pm_helpers.c | 23 -----------------------
    2 files changed, 8 insertions(+), 24 deletions(-)

    diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c
    index 5ab3c414ec0f..0652065cb113 100644
    --- a/drivers/media/platform/qcom/venus/core.c
    +++ b/drivers/media/platform/qcom/venus/core.c
    @@ -15,6 +15,7 @@
    #include <linux/of_platform.h>
    #include <linux/platform_device.h>
    #include <linux/pm_opp.h>
    +#include <linux/reset.h>
    #include <linux/slab.h>
    #include <linux/types.h>
    #include <linux/pm_domain.h>
    @@ -286,7 +287,7 @@ static int venus_probe(struct platform_device *pdev)
    {
    struct device *dev = &pdev->dev;
    struct venus_core *core;
    - int ret;
    + int i, ret;

    core = devm_kzalloc(dev, sizeof(*core), GFP_KERNEL);
    if (!core)
    @@ -324,6 +325,12 @@ static int venus_probe(struct platform_device *pdev)
    if (ret)
    return ret;

    + for (i = 0; i < core->res->resets_num; i++) {
    + core->resets[i] = devm_reset_control_get_exclusive(dev, core->res->resets[i]);
    + if (IS_ERR(core->resets[i]))
    + return PTR_ERR(core->resets[i]);
    + }
    +
    if (core->pm_ops->core_get) {
    ret = core->pm_ops->core_get(core);
    if (ret)
    diff --git a/drivers/media/platform/qcom/venus/pm_helpers.c b/drivers/media/platform/qcom/venus/pm_helpers.c
    index 730c4b593cec..5b2a40a2f524 100644
    --- a/drivers/media/platform/qcom/venus/pm_helpers.c
    +++ b/drivers/media/platform/qcom/venus/pm_helpers.c
    @@ -939,25 +939,6 @@ static int core_resets_reset(struct venus_core *core)
    return ret;
    }

    -static int core_resets_get(struct venus_core *core)
    -{
    - struct device *dev = core->dev;
    - const struct venus_resources *res = core->res;
    - unsigned int i;
    - int ret;
    -
    - for (i = 0; i < res->resets_num; i++) {
    - core->resets[i] =
    - devm_reset_control_get_exclusive(dev, res->resets[i]);
    - if (IS_ERR(core->resets[i])) {
    - ret = PTR_ERR(core->resets[i]);
    - return ret;
    - }
    - }
    -
    - return 0;
    -}
    -
    static int core_get_v4(struct venus_core *core)
    {
    struct device *dev = core->dev;
    @@ -981,10 +962,6 @@ static int core_get_v4(struct venus_core *core)
    if (ret)
    return ret;

    - ret = core_resets_get(core);
    - if (ret)
    - return ret;
    -
    if (legacy_binding)
    return 0;

    --
    2.44.0


    \
     
     \ /
      Last update: 2024-05-27 16:12    [W:6.436 / U:0.216 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site