Date: Tue, 31 Dec 1996 15:34:44 +1030 (CST) From: Michael Smith <msmith@atrad.adelaide.edu.au> To: hmmm@alaska.net (hmmm) Cc: bde@zeta.org.au, hackers@FreeBSD.ORG Subject: Re: Ints Message-ID: <199612310504.PAA09948@genesis.atrad.adelaide.edu.au> In-Reply-To: <Pine.GSO.3.93.961230184937.6958A-100000@calvino.alaska.net> from hmmm at "Dec 30, 96 07:06:52 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
hmmm stands accused of saying: > > >for example - i have both COM ports tied to the same ISR - is there any > > >danger in reading RxBuf1 (lower priority) while SERVICING an RxBuf2 INT? I think there is confusion here between ISR and IRQ. You may have one ISR handling both ports, but you must have two IRQs. > > There is extreme danger of this not working at all, for other reasons - > > ISA hardware doesn't support sharing interrupts (at the same time). > > this i have heard - but cannot comprehend! the UART will activate its IRQ > - negotiate with the PIC - and when the PIC acks everything it > INTerrupts the CPU to picks up a vector in RAM to jump to ... > who cares if the address is the same ISR or not ??? > i don't understand! :) The inputs to the PIC are edge-triggered. If one interrupt occurs while another is still asserted, the second is lost, and will prevent any other interrupts from being detected. Most ISA devices also drive their interrupt outputs inactive as well as active, so two devices in different states will fight each other, and apart from the possibility of damage to one or the other, the resultant IRQ signal isn't terribly wonderful from an electrical point of view. You can, to a degree, work around this, but every time you move your feet with the PIC and ISA hardware you open more obscure race conditions. The safest and most reliable base to work from is "never share interrupts". -- ]] Mike Smith, Software Engineer msmith@gsoft.com.au [[ ]] Genesis Software genesis@gsoft.com.au [[ ]] High-speed data acquisition and (GSM mobile) 0411-222-496 [[ ]] realtime instrument control. (ph) +61-8-8267-3493 [[ ]] Unix hardware collector. "Where are your PEZ?" The Tick [[
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199612310504.PAA09948>