diff options
author | Michał Mirosław <mirq-linux@rere.qmqm.pl> | 2013-05-04 09:19:35 -0400 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2013-08-05 15:50:13 -0400 |
commit | d1cb556c3feb238f11dc47f8fa56df7880022908 (patch) | |
tree | a85a3395e0d13125e12bbbfe3d8494d0c201fc1c /drivers/mtd/nand/gpmi-nand | |
parent | cf3b55a994a04c31ce3ac3119880582547e22cf2 (diff) |
mtd: gpmi-nand: fix error return from gpmi_get_clks()
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Acked-by: Huang Shijie <b32955@freescale.com>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/mtd/nand/gpmi-nand')
-rw-r--r-- | drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c index 25ecfa1822a8..1d18efcb31a5 100644 --- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c +++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c | |||
@@ -473,12 +473,14 @@ static int gpmi_get_clks(struct gpmi_nand_data *this) | |||
473 | struct resources *r = &this->resources; | 473 | struct resources *r = &this->resources; |
474 | char **extra_clks = NULL; | 474 | char **extra_clks = NULL; |
475 | struct clk *clk; | 475 | struct clk *clk; |
476 | int i; | 476 | int err, i; |
477 | 477 | ||
478 | /* The main clock is stored in the first. */ | 478 | /* The main clock is stored in the first. */ |
479 | r->clock[0] = clk_get(this->dev, "gpmi_io"); | 479 | r->clock[0] = clk_get(this->dev, "gpmi_io"); |
480 | if (IS_ERR(r->clock[0])) | 480 | if (IS_ERR(r->clock[0])) { |
481 | err = PTR_ERR(r->clock[0]); | ||
481 | goto err_clock; | 482 | goto err_clock; |
483 | } | ||
482 | 484 | ||
483 | /* Get extra clocks */ | 485 | /* Get extra clocks */ |
484 | if (GPMI_IS_MX6Q(this)) | 486 | if (GPMI_IS_MX6Q(this)) |
@@ -491,8 +493,10 @@ static int gpmi_get_clks(struct gpmi_nand_data *this) | |||
491 | break; | 493 | break; |
492 | 494 | ||
493 | clk = clk_get(this->dev, extra_clks[i - 1]); | 495 | clk = clk_get(this->dev, extra_clks[i - 1]); |
494 | if (IS_ERR(clk)) | 496 | if (IS_ERR(clk)) { |
497 | err = PTR_ERR(clk); | ||
495 | goto err_clock; | 498 | goto err_clock; |
499 | } | ||
496 | 500 | ||
497 | r->clock[i] = clk; | 501 | r->clock[i] = clk; |
498 | } | 502 | } |
@@ -511,7 +515,7 @@ static int gpmi_get_clks(struct gpmi_nand_data *this) | |||
511 | err_clock: | 515 | err_clock: |
512 | dev_dbg(this->dev, "failed in finding the clocks.\n"); | 516 | dev_dbg(this->dev, "failed in finding the clocks.\n"); |
513 | gpmi_put_clks(this); | 517 | gpmi_put_clks(this); |
514 | return -ENOMEM; | 518 | return err; |
515 | } | 519 | } |
516 | 520 | ||
517 | static int acquire_resources(struct gpmi_nand_data *this) | 521 | static int acquire_resources(struct gpmi_nand_data *this) |