From nobody Tue Dec 16 12:21:16 2025 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 0129F258CD9 for ; Wed, 10 Dec 2025 15:50:52 +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=1765381854; cv=none; b=Cr8wQw+34PooVBG4HN+l/ktYVIbYubeKnbboI698vVT4JkWaQy/cUJ5wx2lkUilCyA1BVFmJoMPCoAbAlo769bUumEitx49dED9wmvyapJGr3PiiRK87U599NOdPfyqDjE3Bi9d/1DcpUOQ1nbG238cs4JW5nDxSmq1Qy57BUGQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765381854; c=relaxed/simple; bh=o7drDZrAUJDSBez9RsLhsFME8yCRZ78zI6P8jv4utCM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=URAwQYIMwYUod3W1AYxLrTprIIJlfbwIXzKoww6PhwY5Zw0YcA3QwEuHorclee4200x2E9vpkUIofUEI1dIPhkd7eA1GekWNKTvbb6qIEWyFSrRTnvwMawi3GLvZ4GPlLOjYLyEw2JSFBMtcS/I69XOisHkuPkgMn5ieqSvDaVI= 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=PHJsWlfZ; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=IQQvuTIp; 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="PHJsWlfZ"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="IQQvuTIp" 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 5BAB62oq2752458 for ; Wed, 10 Dec 2025 15:50:52 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=Cpyzssk0iqR 6XnHl+tGOj35nKrptmEhANEPfVeOn+jg=; b=PHJsWlfZLB3w+UOQPHTBJyleP0/ Hh6GwQT0/Emntv7yn3OrLblGL5Y9iRez4eAKmRH0Dcn87w7fAg6/QfGQ/4EWl5ue zEm9OUJjjq4BVkmzltMhWPlEdAtr+G2niQ2Oqd/zsqa4kVVG/7/LCIGDjPsWV3+T +/T/tVlTsbc29GjLM/YDkGaV9WaMayke2Y6JHC3snLG00pifnYYkIF+pK7EmygJ/ f8iUrZHPuNp5lP1NQ4NP7QyLF0O/bK7nxBSUDLKX9yKYo37KVn9gad/4bj2xI9fT bHn6li00ubMyfXmEaD+CFprSskIlTJ0YGUymGTVmJbZceGcrAykD06srOzw== Received: from mail-pl1-f198.google.com (mail-pl1-f198.google.com [209.85.214.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ay7pm8s7h-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 10 Dec 2025 15:50:51 +0000 (GMT) Received: by mail-pl1-f198.google.com with SMTP id d9443c01a7336-29848363458so146284465ad.2 for ; Wed, 10 Dec 2025 07:50:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1765381851; x=1765986651; 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=Cpyzssk0iqR6XnHl+tGOj35nKrptmEhANEPfVeOn+jg=; b=IQQvuTIpnLAYwZE9KAXP4X5s8B0COAxmI08UIc5oyW5ThRIXDXmmIf9cwQ9etDmZRf bY5A60AMy1WjTJ6dKXSslktoviKLA3xFnEf3bhGtSoK8Fj/y6j2jrY+QTSp0fiGu6KML sBgfORct41cYUG6ArZ5inxUo245/ndzFs1O1d8YdFXQWoc7jcXxXxzVGQkpZohQ6kuSz Y4SgeFJ9Ne3HuwwSsZ+pHToalOavu751awsGPPq/PAQwfKTez38vxUSB3w+DRUxPlh3r QoWZJF1EPDSKDTT92XKNvq8bFRNPdFD6UyxbcZXPQjDqSBXBi8MGKbRAF4bUjJoQ8DMj jN8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765381851; x=1765986651; 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=Cpyzssk0iqR6XnHl+tGOj35nKrptmEhANEPfVeOn+jg=; b=aIe0LwWN+oSnszRw2+gjFF/nQvrY/sEt7T7rgSMqbISzDCzyLs9e4x0RWnCSB9P7wA HtH7DJy2SJGimvaXbasI3nJBN7Rfn/GNZDgRCGvSkq8K5r5u2BbywL4Km4nagmWNYswM BDdG2IFaJWcmW44igiriC2/QSgtyTx+PiPvya93EeuMWnGIOclr2LjVT1U7BSX7KmTZX 3r910xhPMBdY9tnNu9QA4Kki3sqnLqc66RLWrO2MFJlcjAyMyRFuOlWNZfKF1NlKr/Iv kKzUZE3WY7jx8F8HbMzXiYw6vx6EFdVY5dRTHl+ic0oYrwevz4txpgGxuH9XtoH2UFc4 t1Kg== X-Forwarded-Encrypted: i=1; AJvYcCUCPXM9q0p/yhNeSnE1dujKQ+JXSGHu5MzQgkjvnZzRzhq1E9aJSNBq0a86Hh319sEorpjrf/5h0LRhj4g=@vger.kernel.org X-Gm-Message-State: AOJu0YxndluQF4F/fxp/Z+VC3BWiuXVKoOSdijuHQpc/FfTkQTo8gmga nYwbOEnRmVdBJu2MKVxJvr1eVS4PsVNDZBJqA9pIVR30cO7Ur2WJkd4Rp/Pp/MZN3xBjq701N1c rB6Z0/Fb5vFA1KW16m6tij96noT2zvkXM31sdX1YvcReZJ2Ya4FFwriOXWgHi7JP1A80= X-Gm-Gg: AY/fxX526iAvYBc3qiTmhVvqHLYzeCHDPP4+IiM6kMpqcyc3P7rw0OiRVr7BeQupOGs nYUkAUxK8Uhwd3zN/RqKuL69PFMPqIezW8YIU6oo8/0TTXatbwxCouhtAJpyZ5XKKK5MB5a/BBI fLmMVUOABOW7Tih/kudb4daxk0fQHEtXrHRqWj+NTWF8XApshYwCvNbiLWev60tqu930hmHuihK LmV2fJ2FFbQPd6q07FaVoHlMg/FQ77rxkYhxhWiikpdA5G3cMl1bBndgYIjiOXhoqJ/F2O/P9Dq 6diXPW0VMMSIpryKFfMX1wXzPAkAStmNcdn0pvYBwSigOu/ZQf0WRWFouVVOaWqbaJa2Uy8ZfoH fEST+BrGvpAadUb/pbGL/d6QXnndHtpzz8pWIG9fo X-Received: by 2002:a17:903:b0b:b0:297:e3f5:4a20 with SMTP id d9443c01a7336-29ec231f255mr32467345ad.26.1765381850757; Wed, 10 Dec 2025 07:50:50 -0800 (PST) X-Google-Smtp-Source: AGHT+IFLOpg4x7MmvcwigCDDq2GU/0z5pbMiL6qg75gGKsPElpzD1ynSU8r0WI24m3l3tG/tn4igvw== X-Received: by 2002:a17:903:b0b:b0:297:e3f5:4a20 with SMTP id d9443c01a7336-29ec231f255mr32467025ad.26.1765381850291; Wed, 10 Dec 2025 07:50:50 -0800 (PST) Received: from hu-rdwivedi-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29ed93e470fsm7780175ad.41.2025.12.10.07.50.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Dec 2025 07:50:49 -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 V2 1/3] MAINTAINERS: broaden UFS Qualcomm binding file pattern Date: Wed, 10 Dec 2025 21:20:31 +0530 Message-Id: <20251210155033.229051-2-ram.dwivedi@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251210155033.229051-1-ram.dwivedi@oss.qualcomm.com> References: <20251210155033.229051-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=A7Jh/qWG c=1 sm=1 tr=0 ts=693996db cx=c_pps a=MTSHoo12Qbhz2p7MsH1ifg==: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=GvdueXVYPmCkWapjIL-Q:22 X-Proofpoint-GUID: JeOd0ckM3iyEqKhJ7SZTVkP6O54pymb3 X-Proofpoint-ORIG-GUID: JeOd0ckM3iyEqKhJ7SZTVkP6O54pymb3 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEwMDEyOSBTYWx0ZWRfXxBNQtdyo5IgL BJPoUd7E2fX3JhimTxZF61wthV+geC5MyTL8eyShq+7z8kHVYGR7uTnw0l7uNLf0jFxzB4W3Xk3 67Jps/+gzWdehShQeInlvQETR/0Fh2L5ikmkvFzhhAFhBa90kzHr6+t5LJ/kPyoE3oeWJcm/ZMo 4B3xc541Rd3Y6R30V+Q3C56LZp5tpTn1hkW4ujpdELCzymvQndT4fdYAJWMcxcJEM/pT7cw5d6r bH8U3Le4HG2MYIN7QTnL0ACe5cSkyzuMX3qPS2Bv7LP6OH7W+75o30/6MnhG6nbSH9YaWM0DjrQ gi5m8y9VCJiJizV9rb3ntK2g9/y10ha9ICAOxc2+5u16+OTrasyQSkvTQlN58Zr169P65HG94QI ZZq/kJca28DOmr9NBcX6bN9xRd7iJQ== 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-10_01,2025-12-09_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 malwarescore=0 priorityscore=1501 adultscore=0 phishscore=0 suspectscore=0 clxscore=1015 bulkscore=0 impostorscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512100129 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 c5a7cda26c60..f4d01ad6462c 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -26812,7 +26812,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 Tue Dec 16 12:21:16 2025 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 70BCF25392C for ; Wed, 10 Dec 2025 15:50:58 +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=1765381862; cv=none; b=GQRCH4+Mxi6Ii+S9dyedr9bsW00XuGLb8/+XjfoO/Nax8zpxtMJekH2nS66yOYnvXpkh05Uc6LsfYewnLQ1W40hyIRLvnJvS9XaCC44js7k35BI2iRCEbezqbXgWVYBuG0S07IfNWMr7TA30KFzDrcrHenwT/fwIEkQm5gw0B5g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765381862; c=relaxed/simple; bh=qjGkXyff0JOzXHAVjFAg4DNaOzEfBoQYUyu5QmS1S7g=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=XH3g8u7O0YnD+hWn3qZ13/OmUduSPhdFQ+gm5/DRvlQjotHHx3N+EHuHIECaqkwfvw92Oqe3COSDiPhOSCHVZQ17foNruNcIQmVAva+DnLETxIcrL0ZdbebksqVeTEbhlz3GPoOYC+PwauUiJC3YBoS6AUAdNx1jLB+9tvQNhoQ= 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=YJcxgI8c; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=NvwvFq/s; 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="YJcxgI8c"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="NvwvFq/s" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BA8wbE62308405 for ; Wed, 10 Dec 2025 15:50:56 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= +rUCr121SZ+QerPYflBRYtTCStaRS4LPAaBzx1rPUmQ=; b=YJcxgI8c/0JePLcl Gw2od2t9DwnaVf4yvQGjLt2Jexl5QtiVQqAZREIQjZ7fMDcjkcMTuNkUXLeWivbz 02sxMeDB63aiLUX9W2v91LVBTkQQVdAhxQ1FEK5pMAuW+m07TTPjXIy1cG8395+A 4y6HSi84gitgPorsuzRiRGtGHr6q+0vtY3sKt7TWu/WgYOVc3BZpCmkA08LtyjN5 wr+s4dd6HvgZPsvLBIBMLavU2k/90SUrw1qcfTIPAyy/c1O4Lz8sjWpeVBpAmhwi aZ+zxdtWgoBGKatyAToQ6GyhNLbE6cZWaDk0IDNrIewQ6E7AGDWwS0BNrQyshKj9 u0HDOQ== Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ay5tx178c-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 10 Dec 2025 15:50:56 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-297e1cf9aedso141075095ad.2 for ; Wed, 10 Dec 2025 07:50:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1765381855; x=1765986655; 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=+rUCr121SZ+QerPYflBRYtTCStaRS4LPAaBzx1rPUmQ=; b=NvwvFq/scNTyASHWb1QN+iqrtTs8s6p3dUtqUi9bV5eev8kna+n+FJ6p+n5kiW6Mc+ Cu0c/VlmmywBpSfcMu4no1TfJZxjMDSPbvvh2Fv3b1PXnmCQYo5fetsQS1rSc8Mu0yP9 Eq2iu85GLFopwnPURRZPWdVLn9asVTnm7ALy392I37tL3vAtUkkHOojgPFac8iCd7CZ4 Tp+GrRMmNzgqeFTYtylC1u2VzvveNiwYCGIjWnJvsrt4vpUEUS0D6ucoDhWDY7haHzrs QN1i1az8UvwcvW245EILGNf/U86zn9VvmGzMOvEamTN7zBJ3nQAUr4ZGir1qCZAOMW4i dIuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765381855; x=1765986655; 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=+rUCr121SZ+QerPYflBRYtTCStaRS4LPAaBzx1rPUmQ=; b=TMm/lwVOJG0GKBfUDd2yC0W/Guvighb+US3tqurQLo0bT6Lc6Rd3NY9fVRZlFMYfjD nzplfLKiE+7YqgNoeLfnPMDxN2IkaybE/cM71nLVtYa0Vfcvwqt6hFBOOTInaEMsM5XP uo7/LmS5U+FXSvsFaHcEUX0q4p2adkpSWMt75cwPN3QScU7GZF7kYJj59c6zI7jGZUde 1oO8ge2kUTfgG7qeclWUUUI6lBdhfXXEXuwnpCoJ/SIKEIgY7QrQAkrtoZl2l4eaiB1t Hw/cpka4tWrrVOdoCQKROiykgAqIK7Da1Hw9UxEqYwPpxeEBEY5BdMm1rMMSHSue1IjE FKEA== X-Forwarded-Encrypted: i=1; AJvYcCWKzwJTlGvROlPllI9O+ixomQm6ptIskojeLU8R49zCwcBAAU+b79P9PDW7uRHRCdZ4S/AsQt2y6It361o=@vger.kernel.org X-Gm-Message-State: AOJu0Yzi+/nEESOveiadHqYW7s2MnyP9ZHZiz4EWQZanwDRRMmSZLUSv qOfAwwPpgkffDnSi8wDdd2MNHlflXXmEldsH8fd4GZqCemGFcfmAnH8hqOWutA2SdOSP9yX5w5P V6jMT+QaFecXiOexs7f//uX1hz19TicJ012YC/APFnPDAjekqvpguCN0eAVFdJi9aT54= X-Gm-Gg: AY/fxX6XkBjnjQU8PtfR4OM0AAoOvfi5T5ZLblCnjX5IK5szIbwhm3K42dEV6QaNum9 zEgHOsla67aYM6vDlS2CEhTwwlDSF9u4CmuWJ0khOYXQUeHGxhiCvEaJLwyFR7kaDM3mHw9vjjS 4HdFcsr4AaMPQJF65uROXPHZqYE/lrP/gMCfNpALtRL8XKUfO2fwYnYXUZN9d9LGQwxya9N5Vu3 ESTOiOt0E/V5Trnmq7ZJZdhVXr3GFQaTsnOYpVHWjB2mExq19AMAUjT68ZkWn6fBOnYsHD+b7mW IrEgUG39BdOALJd8dQ2i9nhHFAu1zlSYCIyZUJq4oEr0cPBvyTmxMpOEyhrmu3nbCHUR+Ctvh4s MmKfJq/QyHV9q9mGZ+Ov0CiW2U03yCuM58WyEU8ie X-Received: by 2002:a17:903:178e:b0:295:596f:84ef with SMTP id d9443c01a7336-29ec2d3516cmr30281145ad.31.1765381855066; Wed, 10 Dec 2025 07:50:55 -0800 (PST) X-Google-Smtp-Source: AGHT+IFBZg3CDmb5QXrh/vHnqknn5K8usGXHeluV8lbexssAYjUj5YTX6hrPcmb2zIpMYU2GXSoGfg== X-Received: by 2002:a17:903:178e:b0:295:596f:84ef with SMTP id d9443c01a7336-29ec2d3516cmr30280815ad.31.1765381854620; Wed, 10 Dec 2025 07:50:54 -0800 (PST) Received: from hu-rdwivedi-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29ed93e470fsm7780175ad.41.2025.12.10.07.50.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Dec 2025 07:50:54 -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 V2 2/3] dt-bindings: ufs: Document bindings for SA8255P UFS Host Controller Date: Wed, 10 Dec 2025 21:20:32 +0530 Message-Id: <20251210155033.229051-3-ram.dwivedi@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251210155033.229051-1-ram.dwivedi@oss.qualcomm.com> References: <20251210155033.229051-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-Proofpoint-ORIG-GUID: PkSNE5mx-UM4NoRg0dAtCsFaaL0KVJUB X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjEwMDEyOSBTYWx0ZWRfX2aghLD3g6xeA 8wbuKe6i6VYnwkmcJXwhjNj3EkmKDvlLf+GjgBdnvvWc4g7RqqoGsrKKRTZ2IR5BDiuVLlLfQHS MKGPYzsvAkIzzPclHCTKj7AbTkWy/gwHnYv9l6mjhWXqu2dtRxhScgZy6e0Zf82gvHNgQc6y5zR HDFfhl6qJi8zZK8QiYv6ZBM90XRofEZ7+Lvy1t2GbnP+Bi1Exw/aM+i4XcYaUA9TtdMb4g/s2wW /s4zZY2BCGdgzSgNbOLHHdDHjuokoFIkBxqj56CUGFDG3cd4vIYpZU3QgaCRqhHpH/pyADYWsuc Htoi6evOiCvml7t5tM78cXv7X8Jo+M5/rYksEkwjKWfOZVw+kK97ak2dBndUY31iDAJu3gHrGDi yHnBUPvTNGMJnCg9yTryMbONdFWRcw== X-Authority-Analysis: v=2.4 cv=dq7Wylg4 c=1 sm=1 tr=0 ts=693996e0 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==: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=1OuFwYUASf3TG4hYMiVC:22 a=sptkURWiP4Gy88Gu7hUp:22 X-Proofpoint-GUID: PkSNE5mx-UM4NoRg0dAtCsFaaL0KVJUB 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-10_01,2025-12-09_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 clxscore=1015 suspectscore=0 adultscore=0 malwarescore=0 spamscore=0 impostorscore=0 priorityscore=1501 lowpriorityscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512100129 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..ec006f7de752 --- /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 <2>; + #size-cells =3D <2>; + + ufshc@1d84000 { + compatible =3D "qcom,sa8255p-ufshc"; + reg =3D <0x0 0x01d84000 0x0 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 Tue Dec 16 12:21:16 2025 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 2CB3428467C for ; Wed, 10 Dec 2025 15:51:03 +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=1765381870; cv=none; b=hOCiF27oh8ShwNQg1eLrHVTiv2pZPJABTTwaOd/QWJx/TUSXt/prIXIO9/ytDZIU9zFBRJkENvHL1CjHZpFKV7KPVvtCyn5RS52DRyGu5fiD4r8W5X95Cj0RzSo1BLPJmBiXjdYQtVvLQXTNqzehgAX8+1LhtGvfAFy3zBIxi5k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765381870; c=relaxed/simple; bh=Jd3Nhj9ItX2p1r8lI3wTnRgId5QrM+MGNq87pPsF/fE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=J/9Hw1AZGDGKUx9QTwRyR9c70i+EI05PtNJgUbCBlMjCUg2S6npcjOzWyPVC4O/FndCvfVIhnk35fbybVzx7WzM58dyeaaxM2fEdzQxWGreUklUkxMt6DJtFjaJINRv7aa45/P/VhwG9GTP/cJlrEAKopkA6Kvu+fRe1Svll5vM= 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=e9TAY6cG; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=bCHIZ1Ud; 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="e9TAY6cG"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="bCHIZ1Ud" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BA8e7CL1817926 for ; Wed, 10 Dec 2025 15:51:01 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=FAIqHMe9ZdA PZu6xd0/b5SEeFCI509+pRF1JbNu+emQ=; b=e9TAY6cG44MT6cnNid3/Koe5gty PrxjlWw+H0uminFi3DGRaN+yc0zoiaWu2Uv0MT4HqCQJoWETF06lZKpAm2JJZrzK Qn+w8X8NdsYn+pjuEbFNMA4BQm7V5R4ubG3gAabTR0XsfvDBj8XVMR4cOaE1u1HL imMttSkFtKRWCA84ablex7mXyORC7NEnUvHXpCY+klwXc7YpriwULgrsAuPuUEzC c8jnlPMO4bgIvTqvcjh5iLwjIuTus8Yx3h889kiSPSV66OvG2sknAQNxq18/fqwT eWMAwah3DBk0QG2ZTTnvtzvqMyZKneao8IjdZF8w9HsqOqed2mfcyjWQgUQ== Received: from mail-pl1-f200.google.com (mail-pl1-f200.google.com [209.85.214.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ay2e0hty4-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 10 Dec 2025 15:51:01 +0000 (GMT) Received: by mail-pl1-f200.google.com with SMTP id d9443c01a7336-29e6b269686so94875ad.1 for ; Wed, 10 Dec 2025 07:51:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1765381860; x=1765986660; 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=FAIqHMe9ZdAPZu6xd0/b5SEeFCI509+pRF1JbNu+emQ=; b=bCHIZ1UdyfzY9Ky5JbjN2WloHx326HfJr6hke6M0Swt3SXv7w8yzMkeBcul5/WwCGx VeoIl6A1OvOB18Efj+nDFwYGfvYoaR149z+ykXDo1vvVJLyqmfsmWePGb/ONego7Yqls fXk7Y03S0GdyJeVyLyZ+gCPB9yEkKjIMnpbZt8ik1f1BM0B6ZCP1yvlEm1ZI96sp/3sj /OBolCp3BsZc3K4kwVH9uc0d7teYEkC+yf85oO6DYI51a7H/PlPhadiHaFzb/NSfxgY/ /BT3RobteoDw2Jn6RUdiy34ofuN6mMulqoTWpZiAn2+PQuA6lm1XmRplaQze6e21gnUK tk2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765381860; x=1765986660; 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=FAIqHMe9ZdAPZu6xd0/b5SEeFCI509+pRF1JbNu+emQ=; b=NA8Blng+3KZKXX7QKCw/iuxxS/2PCegCYOlmAMICL8vDanwq02okP/YvxniGZzf69/ jmoInOgaUW0mCwzqfBuryGuR3Y/TmqIrcOGEco7M++IdDA53KH2YOSzzxN79x7z23Kgd IC5TO6a2SWZ6TJCgfVp7o6uLB/a5JQ7HaKKqvo7VWOs0O3pOJGAMTamg998SJiwsdrCk lbrWj8RjucTgwsrPdTjDlK4IzOdCUiHMjOwGaqlnv1pJSw3i4LdqShIApc5fAMiU5gnn 2mncjg9gE7jt3ZsbSMMk29lB/0twoGnmUYZ9fhu0FbWE7rhT6irr8s+zGDeiT87gqLGN 4Dbw== X-Forwarded-Encrypted: i=1; AJvYcCVudQtK+NChdcEPwVJCnAb9QyoHYol9iRQWD/ovtaeg+3GjPXjEik7jHN2WZ2nq9y21SD93BNSqpW+2BoM=@vger.kernel.org X-Gm-Message-State: AOJu0YzOdtBEYceGjXttpsWsygcGqpIPkuUqCi/UONSq1CO0YwRdOV7b UPxUjoqA1vAx/XiI0KBxCPWGGPEXQH7JWvAndrb9t3ABCuPzM1PTL5Dl81lJRuotRRq1VZVThzl 7WuQ7llj1EpFw4/gYscuA5hou+BtqjSJG2ATklYLCEcTFkurxNQOWi+fqZqRR8B6RBFs= X-Gm-Gg: AY/fxX6dsDQmF6OjpKJy8TmWKLFRtF63hMoK07xvx04j1aVbhipot1yED3/xUq/pXUO aI2iBd7wzV7l8e/2zYLmF0JY5tOfHmWO0h5LROVdLv0xMtnaCIFdDDcUTYCB2ijJEDERleeDGot EUMx+FVD/4QGxc5Zw/Cm1fg/mBpRBulv6kZ+cijeIKRrkT9j48oHfqURHz1QaYWf3FPxW2uNHD6 SBc6HDWv7sBOww/bOTe4/5Mpes8hwvKLwbAn14yCSFtZFRy4NP9po74EvF1n1shd8IGy+Sg2RJ4 aExFQNSV6Ae8ixpEPB7xjndUJWZLQCmck0soK8IU+Szjn+l7r6roZwLLPklmJUhjyPxxwef7/md pQODIrP1sCtRNnAhXpIrlZOrI3fRUcQDnS7m7U4D3 X-Received: by 2002:a17:903:32c3:b0:298:2af7:8d26 with SMTP id d9443c01a7336-29ec27c7f48mr37388585ad.54.1765381860038; Wed, 10 Dec 2025 07:51:00 -0800 (PST) X-Google-Smtp-Source: AGHT+IGwUd05HH+O7KP1AqyqpShLwCPzv6YMVs2PhGCDiJZv5JcHvZgZE3AoRJwG768xGmCbxAnPQw== X-Received: by 2002:a17:903:32c3:b0:298:2af7:8d26 with SMTP id d9443c01a7336-29ec27c7f48mr37388165ad.54.1765381859337; Wed, 10 Dec 2025 07:50:59 -0800 (PST) Received: from hu-rdwivedi-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29ed93e470fsm7780175ad.41.2025.12.10.07.50.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Dec 2025 07:50:58 -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 V2 3/3] ufs: ufs-qcom: Add support for firmware-managed resource abstraction Date: Wed, 10 Dec 2025 21:20:33 +0530 Message-Id: <20251210155033.229051-4-ram.dwivedi@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251210155033.229051-1-ram.dwivedi@oss.qualcomm.com> References: <20251210155033.229051-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: AW1haW4tMjUxMjEwMDEyOSBTYWx0ZWRfX9UdPHdWB8F76 p5yR9aR9nE2sWYJas5XI4UN28z60wB4JZyFB8J6qPiNiuTr34WoWlACdRAcmJgDhgheHgn5Bc1C a3d+3df4EzpqApiy38VlPGuvay3pkq0eOAojUzw8/Rvwk6wrPp810GMjBXgt0yDA0wIl2ZDvS+H Ue8gPQsJzMdOa9pXYRrGnz6VNGQ0sDbRzak1dvnHR8RKNGXQt4Mb6CUXkVWoeXmrSf4+g58V8GA mJbVtRGyq3vueseFN8idod7sw9b5qmJBP0D5stG1iWB7WCCr0Ro5rHltJJ/Rz+d+Kwz93FZpwpe VTFOt/FLBwmHgSg4P5yFy/BGcLVqSCNaVs3JUpV65j+0pBLHrtq9wlt2WVKEQqOasybCfH4gt9m iNNQQuXeFBDJW8Get5dFH+75IwozGA== X-Proofpoint-ORIG-GUID: UADlZjYUc6GwokRDMRWYQMjV-LjwuSRk X-Authority-Analysis: v=2.4 cv=G5oR0tk5 c=1 sm=1 tr=0 ts=693996e5 cx=c_pps a=IZJwPbhc+fLeJZngyXXI0A==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=TgZdhWxOq2hPTxl1y-EA:9 a=uG9DUKGECoFWVXl0Dc02:22 X-Proofpoint-GUID: UADlZjYUc6GwokRDMRWYQMjV-LjwuSRk 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-10_01,2025-12-09_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 clxscore=1015 lowpriorityscore=0 malwarescore=0 impostorscore=0 bulkscore=0 suspectscore=0 priorityscore=1501 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512100129 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 | 161 +++++++++++++++++++++++++++++++++++- drivers/ufs/host/ufs-qcom.h | 1 + 2 files changed, 161 insertions(+), 1 deletion(-) diff --git a/drivers/ufs/host/ufs-qcom.c b/drivers/ufs/host/ufs-qcom.c index 8d119b3223cb..13ccf1fb2ebf 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,52 @@ 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; + + 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 * @@ -1952,6 +2052,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) @@ -2231,6 +2364,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 @@ -2241,9 +2388,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 @@ -2271,10 +2425,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