Lines Matching refs:brd
1744 struct mxser_board *brd = dev_id; in mxser_interrupt() local
1747 unsigned int i, max = brd->nports; in mxser_interrupt()
1752 irqbits = inb(brd->vector) & mask; in mxser_interrupt()
1762 port = &brd->ports[i]; in mxser_interrupt()
1813 static void mxser_initbrd(struct mxser_board *brd, bool high_baud) in mxser_initbrd() argument
1819 brd->must_hwid = mxser_must_get_hwid(brd->ports[0].ioaddr); in mxser_initbrd()
1820 is_mu860 = brd->must_hwid == MOXA_MUST_MU860_HWID; in mxser_initbrd()
1823 if (Gpci_uart_info[i].type == brd->must_hwid) { in mxser_initbrd()
1824 brd->max_baud = Gpci_uart_info[i].max_baud; in mxser_initbrd()
1828 brd->max_baud = 921600; in mxser_initbrd()
1835 outb(0, brd->vector + 4); in mxser_initbrd()
1836 outb(0, brd->vector + 0x0c); in mxser_initbrd()
1839 for (i = 0; i < brd->nports; i++) { in mxser_initbrd()
1840 info = &brd->ports[i]; in mxser_initbrd()
1843 info->opmode_ioaddr = brd->vector + 4; in mxser_initbrd()
1845 info->opmode_ioaddr = brd->vector + 0x0c; in mxser_initbrd()
1849 info->board = brd; in mxser_initbrd()
1853 if (brd->must_hwid != MOXA_OTHER_UART) in mxser_initbrd()
1873 struct mxser_board *brd; in mxser_probe() local
1887 brd = devm_kzalloc(&pdev->dev, struct_size(brd, ports, nports), in mxser_probe()
1889 if (!brd) in mxser_probe()
1892 brd->idx = i; in mxser_probe()
1893 __set_bit(brd->idx, mxser_boards); in mxser_probe()
1908 brd->nports = nports; in mxser_probe()
1910 brd->ports[i].ioaddr = ioaddress + 8 * i; in mxser_probe()
1917 brd->vector = ioaddress; in mxser_probe()
1920 brd->irq = pdev->irq; in mxser_probe()
1922 mxser_initbrd(brd, ent->driver_data & MXSER_HIGHBAUD); in mxser_probe()
1924 retval = devm_request_irq(&pdev->dev, brd->irq, mxser_interrupt, in mxser_probe()
1925 IRQF_SHARED, "mxser", brd); in mxser_probe()
1932 tty_dev = tty_port_register_device(&brd->ports[i].port, in mxser_probe()
1943 pci_set_drvdata(pdev, brd); in mxser_probe()
1948 tty_port_destroy(&brd->ports[i].port); in mxser_probe()
1950 __clear_bit(brd->idx, mxser_boards); in mxser_probe()
1957 struct mxser_board *brd = pci_get_drvdata(pdev); in mxser_remove() local
1958 unsigned int i, base = brd->idx * MXSER_PORTS_PER_BOARD; in mxser_remove()
1960 for (i = 0; i < brd->nports; i++) { in mxser_remove()
1962 tty_port_destroy(&brd->ports[i].port); in mxser_remove()
1965 __clear_bit(brd->idx, mxser_boards); in mxser_remove()