Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

serial: amba-pl011: Use container_of() to get uart_amba_port

Universally adopt container_of() for all pointer conversion from
uart_port to uart_amba_port.

Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
Cc: Peter Hurley <peter@hurleysoftware.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: linux-serial@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Daniel Thompson and committed by
Greg Kroah-Hartman
a5820c24 26c47412

+36 -18
+36 -18
drivers/tty/serial/amba-pl011.c
··· 678 678 __releases(&uap->port.lock) 679 679 __acquires(&uap->port.lock) 680 680 { 681 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 681 + struct uart_amba_port *uap = 682 + container_of(port, struct uart_amba_port, port); 682 683 683 684 if (!uap->using_tx_dma) 684 685 return; ··· 1164 1163 1165 1164 static void pl011_stop_tx(struct uart_port *port) 1166 1165 { 1167 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1166 + struct uart_amba_port *uap = 1167 + container_of(port, struct uart_amba_port, port); 1168 1168 1169 1169 uap->im &= ~UART011_TXIM; 1170 1170 writew(uap->im, uap->port.membase + UART011_IMSC); ··· 1174 1172 1175 1173 static void pl011_start_tx(struct uart_port *port) 1176 1174 { 1177 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1175 + struct uart_amba_port *uap = 1176 + container_of(port, struct uart_amba_port, port); 1178 1177 1179 1178 if (!pl011_dma_tx_start(uap)) { 1180 1179 uap->im |= UART011_TXIM; ··· 1185 1182 1186 1183 static void pl011_stop_rx(struct uart_port *port) 1187 1184 { 1188 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1185 + struct uart_amba_port *uap = 1186 + container_of(port, struct uart_amba_port, port); 1189 1187 1190 1188 uap->im &= ~(UART011_RXIM|UART011_RTIM|UART011_FEIM| 1191 1189 UART011_PEIM|UART011_BEIM|UART011_OEIM); ··· 1197 1193 1198 1194 static void pl011_enable_ms(struct uart_port *port) 1199 1195 { 1200 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1196 + struct uart_amba_port *uap = 1197 + container_of(port, struct uart_amba_port, port); 1201 1198 1202 1199 uap->im |= UART011_RIMIM|UART011_CTSMIM|UART011_DCDMIM|UART011_DSRMIM; 1203 1200 writew(uap->im, uap->port.membase + UART011_IMSC); ··· 1354 1349 1355 1350 static unsigned int pl011_tx_empty(struct uart_port *port) 1356 1351 { 1357 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1352 + struct uart_amba_port *uap = 1353 + container_of(port, struct uart_amba_port, port); 1358 1354 unsigned int status = readw(uap->port.membase + UART01x_FR); 1359 1355 return status & (UART01x_FR_BUSY|UART01x_FR_TXFF) ? 0 : TIOCSER_TEMT; 1360 1356 } 1361 1357 1362 1358 static unsigned int pl011_get_mctrl(struct uart_port *port) 1363 1359 { 1364 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1360 + struct uart_amba_port *uap = 1361 + container_of(port, struct uart_amba_port, port); 1365 1362 unsigned int result = 0; 1366 1363 unsigned int status = readw(uap->port.membase + UART01x_FR); 1367 1364 ··· 1381 1374 1382 1375 static void pl011_set_mctrl(struct uart_port *port, unsigned int mctrl) 1383 1376 { 1384 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1377 + struct uart_amba_port *uap = 1378 + container_of(port, struct uart_amba_port, port); 1385 1379 unsigned int cr; 1386 1380 1387 1381 cr = readw(uap->port.membase + UART011_CR); ··· 1410 1402 1411 1403 static void pl011_break_ctl(struct uart_port *port, int break_state) 1412 1404 { 1413 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1405 + struct uart_amba_port *uap = 1406 + container_of(port, struct uart_amba_port, port); 1414 1407 unsigned long flags; 1415 1408 unsigned int lcr_h; 1416 1409 ··· 1429 1420 1430 1421 static void pl011_quiesce_irqs(struct uart_port *port) 1431 1422 { 1432 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1423 + struct uart_amba_port *uap = 1424 + container_of(port, struct uart_amba_port, port); 1433 1425 unsigned char __iomem *regs = uap->port.membase; 1434 1426 1435 1427 writew(readw(regs + UART011_MIS), regs + UART011_ICR); ··· 1452 1442 1453 1443 static int pl011_get_poll_char(struct uart_port *port) 1454 1444 { 1455 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1445 + struct uart_amba_port *uap = 1446 + container_of(port, struct uart_amba_port, port); 1456 1447 unsigned int status; 1457 1448 1458 1449 /* ··· 1472 1461 static void pl011_put_poll_char(struct uart_port *port, 1473 1462 unsigned char ch) 1474 1463 { 1475 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1464 + struct uart_amba_port *uap = 1465 + container_of(port, struct uart_amba_port, port); 1476 1466 1477 1467 while (readw(uap->port.membase + UART01x_FR) & UART01x_FR_TXFF) 1478 1468 barrier(); ··· 1485 1473 1486 1474 static int pl011_hwinit(struct uart_port *port) 1487 1475 { 1488 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1476 + struct uart_amba_port *uap = 1477 + container_of(port, struct uart_amba_port, port); 1489 1478 int retval; 1490 1479 1491 1480 /* Optionaly enable pins to be muxed in and configured */ ··· 1539 1526 1540 1527 static int pl011_startup(struct uart_port *port) 1541 1528 { 1542 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1529 + struct uart_amba_port *uap = 1530 + container_of(port, struct uart_amba_port, port); 1543 1531 unsigned int cr, lcr_h, fbrd, ibrd; 1544 1532 int retval; 1545 1533 ··· 1632 1618 1633 1619 static void pl011_shutdown(struct uart_port *port) 1634 1620 { 1635 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1621 + struct uart_amba_port *uap = 1622 + container_of(port, struct uart_amba_port, port); 1636 1623 unsigned int cr; 1637 1624 1638 1625 /* ··· 1695 1680 pl011_set_termios(struct uart_port *port, struct ktermios *termios, 1696 1681 struct ktermios *old) 1697 1682 { 1698 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1683 + struct uart_amba_port *uap = 1684 + container_of(port, struct uart_amba_port, port); 1699 1685 unsigned int lcr_h, old_cr; 1700 1686 unsigned long flags; 1701 1687 unsigned int baud, quot, clkdiv; ··· 1838 1822 1839 1823 static const char *pl011_type(struct uart_port *port) 1840 1824 { 1841 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1825 + struct uart_amba_port *uap = 1826 + container_of(port, struct uart_amba_port, port); 1842 1827 return uap->port.type == PORT_AMBA ? uap->type : NULL; 1843 1828 } 1844 1829 ··· 1917 1900 1918 1901 static void pl011_console_putchar(struct uart_port *port, int ch) 1919 1902 { 1920 - struct uart_amba_port *uap = (struct uart_amba_port *)port; 1903 + struct uart_amba_port *uap = 1904 + container_of(port, struct uart_amba_port, port); 1921 1905 1922 1906 while (readw(uap->port.membase + UART01x_FR) & UART01x_FR_TXFF) 1923 1907 barrier();