diff options
| author | Sakari Ailus <sakari.ailus@linux.intel.com> | 2025-08-20 17:38:17 +0300 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-09-06 15:25:05 +0200 |
| commit | 030ab58b075c04b5286d2787860373dcc30020c6 (patch) | |
| tree | 374eada60b2080a9e34d50ab989e3c826dd018a3 /drivers/usb/core | |
| parent | 970076537efd847c6f74ba9ed888b9cdbf71206e (diff) | |
| download | linux-030ab58b075c04b5286d2787860373dcc30020c6.tar.gz linux-030ab58b075c04b5286d2787860373dcc30020c6.tar.bz2 linux-030ab58b075c04b5286d2787860373dcc30020c6.zip | |
usb: core: Parse eUSB2 companion descriptors for high speed devices only
Check that a device is a high-speed one before proceeding to parse the
eUSB2 isochronous endpoint companion descriptors.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Acked-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lore.kernel.org/r/20250820143824.551777-3-sakari.ailus@linux.intel.com
Diffstat (limited to 'drivers/usb/core')
| -rw-r--r-- | drivers/usb/core/config.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/core/config.c b/drivers/usb/core/config.c index cda595b4014f..29fcbd6de482 100644 --- a/drivers/usb/core/config.c +++ b/drivers/usb/core/config.c @@ -507,7 +507,8 @@ static int usb_parse_endpoint(struct device *ddev, int cfgno, } /* Parse a possible eUSB2 periodic endpoint companion descriptor */ - if (bcdUSB == 0x0220 && !le16_to_cpu(d->wMaxPacketSize) && + if (udev->speed == USB_SPEED_HIGH && bcdUSB == 0x0220 && + !le16_to_cpu(d->wMaxPacketSize) && (usb_endpoint_xfer_isoc(d) || usb_endpoint_xfer_int(d))) usb_parse_eusb2_isoc_endpoint_companion(ddev, cfgno, inum, asnum, endpoint, buffer, size); |
