Subject: Re: console polling interrupts?
To: Jarom r <jdolecek@netbsd.org>
From: Bill Sommerfeld <sommerfeld@netbsd.org>
List: tech-kern
Date: 06/16/2001 12:02:40
> I'd like to change the console polling interface requirement in that
> cnpollc(9) and hence cngetc(9) would always need to be called on splhigh().
> The idea here is that if we are polling, we don't want any interrupts
> to happen. I'm including the diff to do so. This seems like a better
> solution that I posted previously.

yes.

> Opinions?

Some off-line discussion has occurred which came up with a possible
alternate solution to your problem..

Is there some way that you could
disable/enable *just* the keyboard controller interrupt in cnpollc()?
either at the keyboard controller or the interrupt controller?

I know this is possible with the 8259 as used in a "normal" PC..  not
being familiar difference between "normal" PC and PS/2 interrupt
controller usage, I can't say for sure that it would work for the PS/2
but it seems cleaner..

On a related note, the interface would be cleaner if we split
cnpollc() (and the underlying console driver implementations) into two
functions (cnpollon/cnpolloff).

Every single caller of cnpollc() passes a compile-time constant..

						- Bill