*BSD News Article 6912


Return to BSD News archive

Path: sserve!manuel.anu.edu.au!munnari.oz.au!uunet!dtix!darwin.sura.net!haven.umd.edu!decuac!pa.dec.com!rdg.dec.com!sixter.var.dec.com!franzoni
From: franzoni@sixter.var.dec.com (Mauro Franzoni)
Newsgroups: comp.unix.bsd
Subject: Re: How do I enable COM3 and COM4?
Message-ID: <1992Oct22.111534.17570@rdg.dec.com>
Date: 22 Oct 92 11:15:34 GMT
References: <veit.719567281@du9ds3> <1992Oct15.014800.729@skitzo.dseg.ti.com> <1992Oct15.162922.24566@fcom.cc.utah.edu> <1992Oct19.032151.29724@cs.cornell.edu>
Sender: news@rdg.dec.com (Mr News)
Reply-To: franzoni@sixter.var.dec.com (Mauro Franzoni)
Organization: Digital Equipment Corporation
Lines: 39

> >>In article <1992Oct15.014800.729@skitzo.dseg.ti.com>
dittman@skitzo.dseg.ti.com (Eric Dittman) writes:
|> >>>How do I enable COM3 and COM4 in the binary distribution of 386BSD 0.1
|> >>>from agate.berkeley.edu?  Or do I have to do this from the source?
|> >>
|> >>You have to modify the configuration file, config, and rebuild the kernel.
|> >>Amacio Hasty (I believe) has put together a "minimum required sources"
|> >>tar archive on agate and elsewhere for the rebuilding of kernels for those
|> >>with only 40Meg of disk.
|> >>
|> >>
|> >You might also want to edit isa.h to add
|> >#define IO_COM4 0x2e8
|> >#define IO_COM3 0x3e8
|> 
|> >and then use in the config file
|> >device com2 at isa? port "IO_COM3" tty irq 4 vector comintr
|> >device com3 at isa? port "IO_COM4" tty irq 3 vector comintr
|> 
|> >Craig
|> 
|> >p.s. mknod /dev/com2 c 8 2 ; mknod /dev/com3 c 8 3 

> This is the obvious "solution", but will cause really dirty problems,
provided
|> you do not remove the lines for com1 and com2 (or com0/com1, depending how
|> they are called). Usually they occupy the irq3 and irq4 lines. So you
|> get an interrupt clash for the serial lines, with the effect that data may
|> get lost in the situation where two ports on the same irq call for service.
|> Don't use the above patch without modifying the com driver irq service 
|> to take care for these multiple events, even if anyone claims that "this 

Did anybody write such a modified service routine ?

|> works for me". In real situations, it will fail miserably.
Yes, it fails - and block all of /dev/com0[1-4]

Thanks,
M. Franzoni