From nobody Fri Jul 24 21:53:11 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0F18F43CEE7 for ; Thu, 23 Jul 2026 10:55:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784804110; cv=none; b=kJoy7RZB0HdFMmrDsaZjcdaT3qfkcRB/LGJyC/M1NKLkkxyMN3oOi5ZdvPaEHW2VWboRP8WCQHaN0JhmICNTV1CnazSDlv6GykRH1S0Ht/47Wpyfk+QMBbClvhhNrpEjbeYxrpbTL1EZSOd5XZ7NNOP7dMsKs34xu9HDEANUhuc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784804110; c=relaxed/simple; bh=SkWYEA8SWQOC9OQOzgvWGRyQB24DxeCGK0FItA5xjH0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=ogsyRQHiF5jUkp1eRSztk6QUwDNycsGbqS4Fa1sJrukDlt+Q1YPB0arQ/li8Qb9hbnkJBd2kcyKtRTdDRP3YAS2CAgxWouA6ztZ8QDmTnSLsv1j4jZdJLkswQ39r6AtmBOzNIJfGEQxMwufuP4rIaLGFtgiRvz7fofbEGRXOPPA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=anMlLd37; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=dmPtAbjX; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="anMlLd37"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="dmPtAbjX" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 66N8qba93606122 for ; Thu, 23 Jul 2026 10:55:08 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=AD10OMBFOQHaMcw6UwRxqD mekzrLtYWRebhPYOowu6Y=; b=anMlLd37mid5ExCK+KH1SuPVUuxyHfR5c9z2bT 6XSxCm4Q9lYtpHlfO15Md6jEkXS5W29kALNDEY5bf6a6FgckqTodElM2FGRRWi0Y D2esQGzidnfybUzovkCZQlLyFGtNc9VJkR52hvH6Abgt+I52BFoMpTzjI/Dz93JV sVc4j6UJoX6cvrs5uSaa7yDfQN6h7bx86CLSWQGwcjj8wrCYXgzILjLq+T54K6tQ jc+psuTsoWSRAECU52P7kBQG7drqGPVZrnLRkhzZkX1lTDj/ALMBiVbQq44FKGHq hxWubA0ZBIL/1fMCYwoKuoOs0uk+uM4jarNS+oqsC74MpLxQ== Received: from mail-pf1-f198.google.com (mail-pf1-f198.google.com [209.85.210.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4fke7qgwbs-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 23 Jul 2026 10:55:07 +0000 (GMT) Received: by mail-pf1-f198.google.com with SMTP id d2e1a72fcca58-84e01a62d99so949230b3a.0 for ; Thu, 23 Jul 2026 03:55:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1784804107; x=1785408907; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:content-type :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to:content-type; bh=AD10OMBFOQHaMcw6UwRxqDmekzrLtYWRebhPYOowu6Y=; b=dmPtAbjXTfDuJ3f/AIgEHZgf3SISKHDvekf3xgzUYe5PtIUjM4/Rgwiyerqx9VoUSb BDnbLVbWVW2ba2ZpYcMn5ZM0R0DvABKDqrohv5HQRhmmqUcsBGENz/WFtylApuzQg+8a 9ClXvbg+kBL+zgXnW91pNMpvdul5/xaJahp5uGBvJtq/HRpOAJcE/djHc8P4RRjz5WGC LGSfzoIU3W1rdvQX9Z+BeMSSrmtzk5EsRfELFpgewYxyxFT9/azESgqoHJeYkLqfsAfx 7jUYzPgAzIPXjCyBcdFUu/OM00e0IES1XAmmmVUmT2VCsGvEoj5MHkplpSgxd58cV33O NqgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784804107; x=1785408907; h=cc:to:message-id:content-transfer-encoding:content-type :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to:content-type; bh=AD10OMBFOQHaMcw6UwRxqDmekzrLtYWRebhPYOowu6Y=; b=pfrptgLOZvlBfEGFKR75edOC7xs6heQmD3sL5Eh2KNPDcwcYG6SCletkRkwCGCRONE YO4uhg+Mb/ujrgfw/G8NrxnwFnI5vJu1cuWgmjuZAH8IvW+mj9ZW8lWrwJzKogxw9uAs MIuNqcvpW60u4Uydr4HSdYV8fddNiQLY0Oz+c1WrRQFmqus+WKxw5lySX+KLqmY0Q7HE IGunMhz6e0hMncSncFc38PM6Rt41KfsAs2Ca3jRcd3z286d6+oksv4sg1/qCr6GEiUYS Lc2WQog0HQSy1HjhNvmLL9q9fUVXel26xym9wG/R9CGRNQN7UB46hQ12PSrplU5ZznyR 5uJw== X-Forwarded-Encrypted: i=1; AHgh+RoKu+Ql3XtCZKbx8z6FUq51qhwm5oecgH5aAIf0K6ZUr6kSkNk1piEWq2WFEV10jm/Ya5fPRmR4ss9J2oI=@vger.kernel.org X-Gm-Message-State: AOJu0YzWu6yAc+LyPram0poceqOdUE2Yo5UECRnBw4KrkCXhRKpgI9YV +rfnaTE/bqbNqQ4y7ycY45cqqKBNCKwbYTajUVU7r3R2oYMSRq4t01TnUhQT+pipENgsBrunCAC c1jhZbPURzT6ux/aZGYHq0MIN9JGPvW51AcEwa0DExUOXB6ONwhLLY6n7NwugjKgudf4= X-Gm-Gg: AR+sD12CJuO6LKa+glY5qTAwi8Fm+iHu2+LRT4aOgSS8vbw+MWl6WZyqpFK2L0tBFVs xokXp9TJNkj2YQMDcKsMe1/wxM+o9OEIjKoa8rGlwZS1bVacv/5sgLDAQR7sRR2/hZl1vgsN6X1 1RM1u6Fnv7Wym7FMheVW2l8F8+p6I5BKmYZytq1LgD4wuKoPL1s0ZeKl/qGfEgtO1K+Q62CnHbf 0XwDKdbqtgC/gAyWWgvMtUY0eDaiqSmnuevMiHbsuB4Vfr0Ht9CdKJAP3OCXwNh2zZny53EA6PR FiUvROXxz+v/Zfm08T4COuQFfWkOT9HKlObuJ6TA47vgH4f66uzxIB0OSF7EiimYEWuzcVz0P+X BpjASnLBFdTHBN/g40qg/UBXtGzhTE0eqBuf6Mf4Jl624fuqd8661Y/fpeyvtWQ2re/9jtg== X-Received: by 2002:a05:6a00:3913:b0:848:57f3:8f8f with SMTP id d2e1a72fcca58-84e2c204c5bmr3091706b3a.51.1784804106924; Thu, 23 Jul 2026 03:55:06 -0700 (PDT) X-Received: by 2002:a05:6a00:3913:b0:848:57f3:8f8f with SMTP id d2e1a72fcca58-84e2c204c5bmr3091675b3a.51.1784804106386; Thu, 23 Jul 2026 03:55:06 -0700 (PDT) Received: from hu-kriskura-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-84e17577790sm2874124b3a.34.2026.07.23.03.55.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 23 Jul 2026 03:55:05 -0700 (PDT) From: Krishna Kurapati Date: Thu, 23 Jul 2026 16:24:56 +0530 Subject: [PATCH] usb: dwc3: qcom: Add support to skip phy management by USB core Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260723-dwc3-skip-init-quirk-v1-1-97682bb44ebd@oss.qualcomm.com> X-B4-Tracking: v=1; b=H4sIAADzYWoC/yXMQQrCQAxG4auUrA1kRqjiVcTFNI36WxjrpFWh9 O6OuvwW7y3kVmBOh2ahYk847rkibBrSa8oXY/TVFCW2sovC/Uu37ANGRsbEjxllYA1BLJm0+6R U07HYGe/f9nj62+fuZjp9X7SuH4Foqd94AAAA X-Change-ID: 20260720-dwc3-skip-init-quirk-c110eae068ac To: Thinh Nguyen , Greg Kroah-Hartman Cc: linux-arm-msm@vger.kernel.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Krishna Kurapati X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1784804103; l=2268; i=krishna.kurapati@oss.qualcomm.com; s=20260707; h=from:subject:message-id; bh=SkWYEA8SWQOC9OQOzgvWGRyQB24DxeCGK0FItA5xjH0=; b=tTFRl7YH/JoNmp2YcwmhP0DfaQ2+MKf+PW2O7gayXkGea7oFP/xiI7aR0IJrRJIHoURi6DLxj TSk8JfDWEJZBK8gvRROBDwh8Iw68z7j89eZTMuD9XKIhR5JmpoAcFmT X-Developer-Key: i=krishna.kurapati@oss.qualcomm.com; a=ed25519; pk=6PmiuwGCdov3wRO+bdmRlRxRtmJyDKz3ED57LLPVgds= X-Proofpoint-Spam-Info: AW1haW4tMjYwNzIzMDEwNyBTYWx0ZWRfXzjqkeLPZqj4K q5pTuWIgwQ2DiQ5Tti+lmRx85CPHqVCMPn7/OYpMc7B/CxTr10yYHI+Q7Ho+M56uHbK5TII02+s dvKCvB9LsAkd/ebLmRJTkmmeL2WBBJQ= X-Authority-Analysis: v=2.4 cv=aYxRWxot c=1 sm=1 tr=0 ts=6a61f30b cx=c_pps a=m5Vt/hrsBiPMCU0y4gIsQw==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=VwQbUJbxAAAA:8 a=hD80L64hAAAA:8 a=EUspDBNiAAAA:8 a=TPm-v2h5D2wtuVy3nSYA:9 a=QEXdDO2ut3YA:10 a=IoOABgeZipijB_acs4fv:22 X-Proofpoint-GUID: uwJ0Z2FUhSRb54DDf1P1jfeHQ2iFP64J X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzIzMDEwNyBTYWx0ZWRfX7wYzfv6iSQce QbMxvQlmIKoc//W35ApxkgSR9GAKO50X7Sr04IGPsELvfIeSHBlHqX0N2iEeTyyX7yGO7CQ1uga Yhxfm0tDMQ6jpLVtC8hME14WOYrq+6Ktl+6KYb8aqkBLhbtjOns3CWCET1jBNWcLh9znFdtqR2d EhCs+8Ymb34zgBVYo7Bg61jKT3qWrn3u2Lkmh9Jrh+kT1ANIvpadElBiv3xL16acBQtaPJMRPtJ oq8yImMk6T0h8Fbn7CatqmN76XFaXPJGFbG3nwlbsqbIwzwUsOCZvFVbSgX/4MazRF0wa/klfkZ KhnMMQfFJDhGiG8/1ejCdMCPKBJVIr60VhwmbfEybAIXaG+CAzN6odxCFfDeFZsZKsxMPSBBovi btt8QFXkcngyaRwVHpcMlAA+0L0z0ZrpFzx+4WpdXAq0TIUKVrS7kLDqFjXt0onaVj7OiVyvLgN A1lVv/QD8PwCwd9J/fg== X-Proofpoint-ORIG-GUID: uwJ0Z2FUhSRb54DDf1P1jfeHQ2iFP64J X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-07-23_03,2026-07-22_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 impostorscore=0 malwarescore=0 spamscore=0 lowpriorityscore=0 phishscore=0 bulkscore=0 clxscore=1015 adultscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607230107 DWC3 driver does manage phys itself sufficiently for Qualcomm platforms. If xhci-skip-phy-init is not set, the HCD core does a phy_init and phy_ exit is done only when roothub is being destroyed. Due to this, during system suspend in host mode, although phy_exit is done by DWC3 core, the init_count on phy is never down to zero since HCD core also did an init. consequently causing phy's exit routine to not be called. Hence, add support to skip phy management by USB core. Some Exynos platforms still do rely on USB core for phy_calibrate calls, hence disable USB core management for Qualcomm platforms only. Signed-off-by: Krishna Kurapati --- Link to PHY calibrate handling for Exynos platforms: https://lore.kernel.org/all/20190829053028.32438-1-m.szyprowski@samsung.com/ --- drivers/usb/dwc3/dwc3-qcom.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c index ac68b4218b56..ba26e61df915 100644 --- a/drivers/usb/dwc3/dwc3-qcom.c +++ b/drivers/usb/dwc3/dwc3-qcom.c @@ -19,6 +19,7 @@ #include #include #include +#include #include "core.h" #include "glue.h" =20 @@ -419,6 +420,16 @@ static irqreturn_t qcom_dwc3_resume_irq(int irq, void = *data) return IRQ_HANDLED; } =20 +static int dwc3_qcom_set_swnode(struct device *dev) +{ + const struct property_entry props[] =3D { + PROPERTY_ENTRY_BOOL("xhci-skip-phy-init-quirk"), + {} + }; + + return device_create_managed_software_node(dev, props, NULL); +} + static void dwc3_qcom_select_utmi_clk(struct dwc3_qcom *qcom) { /* Configure dwc3 to use UTMI clock as PIPE clock not present */ @@ -683,6 +694,10 @@ static int dwc3_qcom_probe(struct platform_device *pde= v) if (ignore_pipe_clk) dwc3_qcom_select_utmi_clk(qcom); =20 + ret =3D dwc3_qcom_set_swnode(dev); + if (ret) + goto clk_disable; + qcom->mode =3D usb_get_dr_mode(dev); =20 if (qcom->mode =3D=3D USB_DR_MODE_HOST) { --- base-commit: 80574c40598aedbc1751c528e414d7e224bc6313 change-id: 20260720-dwc3-skip-init-quirk-c110eae068ac Best regards, -- =20 Krishna Kurapati