summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorShengYi Hung <aokblast@FreeBSD.org>2025-09-15 13:57:30 -0400
committerMichael Tokarev <mjt@tls.msk.ru>2025-10-05 09:46:06 +0300
commit1c0f5142d921525f1023152eac63d2ff3d33e3b2 (patch)
tree774f6ff8918bb1819b8f81e8c6f88bf22a56c2fb
parent383c7224839cf3acd8f1a609ad394daf7cfc8b6d (diff)
downloadfocaccia-qemu-1c0f5142d921525f1023152eac63d2ff3d33e3b2.tar.gz
focaccia-qemu-1c0f5142d921525f1023152eac63d2ff3d33e3b2.zip
hid: fix incorrect return value for hid
The return value of hid_keyboard_write is used to set the packet's actual_length
and pass to xhci directly to allow guest know how many byte actually processed.
Therefore, return 1 to indicate a successful transfer or it will be
considered as a wrong xfer.

Signed-off-by: ShengYi Hung <aokblast@FreeBSD.org>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
-rw-r--r--hw/input/hid.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/input/hid.c b/hw/input/hid.c
index 76bedc1844..de24cd0ef0 100644
--- a/hw/input/hid.c
+++ b/hw/input/hid.c
@@ -478,6 +478,7 @@ int hid_keyboard_write(HIDState *hs, uint8_t *buf, int len)
             ledstate |= QEMU_CAPS_LOCK_LED;
         }
         kbd_put_ledstate(ledstate);
+        return 1;
     }
     return 0;
 }