From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 6D3D8392821 for ; Wed, 13 May 2026 13:33:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778679180; cv=none; b=XEdoRNiwwWAuK1jg05Nej5PJ8DEEQ7gmeFeQY5bZ/75QmPEtJIFhyJrAeChZ949FMYL8cMe44IfzRh8FLq43G7WKn2EaEbOcrlZJoYDNHOrBTIFR7glmXLfVzML32HZssBxq0cKYy1BnqrkK02BH1jhu1O5wuHiC/wf1/gIaJWE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778679180; c=relaxed/simple; bh=pX12rgLVaycmpBG7b5Qn4vhXtacrNWmF14+iGMpx2Uw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=uyin56a/A6xbsuegjTOr5k7WhIsy7HxZa75OOmq812WYQt6df2eeyNLeS8w5YrSRG++p4oFfHiqxQJY16UlOe1rJ/eXjtzF3QPwFPz9P6l/To2lEukQqsFGZht89wSpfkNiQfqGgnciB7/sYtzyh/0l3mCJEVVY+Jq6W7Ggn7CI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=T0m4p9Cl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="T0m4p9Cl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4431FC2BCB7; Wed, 13 May 2026 13:32:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1778679180; bh=pX12rgLVaycmpBG7b5Qn4vhXtacrNWmF14+iGMpx2Uw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=T0m4p9ClO213VvCBZE+5lgmmMlUqXYxakJ101aJJwX+WMbj2ozv2Mklg4uAelBLcJ 5rf5RS6ugf+kqt1wadth4UEyw++w4vYX7kxM/Kf4JNiwDp7DRUot9GgBEl+Luxlokq zQgi9FBY1tjZ0TRyqvQK4vR1AHUZyGVsHPQI8iS/ixGFpZTyR7M9oae6YiwkW+7x2J 9c4TzgBjWAqVP52fXHyr4TUwLIBAGklJ8TDh5nf2eZr3DgwOXNMx17Q+YiAa5C6//t sRlS6z9/6MrmyKvyJN+N3U3Nbgkq+X7v/ZqokpQ3XfKcZ0K7ksP6JDz5tO90YeX+zP ofucYQJkXrrFw== From: Sasha Levin To: stable@vger.kernel.org Cc: Selvarasu Ganesan , stable , Pritam Manohar Sutar , Thinh Nguyen , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 6.1.y] usb: dwc3: Move GUID programming after PHY initialization Date: Wed, 13 May 2026 09:32:57 -0400 Message-ID: <20260513133257.3732683-1-sashal@kernel.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <2026051247-squeeze-wildlife-aa9a@gregkh> References: <2026051247-squeeze-wildlife-aa9a@gregkh> Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Selvarasu Ganesan [ Upstream commit aad35f9c926ec220b0742af1ada45666ae667956 ] The Linux Version Code is currently written to the GUID register before PHY initialization. Certain PHY implementations (such as Synopsys eUSB PHY performing link_sw_reset) clear the GUID register to its default value during initialization, causing the kernel version information to be lost. Move the GUID register programming to occur after PHY initialization completes to ensure the Linux version information persists. Fixes: fa0ea13e9f1c ("usb: dwc3: core: write LINUX_VERSION_CODE to our GUID register") Cc: stable Reported-by: Pritam Manohar Sutar Signed-off-by: Selvarasu Ganesan Acked-by: Thinh Nguyen Link: https://patch.msgid.link/20260417063314.2359-1-selvarasu.g@samsung.com Signed-off-by: Greg Kroah-Hartman [ adapted dwc3_writel(dwc, ...) to dwc3_writel(dwc->regs, ...) ] Signed-off-by: Sasha Levin --- drivers/usb/dwc3/core.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index 6c8a0f0620d50..7793936757ac3 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c @@ -1239,12 +1239,6 @@ static int dwc3_core_init(struct dwc3 *dwc) hw_mode = DWC3_GHWPARAMS0_MODE(dwc->hwparams.hwparams0); - /* - * Write Linux Version Code to our GUID register so it's easy to figure - * out which kernel version a bug was found. - */ - dwc3_writel(dwc->regs, DWC3_GUID, LINUX_VERSION_CODE); - ret = dwc3_phy_setup(dwc); if (ret) goto err0; @@ -1284,6 +1278,12 @@ static int dwc3_core_init(struct dwc3 *dwc) if (ret) goto err1; + /* + * Write Linux Version Code to our GUID register so it's easy to figure + * out which kernel version a bug was found. + */ + dwc3_writel(dwc->regs, DWC3_GUID, LINUX_VERSION_CODE); + dwc3_core_setup_global_control(dwc); dwc3_core_num_eps(dwc); -- 2.53.0