summaryrefslogtreecommitdiff
path: root/src/kbd.c
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2012-05-28 14:34:49 -0400
committerKevin O'Connor <kevin@koconnor.net>2012-05-30 21:05:12 -0400
commitd488a7683d90bf8fae7ceb8c3ad9e95fbbd92079 (patch)
tree9fbb2fd328f815875c05ba0060b42a8d1f7ae0c9 /src/kbd.c
parentecdc655a867480b938652d52a0880853595e2976 (diff)
downloadqemu-seabios-d488a7683d90bf8fae7ceb8c3ad9e95fbbd92079.tar.gz
Use the extra stack for 16bit USB and PS2 keyboard/mouse commands.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/kbd.c')
-rw-r--r--src/kbd.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/kbd.c b/src/kbd.c
index 586d57e..0da13a1 100644
--- a/src/kbd.c
+++ b/src/kbd.c
@@ -110,12 +110,12 @@ dequeue_key(struct bregs *regs, int incr, int extended)
SET_BDA(kbd_buf_head, buffer_head);
}
-static inline int
+static int
kbd_command(int command, u8 *param)
{
if (usb_kbd_active())
- return usb_kbd_command(command, param);
- return ps2_kbd_command(command, param);
+ return stack_hop(command, (u32)param, usb_kbd_command);
+ return stack_hop(command, (u32)param, ps2_kbd_command);
}
// read keyboard input