From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-oa1-f51.google.com (mail-oa1-f51.google.com [209.85.160.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1F76F26ED4F for ; Thu, 25 Jun 2026 15:48:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.51 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782402525; cv=none; b=AN8Dc43OKXLeKwkYVPrFlQ1wXatLwtAkg+Hx2CZmicwIx/+wu1uByyJCD4jdr+Kv6lW0POLI/LQKm8umAfkFTMYM2518O7eY0I5lAKdNOSdbUTiK8sH7Fgm1H5E1u4KS9C1Usr75qHdMvWu0zooIJdN6z7vKRGwjHT7NDqtnIcQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782402525; c=relaxed/simple; bh=sCwojiFVvX7kd/Rk8l/ktH87rhYVen5QJMkjzVGe6v0=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=qUc0c6W0EPaD9a+Gn+2sphm/Qt5xZ/X3lK9oAi39nwpFg9/yRFRxHyiQVMFBcm9tgGhXyZDVqU8YgtpKD1ps2q51VfZAEO0RQGtBDm5t/6NBOtPPhhMmH/FHZCWTctlCR9Q9AAr7I7Dost9PMZpiXCDGJrqLnTQrX5SMAo+CG5g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linuxfoundation.org; spf=pass smtp.mailfrom=linuxfoundation.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=WGTqlsmz; arc=none smtp.client-ip=209.85.160.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linuxfoundation.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linuxfoundation.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="WGTqlsmz" Received: by mail-oa1-f51.google.com with SMTP id 586e51a60fabf-43d3454f643so1067311fac.0 for ; Thu, 25 Jun 2026 08:48:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=google; t=1782402522; x=1783007322; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=a3Di0Z5TSWm8aYxLWNKsOX3Bf5Uoik2bldczZ7u1zrM=; b=WGTqlsmzMFirNYjyalyvPU3RImW3yBtk+xb6cHGrYsXuWiBqZg01p8RiUzD74ZC4vt udoOqwb7d46wxN0wWjX30q3H58h8rC4zltk+5vSzyfNQ4EisIZ6uTDTO05r3zzeTX8qm 4SqPZS75Qgi3q/ciorL5HPNdyt14ew/AijcEU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782402522; x=1783007322; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=a3Di0Z5TSWm8aYxLWNKsOX3Bf5Uoik2bldczZ7u1zrM=; b=bOpXxvKdAj06PY0EPDwLJjxtbh1IekRRd+S+ET1fRpruxut460n+8iuiojY+THYK0R rcrEF9jyNlYpVH/NjQpp+qIbTuztS0duzn0sa6WmX4d9i94ptGlI+SePBy5IPlKB2ow/ oUGtKF8WvSN0WR4dHOrGVa5zYt5Jnp8fXZrPyYG5nMMbDcGZ+3xoIhJdBZvWKSJW9Xyv uaTPpD5/46g1f/0y8u5Rzyg88lxOM1YUvVnspGlJSa/BPaLkQhi09yRyKaEie+mqPxdS tfxa7g2kQNvb5bdB5Ts3dtWd7v4lKCH5Gw/Wy6uV960UJRjGLoD45Dd5+fzv7hi7Ah1N cKVA== X-Forwarded-Encrypted: i=1; AHgh+RpAawbDr5rLEt6PUyoM9ZOi38gwcDzNbmf704SCFwY3A1i0KpNXu8tDWkoL4H3ac7BGwc4TI6t+J4uvNPo=@vger.kernel.org X-Gm-Message-State: AOJu0YxSOYENsZ80ShniQnOboUVvSEvcDWa93SyCyOkz+NNj+AQqmoyK QvenjO6NwUoQ6B7NO1xXMIrIg3XoTXMCdy9US1P52YhtJkzSmFTkWrdVitRZId/ly5gpvVFLPbj EARNh/oI= X-Gm-Gg: AfdE7cmhOSELOR9NKsrE3YEn591AghlUmuUzk6P+s3Oi2E25rye9TRJjOHv2lamLZMZ /+8fNzARHZUZIfzkjFt+OqiP1UZy4mqF69siRQ7j8xqAtsCemjJ8+erZvnkN2k2rCZFFgdp+MtH PnldFyMP13l4N/MNxzOS7sRFXoo9dlqfNJEkK1OqIau0Z6/FRpmKqKoOIe5G0JsXWd8UryCtIf+ pn9WPNi+LTyCGzIuS9cdpMTb/Q8RZjcoZK93lxB7mCndVxM53HGm2Epepax8+eaoo8EG7Xbt0dP wOfzvqx/38qyluJ2x2NfiS9kJOkFmz5BcrQH9E9e6XN1ecOPR5K7wqPSSAi8daAIR12KM8m5ja8 0rAMZQss0WadFHOAZ6Gy/xgxrKsDWZjl1rGHAxsTdajT8nBTigD4TcaDRZHJ/wpHjuJFT1L7UlU oniDTbW/YIDbVJhz/t4MAP X-Received: by 2002:a05:6871:206:b0:430:29c3:9d15 with SMTP id 586e51a60fabf-44811ca5f7emr2511128fac.1.1782402522067; Thu, 25 Jun 2026 08:48:42 -0700 (PDT) Received: from [192.168.1.14] ([38.15.57.99]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-4472eccb19asm13542095fac.6.2026.06.25.08.48.40 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 25 Jun 2026 08:48:41 -0700 (PDT) Message-ID: <46d758d2-090a-414f-8d1c-0791f8bf5b8d@linuxfoundation.org> Date: Thu, 25 Jun 2026 09:48:39 -0600 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] usbip: tools: support SuperSpeedPlus devices To: Yichong Chen , valentina.manea.m@gmail.com, shuah@kernel.org, Greg Kroah-Hartman Cc: i@zenithal.me, gregkh@linuxfoundation.org, zhouzongmin@kylinos.cn, mathias.nyman@linux.intel.com, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Shuah Khan References: <00C828F338E43447+20260617020613.199086-1-chenyichong@uniontech.com> Content-Language: en-US From: Shuah Khan In-Reply-To: <00C828F338E43447+20260617020613.199086-1-chenyichong@uniontech.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 6/16/26 20:06, Yichong Chen wrote: > USB devices running at SuperSpeedPlus report "10000" or "20000" in > their sysfs speed attribute. usbip currently maps only "5000" to > USB_SPEED_SUPER, so a SuperSpeedPlus device is imported as > USB_SPEED_UNKNOWN. > > The attach request is then rejected by vhci_hcd: > > vhci_hcd: Failed attach request for unsupported USB speed: UNKNOWN > > Map the SuperSpeedPlus sysfs speed values to USB_SPEED_SUPER_PLUS, use > the SuperSpeed VHCI hub for SuperSpeedPlus devices, and recognize the > gadget current_speed string used by the kernel. > > Fixes: b2316645ca5e ("usb: show speed "10000" in sysfs for USB 3.1 SuperSpeedPlus devices") > Signed-off-by: Yichong Chen > --- > tools/usb/usbip/libsrc/usbip_common.c | 2 ++ > tools/usb/usbip/libsrc/usbip_device_driver.c | 4 ++++ > tools/usb/usbip/libsrc/vhci_driver.c | 1 + > 3 files changed, 7 insertions(+) > > diff --git a/tools/usb/usbip/libsrc/usbip_common.c b/tools/usb/usbip/libsrc/usbip_common.c > index b8d7d480595a..f4734f552d31 100644 > --- a/tools/usb/usbip/libsrc/usbip_common.c > +++ b/tools/usb/usbip/libsrc/usbip_common.c > @@ -29,6 +29,8 @@ static const struct speed_string speed_strings[] = { > { USB_SPEED_HIGH, "480", "High Speed(480Mbps)" }, > { USB_SPEED_WIRELESS, "53.3-480", "Wireless"}, > { USB_SPEED_SUPER, "5000", "Super Speed(5000Mbps)" }, > + { USB_SPEED_SUPER_PLUS, "10000", "Super Speed Plus(10000Mbps)" }, > + { USB_SPEED_SUPER_PLUS, "20000", "Super Speed Plus(20000Mbps)" }, > { 0, NULL, NULL } > }; > > diff --git a/tools/usb/usbip/libsrc/usbip_device_driver.c b/tools/usb/usbip/libsrc/usbip_device_driver.c > index 1dfbb76ab26c..c9b3619d86f3 100644 > --- a/tools/usb/usbip/libsrc/usbip_device_driver.c > +++ b/tools/usb/usbip/libsrc/usbip_device_driver.c > @@ -57,6 +57,10 @@ static struct { > .speed = USB_SPEED_SUPER, > .name = "super-speed", > }, > + { > + .speed = USB_SPEED_SUPER_PLUS, > + .name = "super-speed-plus", > + }, > }; > > static > diff --git a/tools/usb/usbip/libsrc/vhci_driver.c b/tools/usb/usbip/libsrc/vhci_driver.c > index 8159fd98680b..4ca3783ee5b7 100644 > --- a/tools/usb/usbip/libsrc/vhci_driver.c > +++ b/tools/usb/usbip/libsrc/vhci_driver.c > @@ -338,6 +338,7 @@ int usbip_vhci_get_free_port(uint32_t speed) > > switch (speed) { > case USB_SPEED_SUPER: > + case USB_SPEED_SUPER_PLUS: > if (vhci_driver->idev[i].hub != HUB_SPEED_SUPER) > continue; > break; This looks good to me. Reviewed-by: Shuah Khan Greg, Please pick this up. thanks, -- Shuah