Date: Thu, 18 Jul 96 18:08:38 WET From: <E00114@vnet.atea.be> (Rob Schofield) To: <freebsd-hardware@freebsd.org> Subject: Multiple COM ports with same IRQ Message-ID: <vines.mmb7%2BgqYvlA@vnet.atea.be>
next in thread | raw e-mail | index | archive | help
Has anyone tried converging two or more more COM ports on one IRQ, ala multi-port board method? Let me explain... Using sio for multiport configuration is reasonably straightforward according to the Handbook. However, if you've got more UARTs than the standard IBM pair (ie., COM1 & 2) the naughty "convention" is to have COM1 & 3 on IRQ4 and COM2 & 4 on IRQ3. Under DOS, this is a functional limitation and causes problems. If there's no free IRQ lines left in your box, then you can't just re-assign COM3 & 4 IRQs to something other than IRQ4 or 3. EISA boxes can use shared interrupts, level or edge triggered. ISA boxes can have hardware installed (accidentally?) with devices sharing the same IRQ, but the drivers cannot deal with it. So - here's the nub; suppose we have an ISA/EISA box with sio0 (DOS = COM1) attached to a mouse, IO add XXX, interrupt 4; sio1 (COM 2) at IO XXY and sio2 (COM 3) at IO XXZ, sharing interupt 3 (you could also plonk in COM4 on the same IRQ). Then, under FreeBSD, configure sio to recognise the 3 ISA devices at the three IO adds XXX, XXY and XXZ, with sio 2 & 3 considered to be a multiport board comprising 2 UARTS sharing one master IRQ: device sio0 at isa? port 0xXXX tty irq 4 vector siointr options "COM_MULTIPORT" device sio1 at isa? port 0xXXY tty flags 0x??? device sio2 at isa? port 0xXXZ tty flags 0x??? irq 3 vector siointr - plus the neccessary /dev device entries as well. XXX is at a lower IO add then XXY, and XXY is lower than XXZ. Considering the UARTS will generate edge interrupt rather than level, will this work? Will sio grab the "dual port" interrupt then interrogate the individual status regs of the UARTS? I'm not too concerned with operation under DOS here, so I'm only concerned with FBSD. Somebody tell me I'm an idiot and why this won't work (otherwise someone would have done it by now, wouldn't they?) Rob Schofield -- Happiness is a smoking processor....... Rob Schofield M.Sc. AMIEE schofiel@xs4all.nl http://www.xs4all.nl/~schofiel
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?vines.mmb7%2BgqYvlA>