diff options
author | Cai Huoqing <caihuoqing@baidu.com> | 2021-09-22 21:00:23 +0800 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2021-10-01 15:54:23 +0530 |
commit | 717e04fba4fa0e2f8e5a1fa810c5eff4d4d5e7db (patch) | |
tree | 9885f6bd1876b62e84e5b9f9f71f15c0a6aec17b /drivers/phy/rockchip | |
parent | 6ae6942fe996a32f0ff471c6481b3a545e11e14b (diff) | |
download | lwn-717e04fba4fa0e2f8e5a1fa810c5eff4d4d5e7db.tar.gz lwn-717e04fba4fa0e2f8e5a1fa810c5eff4d4d5e7db.zip |
phy: rockchip-inno-usb2: Make use of the helper function devm_add_action_or_reset()
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.
Signed-off-by: Cai Huoqing <caihuoqing@baidu.com>
Link: https://lore.kernel.org/r/20210922130024.745-1-caihuoqing@baidu.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/phy/rockchip')
-rw-r--r-- | drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c index 4f569d9307b9..1938365abbb3 100644 --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c @@ -321,7 +321,7 @@ rockchip_usb2phy_clk480m_register(struct rockchip_usb2phy *rphy) struct device_node *node = rphy->dev->of_node; struct clk_init_data init; const char *clk_name; - int ret; + int ret = 0; init.flags = 0; init.name = "clk_usbphy_480m"; @@ -352,15 +352,8 @@ rockchip_usb2phy_clk480m_register(struct rockchip_usb2phy *rphy) if (ret < 0) goto err_clk_provider; - ret = devm_add_action(rphy->dev, rockchip_usb2phy_clk480m_unregister, - rphy); - if (ret < 0) - goto err_unreg_action; - - return 0; + return devm_add_action_or_reset(rphy->dev, rockchip_usb2phy_clk480m_unregister, rphy); -err_unreg_action: - of_clk_del_provider(node); err_clk_provider: clk_unregister(rphy->clk480m); err_ret: |