summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/pc386/console/keyboard.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-12-05 16:49:23 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-12-05 16:49:23 +0000
commitd57c04e1f3a2c704d3479f85de706ad7de65b8b0 (patch)
treec950d8370cad1952893da1a3331be486a4c9d308 /c/src/lib/libbsp/i386/pc386/console/keyboard.c
parent2000-12-05 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-d57c04e1f3a2c704d3479f85de706ad7de65b8b0.tar.bz2
2000-12-05 Eric Valette <valette@crf.canon.fr>
* console/inch.c, console/keyboard.c, console/pc_keyb.c, console/vt.c, include/bsp.h: Correct incorrect interrupt level handling in new keyboard management code. Correct BSP_poll_char initialization routine. * start/start.S, startup/bspstart.c: Correct when the video is initialized. * timer/timer.c (Calibrate_1ms_loop): Address problem where this did not work correctly on all PC speeds. The new calibrate routine has been tested on Pentium 166, pentium II 200, pentium III 300 Mhz and does work as expected.
Diffstat (limited to 'c/src/lib/libbsp/i386/pc386/console/keyboard.c')
-rw-r--r--c/src/lib/libbsp/i386/pc386/console/keyboard.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/c/src/lib/libbsp/i386/pc386/console/keyboard.c b/c/src/lib/libbsp/i386/pc386/console/keyboard.c
index 5520ae7354..db9e0b6f1a 100644
--- a/c/src/lib/libbsp/i386/pc386/console/keyboard.c
+++ b/c/src/lib/libbsp/i386/pc386/console/keyboard.c
@@ -60,27 +60,27 @@ extern void rtemsReboot( void );
int set_bit(int nr, unsigned long * addr)
{
- int mask, retval;
+ int mask, retval,level;
addr += nr >> 5;
mask = 1 << (nr & 0x1f);
- cli();
+ _CPU_ISR_Disable(level)
retval = (mask & *addr) != 0;
*addr |= mask;
- sti();
+ _CPU_ISR_Enable (level);
return retval;
}
int clear_bit(int nr, unsigned long * addr)
{
- int mask, retval;
+ int mask, retval,level;
addr += nr >> 5;
mask = 1 << (nr & 0x1f);
- cli();
+ _CPU_ISR_Disable(level)
retval = (mask & *addr) != 0;
*addr &= ~mask;
- sti();
+ _CPU_ISR_Enable (level);
return retval;
}