diff options
author | Richard Henderson <rth@twiddle.net> | 2011-05-06 11:07:37 -0700 |
---|---|---|
committer | Richard Henderson <rth@twiddle.net> | 2011-05-06 11:07:37 -0700 |
commit | 2166044b7174136787fa660e7da798132f7d26cc (patch) | |
tree | 8ae742ef999e56af0ab52a185d6431ff4f993b72 /util.c | |
parent | 369d1d9a68527fe2659f4a21dc4c0aa52533dbc3 (diff) | |
download | qemu-palcode-2166044b7174136787fa660e7da798132f7d26cc.zip qemu-palcode-2166044b7174136787fa660e7da798132f7d26cc.tar.gz qemu-palcode-2166044b7174136787fa660e7da798132f7d26cc.tar.bz2 |
Add ps2 keyboard initialization.
Which also requires that we properly initialize the i8259 (ISA)
interrupt controller.
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 39 |
1 files changed, 39 insertions, 0 deletions
@@ -0,0 +1,39 @@ +/* Utility functions for the QEMU PALcode. + + Copyright (C) 2011 Richard Henderson + + This file is part of QEMU PALcode. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the text + of the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. If not see + <http://www.gnu.org/licenses/>. */ + +#include "protos.h" + + +void +ndelay(unsigned long nsec) +{ + unsigned long target, now; + + now = get_wall_time(); + target = now + nsec; + + set_alarm_abs(nsec); + do + { + wtint(0); + now = get_wall_time(); + } + while (now < target); +} |