SIIG cards and puc

Paul Sandys myj at nyct.net
Mon Nov 22 08:46:50 PST 2004


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 at resnet.uoregon.edu>
> To: Paul Sandys <myj at nyct.net>
> Cc: freebsd-stable at 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 at 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 ! "          >
<-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_->


More information about the freebsd-stable mailing list