From nobody Sat Feb 7 06:21:08 2026 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 3A6FB30F93A for ; Wed, 31 Dec 2025 04:56:23 +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=1767156984; cv=none; b=khCZHJnhhfnYvzssp3cp5end6P4AlHoW7upr+g5MuhhMj5oPZDueTvaghvB22629fQDs4DXNafM/otRBNTeXJbm4wmTtMoKhsbZz/FrNuaMLkM5Nq8I7KctbxmjHO3CKlixvxE7yVbS12Z3hUBjWDd58yuCd2bNv+h6tfBDewCI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767156984; c=relaxed/simple; bh=n/olLfZ4nDPE0Fc/nYoIgrhjqAFOMhm0RkBbmAj4e+k=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=JInKrWiTFc8e/uT1x832wMROmaqOZbzdLi/rvRq6foQHUEK4xVFgEVGbhW+DJRcGygB/agRhy2slIRJvV1/w3yPUtfTBW5fcZK09+52JRvIwN294Nou9mcEdzoZ8DYBwvoNz3uNZ5x8pwLk7brcWHwewyW7iexTsEIR9BZgE66M= 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=d4oYp9q/; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=FOAewJjW; 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="d4oYp9q/"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="FOAewJjW" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BUL4KxL2286694 for ; Wed, 31 Dec 2025 04:56:22 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=YaxEWXLeS4I QAnQ85ZZDFxXJrHCM2rSQp1hb6FjV+/I=; b=d4oYp9q/uUWbk9VaKQyOeCV5tI2 PUZbuY9d7qDLGGnYFF/vu3UKASyntZSxiRLUkZsV9Ouna2y1PMBG+FuUx3DqN3Cn 3fdUwO77APDOaOsUV4tM2T1jCCCcUTb7IqWDXCvP+1uKT2GVgmaaLn0OEWulcb6A myHqNDzFVwe3U678KNHwp/pAyLeqKPlG3bzb2TQhK8gJcanXVzz0+VRuzjRpwdUc pbZBESK/e9rA2EsGKe2W1WhOYUKdzc2sFa4OjFe1tAfNy9XFBSLGgcp2MiOu8anm 27/H0e2GevC9rmmznaZPRwVRsg2Zisio1ouzPnfR0oIc3uBxacvujBZ557A== Received: from mail-pj1-f70.google.com (mail-pj1-f70.google.com [209.85.216.70]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bc06gunw7-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 31 Dec 2025 04:56:22 +0000 (GMT) Received: by mail-pj1-f70.google.com with SMTP id 98e67ed59e1d1-34ab8693a2cso29246864a91.0 for ; Tue, 30 Dec 2025 20:56:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767156982; x=1767761782; 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=YaxEWXLeS4IQAnQ85ZZDFxXJrHCM2rSQp1hb6FjV+/I=; b=FOAewJjW+9vG1cHDery4qRljWODsKYkdVsA2GtdT9H4q4x7rnQy79t+gil9kUbvJvX q9oHQePBhlc9JEzX83b70L/+WmsUq+U2m5MIIHWdOPysKARYVXsnGxsgPY485yFj5Ck7 dlUATneCBWUwegkLj3ly8GnCEJECEFCNXPG+1JmINRGNiroj31n7Cg8ax45CodipBsAw RukZdxwFwuuyQQuoWfo3ddzSd1tdsRVWe6rFDA+9E4cIPBqs4VtIk6UBnG/03b8uWj2z 2r7cX2RQBSleOdKIVErcZNwoGPZQ6TPJifYPq7bEQub2O9wwE6dMIrlCvxUbf2N7dBUn Tjyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767156982; x=1767761782; 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=YaxEWXLeS4IQAnQ85ZZDFxXJrHCM2rSQp1hb6FjV+/I=; b=QVZ4GH3y5ORWZhUJPvGxYrsgshlpeeSy1q7vYX4tU0aMNczi5BYFhfbqm5FFj22nJi Ru/S9Mz3JkBPY3M9Lt59X/71qazx+j8YB9zm3S+i5bv0qjs/aQECfadavBDnbZSAJ/dn cPnCHHwUH1CzZlIausC5OA6U2+iZoWxE7EwrtnEFpvGR7DhBo+Z9gXw5W6LTFKaLlME+ O+iHDrmYWIfh1hapSM8UzwzKOGSisGgXuBxB5WAr460jfqIeOdHBcigz0G2img7odqEa FpVGJPfhwcnWEoR6YqwTTyi54aaZ2YpTqtf0CHj8RF/DNMCzMInIo6MZizMLfwpJquxV U3ZA== X-Forwarded-Encrypted: i=1; AJvYcCWf5F9NTh//HAnq+GRfSvXe5AC5GqDJtDk5BG0UHCUoV8/nnHrJKXvZe4dbnjnACssKuU6d2iAUaEUdWD8=@vger.kernel.org X-Gm-Message-State: AOJu0Yzewa/uLfBfybHM58r0KueyEOug1xELzEZQfSD4lCZugB58KxQB 5NszhZgLd41xHjvxEEntnHQVir12PsBa/RlzlDLJ74UTgQ0ecIAXax/8GBPwCXDvwsPABxQznCl n9nvWu0ErMAmj856si4RYoYoz8qG/J3NXueOPE+Ed5dqWJoa0e46mRFVvdCOIdarfybA= X-Gm-Gg: AY/fxX7Kv2I+fM/kpXJLtBPyiQWRPUwmZ7a6hODyy0wRkBr47nqola+9brq98r9jJOz gZyuPq2tmAB9EaijvJMMIVedpH17XKU4B9zGabLCdocFcwzW9CtWss+QydExVT0H+mF9zMTjRxT MW+zLHfH3C7+vsA/LD+iUXIAlpbvkL0xDXiqdFn9uuJpKrjYR/WdOabLDJHznJAKDxPXfF+3yF9 mkFuCNGZu+nEOJPfoFrUn9/WbA3Yxc83uXIrYW5fU+7l7BIWzXpByP0w1LDoPXChB40KeM3ZySx AiWJ1K7e3vnAK/T+vHMsl+WfBFf3yfDfNoUgzBV/hcpejnaikDpfYrLHeuSTf+qpCEoXfDhlj/L lXh/ERzwT1pr6BcgUNOaLAVMkt7ejBsshF77AfNer X-Received: by 2002:a17:90a:dfd0:b0:34c:253d:581d with SMTP id 98e67ed59e1d1-34e92139ac9mr28297975a91.9.1767156981832; Tue, 30 Dec 2025 20:56:21 -0800 (PST) X-Google-Smtp-Source: AGHT+IH1Cw52gEmn3J+jHIF5EeK4gMmpZSxVOepfaWx2DOsUmuRGWiYQiMvdTve6e3AkMOg8HCyXbA== X-Received: by 2002:a17:90a:dfd0:b0:34c:253d:581d with SMTP id 98e67ed59e1d1-34e92139ac9mr28297961a91.9.1767156981415; Tue, 30 Dec 2025 20:56:21 -0800 (PST) Received: from hu-rdwivedi-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-34e70d4f7d3sm34547697a91.4.2025.12.30.20.56.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Dec 2025 20:56:21 -0800 (PST) From: Ram Kumar Dwivedi To: mani@kernel.org, alim.akhtar@samsung.com, avri.altman@wdc.com, bvanassche@acm.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, James.Bottomley@HansenPartnership.com, martin.petersen@oracle.com, ram.dwivedi@oss.qualcomm.com, anjana.hari@oss.qualcomm.com Cc: linux-arm-msm@vger.kernel.org, linux-scsi@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Dmitry Baryshkov Subject: [PATCH V3 1/4] MAINTAINERS: broaden UFS Qualcomm binding file pattern Date: Wed, 31 Dec 2025 10:25:50 +0530 Message-Id: <20251231045553.622611-2-ram.dwivedi@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> References: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-ORIG-GUID: TmkzLy9tGT_gBjEjYhskdpz_sW1DrlwQ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjMxMDAzOSBTYWx0ZWRfX9Q93gwvlFxQG bQHHRS3qk4lPQjREDB5LCwjCEnz4Qv3yCBF5Zl9TqgZmEQsoZQ1dlH23fTv6k4/Hg+M2DRdkRJg TY+slUW9kE+DT5bNbxJIs6BIJV5HpQWtaegv7vqiFIPei/HyTY9tOmd4qNetY3pvtulPHxfBEDU uuLcUyGyZfz/LmpdzcT7q6ARcPDKSFXfKNBxqxPkFHHn6q5wzD2XICaO6B0/SwIrTA+aYeQnrgf 5mBk2pcgpBuiSio1hCDvT+GS7AsSYgCfgTKPpSJdLQE0XbT9klb4qRQBGRLs+oweGkEY3Y6pjij Ma3p8siTXpETJ68AkwhwmvlYdk3+Zd1Zk28xyp9fVksYHHt4ClXkSZRgY6aOXzC6eQ9We0MNWMc 43LKdZYANdX5BEAB67VUwtawFd8Uo5DyWDGebdAn/kDGDFP0a6tPkCwDklLKeoI3hFrd4+MbEHp mkF3azbmdXVQNjoJLhQ== X-Authority-Analysis: v=2.4 cv=A45h/qWG c=1 sm=1 tr=0 ts=6954acf6 cx=c_pps a=0uOsjrqzRL749jD1oC5vDA==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=VwQbUJbxAAAA:8 a=52jqHT57hFt4fz_33zkA:9 a=mQ_c8vxmzFEMiUWkPHU9:22 X-Proofpoint-GUID: TmkzLy9tGT_gBjEjYhskdpz_sW1DrlwQ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-31_01,2025-12-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 suspectscore=0 bulkscore=0 phishscore=0 impostorscore=0 spamscore=0 malwarescore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2512310039 Content-Type: text/plain; charset="utf-8" Update the file pattern for UFS Qualcomm devicetree bindings to match all files under `Documentation/devicetree/bindings/ufs/qcom*` instead of only `qcom,ufs.yaml`. This ensures maintainers are correctly notified for any related binding changes. Acked-by: Dmitry Baryshkov Reviewed-by: Manivannan Sadhasivam Signed-off-by: Ram Kumar Dwivedi --- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index 0dbf349fc1ed..70c43fc74401 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -26842,7 +26842,7 @@ M: Manivannan Sadhasivam L: linux-arm-msm@vger.kernel.org L: linux-scsi@vger.kernel.org S: Maintained -F: Documentation/devicetree/bindings/ufs/qcom,ufs.yaml +F: Documentation/devicetree/bindings/ufs/qcom* F: drivers/ufs/host/ufs-qcom* =20 UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER RENESAS HOOKS --=20 2.34.1 From nobody Sat Feb 7 06:21:08 2026 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 8E34D2DF126 for ; Wed, 31 Dec 2025 04:56:27 +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=1767156989; cv=none; b=mrQ0MsSBxDFPZQyiZhUBZqV6rvHXs9D/sOAnwWqqEXeXrJNLuofeKqiaKyNjeOHnfvGJeiRiArKsjWI/72ejoTASdaHE4KwSgfsIzMv9jQYv8P/90Uz0XoofKgHmwckr0j/WXPKY4hiyfyd8ncrMkraUBTpHRfS/PVG82f6El2E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767156989; c=relaxed/simple; bh=RZhUJsCsLQ8did8MwMm1CGALj2u+dMNRhc+pjjIQnsE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=OXLHotutL1a4QOJplEfOcyPbHO3+4eTlb650VJrHxZi+EiIeS5TvjoGidI+bvPvkkV8fppqvJcSf9p97IsmlXpG0VlPG5ZnVkTfWHSt4VfYfxyBgFGD9VRaEd6oDjsihV6TGtqUQIAVT6O5TFqOZOOAO/JN5lQ5l2h2Eb1ieJ94= 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=CheNtjhi; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=WU+tFXvf; 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="CheNtjhi"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="WU+tFXvf" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BUEcOxU3539627 for ; Wed, 31 Dec 2025 04:56:27 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 0DJ6ywmffk/NvVfS6DMQL/6EhTDM6B1Ko//XWCitums=; b=CheNtjhiz8hn4Ugo Qrv5Fo1H4M8RgRg/F1j+WozE9PPv4LGEXIbJC1Gn6Dkb3my9rbMrd1xhwfV1+dUd C3TStYk43N0dRPUfT3b8/Q8CnInTmBOFdD2bXvnI+Px5YNU5HBV7b4bIta25OItZ zBWTaIKGzprTVpmL20VqHDwEMj92M0OijeI4uhofNkBq4JZU0UNQmqhIKUrDNG/e r5TucjXq2Mr3ol+Z7hyh9L5bFp54wnsf81yEO4MrgqKPR9ZqhvCGGC7FyTmt8/xt LkFYUZta/cGtOqnn98RYRSreuwSVCC1bjlr1JXJS+H50qppv9YNSdwetspwX+BMW qFimgg== Received: from mail-pj1-f71.google.com (mail-pj1-f71.google.com [209.85.216.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bc88yjs05-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 31 Dec 2025 04:56:26 +0000 (GMT) Received: by mail-pj1-f71.google.com with SMTP id 98e67ed59e1d1-34c66cb671fso14578631a91.3 for ; Tue, 30 Dec 2025 20:56:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767156986; x=1767761786; 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=0DJ6ywmffk/NvVfS6DMQL/6EhTDM6B1Ko//XWCitums=; b=WU+tFXvf0mJnirdCR1i3W+s7aRCJLZGjCrBQCgV+08S5BAknS3UY4LGgniu9+dHkuk DRRQOdZtc/nWYiAtqS95kD20Vo+En4yzJXsM7AaH3YCoRYmsPLmBtHVQ5PhneCwzhPxr HXSN1bvv6jGAh9iVhk2jrobZbRbKT/wGsNTNMM9gdtMdxPuliCfiyrwAgKeAHPZclFCe nbYPwimrguUgIC1cBIGsr+E62qsGkGB8IHuarsDxMhAv8QBf1iQX33/8zOrApKAs4gX4 NeWfsFSFzdyjL3FOYe5bYZiTc1DlLPIAbel6/Dfyh4ajNrl9Vmu8gMpjqgMfG1Q+7epB co9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767156986; x=1767761786; 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=0DJ6ywmffk/NvVfS6DMQL/6EhTDM6B1Ko//XWCitums=; b=IEf7nl4jt8OmZSH/J5ajoRe+c2xfUG6ZRSyHgI0gQibTiLrHfkCYxhtrM5w29c6i2N DJgA5+AB5xi14p627KZIarbscGqD666qda5zFU2t4yMuLYOQftZ3y1V2nZmVi5010SFe YeoDUxvLsmlV1ADRJNhKIcYfNg7A6x6gjgh+h1jAc4pO57QKGLKCPSYJYnFbPtukWn2o sEyajM19AiQE4OqWiEBb6Lr0Ji9g50k86wPKAg9uHVgQvjaPZyIEMU8uOdT3VqW+HfBB bVtb1tiMkHwCs8ydXgxfkfuvgMJ7dMDAfFuLik3AYqYxPqsAmhRB7lTTXRwZ9CwOZhTQ Judg== X-Forwarded-Encrypted: i=1; AJvYcCXhGIF2p7BYEQ17istVqgJd5PytyY+Hm9JcnvqNPGf6SMZDq564YLg2iVeByLxrFsSTvq5Emx/Ga946lAE=@vger.kernel.org X-Gm-Message-State: AOJu0Yw3P/+tOJGesc5wzpzIP+ZOfit4kFsjvlYvaaW553hv900mSIdf 25uqJv3Z1RQ+OlGrtnVsxSASCE8hlbjnsLEdtZBiR4LYDAxOYc+QYCeW46eeyMyeNDIYu96F38Z OnRMKHXjjBTWDHTCG3/zK6K4HbUjir4rGohDfPRz8qpLzwPKDja7mRVNTIz9bezmCIgU= X-Gm-Gg: AY/fxX6GRXoQ44GyIEhzMhfxJoiYvHRj+4kI5fFpGQPUuzD4iwg74GXnLjA4MPJ2Lr4 oza8pyuMoTWOXU1YmfTQn1WnvxrL6RBlA61b/uMiYaLtX4eZ+jQGp+6xZX/sxTaPHN7f2QZJUFW 43gmxTSMQVUB9bdK4OH6Ap2aq0Ukp72BZFoG2+9pt8WmnchemepUPgin0FEDl8iapkKugSla14P 66wbkPKVIOKDrbe4EhdchE1bMF4xeRXSb9VEHOn11TOEIG1HAnuAgRBNxErQn+pPRY6bJIzv7W0 qUtxjWvD6YpIUN1MQKLJYqADo/VfxCmY22t6HHgMiFjsVSdtWawabuIX+zkBfOe+P+JlM/zibCp Tz4xTO+2A01jJbL/CAZS5OoHKZVqmcsRKlMX2l8fV X-Received: by 2002:a17:90b:1d49:b0:340:c060:4d44 with SMTP id 98e67ed59e1d1-34e921353ffmr31607805a91.14.1767156986104; Tue, 30 Dec 2025 20:56:26 -0800 (PST) X-Google-Smtp-Source: AGHT+IFJesyqrxp1GrNh6zATDoRhTiZKRBfA4mQENsxcdqx6gV8UJULOCvVOHwhRLwzkEnp6dYxCsg== X-Received: by 2002:a17:90b:1d49:b0:340:c060:4d44 with SMTP id 98e67ed59e1d1-34e921353ffmr31607785a91.14.1767156985652; Tue, 30 Dec 2025 20:56:25 -0800 (PST) Received: from hu-rdwivedi-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-34e70d4f7d3sm34547697a91.4.2025.12.30.20.56.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Dec 2025 20:56:25 -0800 (PST) From: Ram Kumar Dwivedi To: mani@kernel.org, alim.akhtar@samsung.com, avri.altman@wdc.com, bvanassche@acm.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, James.Bottomley@HansenPartnership.com, martin.petersen@oracle.com, ram.dwivedi@oss.qualcomm.com, anjana.hari@oss.qualcomm.com Cc: linux-arm-msm@vger.kernel.org, linux-scsi@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH V3 2/4] dt-bindings: ufs: Document bindings for SA8255P UFS Host Controller Date: Wed, 31 Dec 2025 10:25:51 +0530 Message-Id: <20251231045553.622611-3-ram.dwivedi@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> References: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> 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 X-Authority-Analysis: v=2.4 cv=POcCOPqC c=1 sm=1 tr=0 ts=6954acfa cx=c_pps a=UNFcQwm+pnOIJct1K4W+Mw==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gEfo2CItAAAA:8 a=EUspDBNiAAAA:8 a=VcM-S10TGioI4za7RKgA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=uKXjsCUrEbL0IQVhDsJ9:22 a=sptkURWiP4Gy88Gu7hUp:22 X-Proofpoint-ORIG-GUID: Nhc_4eMCcRuP04nAaMxJZ4VHdRP9WP7k X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjMxMDAzOSBTYWx0ZWRfX+LYvkjHBmhzz /rwq1w7cfHEu7MqLTZJAGeEfX7Fo18BYEFoGEZVkqHcEFlxjcmYZwVLOaISWWi+hS+lkqitn7kb O4fOqtNSQfNvlc2fYmGh25VVHXhbNDvQ+e9O3wZHOWkPwlyqzQeqtmW7SCnx0DbJquCTBdYtvcR gRXZKRAhutrWPxYPOp1hgh9ZoUUwIv+/9jq1IU4Tswp+/Eq2jHa7NBVhfQ96bmbzU7J0VY5zZCs L0PRdm6MeMWUtNOGu2pRKUIosoxdvbCoRkpY8hSOGOe4C13iNgQS3ddnB1+8JFD5P9sjBbDWZ7m +ajW0Ob2SjvgCl9Cy9iSuXZ4Xxxs5NHZZtIeUBUC7LTDhU2ZKZvTZx6ZK3odxqssLroPu69fxmc ApMa3H29td/gCGss7811y8EJnANA84gb+Oc4/8Mq11Qwq/en1BqAr/e3yZRNZJZf/CDZPlQvkPH E/hrbNmPZ3blpkvc4Mw== X-Proofpoint-GUID: Nhc_4eMCcRuP04nAaMxJZ4VHdRP9WP7k X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-31_01,2025-12-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 suspectscore=0 lowpriorityscore=0 malwarescore=0 adultscore=0 bulkscore=0 phishscore=0 clxscore=1015 priorityscore=1501 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2512310039 Document the device tree bindings for UFS host controller on Qualcomm SA8255P platform which integrates firmware-managed resources. The platform firmware implements the SCMI server and manages resources such as the PHY, clocks, regulators and resets via the SCMI power protocol. As a result, the OS-visible DT only describes the controller=E2=80=99s MMIO, interrupt, IOMMU and power-domain interfaces. The generic "qcom,ufshc" and "jedec,ufs-2.0" compatible strings are removed from the binding, since this firmware managed design won't be compatible with the drivers doing full resource management. Co-developed-by: Anjana Hari Signed-off-by: Anjana Hari Signed-off-by: Ram Kumar Dwivedi --- .../bindings/ufs/qcom,sa8255p-ufshc.yaml | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 Documentation/devicetree/bindings/ufs/qcom,sa8255p-ufsh= c.yaml diff --git a/Documentation/devicetree/bindings/ufs/qcom,sa8255p-ufshc.yaml = b/Documentation/devicetree/bindings/ufs/qcom,sa8255p-ufshc.yaml new file mode 100644 index 000000000000..846a3552a9e4 --- /dev/null +++ b/Documentation/devicetree/bindings/ufs/qcom,sa8255p-ufshc.yaml @@ -0,0 +1,62 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/ufs/qcom,sa8255p-ufshc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm SA8255P UFS Host Controller + +maintainers: + - Ram Kumar Dwivedi + - Anjana Hari + +properties: + compatible: + const: qcom,sa8255p-ufshc + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + iommus: + maxItems: 1 + + dma-coherent: true + + power-domains: + maxItems: 1 + +required: + - compatible + - reg + - interrupts + - power-domains + - iommus + - dma-coherent + +allOf: + - $ref: ufs-common.yaml + +unevaluatedProperties: false + +examples: + - | + #include + + soc { + #address-cells =3D <1>; + #size-cells =3D <1>; + + ufshc@1d84000 { + compatible =3D "qcom,sa8255p-ufshc"; + reg =3D <0x01d84000 0x3000>; + interrupts =3D ; + lanes-per-direction =3D <2>; + + iommus =3D <&apps_smmu 0x100 0x0>; + power-domains =3D <&scmi3_pd 0>; + dma-coherent; + }; + }; --=20 2.34.1 From nobody Sat Feb 7 06:21:08 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 8EC0630F93A for ; Wed, 31 Dec 2025 04:56:34 +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=1767156996; cv=none; b=lSrOYiChcoVcfNx7VMIM3BJ+ek/C05EOg8CJqBY4VKyE2T+llIeURrC7dmdqu3SHpXf8KoqtQXtV0tALCN/AUw5tyI/RiB7RM++PiVr3bW7IYmkFGJPkocQKEkjGpZgrRN/KlPEC/NUZwYekO44bEncHAzfz/K/LJCpoZLb5Rjk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767156996; c=relaxed/simple; bh=XWp7COkoR50DXLNvgSau8lqHHHIoHPVakl6H9Mli0uU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=YDRXUP992XCCMm4Eg+2tv+QuKo7RJJs7CdXlt3A1Iyo+iiDty5JCexzG7EjL3H4OsitDrXHBxeiLzpuj3GJe0+VaG73QJWDnhTqG0jI89WvxA3XhTUrDBEquiSRL20pAeWdOQd6NSSHHmka8oIo8VikrrrgKmx2flx/yrHD14rg= 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=kLe6889n; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Fmmsngzl; 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="kLe6889n"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Fmmsngzl" Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BUE97xj3555938 for ; Wed, 31 Dec 2025 04:56:33 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=hik6Yv4/FlA PL1T4IYbHNIfPpAtv/lW1BzmwFMKCUek=; b=kLe6889nRDFpBx0NiBBSouL43yL U/CkLbQ+F8EaoECTBlWcedwmQxazL7CJ6hQAWjWRxgoyiVsGnQp09s/DCGWRYkJm N+2WWV9uUa/ZIxtBVpkOhgsIktd6qI+rmzTbCSaeXNez+LnrQfO6KUxVeuwHM9nD sveFkbHoQXyaBptMqvCb14GMdPyu33AxMTBUuH3mFKYzNxV+vUcLUVO8VHCqnag5 6z/hm+Ev/vPo6NcK9ndUrgLM04n86kPljKTjz1/VUQFTBSEsY+PUrCq6T8VX3PE1 N+7EbF8HCMAG2jtXzzMEurWo6cEMSV8AKgHDHClD23qdcqx0lvWZzHqI5Uw== Received: from mail-pj1-f69.google.com (mail-pj1-f69.google.com [209.85.216.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bc7462vh2-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 31 Dec 2025 04:56:33 +0000 (GMT) Received: by mail-pj1-f69.google.com with SMTP id 98e67ed59e1d1-34e70e2e363so23168816a91.1 for ; Tue, 30 Dec 2025 20:56:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767156990; x=1767761790; 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=hik6Yv4/FlAPL1T4IYbHNIfPpAtv/lW1BzmwFMKCUek=; b=FmmsngzlDv4oJcXkdRv7itLj8SrL+qIhxpc16dxOjGCRgEG6BVaiX6Ucu+8HfaQm/t mcv0/RxIXq6SrPeX1kiL+vo+xEe6naNf14m1x1MiUhEjZZureEvwN8+pp7vEelfyEVQN a+LqLvOoQfCoO3ryTNRto2v0n6zck6H4WmTiSIFetZU2D7EwDq6KgAJlzJug6U1cuy6u 9bv6qEPgTXTewmOWs587rhbsAp0xnVkO/CRhCB8D7lw6Q4SZr/MFeZFXHBZnW5ROR3jk nn2fLRrFCScVo6OuTw/3L9BLdRgZtZYPY5EeZ2XrkueMj1zFzwl4S83Ypu42orsZFB9S LtXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767156990; x=1767761790; 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=hik6Yv4/FlAPL1T4IYbHNIfPpAtv/lW1BzmwFMKCUek=; b=t40q0+C3SWTsgNmuwKCvEiTDOH61dXQa+CblgGStPcoQRG7Sd1zLsLwxkVSka0CLIG gdiktmdaOdc/00CORO5we8+KfGm3CAwLoLXZS1YWXS7ef7hJIqUais9DdN86U+NEeAfW E0hTskw2v2h+XEDjZDWg+kkxAvj8An700aKVQvDopAWqH5BUnndXh8YIJY6qfCPB4GJL E7BiQL6cUb0f9boemmH8aI+oEt5D2xspqbwSLZ5B2pcdzaO4dCYj8EoeUse7mtbYh+Q8 7KlOR/D54dNbYVTG7+fzkmucxfVHRsZiWvmnk6v2zFsPibFzu22fQxtB4tJtPi4yAXZY y/3w== X-Forwarded-Encrypted: i=1; AJvYcCU5ckESnpmRuCgytwonw7MHwqgjo64SpD/9o6+WLJ0D8iKbXWczwcYCITsHY7tniFsWZANzkEj48P8Goew=@vger.kernel.org X-Gm-Message-State: AOJu0YzccTx38jqDORf1K/Kn6pqyeN0NvZQ21tQ/ZT2UlMYDeSdR7wWH a4doRCXqVOn44sZYjZB/GWL9/MPU8ALOADm0cjuNzUaxREMjO8UsnMaQWARhJ8T+U2hqe5qfiYR 3NlO5SIY51faGgKSGZP83WIoHDgSdqVhG5VhlNNViXu14az591DB8da7pfZyazt9Mxok= X-Gm-Gg: AY/fxX7T1YZ7drmw6rglMBA4wbW/PKuBAFv8oq9HriqwOlf+kLlK/K0paXG5AxwsEkF CP8YLvEgr8vIKcg9j4IaxlEWmOD9Rr3wjkqZgTZ1ce/F4o/nYftkUWd6BOLh2PMLyz/JZBs09UD BI8I4kmdU2OUMkERroyk3Z1yejhK4G7qOzmgIb9LXapUlcqCXMx6ns9PaHjj012mjl3vaYR/Z3Y KWqZ9rLKQrpmnm5WNhJnNrhfEohvaYnpcybMCqSPoLV2ZuSWe+Wu9S3zZnZ2QqHGCxbW/AN4flB isyzb46ET2a1fcwg+lQ5dgSfUwGFpbxHsN6iQzKUSL1pbAfbWNBKgsHMU5hdS9wKHoqCRske+nZ w1v9VcPUltdB3HGT8I/a76aLhVIv9xBG9z43w8x3Q X-Received: by 2002:a17:90b:4d90:b0:34a:e9b:26b1 with SMTP id 98e67ed59e1d1-34e921d0a61mr30320789a91.26.1767156990350; Tue, 30 Dec 2025 20:56:30 -0800 (PST) X-Google-Smtp-Source: AGHT+IEAmbtw/5/ayDFahPPH4jioa1oTKC6l4u/GuyMepxqzmSJeoizBhSiIQJ9Q9qSSuJuq9LX3zA== X-Received: by 2002:a17:90b:4d90:b0:34a:e9b:26b1 with SMTP id 98e67ed59e1d1-34e921d0a61mr30320764a91.26.1767156989895; Tue, 30 Dec 2025 20:56:29 -0800 (PST) Received: from hu-rdwivedi-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-34e70d4f7d3sm34547697a91.4.2025.12.30.20.56.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Dec 2025 20:56:29 -0800 (PST) From: Ram Kumar Dwivedi To: mani@kernel.org, alim.akhtar@samsung.com, avri.altman@wdc.com, bvanassche@acm.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, James.Bottomley@HansenPartnership.com, martin.petersen@oracle.com, ram.dwivedi@oss.qualcomm.com, anjana.hari@oss.qualcomm.com Cc: linux-arm-msm@vger.kernel.org, linux-scsi@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH V3 3/4] scsi: ufs: core Enforce minimum pm level for sysfs configuration Date: Wed, 31 Dec 2025 10:25:52 +0530 Message-Id: <20251231045553.622611-4-ram.dwivedi@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> References: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=Do9bOW/+ c=1 sm=1 tr=0 ts=6954ad01 cx=c_pps a=vVfyC5vLCtgYJKYeQD43oA==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=_fLkURk_aflrY1IPiHIA:9 a=rl5im9kqc5Lf4LNbBjHf:22 X-Proofpoint-GUID: zSYqO9RoarX7WKPQjdVxVjjuxzeKQQ65 X-Proofpoint-ORIG-GUID: zSYqO9RoarX7WKPQjdVxVjjuxzeKQQ65 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjMxMDAzOSBTYWx0ZWRfX+xfl7DmP8vd0 eDjls9B9uobr1L/bIubBsu2zQK5fssFGv3WS/rD02YG5UPmGzjeoCftBGnNpcMmkcMEXAIhMoLK dlX/o5XDttdlE8bfl5MmlN6aAEAEvn4f94LdSzho8aNXpgAy0gKFhr/Il7F0312oL+ewzP3zmm6 atg0Dg/uhB1xS2cHF12TAwA/hOAcdVJ1454CLVMxA2MIRx4lGcYH7YaP+uboY1dyTcQMPa2ZCNd u0MiRhLr2L/3FTDd45OmVham5nHGdze/aTrv73t6atCdfCdwIu28Brq+pWhgMerzU7IhZSNHXSF bVzHy7XtpepmTOwKU7c3cSzXnoiSkAC76thexlMZIvDsE1qZ4ACb04I1yLstv8hukpplT1bP605 XXDxQcFh2TdvwCi/kiE+Wm7k2K6KPxFymHSzA8eCXTcAwGd9RSMW6ZnjS3UUpA3P9g9S2tVeSDn QWztfK86wS5wqHT79gQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-31_01,2025-12-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 bulkscore=0 adultscore=0 impostorscore=0 lowpriorityscore=0 spamscore=0 malwarescore=0 phishscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2512310039 Content-Type: text/plain; charset="utf-8" Some UFS platforms only support a limited subset of power levels. Currently, the sysfs interface allows users to set any pm level without validating the minimum supported value. If an unsupported level is selected, suspend may fail. Introduce an pm_lvl_min field in the ufs_hba structure and use it to clamp the pm level requested via sysfs so that only supported levels are accepted. Platforms that require a minimum pm level can set this field during probe. Signed-off-by: Ram Kumar Dwivedi --- drivers/ufs/core/ufs-sysfs.c | 2 +- include/ufs/ufshcd.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/ufs/core/ufs-sysfs.c b/drivers/ufs/core/ufs-sysfs.c index b33f8656edb5..02e5468ad49d 100644 --- a/drivers/ufs/core/ufs-sysfs.c +++ b/drivers/ufs/core/ufs-sysfs.c @@ -141,7 +141,7 @@ static inline ssize_t ufs_sysfs_pm_lvl_store(struct dev= ice *dev, if (kstrtoul(buf, 0, &value)) return -EINVAL; =20 - if (value >=3D UFS_PM_LVL_MAX) + if (value >=3D UFS_PM_LVL_MAX || value < hba->pm_lvl_min) return -EINVAL; =20 if (ufs_pm_lvl_states[value].dev_state =3D=3D UFS_DEEPSLEEP_PWR_MODE && diff --git a/include/ufs/ufshcd.h b/include/ufs/ufshcd.h index 19154228780b..ac8697a7355b 100644 --- a/include/ufs/ufshcd.h +++ b/include/ufs/ufshcd.h @@ -972,6 +972,7 @@ struct ufs_hba { enum ufs_pm_level rpm_lvl; /* Desired UFS power management level during system PM */ enum ufs_pm_level spm_lvl; + enum ufs_pm_level pm_lvl_min; int pm_op_in_progress; =20 /* Auto-Hibernate Idle Timer register value */ --=20 2.34.1 From nobody Sat Feb 7 06:21:08 2026 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 54B1C30FC0B for ; Wed, 31 Dec 2025 04:56:36 +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=1767156998; cv=none; b=g14wl6LXmghCJScTMNyssf6sNURNeicDbicJkYgT34VSjOJK+lSVPiK3D8/3FpyTs4621tSqjx0PFllBR//h/AmhpCS+Ej1fe7YtG3Pdgt1YlAkOIT6h7r+Sliu15V2+VfJsDAWOYkuM0UtXE/HlzmJfcbvO7gDRozwdnkyn5ag= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767156998; c=relaxed/simple; bh=D1O+si2Yt1LHRX9ttPtLSW9kr0/xClDgoku245+GvJk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=dj5uWoqK/M71fzc1pCh0Oi8tl43F2rN+RhQwTIorVl6/gP9PisLqnW+kgOn5PRCN1yd8gWQPehbU43MP6BATxoX2OBjTQLBFJm1Q5VXrtuv/StsUR089GmStd7fjydpkSkuvij1wVKuanuxp16kEI3T6v1H9yFUalABuKi1O/nQ= 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=ncwQE9x+; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=VhThdok2; 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="ncwQE9x+"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="VhThdok2" Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BV1vK153971212 for ; Wed, 31 Dec 2025 04:56:35 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=09GkqJKtIHi QNekPzoYMiNgzGedCPpCvBabWAf+0JyA=; b=ncwQE9x+LRdHyEhfxarpEX/n/FW ZzRNOOOaELV2g+BUKlqc5hhhQ8fjEcB+BiDWZkTMin3HWiSa7wFUHLDCxuMyNAPz RBJofHNUY9nmRxqOxJ/C3z+G49Igjy7w5mFvRul1r1zZBUcwrvIrXxnX2q5IG/3a jzfZd/T45y60yiVveI3SwJlIarlCuqPvce7j4P00Emudgr2neyihBeePbo56Yv8d mvD4St0syjGy//IhjJo7tUqyODDcqbnFSqEQyAWR95cuVd5NIKIOMzJrpGYbIDzO m1S4psHOh0ElDsT7xKJ72KvjT2q2Qk7KiNHfdeVPKsWUOHJPvpbKUlQLwvw== Received: from mail-pj1-f71.google.com (mail-pj1-f71.google.com [209.85.216.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bcdky1wca-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 31 Dec 2025 04:56:35 +0000 (GMT) Received: by mail-pj1-f71.google.com with SMTP id 98e67ed59e1d1-34c2f670a06so13506394a91.3 for ; Tue, 30 Dec 2025 20:56:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767156995; x=1767761795; 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=09GkqJKtIHiQNekPzoYMiNgzGedCPpCvBabWAf+0JyA=; b=VhThdok2jZkshmSDmNPAfmlBJ/2xP3YRAfqcOjksFncWS7N3O3zTPLZ6pevDy3Da53 jvKWDDbqSHBcFAX/rPfXIzzEycFpeN08Thk01YLjILPdfeztN9zy2Oirxiu3AkDTt8JZ ak+2XUYEXmNnWVEyF08McoSCVfZMNrxDHiRFdViKyJQh51P+qGLI/qE40R51FNxN1Cab G7n2/8dMokQjMJjnr/AurEicMSn98OkSUqD0mXYn4d4GLrm6iyo4YYvLQ7/Z9rvgZLay 8Dmin5I1VPjT/nsnihx1MqWSCHosIFSNFo0SNOay+MqSKcnmh7n+pD86bRcOLpTeD2H+ BYfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767156995; x=1767761795; 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=09GkqJKtIHiQNekPzoYMiNgzGedCPpCvBabWAf+0JyA=; b=tUsTCnxFpjleaHfaScwNGuWmpr60pQQ57qY7vwV+qMlnsfvBTXzUPqvwUkedJqtfZW 0PU1EhuUXcUUstR9P1fkWulf4FV/+Ss8jg2RjgzR58r8vLXVLCIfSZAMnEvuUskkXVeA Ddqiv2gRkwVKiwgMywvdo9uM+WdHjmQW8FEGMyd8Uv/8VZvra3OB0GMdf8OEAY8RCvw9 0UXsq6RdW12ZwqLQwjUQpGnG62AFVQJ/+lWB++bsOn9qKSoKdD4Bpx/Wvutc8ixKYlHn e0Ll9eSygIEXIAfsi7cB8yWg91HdhpHtVuMQTwE4E1K4cX/7qN1dsp4dK+Aac94Pflnz i/tQ== X-Forwarded-Encrypted: i=1; AJvYcCXl/oLgnsQEd7+tkq+GqM0CW3ohCKV8BE0dLVEFj0714GPJ1KA75tLm2LER1aQ72H/O/uVv8LCxGokAkN4=@vger.kernel.org X-Gm-Message-State: AOJu0Yz+DWDsvrUHRbDg7GS91ZkBKZujZNb9jVR6UD4zvxGpgXAIYJAP n+O48LGGpfOkksG10e8zlzVYxS48XQ7BSwH+eFN/dVrCKAMuAgp5WUUfhIug+J3p845rUTSBkuI ZzAN3FVRWUJZWuzTFm967Bmsw6LERYI18aLM2qY/aPfGczGau1JPxHi7VoXxmKvmhkIY= X-Gm-Gg: AY/fxX5fVnGW3ljNHmBfnSLXnb2ZdH3m9LnV6YMuhFcaZ56IEIzQjWRAI9sbRDehT9k D8rP4q/p36jMVoGRaJGqjCK71rENvw2jE4MrIRyCMgLb+XjCgcwCXW1o/f35vImwzodX6htffTx K54RFRlkAdH2BolBBokBkQJ+osLvFOict46GF2sHoe5wFaoXzvSDMzUjWyQiNnqJN6FloC2Aw/j G0Y5nX+FWWqzkwn2kLDYP0QURit6+AIy3fEIVrSGwKwtluFbntzwvzMWNfGhX4cclSGeyMFion+ 6mUaFeykENxn/2wpoPJhbD90lgGfC4OstmvONxXKtM3ffSKnKPbHl7FPWDmij8cvvIMHdRs7LX4 Q9GIFI52CHgEQKejZOOSBj4uFC3qjCoa7SB3GdQmq X-Received: by 2002:a17:90b:1f89:b0:340:6f07:fefa with SMTP id 98e67ed59e1d1-34e921af98amr31649621a91.20.1767156994899; Tue, 30 Dec 2025 20:56:34 -0800 (PST) X-Google-Smtp-Source: AGHT+IFPPklYGJKPHXvfbOG+LeQT6y471CntsLmLLEInh4Km4O3Wovsq7fcPsnxKQlHGWy69xSmyHQ== X-Received: by 2002:a17:90b:1f89:b0:340:6f07:fefa with SMTP id 98e67ed59e1d1-34e921af98amr31649597a91.20.1767156994398; Tue, 30 Dec 2025 20:56:34 -0800 (PST) Received: from hu-rdwivedi-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-34e70d4f7d3sm34547697a91.4.2025.12.30.20.56.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Dec 2025 20:56:33 -0800 (PST) From: Ram Kumar Dwivedi To: mani@kernel.org, alim.akhtar@samsung.com, avri.altman@wdc.com, bvanassche@acm.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, James.Bottomley@HansenPartnership.com, martin.petersen@oracle.com, ram.dwivedi@oss.qualcomm.com, anjana.hari@oss.qualcomm.com Cc: linux-arm-msm@vger.kernel.org, linux-scsi@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Shazad Hussain Subject: [PATCH V3 4/4] ufs: ufs-qcom: Add support for firmware-managed resource abstraction Date: Wed, 31 Dec 2025 10:25:53 +0530 Message-Id: <20251231045553.622611-5-ram.dwivedi@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> References: <20251231045553.622611-1-ram.dwivedi@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjMxMDAzOSBTYWx0ZWRfXyt/cBILFFJ3R ccZ9DArJ3TlvxFmIuHL1hsLfBfBP5cWiEQI0wXyTTJRSIidWhmZuQBb7Ab9sS2qYKM9YmRDPW70 7pPWYv9ifivpwK4ZYnttzxOtRyHdYCWw0dnm6NEowKrrlz8T4QkdanLUHd3ttLp2QwHgIT6g59s G4bQbjUIOwxF+EDsFcp0KR9OrVI/RhNTkSM8yBp4MA3i+RuxBIGTo08w5PpHKDKmiu+mg7HTc5t SciB8SuuowvRCVn0VmNJJt8K24PMvq+gW0hr8U9LFsn87msW/zAFUQESZMY20TPtX79cXrUUhWV BOgPGgsJQaQ889wCRIRWNsMhVmmyxQyfW0DY6jE/RYhssP3vvlprAv40Tz18cZBGZve4uF1FBdp 6ttGGuNaNuSA00Dk4xv/ErfVkM12XTx+aIMIfyIILxQUVF2yNZWZidktnSn6krRMJ1mQVLgrhgl UaVNw8H9V+DCC6BFNJg== X-Authority-Analysis: v=2.4 cv=Wskm8Nfv c=1 sm=1 tr=0 ts=6954ad03 cx=c_pps a=UNFcQwm+pnOIJct1K4W+Mw==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=YNeBtJC1tzGph8_Y4V8A:9 a=uKXjsCUrEbL0IQVhDsJ9:22 X-Proofpoint-GUID: KZF_LGER3avB0Nuoc-nrY4I_Qk46tT10 X-Proofpoint-ORIG-GUID: KZF_LGER3avB0Nuoc-nrY4I_Qk46tT10 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-31_01,2025-12-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 spamscore=0 lowpriorityscore=0 priorityscore=1501 impostorscore=0 clxscore=1015 adultscore=0 bulkscore=0 phishscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2512310039 Content-Type: text/plain; charset="utf-8" Add a compatible string for SA8255p platforms where resources such as PHY, clocks, regulators, and resets are managed by firmware through an SCMI server. Use the SCMI power protocol to abstract these resources and invoke power operations via runtime PM APIs (pm_runtime_get/put_sync). Introduce vendor operations (vops) for SA8255p targets to enable SCMI- based resource control. In this model, capabilities like clock scaling and gating are not yet supported; these will be added incrementally. Co-developed-by: Anjana Hari Signed-off-by: Anjana Hari Co-developed-by: Shazad Hussain Signed-off-by: Shazad Hussain Signed-off-by: Ram Kumar Dwivedi --- drivers/ufs/host/ufs-qcom.c | 164 +++++++++++++++++++++++++++++++++++- drivers/ufs/host/ufs-qcom.h | 1 + 2 files changed, 164 insertions(+), 1 deletion(-) diff --git a/drivers/ufs/host/ufs-qcom.c b/drivers/ufs/host/ufs-qcom.c index 8ebee0cc5313..ddca7b344642 100644 --- a/drivers/ufs/host/ufs-qcom.c +++ b/drivers/ufs/host/ufs-qcom.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -619,6 +620,27 @@ static int ufs_qcom_hce_enable_notify(struct ufs_hba *= hba, return err; } =20 +static int ufs_qcom_fw_managed_hce_enable_notify(struct ufs_hba *hba, + enum ufs_notify_change_status status) +{ + struct ufs_qcom_host *host =3D ufshcd_get_variant(hba); + + switch (status) { + case PRE_CHANGE: + ufs_qcom_select_unipro_mode(host); + break; + case POST_CHANGE: + ufs_qcom_enable_hw_clk_gating(hba); + ufs_qcom_ice_enable(host); + break; + default: + dev_err(hba->dev, "Invalid status %d\n", status); + return -EINVAL; + } + + return 0; +} + /** * ufs_qcom_cfg_timers - Configure ufs qcom cfg timers * @@ -789,6 +811,38 @@ static int ufs_qcom_resume(struct ufs_hba *hba, enum u= fs_pm_op pm_op) return ufs_qcom_ice_resume(host); } =20 +static int ufs_qcom_fw_managed_suspend(struct ufs_hba *hba, enum ufs_pm_op= pm_op, + enum ufs_notify_change_status status) +{ + struct ufs_qcom_host *host =3D ufshcd_get_variant(hba); + + if (status =3D=3D PRE_CHANGE) + return 0; + + if (hba->spm_lvl !=3D UFS_PM_LVL_5) { + dev_err(hba->dev, "Unsupported spm level %d\n", hba->spm_lvl); + return -EINVAL; + } + + pm_runtime_put_sync(hba->dev); + + return ufs_qcom_ice_suspend(host); +} + +static int ufs_qcom_fw_managed_resume(struct ufs_hba *hba, enum ufs_pm_op = pm_op) +{ + struct ufs_qcom_host *host =3D ufshcd_get_variant(hba); + int err; + + err =3D pm_runtime_resume_and_get(hba->dev); + if (err) { + dev_err(hba->dev, "PM runtime resume failed: %d\n", err); + return err; + } + + return ufs_qcom_ice_resume(host); +} + static void ufs_qcom_dev_ref_clk_ctrl(struct ufs_qcom_host *host, bool ena= ble) { if (host->dev_ref_clk_ctrl_mmio && @@ -1421,6 +1475,55 @@ static void ufs_qcom_exit(struct ufs_hba *hba) phy_exit(host->generic_phy); } =20 +static int ufs_qcom_fw_managed_init(struct ufs_hba *hba) +{ + struct device *dev =3D hba->dev; + struct ufs_qcom_host *host; + int err; + + host =3D devm_kzalloc(dev, sizeof(*host), GFP_KERNEL); + if (!host) + return -ENOMEM; + + host->hba =3D hba; + ufshcd_set_variant(hba, host); + + ufs_qcom_get_controller_revision(hba, &host->hw_ver.major, + &host->hw_ver.minor, &host->hw_ver.step); + + err =3D ufs_qcom_ice_init(host); + if (err) + goto out_variant_clear; + + ufs_qcom_get_default_testbus_cfg(host); + err =3D ufs_qcom_testbus_config(host); + if (err) + /* Failure is non-fatal */ + dev_warn(dev, "Failed to configure the testbus %d\n", err); + + hba->caps |=3D UFSHCD_CAP_WB_EN; + + ufs_qcom_advertise_quirks(hba); + host->hba->quirks &=3D ~UFSHCD_QUIRK_REINIT_AFTER_MAX_GEAR_SWITCH; + + hba->pm_lvl_min =3D UFS_PM_LVL_5; + hba->spm_lvl =3D hba->rpm_lvl =3D hba->pm_lvl_min; + + ufs_qcom_set_host_params(hba); + ufs_qcom_parse_gear_limits(hba); + + return 0; + +out_variant_clear: + ufshcd_set_variant(hba, NULL); + return err; +} + +static void ufs_qcom_fw_managed_exit(struct ufs_hba *hba) +{ + pm_runtime_put_sync(hba->dev); +} + /** * ufs_qcom_set_clk_40ns_cycles - Configure 40ns clk cycles * @@ -1950,6 +2053,39 @@ static int ufs_qcom_device_reset(struct ufs_hba *hba) return 0; } =20 +/** + * ufs_qcom_fw_managed_device_reset - Reset UFS device under FW-managed de= sign + * @hba: pointer to UFS host bus adapter + * + * In the firmware-managed reset model, cold boot power-on is handled + * automatically by the PM domain framework during SCMI protocol init, + * before ufshcd_device_reset() is reached. For subsequent resets + * (such as suspend/resume or recovery), the UFS driver must explicitly + * invoke PM runtime operations to reset the subsystem. + * + * Return: 0 on success or a negative error code on failure. + */ +static int ufs_qcom_fw_managed_device_reset(struct ufs_hba *hba) +{ + static bool is_boot =3D true; + int err; + + /* Skip reset on cold boot; perform it on subsequent calls */ + if (is_boot) { + is_boot =3D false; + return 0; + } + + pm_runtime_put_sync(hba->dev); + err =3D pm_runtime_resume_and_get(hba->dev); + if (err < 0) { + dev_err(hba->dev, "PM runtime resume failed: %d\n", err); + return err; + } + + return 0; +} + static void ufs_qcom_config_scaling_param(struct ufs_hba *hba, struct devfreq_dev_profile *p, struct devfreq_simple_ondemand_data *d) @@ -2229,6 +2365,20 @@ static const struct ufs_hba_variant_ops ufs_hba_qcom= _vops =3D { .freq_to_gear_speed =3D ufs_qcom_freq_to_gear_speed, }; =20 +static const struct ufs_hba_variant_ops ufs_hba_qcom_sa8255p_vops =3D { + .name =3D "qcom-sa8255p", + .init =3D ufs_qcom_fw_managed_init, + .exit =3D ufs_qcom_fw_managed_exit, + .hce_enable_notify =3D ufs_qcom_fw_managed_hce_enable_notify, + .pwr_change_notify =3D ufs_qcom_pwr_change_notify, + .apply_dev_quirks =3D ufs_qcom_apply_dev_quirks, + .fixup_dev_quirks =3D ufs_qcom_fixup_dev_quirks, + .suspend =3D ufs_qcom_fw_managed_suspend, + .resume =3D ufs_qcom_fw_managed_resume, + .dbg_register_dump =3D ufs_qcom_dump_dbg_regs, + .device_reset =3D ufs_qcom_fw_managed_device_reset, +}; + /** * ufs_qcom_probe - probe routine of the driver * @pdev: pointer to Platform device handle @@ -2239,9 +2389,16 @@ static int ufs_qcom_probe(struct platform_device *pd= ev) { int err; struct device *dev =3D &pdev->dev; + const struct ufs_hba_variant_ops *vops; + const struct ufs_qcom_drvdata *drvdata =3D device_get_match_data(dev); + + if (drvdata && drvdata->vops) + vops =3D drvdata->vops; + else + vops =3D &ufs_hba_qcom_vops; =20 /* Perform generic probe */ - err =3D ufshcd_pltfrm_init(pdev, &ufs_hba_qcom_vops); + err =3D ufshcd_pltfrm_init(pdev, vops); if (err) return dev_err_probe(dev, err, "ufshcd_pltfrm_init() failed\n"); =20 @@ -2269,10 +2426,15 @@ static const struct ufs_qcom_drvdata ufs_qcom_sm855= 0_drvdata =3D { .no_phy_retention =3D true, }; =20 +static const struct ufs_qcom_drvdata ufs_qcom_sa8255p_drvdata =3D { + .vops =3D &ufs_hba_qcom_sa8255p_vops +}; + static const struct of_device_id ufs_qcom_of_match[] __maybe_unused =3D { { .compatible =3D "qcom,ufshc" }, { .compatible =3D "qcom,sm8550-ufshc", .data =3D &ufs_qcom_sm8550_drvdata= }, { .compatible =3D "qcom,sm8650-ufshc", .data =3D &ufs_qcom_sm8550_drvdata= }, + { .compatible =3D "qcom,sa8255p-ufshc", .data =3D &ufs_qcom_sa8255p_drvda= ta }, {}, }; MODULE_DEVICE_TABLE(of, ufs_qcom_of_match); diff --git a/drivers/ufs/host/ufs-qcom.h b/drivers/ufs/host/ufs-qcom.h index 380d02333d38..1111ab34da01 100644 --- a/drivers/ufs/host/ufs-qcom.h +++ b/drivers/ufs/host/ufs-qcom.h @@ -313,6 +313,7 @@ struct ufs_qcom_host { struct ufs_qcom_drvdata { enum ufshcd_quirks quirks; bool no_phy_retention; + const struct ufs_hba_variant_ops *vops; }; =20 static inline u32 --=20 2.34.1