0001
0002
0003
0004
0005 #define FL_BASE_MASK 0x0007
0006 #define FL_BASE0 0x0000
0007 #define FL_BASE1 0x0001
0008 #define FL_BASE2 0x0002
0009 #define FL_BASE3 0x0003
0010 #define FL_BASE4 0x0004
0011 #define FL_GET_BASE(x) (x & FL_BASE_MASK)
0012
0013
0014
0015 #define FL_BASE_BARS 0x0008
0016
0017
0018 #define FL_NOIRQ 0x0080
0019
0020
0021 #define FL_REGION_SZ_CAP 0x0100
0022
0023 struct pciserial_board {
0024 unsigned int flags;
0025 unsigned int num_ports;
0026 unsigned int base_baud;
0027 unsigned int uart_offset;
0028 unsigned int reg_shift;
0029 unsigned int first_offset;
0030 };
0031
0032 struct serial_private;
0033
0034 struct serial_private *
0035 pciserial_init_ports(struct pci_dev *dev, const struct pciserial_board *board);
0036 void pciserial_remove_ports(struct serial_private *priv);
0037 void pciserial_suspend_ports(struct serial_private *priv);
0038 void pciserial_resume_ports(struct serial_private *priv);