aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/8250_pci.h
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2005-07-27 06:35:54 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2005-07-27 06:35:54 -0400
commit241fc4367b3ca5d407b043599ed980304a70b91f (patch)
tree26fca6996c9b3fe89cf86864681adcffc62aac6c /include/linux/8250_pci.h
parent70db3d91a5228c98603c55fa06c87184a1f9f6db (diff)
[SERIAL] Expose 8250_pci setup/removal/suspend/resume functions
Re-jig the setup/removal/suspend/resume of 8250 pci ports so that they know slightly less about how they're attached to a PCI device. Expose this as the new interface for registering PCI serial ports, as well as the pciserial_board structure and associated flag definitions. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/linux/8250_pci.h')
-rw-r--r--include/linux/8250_pci.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/include/linux/8250_pci.h b/include/linux/8250_pci.h
index 5f3ab21b339b..192c0ff7a774 100644
--- a/include/linux/8250_pci.h
+++ b/include/linux/8250_pci.h
@@ -1,2 +1,40 @@
1/*
2 * Definitions for PCI support.
3 */
4#define FL_BASE_MASK 0x0007
5#define FL_BASE0 0x0000
6#define FL_BASE1 0x0001
7#define FL_BASE2 0x0002
8#define FL_BASE3 0x0003
9#define FL_BASE4 0x0004
10#define FL_GET_BASE(x) (x & FL_BASE_MASK)
11
12/* Use successive BARs (PCI base address registers),
13 else use offset into some specified BAR */
14#define FL_BASE_BARS 0x0008
15
16/* do not assign an irq */
17#define FL_NOIRQ 0x0080
18
19/* Use the Base address register size to cap number of ports */
20#define FL_REGION_SZ_CAP 0x0100
21
22struct pciserial_board {
23 unsigned int flags;
24 unsigned int num_ports;
25 unsigned int base_baud;
26 unsigned int uart_offset;
27 unsigned int reg_shift;
28 unsigned int first_offset;
29};
30
31struct serial_private;
32
33struct serial_private *
34pciserial_init_ports(struct pci_dev *dev, struct pciserial_board *board);
35void pciserial_remove_ports(struct serial_private *priv);
36void pciserial_suspend_ports(struct serial_private *priv);
37void pciserial_resume_ports(struct serial_private *priv);
38
1int pci_siig10x_fn(struct pci_dev *dev, int enable); 39int pci_siig10x_fn(struct pci_dev *dev, int enable);
2int pci_siig20x_fn(struct pci_dev *dev, int enable); 40int pci_siig20x_fn(struct pci_dev *dev, int enable);