diff options
author | Chuhong Yuan <hslester96@gmail.com> | 2019-09-01 21:43:23 -0400 |
---|---|---|
committer | Peter Chen <peter.chen@nxp.com> | 2019-09-03 02:16:40 -0400 |
commit | ecd55e367f3d706788632e176ec6b94e1a72a07c (patch) | |
tree | fc75ed99b2e4101901d2ef666cb3b7f135041f30 | |
parent | 05559f10ed797b79f7fa47313682c48919a2b111 (diff) |
usb: chipidea: msm: Use device-managed registration API
Use devm_reset_controller_register to get rid
of manual unregistration.
Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
-rw-r--r-- | drivers/usb/chipidea/ci_hdrc_msm.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c b/drivers/usb/chipidea/ci_hdrc_msm.c index bb4645a8ca46..af648ba6544d 100644 --- a/drivers/usb/chipidea/ci_hdrc_msm.c +++ b/drivers/usb/chipidea/ci_hdrc_msm.c | |||
@@ -216,13 +216,13 @@ static int ci_hdrc_msm_probe(struct platform_device *pdev) | |||
216 | ci->rcdev.ops = &ci_hdrc_msm_reset_ops; | 216 | ci->rcdev.ops = &ci_hdrc_msm_reset_ops; |
217 | ci->rcdev.of_node = pdev->dev.of_node; | 217 | ci->rcdev.of_node = pdev->dev.of_node; |
218 | ci->rcdev.nr_resets = 2; | 218 | ci->rcdev.nr_resets = 2; |
219 | ret = reset_controller_register(&ci->rcdev); | 219 | ret = devm_reset_controller_register(&pdev->dev, &ci->rcdev); |
220 | if (ret) | 220 | if (ret) |
221 | return ret; | 221 | return ret; |
222 | 222 | ||
223 | ret = clk_prepare_enable(ci->fs_clk); | 223 | ret = clk_prepare_enable(ci->fs_clk); |
224 | if (ret) | 224 | if (ret) |
225 | goto err_fs; | 225 | return ret; |
226 | 226 | ||
227 | reset_control_assert(reset); | 227 | reset_control_assert(reset); |
228 | usleep_range(10000, 12000); | 228 | usleep_range(10000, 12000); |
@@ -232,7 +232,7 @@ static int ci_hdrc_msm_probe(struct platform_device *pdev) | |||
232 | 232 | ||
233 | ret = clk_prepare_enable(ci->core_clk); | 233 | ret = clk_prepare_enable(ci->core_clk); |
234 | if (ret) | 234 | if (ret) |
235 | goto err_fs; | 235 | return ret; |
236 | 236 | ||
237 | ret = clk_prepare_enable(ci->iface_clk); | 237 | ret = clk_prepare_enable(ci->iface_clk); |
238 | if (ret) | 238 | if (ret) |
@@ -271,8 +271,6 @@ err_mux: | |||
271 | clk_disable_unprepare(ci->iface_clk); | 271 | clk_disable_unprepare(ci->iface_clk); |
272 | err_iface: | 272 | err_iface: |
273 | clk_disable_unprepare(ci->core_clk); | 273 | clk_disable_unprepare(ci->core_clk); |
274 | err_fs: | ||
275 | reset_controller_unregister(&ci->rcdev); | ||
276 | return ret; | 274 | return ret; |
277 | } | 275 | } |
278 | 276 | ||
@@ -284,7 +282,6 @@ static int ci_hdrc_msm_remove(struct platform_device *pdev) | |||
284 | ci_hdrc_remove_device(ci->ci); | 282 | ci_hdrc_remove_device(ci->ci); |
285 | clk_disable_unprepare(ci->iface_clk); | 283 | clk_disable_unprepare(ci->iface_clk); |
286 | clk_disable_unprepare(ci->core_clk); | 284 | clk_disable_unprepare(ci->core_clk); |
287 | reset_controller_unregister(&ci->rcdev); | ||
288 | 285 | ||
289 | return 0; | 286 | return 0; |
290 | } | 287 | } |