--- /dev/null
+From d1e280334b7f0a1df441e08bd1f6a1bcc36b3bbb Mon Sep 17 00:00:00 2001
+From: Michal Pecio <michal.pecio@gmail.com>
+Date: Mon, 18 May 2026 07:31:21 +0200
+Subject: usb: core: Fix SuperSpeed root hub wMaxPacketSize
+
+From: Michal Pecio <michal.pecio@gmail.com>
+
+commit d1e280334b7f0a1df441e08bd1f6a1bcc36b3bbb upstream.
+
+There is no good reason to have wBytesPerInterval < wMaxPacketSize -
+either one is too low or the other too high, and we may want to warn
+about such descriptors. Start with cleaning up our own root hubs.
+
+USB 3.2 section 10.15.1 sets wMaxPacketSize and wBytesPerInterval of
+SuperSpeed hub status endpoints at 2 bytes, so reduce wMaxPacketSize
+from its former value of 4, which was derived from USB 2.0 spec and
+the kernel's USB_MAXCHILDREN limit. They don't apply because USB 3.2
+10.15.2.1 specifies SuperSpeed hubs to have up to 15 ports.
+
+Suggested-by: Mathias Nyman <mathias.nyman@linux.intel.com>
+Signed-off-by: Michal Pecio <michal.pecio@gmail.com>
+Link: https://patch.msgid.link/20260518073121.7bc1da0f.michal.pecio@gmail.com
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/usb/core/hcd.c | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+--- a/drivers/usb/core/hcd.c
++++ b/drivers/usb/core/hcd.c
+@@ -328,9 +328,7 @@ static const u8 ss_rh_config_descriptor[
+ USB_DT_ENDPOINT, /* __u8 ep_bDescriptorType; Endpoint */
+ 0x81, /* __u8 ep_bEndpointAddress; IN Endpoint 1 */
+ 0x03, /* __u8 ep_bmAttributes; Interrupt */
+- /* __le16 ep_wMaxPacketSize; 1 + (MAX_ROOT_PORTS / 8)
+- * see hub.c:hub_configure() for details. */
+- (USB_MAXCHILDREN + 1 + 7) / 8, 0x00,
++ 0x02, 0x00, /* __le16 ep_wMaxPacketSize; 2 bytes per USB3 10.15.1 */
+ 0x0c, /* __u8 ep_bInterval; (256ms -- usb 2.0 spec) */
+
+ /* one SuperSpeed endpoint companion descriptor */