| /* | |
| * Definitions for PCI support. | |
| */ | |
| #define FL_BASE_MASK 0x0007 | |
| #define FL_BASE0 0x0000 | |
| #define FL_BASE1 0x0001 | |
| #define FL_BASE2 0x0002 | |
| #define FL_BASE3 0x0003 | |
| #define FL_BASE4 0x0004 | |
| #define FL_GET_BASE(x) (x & FL_BASE_MASK) | |
| /* Use successive BARs (PCI base address registers), | |
| else use offset into some specified BAR */ | |
| #define FL_BASE_BARS 0x0008 | |
| /* do not assign an irq */ | |
| #define FL_NOIRQ 0x0080 | |
| /* Use the Base address register size to cap number of ports */ | |
| #define FL_REGION_SZ_CAP 0x0100 | |
| struct pciserial_board { | |
| unsigned int flags; | |
| unsigned int num_ports; | |
| unsigned int base_baud; | |
| unsigned int uart_offset; | |
| unsigned int reg_shift; | |
| unsigned int first_offset; | |
| }; | |
| struct serial_private; | |
| struct serial_private * | |
| pciserial_init_ports(struct pci_dev *dev, const struct pciserial_board *board); | |
| void pciserial_remove_ports(struct serial_private *priv); | |
| void pciserial_suspend_ports(struct serial_private *priv); | |
| void pciserial_resume_ports(struct serial_private *priv); |