git: 0c243cd4a367 - main - Fix issue with Linux guest XHCI tablet probing.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 14 Jan 2024 11:21:22 UTC
The branch main has been updated by grehan: URL: https://cgit.FreeBSD.org/src/commit/?id=0c243cd4a3671bf728f33378ac593c08d8367bc2 commit 0c243cd4a3671bf728f33378ac593c08d8367bc2 Author: Peter Grehan <grehan@FreeBSD.org> AuthorDate: 2024-01-14 11:27:12 +0000 Commit: Peter Grehan <grehan@FreeBSD.org> CommitDate: 2024-01-14 11:38:55 +0000 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 --- usr.sbin/bhyve/usb_mouse.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 */