The if pclk enable fails the refclk is not disabled.
Fix the same.

Signed-off-by: Shubhrajyoti Datta <shubh...@xilinx.com>
---
 drivers/spi/spi-zynqmp-gqspi.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/spi/spi-zynqmp-gqspi.c b/drivers/spi/spi-zynqmp-gqspi.c
index aab9b49..18aeace 100644
--- a/drivers/spi/spi-zynqmp-gqspi.c
+++ b/drivers/spi/spi-zynqmp-gqspi.c
@@ -360,7 +360,7 @@ static int zynqmp_prepare_transfer_hardware(struct 
spi_master *master)
 
        ret = clk_enable(xqspi->refclk);
        if (ret)
-               goto clk_err;
+               return ret;
 
        ret = clk_enable(xqspi->pclk);
        if (ret)
@@ -369,6 +369,7 @@ static int zynqmp_prepare_transfer_hardware(struct 
spi_master *master)
        zynqmp_gqspi_write(xqspi, GQSPI_EN_OFST, GQSPI_EN_MASK);
        return 0;
 clk_err:
+       clk_disable(xqspi->refclk);
        return ret;
 }
 
-- 
1.7.1

Reply via email to