Skip to content

Commit 08de101

Browse files
Jingchang Lugregkh
authored andcommitted
serial: fsl-lpuart: add lpuart32 power management support
This adds 32-bit register lpuart32 power management support, this also updates the 8-bit register lpuart resume function. Signed-off-by: Jingchang Lu <jingchang.lu@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 5483c10 commit 08de101

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

drivers/tty/serial/fsl_lpuart.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1862,6 +1862,20 @@ static int lpuart_suspend(struct device *dev)
18621862
static int lpuart_resume(struct device *dev)
18631863
{
18641864
struct lpuart_port *sport = dev_get_drvdata(dev);
1865+
unsigned long temp;
1866+
1867+
if (sport->lpuart32) {
1868+
lpuart32_setup_watermark(sport);
1869+
temp = lpuart32_read(sport->port.membase + UARTCTRL);
1870+
temp |= (UARTCTRL_RIE | UARTCTRL_TIE | UARTCTRL_RE |
1871+
UARTCTRL_TE | UARTCTRL_ILIE);
1872+
lpuart32_write(temp, sport->port.membase + UARTCTRL);
1873+
} else {
1874+
lpuart_setup_watermark(sport);
1875+
temp = readb(sport->port.membase + UARTCR2);
1876+
temp |= (UARTCR2_RIE | UARTCR2_TIE | UARTCR2_RE | UARTCR2_TE);
1877+
writeb(temp, sport->port.membase + UARTCR2);
1878+
}
18651879

18661880
uart_resume_port(&lpuart_reg, &sport->port);
18671881

0 commit comments

Comments
 (0)