Subject: Re: com driver problems
To: None <grefen@convex.com>
From: Mike Long <mike.long@analog.com>
List: port-i386
Date: 06/09/1995 10:49:53
>References: <9506071350.AA09758@cthulhu> 
>Date: Fri, 09 Jun 1995 11:25:17 +0200
>From: Stefan Grefen <grefen@convex.com>
>
>In message <9506071350.AA09758@cthulhu>  Mike Long wrote:
>> Something in the last com driver fix disagrees with my modem (DSI
>> Connection 96+).  Any process that tries to use it hangs; ps(1)
>> reports that it is blocked in 'tty in' or 'tty out'.
>
>There is bug in some chipsests where TX interrupts can get lost.
>Check my chnages in com.c (for 1.0) in my pcmcia-stuff.
>ftp.uni-mainz.de://pub/NetBSD/misc_features/Stefan/

com.c 1.59 solved the problem, so my modem and I are happy now.
Thanks anyway, though.

>Basicly before going to sleep on tty out check if the chip is 
>realy busy sending some stuff, and also after you handled all interrupts
>and the driver is expecting a TX interrupt if the chip is still
>busy sending.
>If the chip it is not busy 'fake' a TX-interupt.
>This problem only happend with non FIFO chips, looks like
>enabling the send-FIFO's triggers it for FIFO chips too.

The DSI softmodems emulate a 16450 (probes as "ns8250 or ns16450, no
fifo" during boot).  The softmodem does have a FIFO, but it's internal
to the onboard DSP instead of in the UART.
-- 
Mike Long <mike.long@analog.com>           http://www.shore.net/~mikel
VLSI Design Engineer         finger mikel@shore.net for PGP public key
Analog Devices, CPD Division          CCBF225E7D3F7ECB2C8F7ABB15D9BE7B
Norwood, MA 02062 USA                assert(*this!=opinionof(Analog));