Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Oct 2005 14:27:20 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-hardware@freebsd.org
Cc:        Jim Pazarena <fhard@ccstores.com>
Subject:   Re: multi-port serial devices
Message-ID:  <200510311427.20717.jhb@freebsd.org>
In-Reply-To: <43665209.6010908@ccstores.com>
References:  <43640997.8000905@ccstores.com> <200510311158.55967.jhb@freebsd.org> <43665209.6010908@ccstores.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 31 October 2005 12:19 pm, Jim Pazarena wrote:
> John Baldwin wrote:
> > On Saturday 29 October 2005 07:45 pm, Jim Pazarena wrote:
> >>just purchased Specialix SX modular high speed serial solution
> >>
> >>Specialix has changed their name (bought out by perhaps) to Perle.
> >>
> >>The FreeDSD 5.4 hardware compatibility list indicates
> >>"Specialix SI/XIO/SX" multiport serial cards, are supports (si(4) driver)
> >>
> >>however a compile of the kernel with  "device si" doesn't even
> >>discover the card. The supplied DOS utility to probe the device works
> >>as expected.
> >>
> >>Can anyone offer a suggestion.
> >
> > Is this a PCI card?  If so, can you try adding it's device ID to the
> > si(4) driver?  If you aren't sure how to do that, just post the output of
> > pciconf -lv and include the section of info about your card.
>
> thank you VERY MUCH for the response!
>
> yes it is indeed a PCI card, here is the pciconf -lv output
>
> none8@pci2:7:0:	class=0x078000 card=0x030011cb chip=0x200011cb rev=0x00
> hdr=0x00 vendor   = 'Specialix International Ltd.'
>     device   = 'PCI-9050 Target Interface'
>     class    = simple comms
>
> all I added to the MYKERNEL configuration is:
> device     si
>
> your help is much appreciated!
> Jim

Here's a patch you can try:

Index: si_pci.c
===================================================================
RCS file: /usr/cvs/src/sys/dev/si/si_pci.c,v
retrieving revision 1.7
diff -u -r1.7 si_pci.c
--- si_pci.c	1 Mar 2005 08:58:04 -0000	1.7
+++ si_pci.c	31 Oct 2005 19:25:22 -0000
@@ -45,8 +45,13 @@
 		desc = "Specialix SI/XIO PCI host card";
 		break;
 	case 0x200011cb:
-		if (pci_read_config(dev, SIJETSSIDREG, 4) == 0x020011cb)
+		/* Really the sub device id ("card"). */
+		switch (pci_read_config(dev, SIJETSSIDREG, 4)) {
+		case 0x020011cb:
+		case 0x030011cb:
 			desc = "Specialix SX PCI host card";
+			break;
+		}
 		break;
 	}
 	if (desc) {
Index: sireg.h
===================================================================
RCS file: /usr/cvs/src/sys/dev/si/sireg.h,v
retrieving revision 1.10
diff -u -r1.10 sireg.h
--- sireg.h	6 Jan 2005 01:43:14 -0000	1.10
+++ sireg.h	31 Oct 2005 19:23:16 -0000
@@ -62,14 +62,14 @@
 #define SIEISAIOSIZE	0x100			/* XXX How many ports */
 
 /* SI old PCI */
-#define SIPCIBADR	0x10			/* Which BADR to map in RAM */
+#define SIPCIBADR	PCIR_BAR(0)		/* Which BADR to map in RAM */
 #define SIPCI_MEMSIZE	0x100000		/* Mapping size */
 #define SIPCIRESET	0xc0001			/* 0 = Reset */
 #define SIPCIINTCL	0x40001			/* 0 = clear int */
 
 /* SI Jet PCI */
-#define SIJETSSIDREG	0x2c			/* Is it an SX or RIO? */
-#define SIJETBADR	0x18			/* Which BADR to map in RAM */
+#define SIJETSSIDREG	PCIR_SUBVEND_0		/* Is it an SX or RIO? */
+#define SIJETBADR	PCIR_BAR(2)		/* Which BADR to map in RAM */
 /* SI Jet PCI & ISA */
 #define SIJETIDBASE	0x7c00			/* ID ROM base */
 #define SISPLXID	0x984d			/* Specialix ID */

> this is my second $1000 purchase for a multi-port serial device to work
> with FreeBSD my first purchase -> RocketPort just plain wouldn't work. The
> management is getting frustrated with my purchases based on the Hardware
> Compatibility List.

Hmm, I use an 8-port rocketport in my devel server that I got on ebay for $50.  
What issues do you have with your RocketPort?

rp0: <RocketPort PCI> port 0xde80-0xdebf irq 22 at device 11.0 on pci1
RocketPort0 (Version 3.02) 8 ports.

-- 
John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510311427.20717.jhb>