From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.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 6243D3859CC for ; Mon, 9 Mar 2026 20:33:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773088433; cv=none; b=ex8cAGith1uIrEyXv0BcUHe7LUpDvmGiWVs0heoxfOzBhfXj+y3iH9BVrDxmpjRoxEnA738OWE/Wb34XdDSOWoJ4fT0qRhhSggiFRb5p/1yjCa7gS7kYWsv3ZvOoA4ivbDnt6vq4NwovdzH0e4fVOUNA1jyyNfPBXd8vmKdr4HU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773088433; c=relaxed/simple; bh=hBRDrGzZyzQbp0j3/9wGZbipBYnsHW9DmPOsNcq9U+E=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=oX2eVIYK7fkK7gQinDWC37hI0jj4aRw143l1nmcAeUBB6C/I8SWdjNlV6L0Z+w8Q18NdqMCly+6hmGiUwXJjbA+DZMplPTEhsP+Y5bGkTUhG3W1TisYUtvQNz/yzKH+r2FbqRT6XKAQUHZD0PULqND/ARyJ33B0khHuuyNL2eng= 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=l+K3cJ8C; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=MJ+toy+Y; arc=none smtp.client-ip=205.220.168.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="l+K3cJ8C"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="MJ+toy+Y" Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 629HBlEq296205 for ; Mon, 9 Mar 2026 20:33:50 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=m0r0f2DWKHm 8QlM7U3TX0AkmaU2aSB7RsqthJ3TDCeI=; b=l+K3cJ8Ch3Dz53H6KR3LliIDqTN eFWdjHWJpglzmHPhtOetJznivFa88hupgxeKWJNS/b1GaiTNsU61kHmbRTZ7Ok/S 0s0Y4qihHhb/7OsJkpeMVD441Fc0RXVuX52e1OHlAS9WIyXYuA7w+GfdjZNqqgQM zTuGwlPQLAVY2/OYOKg9EAd0/tU3t+xpV8+VHY+yTn4x6vAc1+YEf7PXLyKpOEyQ LJagbzQpRqjSdM/RuW/ecsiT0x/ThgNNATqTI0VDKjI5A/orx3pZSnuwCznYzcVF m67DVmDVpTq1bJDnno6jNnT2eF1FUf7sSiC3o47KEwjOaYm7YekgF3IgUbw== Received: from mail-ot1-f72.google.com (mail-ot1-f72.google.com [209.85.210.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csyfy1ddy-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 09 Mar 2026 20:33:50 +0000 (GMT) Received: by mail-ot1-f72.google.com with SMTP id 46e09a7af769-7d742da766aso7253867a34.2 for ; Mon, 09 Mar 2026 13:33:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773088430; x=1773693230; 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=m0r0f2DWKHm8QlM7U3TX0AkmaU2aSB7RsqthJ3TDCeI=; b=MJ+toy+Yhy0FOsHEvHFNrKwVWvedyICxzwcc4X8UxeO8a+VXi6cRkauviuO2TeVZzi Uj7GHJCpf72l3VzaYjtfyI+7yS0Qp5BIhR396rWTte8n2st7ihrhYMDQ9eQXnWrE+wOO 0dlVrds97+rL3uOBOO9Yw6HEAo+D3Uh1OwvAzr455oa0XcBfumgerGlMQbTUWYJFYOn+ Tvz3lKK86nnYv/VDwhGoVnlCnD6LbUAHiE2jhUQngf/mHuNdj7lQDVQha+yck3f0uJ/g yLrfa0PM0ZyTSPn19uAf5q6RfD3i/XSNEJyIuOS9TQZcksjC15MVE9AqN1OhZ3rSC0Vn 5EQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773088430; x=1773693230; 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=m0r0f2DWKHm8QlM7U3TX0AkmaU2aSB7RsqthJ3TDCeI=; b=pl97srIGjqAI5WNj/qs5D26VCzGrcYdJCJgsQdJkeuins/JosTMT7txalB1ANiMSZf 44x+LqUN1SoRJqSoig1DjqhlJDFNRFSTF3XdBpGEotAPAT0kTUYR6osl/1yYR4nDuvsD GgO9OeQhHrhcfjFSSODdZEH9yF6Ubl95ja7Gz5wHE+BMVsbZ8uDY2yZ6yEg1R8gFbM1j LLyco1QPJwgE1qyepDLy2uY6ngQeUKIRYfyywLDzN6pBVL9YIOX6kOZM4xJSZ0auckvt ooBO+igMUUP9k9KmJkJihmuJO11f5Ss6gLRhQrCwtms2c31O8a4G6przVsj9oSDiarBc oM9w== X-Forwarded-Encrypted: i=1; AJvYcCUhlIwDfLrw3k4dgSwgdCE/ZRbQbk9C1wbC5d6uAJ1xViFRdCKbvy7BWOqu8308UcAU+IHf+xv1SgGt@vger.kernel.org X-Gm-Message-State: AOJu0YxPmrP9OJZsLN0Yco0WUn+248nultibZygparPeeppyryDjlZEk CPLqMc3r4CMOQmnCrE6Xys5j0rpyKTbwyTsz9RyxLM+yr8f0JFNlaylkqBmgc0QUGp86PZDvH2s iwQehnVCnsi4p8321LgZ/ZCekHRDjGCBCoFV6H17gnVxjxmpfi3BOvNw+z7tuPY2i X-Gm-Gg: ATEYQzynrAR2CyNa0nw79CI8JVwUNrs50KyTBygqxAJ1il19lK2dhN+mhTel9uK/PsT PqNoc+pIK9RFRz/rE4CXzmpGYxNd9yk0tzKabNzTsnX+eS12hjp+JXV76rE9WguHdOBK1/Xpctb P0qW6f4ZYOQND/PTEyka4HbFg5dCn6fMJGyLpnGVmGR9mhhCOr4zSEKaLyKjN4aHlJBlrYo7T0l MWeCINj9mTYlmcskH1KVQdEJOV4JYff5OrXX5b+u/EkKOxL2+hsT6yL3jhPBA8d0AHbPsk5AyAU nNlHwuc68xehwX+uWbIjurPzHSkU3kulmBHr8RsXu5+Dj06ivkV7LDddIY8Dtm1kliSd9W6PaoL hQlAPIsOFaR2xWcbnDmGo9Vi/Te1pPmgVQs24YoNL5oGBSdLhaUHaOMc9yfFaEZ54Cfjs4lo2bk 4= X-Received: by 2002:a05:6830:67f5:b0:7d7:5113:f83a with SMTP id 46e09a7af769-7d751142e6fmr1974642a34.25.1773088429986; Mon, 09 Mar 2026 13:33:49 -0700 (PDT) X-Received: by 2002:a05:6830:67f5:b0:7d7:5113:f83a with SMTP id 46e09a7af769-7d751142e6fmr1974620a34.25.1773088429634; Mon, 09 Mar 2026 13:33:49 -0700 (PDT) Received: from hu-eserrao-lv.qualcomm.com (Global_NAT1.qualcomm.com. [129.46.96.20]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-7d74885b5a4sm3036494a34.23.2026.03.09.13.33.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 13:33:48 -0700 (PDT) From: Elson Serrao To: Greg Kroah-Hartman , Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Souradeep Chowdhury Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH RFC v3 08/10] usb: dwc3: qcom: notify EUD driver of role changes Date: Mon, 9 Mar 2026 13:33:35 -0700 Message-Id: <20260309203337.803986-9-elson.serrao@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260309203337.803986-1-elson.serrao@oss.qualcomm.com> References: <20260309203337.803986-1-elson.serrao@oss.qualcomm.com> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzA5MDE4MiBTYWx0ZWRfX4b70FSKplcqf NRxUgg+PP163d/X9/tB3c6KVBfF6ylyaWLJQBPuIF1k4gyLEDyM/vRVFcZoUxbLCJkaV38Sq1Te mAnYmuqOaUq1xkrJQVaIwp5XV1cqI9DpyxzZzrLmiwQdlicXgkRlnZqMnksqJTc+SAWBDw9Dd1M KVDwtQfua/1Ze0FyBDKwSjYzBNxDKQx01opWgwA+HMbGSvlQbLGRDvA8O8sliBoUs7nMa3WAZmL Z2fgkzZ+98TD+dARMxpO7ZoMzgBWmMXeWmrsxENvwF8p++KUQEgcUv96UCIMmSINtNw+0v7RhNU y2XR6oj1RyRwLRmtCB0HvWSxLBxtI88c/Dj4vo2MB7EDWVHjFH0fC1KaTufvxY+PbcVvb31dXMf MRTcQLaFzyTwwlx/6kbhWcusO0vdtO1MOPopxn6CNkSGJMMIMm83srb0p4RIksd+0M4uSt2gJZE /iDyFruWXL99a2R5c8Q== X-Authority-Analysis: v=2.4 cv=OcmVzxTY c=1 sm=1 tr=0 ts=69af2eae cx=c_pps a=+3WqYijBVYhDct2f5Fivkw==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=YMgV9FUhrdKAYTUUvYB2:22 a=EUspDBNiAAAA:8 a=D7RZ5MMOI3w-WYzWcLoA:9 a=eYe2g0i6gJ5uXG_o6N4q:22 X-Proofpoint-GUID: hjug9y_vLDCOAuAHblmfXSt5CzxHMobj X-Proofpoint-ORIG-GUID: hjug9y_vLDCOAuAHblmfXSt5CzxHMobj X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-09_05,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 phishscore=0 clxscore=1015 adultscore=0 bulkscore=0 suspectscore=0 priorityscore=1501 lowpriorityscore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603090182 The EUD driver needs USB role information to control its operation as it is incompatible with host mode. Notify the EUD driver when role changes occur so it can manage its state accordingly. Signed-off-by: Elson Serrao --- drivers/usb/dwc3/Kconfig | 1 + drivers/usb/dwc3/dwc3-qcom.c | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/drivers/usb/dwc3/Kconfig b/drivers/usb/dwc3/Kconfig index 240b15bc52cb..1a2d7c883b50 100644 --- a/drivers/usb/dwc3/Kconfig +++ b/drivers/usb/dwc3/Kconfig @@ -132,6 +132,7 @@ config USB_DWC3_QCOM depends on ARCH_QCOM || COMPILE_TEST depends on EXTCON || !EXTCON depends on OF + depends on USB_QCOM_EUD || !USB_QCOM_EUD default USB_DWC3 help Some Qualcomm SoCs use DesignWare Core IP for USB2/3 diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c index 9ac75547820d..b51fd97521df 100644 --- a/drivers/usb/dwc3/dwc3-qcom.c +++ b/drivers/usb/dwc3/dwc3-qcom.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -19,6 +20,7 @@ #include #include #include +#include #include "core.h" #include "glue.h" @@ -561,6 +563,7 @@ static int dwc3_qcom_setup_irq(struct dwc3_qcom *qcom, struct platform_device *p static void dwc3_qcom_set_role_notifier(struct dwc3 *dwc, enum usb_role next_role) { struct dwc3_qcom *qcom = to_dwc3_qcom(dwc); + struct device_node *eud_node; if (qcom->current_role == next_role) return; @@ -570,6 +573,13 @@ static void dwc3_qcom_set_role_notifier(struct dwc3 *dwc, enum usb_role next_rol return; } + /* Notify EUD of role change */ + eud_node = of_graph_get_remote_node(qcom->dev->of_node, 0, -1); + if (eud_node) { + qcom_eud_usb_role_notify(eud_node, dwc->usb2_generic_phy[0], next_role); + of_node_put(eud_node); + } + if (qcom->current_role == USB_ROLE_DEVICE) dwc3_qcom_vbus_override_enable(qcom, false); else if (qcom->current_role != USB_ROLE_DEVICE) -- 2.34.1