From: Peng Fan <peng....@nxp.com>

To i.MX7ULP compatible lpuart, there is only ipg clk, no per clk.
So add a devtype check for i.MX7ULP.

Signed-off-by: Peng Fan <peng....@nxp.com>
---
 drivers/serial/serial_lpuart.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/serial/serial_lpuart.c b/drivers/serial/serial_lpuart.c
index ce08a6b4486..653ff99e67b 100644
--- a/drivers/serial/serial_lpuart.c
+++ b/drivers/serial/serial_lpuart.c
@@ -111,11 +111,18 @@ u32 __weak get_lpuart_clk(void)
 #if CONFIG_IS_ENABLED(CLK)
 static int get_lpuart_clk_rate(struct udevice *dev, u32 *clk)
 {
+       struct lpuart_serial_plat *plat = dev_get_plat(dev);
        struct clk per_clk;
        ulong rate;
        int ret;
+       char *name;
 
-       ret = clk_get_by_name(dev, "per", &per_clk);
+       if (plat->devtype == DEV_MX7ULP)
+               name = "ipg";
+       else
+               name = "per";
+
+       ret = clk_get_by_name(dev, name, &per_clk);
        if (ret) {
                dev_err(dev, "Failed to get per clk: %d\n", ret);
                return ret;

-- 
2.35.3

Reply via email to