diff options
author | Peter Grehan <grehan@FreeBSD.org> | 2024-01-14 11:27:12 +0000 |
---|---|---|
committer | Peter Grehan <grehan@FreeBSD.org> | 2024-01-14 11:38:55 +0000 |
commit | 0c243cd4a3671bf728f33378ac593c08d8367bc2 (patch) | |
tree | 8c149fe3e915548bde7f18be2180c41d241a0a9f | |
parent | 353e4c5a068d06b0d6dcfa9eb736ecb16e9eae45 (diff) | |
download | src-0c243cd4a3671bf728f33378ac593c08d8367bc2.tar.gz src-0c243cd4a3671bf728f33378ac593c08d8367bc2.zip |
Fix issue with Linux guest XHCI tablet probing.
The USB3 spec mandates that the device-descriptor max packet size
be 512 bytes, which requires a field size of 9 since it is a
power-of-2.
Linux kernels recently started validating this field, resulting in
the table not being probed and the cursor not working in bhyve VNC.
Reviewed by: corvink
PR: 275760
MFC after: 1 week
-rw-r--r-- | usr.sbin/bhyve/usb_mouse.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/usr.sbin/bhyve/usb_mouse.c b/usr.sbin/bhyve/usb_mouse.c index 80f79980a98e..a37941c0cd9d 100644 --- a/usr.sbin/bhyve/usb_mouse.c +++ b/usr.sbin/bhyve/usb_mouse.c @@ -154,7 +154,7 @@ static struct usb_device_descriptor umouse_dev_desc = { .bLength = sizeof(umouse_dev_desc), .bDescriptorType = UDESC_DEVICE, MSETW(.bcdUSB, UD_USB_3_0), - .bMaxPacketSize = 8, /* max packet size */ + .bMaxPacketSize = 9, /* max pkt size, 2^9 = 512 */ MSETW(.idVendor, 0xFB5D), /* vendor */ MSETW(.idProduct, 0x0001), /* product */ MSETW(.bcdDevice, 0), /* device version */ |