| From 37ca7df9881ca9ef9440fede4b128272fb4dbbcc Mon Sep 17 00:00:00 2001 |
| From: Arvind Yadav <arvind.yadav.cs@gmail.com> |
| Date: Tue, 9 May 2017 16:00:28 +0530 |
| Subject: [PATCH 109/286] ata: sata_rcar: Handle return value of |
| clk_prepare_enable |
| |
| Here, Clock enable can failed. So adding an error check for |
| clk_prepare_enable. |
| |
| tj: minor style updates |
| |
| Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com> |
| Signed-off-by: Tejun Heo <tj@kernel.org> |
| (cherry picked from commit 5dc63fdcc09f47fb226b8bc7d83a61feb787d817) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| drivers/ata/sata_rcar.c | 15 ++++++++++++--- |
| 1 file changed, 12 insertions(+), 3 deletions(-) |
| |
| diff --git a/drivers/ata/sata_rcar.c b/drivers/ata/sata_rcar.c |
| index 5d38245a7a73..b7939a2c1fab 100644 |
| --- a/drivers/ata/sata_rcar.c |
| +++ b/drivers/ata/sata_rcar.c |
| @@ -890,7 +890,10 @@ static int sata_rcar_probe(struct platform_device *pdev) |
| dev_err(&pdev->dev, "failed to get access to sata clock\n"); |
| return PTR_ERR(priv->clk); |
| } |
| - clk_prepare_enable(priv->clk); |
| + |
| + ret = clk_prepare_enable(priv->clk); |
| + if (ret) |
| + return ret; |
| |
| host = ata_host_alloc(&pdev->dev, 1); |
| if (!host) { |
| @@ -970,8 +973,11 @@ static int sata_rcar_resume(struct device *dev) |
| struct ata_host *host = dev_get_drvdata(dev); |
| struct sata_rcar_priv *priv = host->private_data; |
| void __iomem *base = priv->base; |
| + int ret; |
| |
| - clk_prepare_enable(priv->clk); |
| + ret = clk_prepare_enable(priv->clk); |
| + if (ret) |
| + return ret; |
| |
| /* ack and mask */ |
| iowrite32(0, base + SATAINTSTAT_REG); |
| @@ -988,8 +994,11 @@ static int sata_rcar_restore(struct device *dev) |
| { |
| struct ata_host *host = dev_get_drvdata(dev); |
| struct sata_rcar_priv *priv = host->private_data; |
| + int ret; |
| |
| - clk_prepare_enable(priv->clk); |
| + ret = clk_prepare_enable(priv->clk); |
| + if (ret) |
| + return ret; |
| |
| sata_rcar_setup_port(host); |
| |
| -- |
| 2.13.3 |
| |