[PATCH 4.19 098/293] tty: serial: fsl_lpuart: fix the wrong mapbase value
From: Greg Kroah-Hartman
Date: Mon Sep 20 2021 - 13:40:47 EST
From: Andy Duan <fugang.duan@xxxxxxx>
[ Upstream commit d5c38948448abc2bb6b36dbf85a554bf4748885e ]
Register offset needs to be applied on mapbase also.
dma_tx/rx_request use the physical address of UARTDATA.
Register offset is currently only applied to membase (the
corresponding virtual addr) but not on mapbase.
Fixes: 24b1e5f0e83c ("tty: serial: lpuart: add imx7ulp support")
Reviewed-by: Leonard Crestez <leonard.crestez@xxxxxxx>
Signed-off-by: Adriana Reus <adriana.reus@xxxxxxx>
Signed-off-by: Sherry Sun <sherry.sun@xxxxxxx>
Signed-off-by: Andy Duan <fugang.duan@xxxxxxx>
Link: https://lore.kernel.org/r/20210819021033.32606-1-sherry.sun@xxxxxxx
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/tty/serial/fsl_lpuart.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c
index deb9d4fa9cb0..b757fd1bdbfa 100644
--- a/drivers/tty/serial/fsl_lpuart.c
+++ b/drivers/tty/serial/fsl_lpuart.c
@@ -2164,7 +2164,7 @@ static int lpuart_probe(struct platform_device *pdev)
return PTR_ERR(sport->port.membase);
sport->port.membase += sdata->reg_off;
- sport->port.mapbase = res->start;
+ sport->port.mapbase = res->start + sdata->reg_off;
sport->port.dev = &pdev->dev;
sport->port.type = PORT_LPUART;
ret = platform_get_irq(pdev, 0);
--
2.30.2