summaryrefslogtreecommitdiff
path: root/drivers/spi/stm32_spi.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/spi/stm32_spi.c')
-rw-r--r--drivers/spi/stm32_spi.c19
1 files changed, 3 insertions, 16 deletions
diff --git a/drivers/spi/stm32_spi.c b/drivers/spi/stm32_spi.c
index 82f6ed783f9..ddb410a94c0 100644
--- a/drivers/spi/stm32_spi.c
+++ b/drivers/spi/stm32_spi.c
@@ -526,22 +526,16 @@ static int stm32_spi_of_to_plat(struct udevice *dev)
ret = reset_get_by_index(dev, 0, &plat->rst_ctl);
if (ret < 0)
- goto clk_err;
+ return ret;
ret = gpio_request_list_by_name(dev, "cs-gpios", plat->cs_gpios,
ARRAY_SIZE(plat->cs_gpios), 0);
if (ret < 0) {
dev_err(dev, "Can't get %s cs gpios: %d", dev->name, ret);
- ret = -ENOENT;
- goto clk_err;
+ return -ENOENT;
}
return 0;
-
-clk_err:
- clk_free(&plat->clk);
-
- return ret;
}
static int stm32_spi_probe(struct udevice *dev)
@@ -610,7 +604,6 @@ static int stm32_spi_probe(struct udevice *dev)
clk_err:
clk_disable(&plat->clk);
- clk_free(&plat->clk);
return ret;
};
@@ -630,13 +623,7 @@ static int stm32_spi_remove(struct udevice *dev)
reset_free(&plat->rst_ctl);
- ret = clk_disable(&plat->clk);
- if (ret < 0)
- return ret;
-
- clk_free(&plat->clk);
-
- return ret;
+ return clk_disable(&plat->clk);
};
static const struct dm_spi_ops stm32_spi_ops = {