summaryrefslogtreecommitdiff
path: root/drivers/serial/serial_msm.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2016-06-20 05:14:01 -0400
committerTom Rini <trini@konsulko.com>2016-06-20 05:14:01 -0400
commit09849f4a7779a247be8af5cfae44f7aad30e1222 (patch)
tree50891a9305714eff354702443555f52f1a65463c /drivers/serial/serial_msm.c
parent7c8ef0feb97586d35b0296b48903daef8c06ab21 (diff)
parent135aa95002646c46e89de93fa36adad1b010548f (diff)
downloadu-boot-imx-09849f4a7779a247be8af5cfae44f7aad30e1222.zip
u-boot-imx-09849f4a7779a247be8af5cfae44f7aad30e1222.tar.gz
u-boot-imx-09849f4a7779a247be8af5cfae44f7aad30e1222.tar.bz2
Merge git://git.denx.de/u-boot-dm
Diffstat (limited to 'drivers/serial/serial_msm.c')
-rw-r--r--drivers/serial/serial_msm.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/serial/serial_msm.c b/drivers/serial/serial_msm.c
index 80fb89e..a7cab13 100644
--- a/drivers/serial/serial_msm.c
+++ b/drivers/serial/serial_msm.c
@@ -150,7 +150,8 @@ static int msm_uart_clk_init(struct udevice *dev)
"clock-frequency", 115200);
uint clkd[2]; /* clk_id and clk_no */
int clk_offset;
- struct udevice *clk;
+ struct udevice *clk_dev;
+ struct clk clk;
int ret;
ret = fdtdec_get_int_array(gd->fdt_blob, dev->of_offset, "clock", clkd,
@@ -162,11 +163,17 @@ static int msm_uart_clk_init(struct udevice *dev)
if (clk_offset < 0)
return clk_offset;
- ret = uclass_get_device_by_of_offset(UCLASS_CLK, clk_offset, &clk);
+ ret = uclass_get_device_by_of_offset(UCLASS_CLK, clk_offset, &clk_dev);
if (ret)
return ret;
- ret = clk_set_periph_rate(clk, clkd[1], clk_rate);
+ clk.id = clkd[1];
+ ret = clk_request(clk_dev, &clk);
+ if (ret < 0)
+ return ret;
+
+ ret = clk_set_rate(&clk, clk_rate);
+ clk_free(&clk);
if (ret < 0)
return ret;