summaryrefslogtreecommitdiff
path: root/drivers/i2c/designware_i2c.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/i2c/designware_i2c.c')
-rw-r--r--drivers/i2c/designware_i2c.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c
index c1b3df9600..e57eed0f6c 100644
--- a/drivers/i2c/designware_i2c.c
+++ b/drivers/i2c/designware_i2c.c
@@ -775,14 +775,10 @@ int designware_i2c_of_to_plat(struct udevice *bus)
if (ret)
return ret;
- ret = clk_get_bulk(bus, &priv->clks);
- if (ret)
- return ret;
-
- ret = clk_enable_bulk(&priv->clks);
+ ret = clk_enable(&priv->clk);
if (ret && ret != -ENOSYS && ret != -ENOTSUPP) {
- clk_release_bulk(&priv->clks);
- dev_err(bus, "failed to enable bulk clock\n");
+ clk_free(&priv->clk);
+ dev_err(bus, "failed to enable clock\n");
return ret;
}
#endif
@@ -813,8 +809,8 @@ int designware_i2c_remove(struct udevice *dev)
struct dw_i2c *priv = dev_get_priv(dev);
#if CONFIG_IS_ENABLED(CLK)
- clk_disable_bulk(&priv->clks);
- clk_release_bulk(&priv->clks);
+ clk_disable(&priv->clk);
+ clk_free(&priv->clk);
#endif
return reset_release_bulk(&priv->resets);