diff options
author | Vaishali Thakkar <vthakkar1994@gmail.com> | 2015-08-22 05:34:50 +0200 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2015-08-22 18:36:06 +0200 |
commit | d6e9b704d9553ee9d54baddcc6d9b63a4574f272 (patch) | |
tree | 129cfc21fba7980dc95330921e3330cff14e4178 | |
parent | libata: fix libata-core.c kernel-doc warning (diff) | |
download | linux-d6e9b704d9553ee9d54baddcc6d9b63a4574f272.tar.xz linux-d6e9b704d9553ee9d54baddcc6d9b63a4574f272.zip |
ata: pata_arasam_cf: Use devm_clk_get
This patch introduces the use of managed resource function
devm_clk_get instead of clk_get and removes corresponding call
to clk_put in the remove function.
To be compatible with the change various gotos are replaced with
direct returns, and unneeded label is dropped.
Signed-off-by: Vaishali Thakkar <vthakkar1994@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
-rw-r--r-- | drivers/ata/pata_arasan_cf.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/ata/pata_arasan_cf.c b/drivers/ata/pata_arasan_cf.c index a9b0c820f2eb..28ab920285ae 100644 --- a/drivers/ata/pata_arasan_cf.c +++ b/drivers/ata/pata_arasan_cf.c @@ -834,7 +834,7 @@ static int arasan_cf_probe(struct platform_device *pdev) return -ENOMEM; } - acdev->clk = clk_get(&pdev->dev, NULL); + acdev->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(acdev->clk)) { dev_warn(&pdev->dev, "Clock not found\n"); return PTR_ERR(acdev->clk); @@ -843,9 +843,8 @@ static int arasan_cf_probe(struct platform_device *pdev) /* allocate host */ host = ata_host_alloc(&pdev->dev, 1); if (!host) { - ret = -ENOMEM; dev_warn(&pdev->dev, "alloc host fail\n"); - goto free_clk; + return -ENOMEM; } ap = host->ports[0]; @@ -894,7 +893,7 @@ static int arasan_cf_probe(struct platform_device *pdev) ret = cf_init(acdev); if (ret) - goto free_clk; + return ret; cf_card_detect(acdev, 0); @@ -904,8 +903,7 @@ static int arasan_cf_probe(struct platform_device *pdev) return 0; cf_exit(acdev); -free_clk: - clk_put(acdev->clk); + return ret; } @@ -916,7 +914,6 @@ static int arasan_cf_remove(struct platform_device *pdev) ata_host_detach(host); cf_exit(acdev); - clk_put(acdev->clk); return 0; } |