Commit f3e87ac7e40055c51d0808d4048aab438fb1ec7b
1 parent
1f3aebcd52
Exists in
smarc_8mq-imx_v2020.04_5.4.24_2.1.0
and in
1 other branch
MLK-24192-1 lpuart: Enable IPG clock
Current codes only ennable the PER clock. However on iMX8 the LPUART also needs IPG clock which is an LPCG. Should not depend on the default LPCG setting. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit aa984f5f4029b743842ea7928d0af8da06b1b25d)
Showing 1 changed file with 13 additions and 1 deletions Side-by-side Diff
drivers/serial/serial_lpuart.c
... | ... | @@ -489,17 +489,29 @@ |
489 | 489 | { |
490 | 490 | #if CONFIG_IS_ENABLED(CLK) |
491 | 491 | struct clk per_clk; |
492 | + struct clk ipg_clk; | |
492 | 493 | int ret; |
493 | 494 | |
494 | 495 | ret = clk_get_by_name(dev, "per", &per_clk); |
495 | 496 | if (!ret) { |
496 | 497 | ret = clk_enable(&per_clk); |
497 | 498 | if (ret) { |
498 | - dev_err(dev, "Failed to get per clk: %d\n", ret); | |
499 | + dev_err(dev, "Failed to enable per clk: %d\n", ret); | |
499 | 500 | return ret; |
500 | 501 | } |
501 | 502 | } else { |
502 | 503 | debug("%s: Failed to get per clk: %d\n", __func__, ret); |
504 | + } | |
505 | + | |
506 | + ret = clk_get_by_name(dev, "ipg", &ipg_clk); | |
507 | + if (!ret) { | |
508 | + ret = clk_enable(&ipg_clk); | |
509 | + if (ret) { | |
510 | + dev_err(dev, "Failed to enable ipg clk: %d\n", ret); | |
511 | + return ret; | |
512 | + } | |
513 | + } else { | |
514 | + debug("%s: Failed to get ipg clk: %d\n", __func__, ret); | |
503 | 515 | } |
504 | 516 | #endif |
505 | 517 |