Date: Mon, 22 Nov 2004 11:46:48 -0500 (EST) From: Paul Sandys <myj@nyct.net> To: John-Mark Gurney <gurney_j@resnet.uoregon.edu> Cc: freebsd-stable@freebsd.org Subject: Re: SIIG cards and puc Message-ID: <20041122113525.G31812@bsd3.nyct.net> In-Reply-To: <20041120084456.GU57546@funkthat.com> References: <20041114231939.Y71461@bsd3.nyct.net> <20041120084456.GU57546@funkthat.com>
next in thread | previous in thread | raw e-mail | index | archive | help
The SIIG card I have does use shared interrupt for both ports, so I don't see any other way around it. The 0x40000001 is a regular flag that's used by sio.c . I found an undocumented feature in there, that allows you to set a FIFO size, so I used it in combination with the shared irq flag. from sio.c: #define COM_ISMULTIPORT(flags) ((flags) & 0x01) #define COM_FIFOSIZE(flags) (((flags) & 0xff000000) >> 24) Here's the diff: *** pucdata.c.orig Mon Nov 22 11:40:30 2004 --- pucdata.c Mon Nov 22 11:41:02 2004 *************** *** 539,546 **** { 0x131f, 0x2031, 0, 0 }, { 0xffff, 0xffff, 0, 0 }, { ! { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, ! { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, }, }, --- 539,546 ---- { 0x131f, 0x2031, 0, 0 }, { 0xffff, 0xffff, 0, 0 }, { ! { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ, 0x40000001 }, ! { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ, 0x40000001 }, }, }, On Sat, 20 Nov 2004, John-Mark Gurney wrote: > Date: Sat, 20 Nov 2004 00:44:56 -0800 > From: John-Mark Gurney <gurney_j@resnet.uoregon.edu> > To: Paul Sandys <myj@nyct.net> > Cc: freebsd-stable@freebsd.org > Subject: Re: SIIG cards and puc > > Paul Sandys wrote this message on Sun, Nov 14, 2004 at 23:25 -0500: > > I've tried to get one of the 20x family 16C650 64-byte buffer SIIG cards to > > work. It does not work out of the box. > > > > I had to add 0x40000001 into the flags in pucdata.c for my card and "options > > where does this magic value come from? Could you express it in defines > in the code? i.e. PUC_FLAGS_MEMORY > > > COM_MULTIPORT" into the kernel config. It's still limited to 115200 baud, but > > all I was interested is 9600 anyway. > > COM_MULTIPORT will not be default due to the impact of having to test > every sio port on any sio interrupt... > > > Can this be implemented into the source tree ? > > A patch is helpful. > > -- > John-Mark Gurney Voice: +1 415 225 5579 > > "All that I will do, has been done, All that I have, has not." > <-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-> < myj@nyct.net Paul Sandys | New York Connect http://www.nyct.net > < network operations manager | Total Solution provider > <-------------------------------------------------------------------------> < " The Internet Solutions Provider You Can Count On ! " > <-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_->
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041122113525.G31812>