On Thu, Apr 08, 2004 at 12:34:43PM -0600, M. Warner Losh wrote: > In message: <[EMAIL PROTECTED]> > Marcel Moolenaar <[EMAIL PROTECTED]> writes: > : On Wed, Apr 07, 2004 at 03:36:02PM -0700, othermark wrote: > : > I have a multi-port PCI card under puc and sio that has 4 19200 > : > connections to it now, and when data is streaming across all of > : > them at once, I get several silo overflows. Would it be better > : > to run this under puc + uart? > : > : Not really. The problem is that puc(4) iterates over all ports in > : the same way whether you use uart(4) or sio(4). So, puc(4) is > : the problem more that sio(4) or uart(4). However, uart(4) has the > : beginnings of an interface that puc(4) could use to figure out > : which UART needs attention without actually calling the interrupt > : routine for each of them. > > Yes, but at 19200 baud, his problems likely aren't related to the > iteration. They are likely related to the fact that he said his > interrupt is shared and therefore not fast. We have horrible > interrupt latency in current when you want to get to the FIFOs of > UARTs quickly :-(.
Those cards are just what they are - cheap. They have very small FIFOs and they don't use DMA. IRQ sharing makes them even worse than traditional ISA stuff. My advise for cost efficient and fast serials is getting USB ones. Even noname USB serials do much better then puc(4) based. E.g. the FT232BM (uftdi(4)) has 128 bytes send and 384 bytes receive buffer plus your USB controller does DMA. At best you would add a cheap OHCI card if your onboard USB is UHCI based as OHCI is less CPU intensive. -- B.Walter BWCT http://www.bwct.de [EMAIL PROTECTED] [EMAIL PROTECTED] _______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"