Re: [PATCH] phy: qcom-qmp: Make use of the helper function devm_add_action_or_reset()

From: Bjorn Andersson
Date: Wed Sep 22 2021 - 11:57:05 EST


On Wed 22 Sep 06:00 PDT 2021, Cai Huoqing wrote:

> The helper function devm_add_action_or_reset() will internally
> call devm_add_action(), and gif devm_add_action() fails then it will
> execute the action mentioned and return the error code. So
> use devm_add_action_or_reset() instead of devm_add_action()
> to simplify the error handling, reduce the code.
>

Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>

Regards,
Bjorn

> Signed-off-by: Cai Huoqing <caihuoqing@xxxxxxxxx>
> ---
> drivers/phy/qualcomm/phy-qcom-qmp.c | 12 ++----------
> 1 file changed, 2 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/phy/qualcomm/phy-qcom-qmp.c b/drivers/phy/qualcomm/phy-qcom-qmp.c
> index f14032170b1c..084e3d96264e 100644
> --- a/drivers/phy/qualcomm/phy-qcom-qmp.c
> +++ b/drivers/phy/qualcomm/phy-qcom-qmp.c
> @@ -5154,11 +5154,7 @@ static int phy_pipe_clk_register(struct qcom_qmp *qmp, struct device_node *np)
> * Roll a devm action because the clock provider is the child node, but
> * the child node is not actually a device.
> */
> - ret = devm_add_action(qmp->dev, phy_clk_release_provider, np);
> - if (ret)
> - phy_clk_release_provider(np);
> -
> - return ret;
> + return devm_add_action_or_reset(qmp->dev, phy_clk_release_provider, np);
> }
>
> /*
> @@ -5350,11 +5346,7 @@ static int phy_dp_clks_register(struct qcom_qmp *qmp, struct qmp_phy *qphy,
> * Roll a devm action because the clock provider is the child node, but
> * the child node is not actually a device.
> */
> - ret = devm_add_action(qmp->dev, phy_clk_release_provider, np);
> - if (ret)
> - phy_clk_release_provider(np);
> -
> - return ret;
> + return devm_add_action_or_reset(qmp->dev, phy_clk_release_provider, np);
> }
>
> static const struct phy_ops qcom_qmp_phy_gen_ops = {
> --
> 2.25.1
>