[SeaBIOS] [PATCH 09/13] Use the extra stack for 16bit USB and PS2 keyboard/mouse commands.

Kevin O'Connor kevin at koconnor.net
Tue May 29 06:13:02 CEST 2012


Signed-off-by: Kevin O'Connor <kevin at koconnor.net>
---
 src/kbd.c   |    6 +++---
 src/mouse.c |    6 +++---
 2 files changed, 6 insertions(+), 6 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
diff --git a/src/mouse.c b/src/mouse.c
index 93e4ed2..ece69db 100644
--- a/src/mouse.c
+++ b/src/mouse.c
@@ -21,12 +21,12 @@ mouse_setup(void)
     SETBITS_BDA(equipment_list_flags, 0x04);
 }
 
-static inline int
+static int
 mouse_command(int command, u8 *param)
 {
     if (usb_mouse_active())
-        return usb_mouse_command(command, param);
-    return ps2_mouse_command(command, param);
+        return stack_hop(command, (u32)param, usb_mouse_command);
+    return stack_hop(command, (u32)param, ps2_mouse_command);
 }
 
 #define RET_SUCCESS      0x00
-- 
1.7.6.5




More information about the SeaBIOS mailing list