X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fdevices%2Fkeyboard.c;h=c05b00e06fca10bebd0c527751f04ff70518f50b;hb=28cfe68985ef4360c9bd7428a19c222b295e9d85;hp=00e497a8c5344e39fb5c4dfc8f027f93d8b0785d;hpb=cd012ba87f57c1c694038f1a17f249f90f9a2be8;p=palacios.git diff --git a/palacios/src/devices/keyboard.c b/palacios/src/devices/keyboard.c index 00e497a..c05b00e 100644 --- a/palacios/src/devices/keyboard.c +++ b/palacios/src/devices/keyboard.c @@ -327,14 +327,27 @@ static int key_event_handler(struct guest_info * info, if (evt->scan_code == 0x44) { // F10 debug dump v3_print_guest_state(info); // PrintGuestPageTables(info, info->shdw_pg_state.guest_cr3); - } else if (evt->scan_code == 0x43) { // F9 Sym test + } +#ifdef CONFIG_SYMBIOTIC +else if (evt->scan_code == 0x43) { // F9 Sym test PrintDebug("Testing sym call\n"); - v3_sym_call5(info, SYMCALL_TEST, 0x1111, 0x2222, 0x3333, 0x4444, 0x5555, NULL, NULL); + sym_arg_t a0 = 0x1111; + sym_arg_t a1 = 0x2222; + sym_arg_t a2 = 0x3333; + sym_arg_t a3 = 0x4444; + sym_arg_t a4 = 0x5555; + + v3_sym_call5(info, SYMCALL_TEST, &a0, &a1, &a2, &a3, &a4); + + V3_Print("Symcall Test Returned arg0=%x, arg1=%x, arg2=%x, arg3=%x, arg4=%x\n", + (uint32_t)a0, (uint32_t)a1, (uint32_t)a2, (uint32_t)a3, (uint32_t)a4); + } else if (evt->scan_code == 0x42) { // F8 Sym test2 PrintDebug("Testing sym call\n"); - v3_sym_call1(info, SYMCALL_MEM_LOOKUP, 0, NULL, NULL); + sym_arg_t addr = 0; + v3_sym_call1(info, SYMCALL_MEM_LOOKUP, &addr); } - +#endif addr_t irq_state = v3_lock_irqsave(state->kb_lock);