[serial] [adddevice] Serial controller: Decision Computer InternationalCo. PCCOM2 (rev 02)

From: Alon Bar-Lev
Date: Mon Jan 16 2006 - 04:26:34 EST


Hello,

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.

Please consider adding support to this device.

Best Regards,
Alon Bar-Lev.

diff -urNp linux-2.6.14-gentoo-r5/drivers/serial/8250_pci.c linux-2.6.14-gentoo-r5.new/drivers/serial/8250_pci.c
--- linux-2.6.14-gentoo-r5/drivers/serial/8250_pci.c 2006-01-16 10:10:37.000000000 +0200
+++ linux-2.6.14-gentoo-r5.new/drivers/serial/8250_pci.c 2006-01-15 19:06:10.000000000 +0200
@@ -930,6 +930,7 @@ enum pci_board_num_t {
pbn_b2_bt_2_921600,
pbn_b2_bt_4_921600,

+ pbn_b3_2_115200,
pbn_b3_4_115200,
pbn_b3_8_115200,

@@ -1263,6 +1264,12 @@ static struct pciserial_board pci_boards
.uart_offset = 8,
},

+ [pbn_b3_2_115200] = {
+ .flags = FL_BASE3,
+ .num_ports = 2,
+ .base_baud = 115200,
+ .uart_offset = 8,
+ },
[pbn_b3_4_115200] = {
.flags = FL_BASE3,
.num_ports = 4,
@@ -2164,6 +2171,9 @@ static struct pci_device_id serial_pci_t
PCI_ANY_ID, PCI_ANY_ID, 0, 0,
pbn_nec_nile4 },

+ { PCI_VENDOR_ID_DCI, PCI_DEVICE_ID_DCI_PCCOM2,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+ pbn_b3_2_115200 },
{ PCI_VENDOR_ID_DCI, PCI_DEVICE_ID_DCI_PCCOM4,
PCI_ANY_ID, PCI_ANY_ID, 0, 0,
pbn_b3_4_115200 },
diff -urNp linux-2.6.14-gentoo-r5/include/linux/pci_ids.h linux-2.6.14-gentoo-r5.new/include/linux/pci_ids.h
--- linux-2.6.14-gentoo-r5/include/linux/pci_ids.h 2006-01-16 10:10:37.000000000 +0200
+++ linux-2.6.14-gentoo-r5.new/include/linux/pci_ids.h 2006-01-15 19:03:13.000000000 +0200
@@ -2348,6 +2348,7 @@
#define PCI_VENDOR_ID_DCI 0x6666
#define PCI_DEVICE_ID_DCI_PCCOM4 0x0001
#define PCI_DEVICE_ID_DCI_PCCOM8 0x0002
+#define PCI_DEVICE_ID_DCI_PCCOM2 0x0004

#define PCI_VENDOR_ID_DUNORD 0x5544
#define PCI_DEVICE_ID_DUNORD_I3000 0x0001