Subject: kern/17140: add support for Titan (VScom) PCI-800L multi serial card in puc(4)
To: None <gnats-bugs@gnats.netbsd.org>
From: Stoned Elipot <seb@script.jussieu.fr>
List: netbsd-bugs
Date: 06/02/2002 11:57:01
>Number:         17140
>Category:       kern
>Synopsis:       add support for Titan (VScom) PCI-800L multi serial card in puc(4)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    kern-bug-people
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Sun Jun 02 02:58:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Stoned Elipot
>Release:        NetBSD 1.6A
>Organization:
SCRIPT, Paris VII University, France
>Environment:
System: NetBSD bozeman 1.6A NetBSD 1.6A (GENERIC) #0: Sun Jun 2 11:32:04 CEST 2002 root@bozeman:/u/current-src/syssrc/sys/arch/i386/compile/GENERIC i386
Architecture: i386
Machine: i386
>Description:
The Titan/Vision Systems PCI-800L multi serial card is not supported
by the puc(4) device driver. The proposed patch add its support.
>How-To-Repeat:
Apply patch on dev/pci/pcidevs and dev/pci/pucdata.c,
regen dev/pci/pcidevs.h  and dev/pci/pcidevs_data.h,
compile a new kernel, plug in a PCI-800L card and boot.

# dmesg | egrep  '(puc|com[0-9]+(:|.* puc))' 
puc0 at pci0 dev 11 function 0: Titan PCI-800L (com, com, com, com, com, com, com, com)
com3 at puc0 port 0: interrupting at irq 11
com3: ns16550a, working fifo
com4 at puc0 port 1: interrupting at irq 11
com4: ns16550a, working fifo
com5 at puc0 port 2: interrupting at irq 11
com5: ns16550a, working fifo
com6 at puc0 port 3: interrupting at irq 11
com6: ns16550a, working fifo
com7 at puc0 port 4: interrupting at irq 11
com7: ns16550a, working fifo
com8 at puc0 port 5: interrupting at irq 11
com8: ns16550a, working fifo
com9 at puc0 port 6: interrupting at irq 11
com9: ns16550a, working fifo
com10 at puc0 port 7: interrupting at irq 11
com10: ns16550a, working fifo
>Fix:

Index: pcidevs
===================================================================
RCS file: /cvsroot/syssrc/sys/dev/pci/pcidevs,v
retrieving revision 1.433
diff -u -r1.433 pcidevs
--- pcidevs	2002/05/28 17:46:10	1.433
+++ pcidevs	2002/06/02 09:52:30
@@ -1965,6 +1965,7 @@
 product TI	PCI2040		0xac60	PCI2040 PCI-to-DSP Bridge
 
 /* Titan Electronics products */
+product TITAN PCI800L		0x8080	PCI-800L
 product TITAN PCI800H		0xa003	PCI-800H
 product TITAN PCI100H		0xa001	PCI-100H
 
Index: pucdata.c
===================================================================
RCS file: /cvsroot/syssrc/sys/dev/pci/pucdata.c,v
retrieving revision 1.28
diff -u -r1.28 pucdata.c
--- pucdata.c	2002/05/24 12:07:46	1.28
+++ pucdata.c	2002/06/02 09:52:31
@@ -666,7 +666,20 @@
                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
             },
         },
-
+	{   "Titan PCI-800L",
+	    {	0x14d2,	0x8080,	0,	0	},
+	    {	0xffff,	0xffff,	0,	0	},
+	    {
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x20, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x28, COM_FREQ * 8 },
+	    },
+	},
 	/* NEC PK-UG-X001 K56flex PCI Modem card.
 	   NEC MARTH bridge chip and Rockwell RCVDL56ACF/SP using. */
 	{   "NEC PK-UG-X001 K56flex PCI Modem",
>Release-Note:
>Audit-Trail:
>Unformatted: