diff options
author | Alon Bar-Lev <alon.barlev@gmail.com> | 2006-01-18 06:47:33 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2006-01-18 06:47:33 -0500 |
commit | d9004eb466d03b7900ed432fecec6819012b4ed3 (patch) | |
tree | a8ef7fedce08730cf92df2385b39be154a248caf | |
parent | bc965a7f43d3fc37584f9c16c6d7a84a911a9d9c (diff) |
[SERIAL] Add 8250 support for Decision Computer International Co. PCCOM2
There is a new device which is look like:
Serial controller: Decision Computer International Co. PCCOM2 (rev 02) (prog-if 02 [16550])
0700: 6666:0004 (rev 02) (prog-if 02)
Flags: medium devsel, IRQ 177
Memory at fe000000 (32-bit, non-prefetchable) [size=128]
I/O ports at e880 [size=128]
I/O ports at e400 [size=256]
It has two 16550A, and is not listed in kernel, although the
manufacturer clams that it is supported...
I've created the following patch, it only add the new PCI id and the
card to the repository, it seems to work.
Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r-- | drivers/serial/8250_pci.c | 10 | ||||
-rw-r--r-- | include/linux/pci_ids.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/drivers/serial/8250_pci.c b/drivers/serial/8250_pci.c index 589fb076654a..2a912153321e 100644 --- a/drivers/serial/8250_pci.c +++ b/drivers/serial/8250_pci.c | |||
@@ -940,6 +940,7 @@ enum pci_board_num_t { | |||
940 | pbn_b2_bt_2_921600, | 940 | pbn_b2_bt_2_921600, |
941 | pbn_b2_bt_4_921600, | 941 | pbn_b2_bt_4_921600, |
942 | 942 | ||
943 | pbn_b3_2_115200, | ||
943 | pbn_b3_4_115200, | 944 | pbn_b3_4_115200, |
944 | pbn_b3_8_115200, | 945 | pbn_b3_8_115200, |
945 | 946 | ||
@@ -1311,6 +1312,12 @@ static struct pciserial_board pci_boards[] __devinitdata = { | |||
1311 | .uart_offset = 8, | 1312 | .uart_offset = 8, |
1312 | }, | 1313 | }, |
1313 | 1314 | ||
1315 | [pbn_b3_2_115200] = { | ||
1316 | .flags = FL_BASE3, | ||
1317 | .num_ports = 2, | ||
1318 | .base_baud = 115200, | ||
1319 | .uart_offset = 8, | ||
1320 | }, | ||
1314 | [pbn_b3_4_115200] = { | 1321 | [pbn_b3_4_115200] = { |
1315 | .flags = FL_BASE3, | 1322 | .flags = FL_BASE3, |
1316 | .num_ports = 4, | 1323 | .num_ports = 4, |
@@ -2272,6 +2279,9 @@ static struct pci_device_id serial_pci_tbl[] = { | |||
2272 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, | 2279 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, |
2273 | pbn_nec_nile4 }, | 2280 | pbn_nec_nile4 }, |
2274 | 2281 | ||
2282 | { PCI_VENDOR_ID_DCI, PCI_DEVICE_ID_DCI_PCCOM2, | ||
2283 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, | ||
2284 | pbn_b3_2_115200 }, | ||
2275 | { PCI_VENDOR_ID_DCI, PCI_DEVICE_ID_DCI_PCCOM4, | 2285 | { PCI_VENDOR_ID_DCI, PCI_DEVICE_ID_DCI_PCCOM4, |
2276 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, | 2286 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, |
2277 | pbn_b3_4_115200 }, | 2287 | pbn_b3_4_115200 }, |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 5403257ae3e7..ecc1fc1f0f04 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
@@ -1992,6 +1992,7 @@ | |||
1992 | #define PCI_VENDOR_ID_DCI 0x6666 | 1992 | #define PCI_VENDOR_ID_DCI 0x6666 |
1993 | #define PCI_DEVICE_ID_DCI_PCCOM4 0x0001 | 1993 | #define PCI_DEVICE_ID_DCI_PCCOM4 0x0001 |
1994 | #define PCI_DEVICE_ID_DCI_PCCOM8 0x0002 | 1994 | #define PCI_DEVICE_ID_DCI_PCCOM8 0x0002 |
1995 | #define PCI_DEVICE_ID_DCI_PCCOM2 0x0004 | ||
1995 | 1996 | ||
1996 | #define PCI_VENDOR_ID_INTEL 0x8086 | 1997 | #define PCI_VENDOR_ID_INTEL 0x8086 |
1997 | #define PCI_DEVICE_ID_INTEL_EESSC 0x0008 | 1998 | #define PCI_DEVICE_ID_INTEL_EESSC 0x0008 |