From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dl1-f53.google.com (mail-dl1-f53.google.com [74.125.82.53]) (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 2A48137EFF1 for ; Thu, 9 Apr 2026 07:44:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775720668; cv=none; b=B5T2jnouP3p55TtrRWZcCL4YkrDpeoI/6Ct3K37jWw1vR/fdaI6UDwRZekM2B4iFgwzRtqFQ5zoVoYOq6r+gyF/gQVHDovy7z5UZPE5PJQQg7RAIxK7OfPQxGiqoIzDufQ4+3P2HHqa2U/lRsz50hW1eis7qfYK4Tf3fCi5F12M= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775720668; c=relaxed/simple; bh=QrSYNvXh2wXLnW75TWrFH5t3O+TLIeNU2iihmoOVqc0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=LWQ6FtUnzi2s/P31JdrG9iFr8YSP3cQ0YbboCID/luDkXBYqFzesT9lBx8gNALIYIirnBSXlUhD9repBzDLVQq1rh7Zt/ng/nWu/bt71VV0kpt3NnzNvDMWVuqZsZXQdjplW0J9GGUKmrlynfZm4kNIPI6K/11BFVOtZVineNu8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jphein.com; spf=pass smtp.mailfrom=jphein.com; dkim=pass (2048-bit key) header.d=jphein.com header.i=@jphein.com header.b=wrEL+2Ys; arc=none smtp.client-ip=74.125.82.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=jphein.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=jphein.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=jphein.com header.i=@jphein.com header.b="wrEL+2Ys" Received: by mail-dl1-f53.google.com with SMTP id a92af1059eb24-128e4d0cc48so7549366c88.1 for ; Thu, 09 Apr 2026 00:44:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jphein.com; s=google; t=1775720664; x=1776325464; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=nkEUDpcp53kG6RLHdhTm2NdnLD2U7kBdsPvFSJ99X1E=; b=wrEL+2YseNhUTXjFfZx3p7vZl1b4e1Mn5hGjFXVX6Y4J5pIGwhX91JhJZqhdB2S520 T0wJNSM8EVlsxrw0XKCf7oCPgZ4OxlF/N6DgRNl2IF6TTVxUWDctplVx5vckv22UOETm EfceU4X9QFDSx4Y0CZqc1adfcJ602hxyPxET/TuxOM3jPN+kFpZU2z1BT8shU9Oa475d 59UpkAWO0jamd54BgHpHm/HvlewO3DXbrsm3A3nllhz/XstmcTEH43VYIpKwoZbetRE1 1FrnxDuUw1eXBpW+cJtZ0gdlsPdzvs2mdrjK/Xkac2yaDaDK6flSUo6WXMQ2hPuo3bgk +rXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775720664; x=1776325464; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=nkEUDpcp53kG6RLHdhTm2NdnLD2U7kBdsPvFSJ99X1E=; b=VAzDCwiYzf09Jdge5V2EvyweeeBOBvfdigv5vJeBbjKBpU3Qe6fMEM7bB2Qm9zV/SN +9LVl7gCjUSZLMdkK12ltn92Z9GMbA7cf5V3Xa1wQBy02uomnXV7hr4cB6lPPjyT69bc uf2YMs4THaTZODaU47jHPyCU5QL+Ja4cbx5Xfn3fAhVpsm8gbY1G+Eot8eUK5Pu/eNFE ZKumL9spXrMtECZDoVnNtHALu6ezg4/pmjVG6DI03LCcRnPKG/FvEB1xwlVrQWCNda0v TllPQdsFQ3p+3iQscozXjWOyJXDqqQpelGKzePF31TxJTpmsEkYm6fxSPBVSKbVOng77 k6dg== X-Forwarded-Encrypted: i=1; AJvYcCVKYc7EIQ/+FoVQ4gUGwpDRIwa6PHmhuBCJ8RcmBpIBYP+Ayrm6DU84cqAZaH2pxrC6UgeSVjHlmy4=@vger.kernel.org X-Gm-Message-State: AOJu0YxppfXuh/n6c34Re2LqvOJ07rCUe0NGsBk6hO+eMAgJMPzDQwN8 QDBLhHRGwnPD4oEawloq+n0W6SkIWFv/yyOJQmngngHFw8VWGSX++HUHaPcgZAYKaw== X-Gm-Gg: AeBDies28Ppfgr9CS+1606nmiVHsXQCF+5sfrUDNYfOEl1haXOkFKazYUsXBBMzqkCo YhjstjZJf/KGe+e7q0deN30QAollSjtICqvW/cQJt6PLyCUGQf7HCpDtcvKeHgmaxLbCoTl90b3 /qJUovkDB6CB4VC+LAeZFskSQRQVY0QCZgK64tZoFsuc/Q/MwswCR3dwe+wYfTsPtlfA+L+N4xd VayC9IgxpBY276lZniJTIF8CwXk8FLznqRgscunNw6TNlwkbpkcqsdDPTMRUAZ7CkLaAgndTZoc ZvArJWmIqawR3w8aniqelibMMEW1OM5kHZlgAEsw+oiK35RiosRC83uE9vBcruraMlmaM0ybh2Q E5Qb78sr8xY4NnOT6jJEdEU4UVKKhIKQ0qEWXfmG1DGZgI/FAjaD/iSNE6ckFOod/SgFFd7aMJ4 XCCFsN8CZdJYP+3HJdFKhqd71FqvZPCpth5f6RHg== X-Received: by 2002:a05:7022:fa03:b0:12b:ed30:5a32 with SMTP id a92af1059eb24-12c28b7f751mr1417693c88.5.1775720663818; Thu, 09 Apr 2026 00:44:23 -0700 (PDT) Received: from katana.dragonfish-mirfak.ts.net ([108.74.4.89]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-12bf90973b6sm25154047c88.9.2026.04.09.00.44.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 00:44:23 -0700 (PDT) From: JP Hein To: Laurent Pinchart , Hans de Goede , Greg Kroah-Hartman Cc: linux-media@vger.kernel.org, linux-usb@vger.kernel.org, Ricardo Ribalda , Michal Pecio , JP Hein Subject: [PATCH v6 2/2] media: uvcvideo: add Razer Kiyo Pro to device info table Date: Thu, 9 Apr 2026 00:42:42 -0700 Message-ID: <20260409074242.2115657-3-jp@jphein.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260409074242.2115657-1-jp@jphein.com> References: <20260331003806.212565-1-jp@jphein.com> <20260409074242.2115657-1-jp@jphein.com> Precedence: bulk X-Mailing-List: linux-usb@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add a device entry for the Razer Kiyo Pro (1532:0e05) with quirks to work around firmware bugs that crash the xHCI host controller: UVC_QUIRK_CTRL_THROTTLE - rate-limit control transfers and skip error-code queries after EPIPE UVC_QUIRK_DISABLE_AUTOSUSPEND - prevent runtime suspend UVC_QUIRK_NO_RESET_RESUME - skip post-reset reinitialization The firmware (v1.5.0.1) has two failure modes: it stalls endpoints under rapid control transfers (~25 without delay), and it fails to reinitialize properly after USB power state transitions. Both can cascade into xHCI controller death, disconnecting all USB devices on the bus. Bug reproduced on two separate Kiyo Pro units running simultaneously, confirming the issue is not unit-specific. lsusb -v: Bus 002 Device 002: ID 1532:0e05 Razer USA, Ltd Razer Kiyo Pro Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 3.20 bDeviceClass 239 Miscellaneous Device bDeviceSubClass 2 [unknown] bDeviceProtocol 1 Interface Association bMaxPacketSize0 9 idVendor 0x1532 Razer USA, Ltd idProduct 0x0e05 Razer Kiyo Pro bcdDevice 8.21 iManufacturer 1 Razer Inc iProduct 2 Razer Kiyo Pro iSerial 0 Signed-off-by: JP Hein --- drivers/media/usb/uvc/uvc_driver.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c index 775bede..9b6df8e 100644 --- a/drivers/media/usb/uvc/uvc_driver.c +++ b/drivers/media/usb/uvc/uvc_driver.c @@ -2880,6 +2880,22 @@ static const struct usb_device_id uvc_ids[] = { .bInterfaceSubClass = 1, .bInterfaceProtocol = 0, .driver_info = (kernel_ulong_t)&uvc_quirk_probe_minmax }, + + /* + * Razer Kiyo Pro -- firmware crashes under rapid control transfers + * and on LPM/autosuspend resume, cascading into xHCI controller + * death that disconnects all USB devices on the bus. + */ + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE + | USB_DEVICE_ID_MATCH_INT_INFO, + .idVendor = 0x1532, + .idProduct = 0x0e05, + .bInterfaceClass = USB_CLASS_VIDEO, + .bInterfaceSubClass = 1, + .bInterfaceProtocol = 0, + .driver_info = UVC_INFO_QUIRK(UVC_QUIRK_CTRL_THROTTLE + | UVC_QUIRK_DISABLE_AUTOSUSPEND + | UVC_QUIRK_NO_RESET_RESUME) }, /* Kurokesu C1 PRO */ { .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO, -- 2.43.0