Subject: Re: RasterOps 24S (was: ae0: device timeout on 1.5.x)
To: John Valdes <valdes@uchicago.edu>
From: Michael R. Zucca <mrz5149@acm.org>
List: port-mac68k
Date: 01/07/2002 00:44:56
At 12:21 AM -0500 1/7/02, John Valdes wrote:

>1) Is this sufficient, or should the full interrupt routine be
>   implemented (see my previous message)?  While there is one path
>   through the routine which results in just the one statement above
>   being executed--if bit 1 of 0xfe6028 is 0 and if bits 0 & 1 of
>   0xfe600c are 0--under other conditions, 11 values are written to 11
>   different locations.  Any guesses as to what these do?

Could be a board reset of some kind. The code might also serve another,
possibly unrelated, purpose that isn't clear.

>2) Do any other kernel sources need to be updated in order to "fully
>   support" this card under NetBSD?

If the card works in B&W without causing spurious interrupts, it's a
supported as it needs to be for now.

>3) An academic question: why would a video card generate an interrupt?
>   In my naive understanding, I believe interrupts would be generated
>   whenever a card needs access to the bus and/or needs to be serviced
>   by the CPU, but, being an output-only device, why/when would a
>   video card need access to the bus or need to be serviced?  Is it
>   just that the card generates an interrupt at boot, and after that
>   point it is quiet?

I think Apple liked to have at least some kind of vertical blank interrupt
from video cards. There are other reasons like some cards have DMA engines,
or special accelerated drawing services, etc. Most cards, though, just
provide some simple VBL interrupt.

____________________________________________________________________
 Michael Zucca - mrz5149@acm.org
 "I will choose a path that's clear. I will choose Freewill. "
  --Rush, Freewill
____________________________________________________________________