Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 May 1997 19:44:01 -0700
From:      John-Mark Gurney <jmg@hydrogen.nike.efn.org>
To:        Brett Glass <brett@lariat.org>
Cc:        rberndt@nething.com, WELCHDW@wofford.edu, HARDWARE@FreeBSD.ORG
Subject:   Re: isa bus and boca multiport boards
Message-ID:  <19970520194401.23424@hydrogen.nike.efn.org>
In-Reply-To: <3.0.1.32.19970520125159.006dbe70@lariat.org>; from Brett Glass on Tue, May 20, 1997 at 12:51:59PM -0600
References:  <8825649D.00771D31.00@IWND1.infoworld.com> <3.0.1.32.19970520125159.006dbe70@lariat.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Brett Glass scribbled this message on May 20:
> At 04:14 PM 5/20/97 -0400, you wrote:
>  
> >Since the entire set of ports must be scanned whenever an interrupt occurs,
> >maybe there is too much delay in getting to the upper ports. Something gets
> >locked up if they overflow. I left several messages, but no one could
> >figure it out.
> 
> Maybe the sio driver should be recoded in optimized ASM. I can see some
> major C inefficiencies in it, including lots of repeated pointer
> dereferences and control structures that the compiler would probably
> optimize poorly. I've generated super-tight assembler for serial I/O.
> 
> A stopgap might be be use a couple of IRQs for the different ports, if the
> board lets you do it. I put no more than 4 UARTs on an IRQ in my system
> because the driver loops over the UARTS at least twice per IRQ.

well... this won't do any good... as right now when COM_MULTIPORT is
used all the sio ports are scanned until they scan without hitting any
change (input, signal change)...  probably what should go in before this
is splitting the intrrupt routine to only scan the ports that are on a
certain board...  this shouldn't be THAT hard to do... and I've thought
about doing it...

what you might try though is to set the fifo trigger level lower (I have
code that allows you to have a kernel define but haven't committed it)
than the default of 14 on 16550s...  I had a Bt946 that would cause my
multiport board to overflow...  so I had to set the fifo levels lower...

ttyl..
> 
> --Brett
> 

-- 
  John-Mark
  Cu Networking                             Modem/FAX: +1 541 683 6954

  Live in Peace, destroy Micro$oft, support free software, run FreeBSD



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