[Open-graphics] Video interrupt enable/disable
Patrick McNamara
wpmcnamara at yahoo.com
Fri Apr 13 16:13:58 EDT 2007
Timothy Normand Miller wrote:
> Something we need to be able to do is enable the interrupt for video.
> Generally, we only need one interrupt per frame, so what we need to do
> is set the interrupt bit in one of the instructions at the end of the
> last active scanline. The thing is, it's not adequate to make that a
> parameter to the programming function... we need to turn the interrupt
> on and off quite a lot, so what would be nice is to have another
> function to call that enables/disabled interrupts by rewriting the
> right instruction with the flag changed. The problem is that we need
> to somehow keep track of which instruction this is, for multiple cards
> with more than one video head each.
>
> Perhaps it would just be simpler to always set the interrupt in the
> right instruction and have a mask bit in the global config registers.
>
I would certain argue for the second option. It may take slightly more
hardware to do, but it is certainly the simpler and more portable
solution. I don't know if we have discussed how video controller
microcode is uploaded or changed, but enabling/disabling the interrupt
should a PIO operation I think. The reason for this is the expectation
the system may have surrounding the toggling of interrupts. If it is
done as a DMA command to the card, it could be some time before the DMA
completes, especially if there is a large transfer of some sort
currently in progress. If interrupts need to be disabled, they
generally need to be disabled immediately, not some "random" time in the
future.
Patrick M
More information about the Open-graphics
mailing list