diff options
Diffstat (limited to 'drivers/serial')
-rw-r--r-- | drivers/serial/8250.c | 4 | ||||
-rw-r--r-- | drivers/serial/s3c2410.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c index 0ae9ced00ed4..10c2daab99ac 100644 --- a/drivers/serial/8250.c +++ b/drivers/serial/8250.c | |||
@@ -320,8 +320,8 @@ static unsigned int serial_in(struct uart_8250_port *up, int offset) | |||
320 | 320 | ||
321 | case UPIO_TSI: | 321 | case UPIO_TSI: |
322 | if (offset == UART_IIR) { | 322 | if (offset == UART_IIR) { |
323 | tmp = readl((u32 *)(up->port.membase + UART_RX)); | 323 | tmp = readl(up->port.membase + (UART_IIR & ~3)); |
324 | return (cpu_to_le32(tmp) >> 8) & 0xff; | 324 | return (tmp >> 16) & 0xff; /* UART_IIR % 4 == 2 */ |
325 | } else | 325 | } else |
326 | return readb(up->port.membase + offset); | 326 | return readb(up->port.membase + offset); |
327 | 327 | ||
diff --git a/drivers/serial/s3c2410.c b/drivers/serial/s3c2410.c index 392bffcf96e8..95738a19cde7 100644 --- a/drivers/serial/s3c2410.c +++ b/drivers/serial/s3c2410.c | |||
@@ -1621,7 +1621,7 @@ static struct s3c24xx_uart_info s3c2412_uart_inf = { | |||
1621 | static int s3c2412_serial_probe(struct platform_device *dev) | 1621 | static int s3c2412_serial_probe(struct platform_device *dev) |
1622 | { | 1622 | { |
1623 | dbg("s3c2440_serial_probe: dev=%p\n", dev); | 1623 | dbg("s3c2440_serial_probe: dev=%p\n", dev); |
1624 | return s3c24xx_serial_probe(dev, &s3c2440_uart_inf); | 1624 | return s3c24xx_serial_probe(dev, &s3c2412_uart_inf); |
1625 | } | 1625 | } |
1626 | 1626 | ||
1627 | static struct platform_driver s3c2412_serial_drv = { | 1627 | static struct platform_driver s3c2412_serial_drv = { |