summaryrefslogtreecommitdiff
path: root/drivers/serial/ns16550.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/serial/ns16550.c')
-rw-r--r--drivers/serial/ns16550.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c
index cc121eee27..a83b474c40 100644
--- a/drivers/serial/ns16550.c
+++ b/drivers/serial/ns16550.c
@@ -540,6 +540,7 @@ int ns16550_serial_of_to_plat(struct udevice *dev)
const u32 port_type = dev_get_driver_data(dev);
fdt_addr_t addr;
struct clk clk;
+ struct clk_bulk clks;
int err;
addr = dev_read_addr(dev);
@@ -571,6 +572,17 @@ int ns16550_serial_of_to_plat(struct udevice *dev)
return -EINVAL;
}
+ err = clk_get_bulk(dev, &clks);
+ if (err)
+ debug("ns16550 clk_get_bulk fail.\n");
+ else {
+ err = clk_enable_bulk(&clks);
+ if (err) {
+ debug("ns16550 clk_enable_bulk fail.\n");
+ return -EINVAL;
+ }
+ }
+
plat->fcr = UART_FCR_DEFVAL;
if (port_type == PORT_JZ4780)
plat->fcr |= UART_FCR_UME;