diff options
Diffstat (limited to 'drivers/serial/ns16550.c')
-rw-r--r-- | drivers/serial/ns16550.c | 12 |
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; |