From nobody Tue Jun 9 01:00:49 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 2487C3AFCFE for ; Mon, 8 Jun 2026 21:48:36 +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=1780955317; cv=none; b=j+9LlskAnK1VTUKKE3ON1cz1O7xIl9I/u0ivHtuKrQVe0CqSOCFgtL33oXyfVNEZ1CS/nC8uNG7EsvI8P1XA80McxLDIkkagyQ9RHVGQcFIvN9Mu0c43qIxzgoJQuAxQFQUt8v+dRIRhrAjQPqTOfYLdXHm448i/yVWgcLpmsIM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780955317; c=relaxed/simple; bh=3ucCFxqVSmxwv3tYV7K9HtEXpSVQKpaawldrvOaRdUE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RFgoH1KjjPlqzAZ4H0xB5VS+RGBlyLiO3P1c16dzcXqiVsRNaH1SBTZmushGcnf66XsVoRuRONfJgUsml2mdnkWd5Mb3alHBSXVvN81tVbFQEOmrtf1IzjKbAMkCjJjNl+AiY3dbMtwPILU6PVbc+j1Au3Elx97Q8qCxOIB89dc= 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=PX4ZSUF9; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=P/f31yIk; 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="PX4ZSUF9"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="P/f31yIk" 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 658Ix4L6327872 for ; Mon, 8 Jun 2026 21:48:35 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= N77a8rPBNXCEfDhtEGoBDQai/waqHZnCNGqwv0a6lQ8=; b=PX4ZSUF9TJgWZRQc M+S6adXkoER8YRCAXCwrjbxv3FmWlqGIE3sQ2DA9dOw2eWh7wPWBZo/0MdvLfqIb ZdjyoMwkarou91GIS3OvqEh4U6kv1NAoUPOLMmEm11ssIaWmO+5UQuwewog9CtGR immSFtJ2cQnAN4w3ggz1NdV7MlN47rclnTfsVTDr75rL3KwVNKaY5mdywifOp0vV VimKVopp2hxwbQddySQb/VpoEuF1RQaaN54M+yw9NPA4CvWUQcoyZHFgS2QYuCxb XdNXI9DFZdHYsIIzaVnVSxygT8qaGtDIfR9oYhIemZs0+fB3C/pCZdSJG6JG6rrq /OhZCA== Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4enun8k3h7-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 08 Jun 2026 21:48:35 +0000 (GMT) Received: by mail-pf1-f197.google.com with SMTP id d2e1a72fcca58-8423770d72dso6141642b3a.3 for ; Mon, 08 Jun 2026 14:48:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780955314; x=1781560114; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=N77a8rPBNXCEfDhtEGoBDQai/waqHZnCNGqwv0a6lQ8=; b=P/f31yIk4fZFrXxAkJgYxvA75uA3aVad0CSdCx4ZJVk3Ob5hAwnT8Uma4E+NCKRh+A 5ZzD33K7GbzZZ57vzqP/lGH62/Jq9Wvgm/VnIUDktZSTfcmh5N0Z/x39R1ikDCfH2v3/ 4QGm0FzML6Oir2dHs973orXkYZsNaDezDUpYbVxHtVyD/0ShRMipbzUDa/aah3KB2yY+ 4JNomqKgZpcPQSfp+WkrNoFpEbQzZ2HaPuVbcrUeyDifGolamnwi7VIUrsB0PKv0Own9 UD08y5rEGFMK730s5DtmUFIL86Z4F4J8+wUNWXK4jZs4/wh2ec7VJZHTSNI7U12fC+8V hSyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780955314; x=1781560114; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=N77a8rPBNXCEfDhtEGoBDQai/waqHZnCNGqwv0a6lQ8=; b=QDvyACkriCqZbLyMj2th2siZXs+PTHDSE9uas8IoQIqKitoNsNeKtV4aabRU+akbWh Rz7L+EaDdbzboadg0wQXCIDutcniScaDmHs9W7Qlko8ysN32hmDnMraQ2bsDUjaP/i/9 TBjGZRZPzZWz8nd3QpZ7qO4Yu2xOAw9kDdb8CjrgVcCyK0AppY66Qvvf7K2JOo/5RceY zyiYEjcBWidLkJllovkign5j+kIGiF7FobcFrVdoyGd/Elo/UtdoX8L9uVfZK2rrpDHV M6ZISB2uo5o9LdCyGISypogEhacbHbFOchzXcfKUlIArJdL4qY7VF65qJjeDPJAN6Jgo ZkTg== X-Forwarded-Encrypted: i=1; AFNElJ8FH3e5Migb02NWJ3sJa1FTh2wPVOElUMaKQ7Qk+VK+MAZ/9xy2kPPwHvoZQjV9yt9/yhguur3VK4aiLq4=@vger.kernel.org X-Gm-Message-State: AOJu0YzrpWyz7yfA+FSgQdWarvk++2lJbyTOFznsOF0TqxMWUffJXjBg 7vl+rzKRbjRH8Ezpl52ex+Eiqj0NVdusnkbTD35YTstVusWqg1v12gzdv3exDMydwUs/dxDaIb8 UlG9gLboMwmhxlYRDPw4RfHsgbhFkRBPipAu6cxHpqLv3DSQoxLuFItT+aZVGmZ+MqqYMTJFSqf A= X-Gm-Gg: Acq92OG1ww4BTGYsSwdIo4txw4eQuXxktat/7jjGnf+dZAK7YrZA5G29M8UGJBZN/y5 ZkjjqPQJTzmuS+KCELsRTDGwoY2QEvkOkJUBsN+XvaNhYCRYk/FSjqAYF+2iJC4F4SWUFRxcNwj FcMqw/Jd7tdnW0lv6fnfLzcBS1Smw55unMptcGDZz9e5boYrbgNU5EbglDWAEQCOkULj9f6+UA7 JMfaPHNrFfNq5styAodZb5DYI112rM4aTSgCJojdI8RIo7hRLcJO2pr67q5RJcsNAAunmxRE3zL 1+xapqKEQIuWJAewBGMg2wKiQmJQxVd0JHpBhGAYupbt3HdDrXjVlOJNt4srLjLNo9wsBSHVXuX USqDsok4icUeYp5sLGrbimsoQpvvKaYMMSF6Rti9uZg2iDoBvDVwbTf745+Z8RIS//UsA2A== X-Received: by 2002:a05:6a00:8d0:b0:842:77ab:35df with SMTP id d2e1a72fcca58-842b0e4c733mr17654141b3a.11.1780955314013; Mon, 08 Jun 2026 14:48:34 -0700 (PDT) X-Received: by 2002:a05:6a00:8d0:b0:842:77ab:35df with SMTP id d2e1a72fcca58-842b0e4c733mr17654106b3a.11.1780955313407; Mon, 08 Jun 2026 14:48:33 -0700 (PDT) Received: from hu-arakshit-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-842828cf783sm19607485b3a.40.2026.06.08.14.48.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jun 2026 14:48:33 -0700 (PDT) From: Abhinaba Rakshit Date: Tue, 09 Jun 2026 03:17:23 +0530 Subject: [PATCH v11 1/6] soc: qcom: ice: Add OPP-based clock scaling support for ICE Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260609-enable-ice-clock-scaling-v11-1-1cebc8b3275b@oss.qualcomm.com> References: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> In-Reply-To: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , "James E.J. Bottomley" , "Martin K. Petersen" , Adrian Hunter , Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Neeraj Soni , Harshal Dev , Kuldeep Singh Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, Abhinaba Rakshit X-Mailer: b4 0.14.2 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA4MDE5OSBTYWx0ZWRfX5pyltrz5gfU2 rZIH3WiBOZXx/XXh2wy3FgvJn/cuzJClcOfxohxqcnQtva3hPDl6oTx17P/IfPuBpEY0ClmfCJY suyuCJMWC4mFvaq8UnYduwnSJD6HRzL6lb7rxoRkHvvc/K+csD1j8Z0S0QQSZTxZWIgiHiOhZki z0liAGRyMPpFi7DreESLZp8Vgxsbuz4Sn2yjFFrJ22hX5rkpS24k+os/qq/DOVee2OfTW5tQKJR R/oxHLTV1AlpFtWuBNixFR7jWHoGO0oeOwcO+OhvMLzHTbHn+csPJ7So9suGlPmPLAgr5CqOQJz ZCGl7WrfmGP0GdRjM4OunQrhRSiLfRDs6f6xHaQKaaTjBzraujb5RKYwdyjrpRn5e3ncjs0riPu C/9v/zmWJHHhwK4PdivGm1mr57TSA52tWvsaNpaI0tOsDs1tQvAFpPGbW/VhhY9wH6QCZyhtuyz Se0oda+nka512JqhxWQ== X-Proofpoint-ORIG-GUID: XThkE80CwmL3n2yCGiK67J-iB_x-79WN X-Proofpoint-GUID: XThkE80CwmL3n2yCGiK67J-iB_x-79WN X-Authority-Analysis: v=2.4 cv=Z7rc2nRA c=1 sm=1 tr=0 ts=6a2738b3 cx=c_pps a=rEQLjTOiSrHUhVqRoksmgQ==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=zlodBCVASgOsPZHI1q0A:9 a=QEXdDO2ut3YA:10 a=2VI0MkxyNR6bbpdq8BZq:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-08_05,2026-06-05_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 spamscore=0 bulkscore=0 suspectscore=0 adultscore=0 clxscore=1015 impostorscore=0 lowpriorityscore=0 phishscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606080199 Register optional operation-points-v2 table for ICE device during device probe. Attach the OPP-table with only the ICE core clock. Since, dtbinding is on a transition phase to include iface clock and clock-names, attaching the opp-table to core clock remains optional such that it does not cause probe failures. Introduce clock scaling API qcom_ice_scale_clk which scale ICE core clock based on the target frequency provided and if a valid OPP-table is registered. Use round_ceil passed to decide on the rounding of the clock freq against OPP-table. Clock scaling is disabled when a valid OPP-table is not registered. This ensures when an ICE-device specific OPP table is available, use the PM OPP framework to manage frequency scaling and maintain proper power-domain constraints. Also, ensure to drop the votes in suspend to prevent power/thermal retention. Subsequently restore the frequency in resume from core_clk_freq which stores the last ICE core clock operating frequency. Reviewed-by: Harshal Dev Signed-off-by: Abhinaba Rakshit --- drivers/soc/qcom/ice.c | 93 ++++++++++++++++++++++++++++++++++++++++++++++= ++++ include/soc/qcom/ice.h | 2 ++ 2 files changed, 95 insertions(+) diff --git a/drivers/soc/qcom/ice.c b/drivers/soc/qcom/ice.c index 5f20108aa03ebe9a47a10fba9afde420add0f34a..519d08c4727a6cb2dc5991216a2= c042ed6218857 100644 --- a/drivers/soc/qcom/ice.c +++ b/drivers/soc/qcom/ice.c @@ -17,6 +17,7 @@ #include #include #include +#include =20 #include =20 @@ -113,6 +114,8 @@ struct qcom_ice { bool use_hwkm; bool hwkm_init_complete; u8 hwkm_version; + unsigned long core_clk_freq; + bool has_opp; }; =20 static DEFINE_XARRAY(ice_handles); @@ -315,6 +318,10 @@ int qcom_ice_resume(struct qcom_ice *ice) struct device *dev =3D ice->dev; int err; =20 + /* Restore the ICE core clk freq */ + if (ice->has_opp && ice->core_clk_freq) + dev_pm_opp_set_rate(ice->dev, ice->core_clk_freq); + err =3D clk_prepare_enable(ice->core_clk); if (err) { dev_err(dev, "Failed to enable core clock: %d\n", err); @@ -335,6 +342,11 @@ int qcom_ice_suspend(struct qcom_ice *ice) { clk_disable_unprepare(ice->iface_clk); clk_disable_unprepare(ice->core_clk); + + /* Drop the clock votes while suspend */ + if (ice->has_opp) + dev_pm_opp_set_rate(ice->dev, 0); + ice->hwkm_init_complete =3D false; =20 return 0; @@ -560,6 +572,51 @@ int qcom_ice_import_key(struct qcom_ice *ice, } EXPORT_SYMBOL_GPL(qcom_ice_import_key); =20 +/** + * qcom_ice_scale_clk() - Scale ICE clock for DVFS-aware operations + * @ice: ICE driver data + * @target_freq: requested frequency in Hz + * @round_ceil: when true, selects nearest freq >=3D @target_freq; + * otherwise, selects nearest freq <=3D @target_freq + * + * Selects an OPP frequency based on @target_freq and the rounding directi= on + * specified by @round_ceil, then programs it using dev_pm_opp_set_rate(), + * including any voltage or power-domain transitions handled by the OPP + * framework. Updates ice->core_clk_freq on success. + * + * Return: 0 on success; -EOPNOTSUPP if no OPP table; or error from + * dev_pm_opp_set_rate()/OPP lookup. + */ +int qcom_ice_scale_clk(struct qcom_ice *ice, unsigned long target_freq, + bool round_ceil) +{ + unsigned long ice_freq =3D target_freq; + struct dev_pm_opp *opp; + int ret; + + if (!ice->has_opp) + return -EOPNOTSUPP; + + if (round_ceil) + opp =3D dev_pm_opp_find_freq_ceil(ice->dev, &ice_freq); + else + opp =3D dev_pm_opp_find_freq_floor(ice->dev, &ice_freq); + + if (IS_ERR(opp)) + return PTR_ERR(opp); + dev_pm_opp_put(opp); + + ret =3D dev_pm_opp_set_rate(ice->dev, ice_freq); + if (ret) { + dev_err(ice->dev, "Unable to scale ICE clock rate\n"); + return ret; + } + ice->core_clk_freq =3D ice_freq; + + return ret; +} +EXPORT_SYMBOL_GPL(qcom_ice_scale_clk); + static struct qcom_ice *qcom_ice_create(struct device *dev, void __iomem *base) { @@ -738,6 +795,7 @@ static int qcom_ice_probe(struct platform_device *pdev) unsigned long phandle =3D pdev->dev.of_node->phandle; struct qcom_ice *engine; void __iomem *base; + int err; =20 guard(mutex)(&ice_mutex); =20 @@ -756,6 +814,41 @@ static int qcom_ice_probe(struct platform_device *pdev) return PTR_ERR(engine); } =20 + err =3D devm_pm_opp_set_clkname(&pdev->dev, "core"); + if (err && err !=3D -ENOENT) { + dev_err(&pdev->dev, "Unable to set core clkname to OPP-table\n"); + /* Store the error pointer for devm_of_qcom_ice_get() */ + xa_store(&ice_handles, phandle, ERR_PTR(err), GFP_KERNEL); + return err; + } + + /* OPP table is optional */ + err =3D devm_pm_opp_of_add_table(&pdev->dev); + if (err && err !=3D -ENODEV) { + dev_err(&pdev->dev, "Invalid OPP table in Device tree\n"); + /* Store the error pointer for devm_of_qcom_ice_get() */ + xa_store(&ice_handles, phandle, ERR_PTR(err), GFP_KERNEL); + return err; + } + + /* + * The OPP table is optional. devm_pm_opp_of_add_table() returns + * -ENODEV when no OPP table is present in DT, which is not treated + * as an error. Therefore, track successful OPP registration only + * when err is not -ENODEV. + */ + if (err =3D=3D -ENODEV) + dev_info(&pdev->dev, "ICE OPP table is not registered, please update you= r DT\n"); + else + engine->has_opp =3D true; + + /* + * Store the core clock rate for suspend resume cycles, + * against OPP aware DVFS operations. core_clk_freq will + * have a valid value only for non-legacy bindings. + */ + engine->core_clk_freq =3D clk_get_rate(engine->core_clk); + xa_store(&ice_handles, phandle, engine, GFP_KERNEL); =20 return 0; diff --git a/include/soc/qcom/ice.h b/include/soc/qcom/ice.h index 4bee553f0a59d86ec6ce20f7c7b4bce28a706415..4eb58a264d416e71228ed4b13e7= f53c549261fdc 100644 --- a/include/soc/qcom/ice.h +++ b/include/soc/qcom/ice.h @@ -30,5 +30,7 @@ int qcom_ice_import_key(struct qcom_ice *ice, const u8 *raw_key, size_t raw_key_size, u8 lt_key[BLK_CRYPTO_MAX_HW_WRAPPED_KEY_SIZE]); struct qcom_ice *devm_of_qcom_ice_get(struct device *dev); +int qcom_ice_scale_clk(struct qcom_ice *ice, unsigned long target_freq, + bool round_ceil); =20 #endif /* __QCOM_ICE_H__ */ --=20 2.34.1 From nobody Tue Jun 9 01:00:49 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 E96043AF660 for ; Mon, 8 Jun 2026 21:48:41 +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=1780955324; cv=none; b=CBL2uSHg4c4UBgDk23hRVNNrDE9Kgfap7Ym7sy+qAFXzZg/4LgcEgIJ+AO6Ipx+8jYSz+kUqpuiE5lnwD5kWHqHIH2gCECIFD5YIzCiFEhPSYp7EdohQVik83dKDveZiJihI8w8A63wXiYnPR+K8JZA9zWtWA8P86IzqwNKw69s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780955324; c=relaxed/simple; bh=V18lkZ+mYtRW45RZQcZ5zGi4H7dZflBvwdwCuHqEMXs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ix1uP1h2MWTnlpcR0kSJJAYpYNV6B0q+vav7807n40kkqLc1zD7apBwLMEd8kaA3CjFXVInZhd9pOGrREFlYGDh+aqjo0EPpBCGRLgyj5z9IjoidhlaDq13kWRI3kVn3qLPolhlSN4ZJsSIsa5IVPVeZXUxZFoJq9xtZxi9Ez6k= 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=BJVK7Dj2; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=FxUiFifv; 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="BJVK7Dj2"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="FxUiFifv" Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 658Ix6hg346202 for ; Mon, 8 Jun 2026 21:48:41 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= A2btTWcfqlMf79K2ygn2F3WwB6X9SQ/bHFDltKt8bfE=; b=BJVK7Dj20XAZt07t qwaKXPK9Tit4+EKS3XvP2r/ubOYWVXrqwZl4Nfon26q3SBcFu3xlskWpP8Qi9yjV qCXlHqujpmlXJ6ORrTgpKa338GfwZAyLivf9BrORfjpiY7p9R+cVjsR7I5hdAvS/ wUu24W/xmS6MyzFAHUelqTbCuyyfFJH7g3mgc4N5jEcockwjHgjCLPooTRoZnoPv zb+kxGl/HsPBShKHFxv6qp1NY5FQcjOCO37HgviploNW8pfdo7r1hvSOYBcxIeig Vs1gpemk3ojyuJb64fZV074QmC1apzpCao4hlZk9BGTyhNg7MkbIWxPKLLnL0l6N kWcRMQ== Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4enxee29mt-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 08 Jun 2026 21:48:40 +0000 (GMT) Received: by mail-pf1-f197.google.com with SMTP id d2e1a72fcca58-8423f24dcedso5923395b3a.1 for ; Mon, 08 Jun 2026 14:48:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780955320; x=1781560120; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=A2btTWcfqlMf79K2ygn2F3WwB6X9SQ/bHFDltKt8bfE=; b=FxUiFifvAyuyytvCJyRAoMEn8z0Rw7QgsGngpkzLEd8tGC/zQlolX5e6gh1WF4VVQ4 rzm/ksGYXHudO5E8xKtYi4pjHK+1UBmSaI2EWJztpZZ9KNvkQIHsgsmoQWDve7RBuVJ6 WJNz8RDWGbiOwk4A6lt53u3RpJD2/VmMevnTwKLqnfU1IWRHxkcK0+wxW7T/kVsbyT2e wkztYNZcF2nbDHGXnaSAlun/DR2tnFv27ztVVieq7gMwM9y1Dg+WgZUPl4GaFGCgkQ8t UaWh6Vk/I7yIEpwnJ/KWLn8SfXtcYMTJb79Z+J75HmiJjl+LLVUr9ctzzFSkEACbNm59 ZooQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780955320; x=1781560120; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=A2btTWcfqlMf79K2ygn2F3WwB6X9SQ/bHFDltKt8bfE=; b=bJ4u/WgaeCKWmbEJB291p3ZIXY2WkDbn3HKrl8spiU4AlEShGoeMPX/sk94/Qv1fKh Xb66900oG2W1si5iDBpoGaHpJzNVHI7VyxqXH75PRcvYKzUY05HdSYv65SJLfLzbBHbN Z+A303nNrbHO5O1sR1em3+wA5DoKES9SwI9JXSaxJp45Qf7/NoPKgr/0oLIqlJNvy6zo UjCv7YivU+2MlGALXgeBD3Ozq9kWM6eSNuRp8yA33h8YFzm9bpgeV3vq9/ISYSLSoJSA AtIj+KWGeLCMyOnm0hIjacwrCZk6xtXXOHEhT0gaQjine+X9jAjU4lNkwJNygCecwZZ+ i/ZQ== X-Forwarded-Encrypted: i=1; AFNElJ+8kBYPUW+9KL85Eowfv0hkNhoG2xXK+VfgWPwEb34QIuzSvnIM7upJGJ2XUTQpm4tpkAhULqus35SmclI=@vger.kernel.org X-Gm-Message-State: AOJu0YyQTvntNIK2+jpY4lkp3NxkMjxIwbc0st5iRP/bWz6YUDlEce6k r3aLyq1JUqCcxMB8Fz6+7KXsmuecPXbf2EgLjlOe4YuyhLasApnHj8KcOJMLbMM/ow3A/8xMuZh h4dbSm1Gc2jptHUW5Pr49uO6dquyTxBP2oab2xSbAzuz6ygmDYfTIpnv7w/NDefm1aAbD8a6EyX A= X-Gm-Gg: Acq92OFknor1glL/BIIdtsiWnK5ppwfmLJGexaxrpB+d54ChyriYZYJB390lHZ6grTM h1H/d0/BmIAyYxYZCEfRWqobzVnQ2En/u2x7dcmQX0AmbOFSwMf+ray68zGRXEINCFkTPFKg8A5 PmKRE6icY1GQ6jmwUfg9bQ3GyrGdxEqKltPPQ5LnW43dEr9wJuDzglsHpPOrJvpxR7pbTKlAjXq IVeUG30DXJ6M29UF8EoAVRXXr3lvxgoBWiuMymYq6vUQ1SRmg+g5xEBpLc1bsafHyI4HhfV+rMA bRxkSKYKE1K26T/9x68nJmyoMgTL819Nuv8piDjB2eknTINnYdm4GoxTwOnGxsprV9H+E7OIrRa zgjFCHEhigw61bIT+WsoCBPCf9Xv54OcQ0Cdy8kkoB0/oAqNOuvlKychu3WuNv1JoiRXrDw== X-Received: by 2002:a05:6a00:10c4:b0:842:4982:81c with SMTP id d2e1a72fcca58-842b0d5d2e7mr16779882b3a.20.1780955320063; Mon, 08 Jun 2026 14:48:40 -0700 (PDT) X-Received: by 2002:a05:6a00:10c4:b0:842:4982:81c with SMTP id d2e1a72fcca58-842b0d5d2e7mr16779847b3a.20.1780955319634; Mon, 08 Jun 2026 14:48:39 -0700 (PDT) Received: from hu-arakshit-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-842828cf783sm19607485b3a.40.2026.06.08.14.48.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jun 2026 14:48:39 -0700 (PDT) From: Abhinaba Rakshit Date: Tue, 09 Jun 2026 03:17:24 +0530 Subject: [PATCH v11 2/6] ufs: host: Add ICE clock scaling during UFS clock changes Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260609-enable-ice-clock-scaling-v11-2-1cebc8b3275b@oss.qualcomm.com> References: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> In-Reply-To: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , "James E.J. Bottomley" , "Martin K. Petersen" , Adrian Hunter , Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Neeraj Soni , Harshal Dev , Kuldeep Singh Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, Abhinaba Rakshit X-Mailer: b4 0.14.2 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA4MDE5OSBTYWx0ZWRfX+KF5jLXqwHgR BPYzBbnrECn9bfIOBMUIC5WXvNu1nIUraWGYAq9GSUwWxf6CCCHLvHqMYAQzPCuDnMdKbhH6Bcy 7qLdQbSOiO8qKolY0HKvDkMWPd8zAWwklm2JBzxTeif0qpvK32XVn55om2AZq3T6nQX1OfCQSJv kHvNk4S1c/LKXHlh/QZxgj/Iy32uvwEAHFx895/ildAyLNSdvSALCAAKPOlZ944f5NDaBBn79LO l/sWnNv0zcmDQmhn/VSpVrFQ00Zyw9KqJFR8gMFKDpoDbZThbp2Jn9BDd6II/cA8ZLLiJdXal88 rI154OoGikpo7pqjTLKoF2arHf+3LpZDF8h0zogImVRwfI2EGvhGB92zGr/CRRG5Zfyre83u6rL hV4xkw4whYxgK+VVJjnE7wW7brvtihc2HIBr89NKQNS9d/0sVnIQr8kTR/WmwiWerbzrGkM0mQu KVBb4RoaUSWRdWtQIyA== X-Authority-Analysis: v=2.4 cv=V6BNF+ni c=1 sm=1 tr=0 ts=6a2738b9 cx=c_pps a=rEQLjTOiSrHUhVqRoksmgQ==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=4vEl8bdWBwuQafGpEzkA:9 a=QEXdDO2ut3YA:10 a=2VI0MkxyNR6bbpdq8BZq:22 X-Proofpoint-GUID: O621fxISb8F34vxSz7xKvk73Vca7hsV- X-Proofpoint-ORIG-GUID: O621fxISb8F34vxSz7xKvk73Vca7hsV- X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-08_05,2026-06-05_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 adultscore=0 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 suspectscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606080199 Implement ICE (Inline Crypto Engine) clock scaling in sync with UFS controller clock scaling. This ensures that the ICE operates at an appropriate frequency when the UFS clocks are scaled up or down, improving performance and maintaining stability for crypto operations. For scale_up operation ensure to pass ~round_ceil (round_floor) and vice-versa for scale_down operations. In case of OPP scaling is not supported by ICE, ensure to not prevent devfreq for UFS, as ICE OPP-table is optional. Acked-by: Manivannan Sadhasivam Reviewed-by: Harshal Dev Signed-off-by: Abhinaba Rakshit Acked-by: Martin K. Petersen --- drivers/ufs/host/ufs-qcom.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/drivers/ufs/host/ufs-qcom.c b/drivers/ufs/host/ufs-qcom.c index 291c4344876481461ab958f3048db5405bbead62..dc15d7806c7b677d6890cd4b077= cae4f4d5c9a41 100644 --- a/drivers/ufs/host/ufs-qcom.c +++ b/drivers/ufs/host/ufs-qcom.c @@ -306,6 +306,15 @@ static int ufs_qcom_ice_prepare_key(struct blk_crypto_= profile *profile, return qcom_ice_prepare_key(host->ice, lt_key, lt_key_size, eph_key); } =20 +static int ufs_qcom_ice_scale_clk(struct ufs_qcom_host *host, unsigned lon= g target_freq, + bool round_ceil) +{ + if (host->hba->caps & UFSHCD_CAP_CRYPTO) + return qcom_ice_scale_clk(host->ice, target_freq, round_ceil); + + return 0; +} + static const struct blk_crypto_ll_ops ufs_qcom_crypto_ops =3D { .keyslot_program =3D ufs_qcom_ice_keyslot_program, .keyslot_evict =3D ufs_qcom_ice_keyslot_evict, @@ -340,6 +349,12 @@ static void ufs_qcom_config_ice_allocator(struct ufs_q= com_host *host) { } =20 +static int ufs_qcom_ice_scale_clk(struct ufs_qcom_host *host, unsigned lon= g target_freq, + bool round_ceil) +{ + return 0; +} + #endif =20 static void ufs_qcom_disable_lane_clks(struct ufs_qcom_host *host) @@ -1946,6 +1961,12 @@ static int ufs_qcom_clk_scale_notify(struct ufs_hba = *hba, bool scale_up, return err; } =20 + err =3D ufs_qcom_ice_scale_clk(host, target_freq, !scale_up); + if (err && err !=3D -EOPNOTSUPP) { + ufshcd_uic_hibern8_exit(hba); + return err; + } + ufs_qcom_icc_update_bw(host); ufshcd_uic_hibern8_exit(hba); } --=20 2.34.1 From nobody Tue Jun 9 01:00:49 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 7AD263AFD10 for ; Mon, 8 Jun 2026 21:48:47 +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=1780955328; cv=none; b=eUT1Q7XsLa/11DGYwOVCVmFPg1fWk8tTJuPKSV0pNORRBH/lhgAp0bbe0plDqQJcbi79l5P+memBUPNt6n7JFTvRma7vdlClISv6RxIqdSV/vV9VQUKmqryCk+1NyXIhMXeud2VDNoFEEJjhzq8VcuRARHk/Jsu8T89HfVwYjf0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780955328; c=relaxed/simple; bh=3w4W63xsG2++dPCs7ogqk5Rw8JmFxMFLrWxtVoquP6U=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hxGVaOHdmIDRlAfJZgdpKQ3H/foHdA9954j+romyUyY3XLAVrr7gcuSiRhJS0Lo/unxac832OI4JzpS/tTRmiwwLO5Tj7jSPZYQR9cqvLZs/qBAozI1uCEwPkdsnroeYf4nYVWRLPIRimNRnOxMOaCpnyW1SkMfgiww3SOc+w0Y= 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=kkGUOKQu; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Pn+75K+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="kkGUOKQu"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Pn+75K+Y" Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 658Iv7Wk4086355 for ; Mon, 8 Jun 2026 21:48:47 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= b/5zy6XbjJJB6n/FuzDKwDIAc3x2b9RV3asGSb1UkAE=; b=kkGUOKQusDaiFbnM QF4S3K/wASQ9PrY9YNt9NatG4BG2lIEOKVzVfoiUkt0gkyOBFOT9Uldu3E5fhWHM p/zL4oabam9WBmSvVUBw6XYidqwbn5pNRF24opLrbN6LDP+o9zBxgJKTuv2GBbcx 2hunvWl9Uq7YO6XpzyXOe32NjxpCXFGzq7hi9zzxWwOoGWrF3QvGOh63FgCXtNR2 DUng7WWzpZCqFKo8Cxq5IRGzDiUMvVcJrD6etqwqK+fiKBbZoDJQyyn/dxHy3GDJ NoJNQ+hHIyt3e03W7Ru121Z5/bygUrT+Uu34NmJUVrk4Ov8mjxkpEvlKi4626OXc lTm5WQ== Received: from mail-pg1-f197.google.com (mail-pg1-f197.google.com [209.85.215.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4enun432rk-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 08 Jun 2026 21:48:46 +0000 (GMT) Received: by mail-pg1-f197.google.com with SMTP id 41be03b00d2f7-c857fa2706aso2093174a12.2 for ; Mon, 08 Jun 2026 14:48:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780955326; x=1781560126; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=b/5zy6XbjJJB6n/FuzDKwDIAc3x2b9RV3asGSb1UkAE=; b=Pn+75K+YXPc+XVrgMrrhf4l7Mh4zasX3CldWqHY+cbSyAdjaZ6RYr4BMXl4n1SVtox DZxJHoV6N8hvbDYNhyMdEnDdYxroJ9K/dQXRKcoV8kuC+3hwxtiAE+/TAC0qxQzjjUe2 MjMJ7+P/zK88mtr9jJk6Aj8j9yKAfszrU/jyPCblHQTcbF1mXJU6WjtV7gwdv4f6xaqC 9+chHvfmJGUhOuplGGh90Zrx4b+nEK7wAXHfa3bYTgMJ6lfhe5+1gYtbO2LhsZuEybuO EK8j9tnuQrZ9tMjMZe89gLMYCRebsedxcHsu7v3LEC/CfmGAF9xT0Lsbqc7hcXHVqBbL 5BWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780955326; x=1781560126; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=b/5zy6XbjJJB6n/FuzDKwDIAc3x2b9RV3asGSb1UkAE=; b=nUEGB7XOIisemB9NKvSFeQe1CzOcUD/7ZAOWrwsyl7QYZWQpWDbbXUV3+Z9OKrgWZt H4re6kDk24kfTdyy/XOpDXpyy/vsBpq5xTUJsazzB8yOBpwEuMdjQUV/5fbqTVk/lyLR 4bsFp2W8/m3EVIeYjkiDBMJwNuHOCpYnI74cf/aNrM+GNOI63Wwq9soTBNwTcC5LUp5o G636T+D0YIv0pUQ0JKEF/K1kvHsxCqF8eOqN41KhVJ4bVbAA0mwesrqk5m7OLBCWF0JM 65WP/j6fmckJGjebhutUp6z7KXDozXWE4wLM1DS+38IYZUuDzYKUtWVIhNCezmwGFFAo fxKg== X-Forwarded-Encrypted: i=1; AFNElJ/wDwytEScmrbA1jDmD+0xhWHHFfzxdXYRl5OCY7G2KzSL7srUwvBkX/cKXpltrceVbCy5ldVLnDvtU1LY=@vger.kernel.org X-Gm-Message-State: AOJu0Yy0OmCaayzqCpIicVonU1tsNkX61Gq9UOjr6+Cy+PLCnELBdQUC A6JJ3Jgvs2CVVzJPVxjdEoXM5hgg4C5RfyrJHdbFOAb5x8QX0w/bUYU5pKZOpOO91vEV69gGv5G Ptj703ANydlF5RLTcx22kqGa21CbkVxHgsJRTbDWa45k11McFQwpAuNZzo4WK/ZyQiDOXpyjAhv Y= X-Gm-Gg: Acq92OHWrC1EauAeexemQjMtSMfrWnIxIumcL6LKVqmAK68BjwoZ8zgJHXCSyE9NYtz i3Smn2IZ1IJB1wOLnVE4dHumiR0fENljVjIaacLl4RbtD5NWflyEJvETWHmVxGIoAWoHnj+WNN6 C5aSxM8e/CmT9uPuzY0CB4A68HEbYmfhXqi00pcqTacJa7qw9WaDb5QgO2EozsvRNAlk5QQPNxJ OrN8mnG6FNyFyneEDgchPffG5KRWSkOgqtKMX8HgefEc77shOBCH565YQE4FtbuoLcSG/nVBDCg 2pi6sE5F2fNrf2Py9kMFr4184OY/1ORBrV/fRCvdm37vIlmz3/Wf4GH6YCK7Dtw2BIc6+6ScIMU Fqy1fxRxyveaMYDa7oQmuNgfZ8yIy0ffIXQgTyNfgfNWAw/BoTfdlcfYxRNtZapNW6idP7w== X-Received: by 2002:a05:6a00:32c7:b0:842:422b:259f with SMTP id d2e1a72fcca58-842b0e30c6dmr15595680b3a.10.1780955326093; Mon, 08 Jun 2026 14:48:46 -0700 (PDT) X-Received: by 2002:a05:6a00:32c7:b0:842:422b:259f with SMTP id d2e1a72fcca58-842b0e30c6dmr15595665b3a.10.1780955325533; Mon, 08 Jun 2026 14:48:45 -0700 (PDT) Received: from hu-arakshit-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-842828cf783sm19607485b3a.40.2026.06.08.14.48.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jun 2026 14:48:45 -0700 (PDT) From: Abhinaba Rakshit Date: Tue, 09 Jun 2026 03:17:25 +0530 Subject: [PATCH v11 3/6] mmc: sdhci-msm: Set ICE clk to TURBO at sdhci ICE init Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260609-enable-ice-clock-scaling-v11-3-1cebc8b3275b@oss.qualcomm.com> References: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> In-Reply-To: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , "James E.J. Bottomley" , "Martin K. Petersen" , Adrian Hunter , Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Neeraj Soni , Harshal Dev , Kuldeep Singh Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, Abhinaba Rakshit , Konrad Dybcio X-Mailer: b4 0.14.2 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA4MDE5OSBTYWx0ZWRfX3fzOhjXbzF22 /JMQr6+fOIjPJ0qlZE1mXncaD9KZW0V51OqKVqelx3BF45ZxxW3rJUcIzgJeAHTfrXBsIFAkWDc qGbLvwDd2aZhr3GT1SUQs1y3X7NZcDkvfIhpOK81ZCcsi1S1mzavd/XUgScoIsbfjNrNqqY65O/ kFVaiZcypfWBQ6GOKf1Bu/DLBdywXz0ZzIKaokLfkgnKAMsIDzVFoGNxzgJL+ZYoFbTOtJXCWir z1tBnDfqmYRWIcqld/9QpweK9oc4EWyM6bfp6AkyfyJD3w1LDJCFHqpk6IQmevxsyiYvkXaoo+z crtu7Psz7aO41xuRzZcT33ijgnekgwJeInTGz0qQiBSR4B1EEoVUAmaOe8vmyS/aQBtrIhIsNT4 RqB8vzNI/FmHhKOatXA8oJRR5UHFf9EfrVjAJKQrOwyGy92aYss0oTK6wgkLMfgIDAmLtUT8DGi gp27JBUtWll8H3zg6MA== X-Proofpoint-ORIG-GUID: ITRCPFEzTNqKb4DlCb3LGcoTfpv1SB3y X-Authority-Analysis: v=2.4 cv=ZY4t8MVA c=1 sm=1 tr=0 ts=6a2738be cx=c_pps a=rz3CxIlbcmazkYymdCej/Q==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=EUspDBNiAAAA:8 a=QyXUC8HyAAAA:8 a=PzEurhthzZq-M9kHIYIA:9 a=QEXdDO2ut3YA:10 a=bFCP_H2QrGi7Okbo017w:22 X-Proofpoint-GUID: ITRCPFEzTNqKb4DlCb3LGcoTfpv1SB3y X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-08_05,2026-06-05_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 adultscore=0 priorityscore=1501 impostorscore=0 lowpriorityscore=0 spamscore=0 malwarescore=0 bulkscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606080199 MMC controller lacks a clock scaling mechanism, unlike the UFS controller. By default, the MMC controller is set to TURBO mode during probe, but the ICE clock remains at XO frequency, leading to read/write performance degradation on eMMC. To address this, set the ICE clock to TURBO during sdhci_msm_ice_init to align it with the controller clock. This ensures consistent performance and avoids mismatches between the controller and ICE clock frequencies. For platforms where ICE is represented as a separate device, use the OPP framework to vote for TURBO mode, maintaining proper voltage and power domain constraints. Reviewed-by: Konrad Dybcio Acked-by: Adrian Hunter Reviewed-by: Adrian Hunter Signed-off-by: Abhinaba Rakshit --- drivers/mmc/host/sdhci-msm.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c index 0882ce74e0c9bdddd98341a67b97bcef74078e0c..b655bcb5b90c0677bbe3dc6140d= e488038fe5ee8 100644 --- a/drivers/mmc/host/sdhci-msm.c +++ b/drivers/mmc/host/sdhci-msm.c @@ -1901,6 +1901,8 @@ static void sdhci_msm_set_clock(struct sdhci_host *ho= st, unsigned int clock) #ifdef CONFIG_MMC_CRYPTO =20 static const struct blk_crypto_ll_ops sdhci_msm_crypto_ops; /* forward dec= l */ +static int sdhci_msm_ice_scale_clk(struct sdhci_msm_host *msm_host, unsign= ed long target_freq, + bool round_ceil); /* forward decl */ =20 static int sdhci_msm_ice_init(struct sdhci_msm_host *msm_host, struct cqhci_host *cq_host) @@ -1959,6 +1961,11 @@ static int sdhci_msm_ice_init(struct sdhci_msm_host = *msm_host, } =20 mmc->caps2 |=3D MMC_CAP2_CRYPTO; + + err =3D sdhci_msm_ice_scale_clk(msm_host, ULONG_MAX, false); + if (err && err !=3D -EOPNOTSUPP) + dev_warn(dev, "Unable to boost ICE clock to TURBO\n"); + return 0; } =20 @@ -1984,6 +1991,16 @@ static int sdhci_msm_ice_suspend(struct sdhci_msm_ho= st *msm_host) return 0; } =20 +static int sdhci_msm_ice_scale_clk(struct sdhci_msm_host *msm_host, + unsigned long target_freq, + bool round_ceil) +{ + if (msm_host->mmc->caps2 & MMC_CAP2_CRYPTO) + return qcom_ice_scale_clk(msm_host->ice, target_freq, round_ceil); + + return 0; +} + static inline struct sdhci_msm_host * sdhci_msm_host_from_crypto_profile(struct blk_crypto_profile *profile) { @@ -2149,6 +2166,13 @@ sdhci_msm_ice_suspend(struct sdhci_msm_host *msm_hos= t) { return 0; } + +static inline int +sdhci_msm_ice_scale_clk(struct sdhci_msm_host *msm_host, unsigned long tar= get_freq, + bool round_ceil) +{ + return 0; +} #endif /* !CONFIG_MMC_CRYPTO */ =20 /*************************************************************************= ****\ --=20 2.34.1 From nobody Tue Jun 9 01:00:49 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 F3BE53AFB0E for ; Mon, 8 Jun 2026 21:48:53 +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=1780955335; cv=none; b=oXpFTO3c/M+bVu749RU9IFj0nTS0NYSd3UnrWlQ87TeFlkjvbjs9irg6glVTRi+DezH3BoZ3tnAHiKxy+a9jpBOp72mn62v7YQTKYu/lQGF5WFO+p9LBFyNrhYFrx4JMGnU6vL2pyW+KSCFM0eJGFYLZQm7GCrOo0zTRXvo9djQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780955335; c=relaxed/simple; bh=X0xXkFgpEGLjkiFblpwO+BnhWlu/bE8cwlCDJSPOaDE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mipaoI2/s9vF45/2j0ffCYPzSW+2tMgo+aMHxTuGMHBW09g2OMV17khgLVZvPTV7JmHNFEiiLaCVAEx/CbpAISumvRaUlAwyvje945WxSPmW8zllCjls5T2p6NFWikcORlOkSJd4mynrcgw5AoS0o+tV1ze6OenFEEp54dVZz90= 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=E7/FA1PR; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=R+CObCAm; 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="E7/FA1PR"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="R+CObCAm" 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 658IwY0Z326803 for ; Mon, 8 Jun 2026 21:48:53 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= ETNz+wmmpsdRAuqSqBnBouCW4jgWHavGgQFIoIN6PGw=; b=E7/FA1PRr9ArR/Xd a5vofxDWfYZSU6p/vXnqlOW5AXE6w/47OrJK1oXVB321HntvqUio3EkJoOAHgqJg aq8BKGzLMwZ74+vbR2xnh14c8HVL7PkK2gFTFJzjNBYU+gggOgh58WOTc9CVI370 XssHIGkGzxOr93YmNFZsP046AiIs+/iYtVvuHNQ4G8rCfQRwWM8Hg+QZvl86JAd8 XglC2w0jHxeZzmmgqcuzdbxI6sCf7KDVPylHApm8TeaEs624YP2Qc1QvOQM2tr5S 2hKhVVOsufXKCkxXLTkb9lsy4VpFurBrBacXo9AwhJGF48A72XUQ9VsX6eIMorV+ FUtJJA== Received: from mail-pf1-f200.google.com (mail-pf1-f200.google.com [209.85.210.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4enun8k3jm-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 08 Jun 2026 21:48:52 +0000 (GMT) Received: by mail-pf1-f200.google.com with SMTP id d2e1a72fcca58-8423f544944so3555056b3a.3 for ; Mon, 08 Jun 2026 14:48:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780955332; x=1781560132; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ETNz+wmmpsdRAuqSqBnBouCW4jgWHavGgQFIoIN6PGw=; b=R+CObCAmxaGD8y7YrZd0RePynvltlHQ9JlzpDk3nskfej0vdZt+tRjCaABYsP5whQd tLmzsgTn0kgMAgtJSnukzW4OlGaerFMFpeCeaQDidGowpudaENfane/3iAt9gCT+HdPl W7J8Wk8Z8xQPBf1IuFw4ZgyYJo786z2A6zax3SzgN31zZFAJKVJLGjiZc3sGywvkWizb LvJQBX/rwrkHPfMD3ek6m5PspmIEbEA2XZEheJXeaZDnEmG5ahXb1Th3kSh7pIa+OJlQ OCr3mZrU8klbZM53azDeLuOxdaEJl1vamD24slu8QwGpPZUTzCNtFVPNQ9YVZCjxt08j fkkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780955332; x=1781560132; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=ETNz+wmmpsdRAuqSqBnBouCW4jgWHavGgQFIoIN6PGw=; b=iWz+V2gDYsL1ZTsWrLffuddugscHBZWBzUBFhrvUmxwNnU528LlkWZnHNWyndzgZHJ xwhVJ30XofQKsxL+9s5pjyERTiNkrOLQVz4tx6RcajKj5ifFxCmlrR8tDHZ6ey/j3BkN 8Jddlo0OGarGTRae6mIb6lbzDYP85DsTLmxVmVwvI5OsmsTbV14JoApF8PsNuriqUK4c jFStkDNDj76EpuEsKy/TVds7ELZIx9gXXcXlQRJwbtuCF8dmDadRYH2vTKsIZ7Mwm4mH 6Xmd6ZqMCP4nZfo6x50ZkOt03tS0CjUU5d/9p+p3O6jBYchwt2tuhM/cveaD+1kDiHIr VuJw== X-Forwarded-Encrypted: i=1; AFNElJ/9UQOWMvKuT5Zp3MS67YGO7nvpISu6bvO3zHDav+kIzAKx2RwsLB/WRV5MZpVOp3GcA73KgN/uKdlwboY=@vger.kernel.org X-Gm-Message-State: AOJu0Yw3hNxkUOQPNrna58P7mImRTqTFECIDSW2tL97IdcCEyysVqjVa kDB1xn4dfx7YDDKH9NA1/2X0EPdKu30z9Cp8DCI9Qcwswv33sPF6WRj//jJQBMW+I3/CGmtDsye eWRIuVX+dEgNb3iPS4lpaZqTa7600d4z2p5iIdwe+lUyadnl7yU5q1GvRzlGOLNUTfccdl6XeuJ A= X-Gm-Gg: Acq92OE29ZyJy8cNNUXRbIQu2L7mdKu2cFWFECUVJ9fO9SMtmQOmYBmvsjK97Ghb6zT sa31+vOeMk36IJ/MXy3hfcvmCu09jhJvPZM7h35NqCgR2zdE8EQb+tNSncSA4L8v+5sPNfkGgBm NkCCZKdEM1JxXovd0nwWB/3ZuMALy7geZCYKD92OBMR88LGFKVOOIus4m+Ve9WARd4uqXjJC8L8 PyQNIXJR7PDH5Jy/B/3QjXv8EsEQB7sCtLbdLFbUFJyVHbEUErF9Znur+23SFiuH6xw8t40SKNs G8001CRbvBoprLu92XDUND5E2NIU8msM5c9lRqjQz2z/IALhbzyKp8FfxO2Tn8CQVb1Pf7j5kpU hoqTxsF82WBK4Wlvh09lWsUfLeeTAIySKkqM117WgOeqgQDGRQ6I0tpRWSL/Xi7ci4WtPnw== X-Received: by 2002:a05:6a00:a10:b0:835:3949:3c1f with SMTP id d2e1a72fcca58-842b0f52ec3mr17760880b3a.24.1780955331766; Mon, 08 Jun 2026 14:48:51 -0700 (PDT) X-Received: by 2002:a05:6a00:a10:b0:835:3949:3c1f with SMTP id d2e1a72fcca58-842b0f52ec3mr17760855b3a.24.1780955331329; Mon, 08 Jun 2026 14:48:51 -0700 (PDT) Received: from hu-arakshit-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-842828cf783sm19607485b3a.40.2026.06.08.14.48.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jun 2026 14:48:50 -0700 (PDT) From: Abhinaba Rakshit Date: Tue, 09 Jun 2026 03:17:26 +0530 Subject: [PATCH v11 4/6] arm64: dts: qcom: kodiak: Add OPP-table for ICE UFS and ICE eMMC nodes Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260609-enable-ice-clock-scaling-v11-4-1cebc8b3275b@oss.qualcomm.com> References: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> In-Reply-To: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , "James E.J. Bottomley" , "Martin K. Petersen" , Adrian Hunter , Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Neeraj Soni , Harshal Dev , Kuldeep Singh Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, Abhinaba Rakshit X-Mailer: b4 0.14.2 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA4MDE5OSBTYWx0ZWRfX3fWfMsJhfn9f 0twegt6ceKx1wvY7+zGz7IPzuX0TrX0FdUBOqC4GhGsr4obz1JOoSolnTM7QBzol8f8iSJ8VtAY hhRCSf5Ja841TtE2W3lblstGTal6OvN6tfju6xTpstISf+1Rrh4feavwQ8crejF+6FjoIaTCVXs Wraa/y0BC3McZc57Z77mtyjJNEVTljsrsvi2FUkxzZKaJMbsznf3aegcmGq61bbmS+lI04KLrJV 2bIp7nOqhNgXU5R3C/KwYfMZ1MK5ccsGGwmrN64NrSevpCbc/vCdR8hgjTTj1afVR2Dw8+y+lHS P8FfWF61F7Gl3b19tzbTZ08oWJh8VeBepUWk4vIK9mpFq+aPizvdgNW7o26+k2VkZEvMI8qnum1 4WG6RIOiv/vsp4ZXHBkk1JGNGPcPFRJAytvzxbtAPA+ncjuNyePeAaOL8adFyYiyzNzLjVRijeB Eur50HgHG3y/7h5M0fg== X-Proofpoint-ORIG-GUID: NqhugpSdYDmYaX3Bkj0mzTLXmrII1gwn X-Proofpoint-GUID: NqhugpSdYDmYaX3Bkj0mzTLXmrII1gwn X-Authority-Analysis: v=2.4 cv=Z7rc2nRA c=1 sm=1 tr=0 ts=6a2738c4 cx=c_pps a=mDZGXZTwRPZaeRUbqKGCBw==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=IFdraIdqUsMg42QbtkkA:9 a=QEXdDO2ut3YA:10 a=zc0IvFSfCIW2DFIPzwfm:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-08_05,2026-06-05_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 spamscore=0 bulkscore=0 suspectscore=0 adultscore=0 clxscore=1015 impostorscore=0 lowpriorityscore=0 phishscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606080199 Qualcomm Inline Crypto Engine (ICE) platform driver now, supports an optional OPP-table. Add OPP-table for ICE UFS and ICE eMMC device nodes for Kodiak platform. Signed-off-by: Abhinaba Rakshit --- arch/arm64/boot/dts/qcom/kodiak.dtsi | 42 ++++++++++++++++++++++++++++++++= ++++ 1 file changed, 42 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/kodiak.dtsi b/arch/arm64/boot/dts/qco= m/kodiak.dtsi index ecf4790f3415c46781c8e790d7892a41300ee7a0..cd76da7e49d8c664df6a60b5c18= 418c4e97a3ba4 100644 --- a/arch/arm64/boot/dts/qcom/kodiak.dtsi +++ b/arch/arm64/boot/dts/qcom/kodiak.dtsi @@ -1087,6 +1087,27 @@ sdhc_ice: crypto@7c8000 { clock-names =3D "core", "iface"; power-domains =3D <&rpmhpd SC7280_CX>; + + operating-points-v2 =3D <&ice_mmc_opp_table>; + + ice_mmc_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-100000000 { + opp-hz =3D /bits/ 64 <100000000>; + required-opps =3D <&rpmhpd_opp_low_svs>; + }; + + opp-150000000 { + opp-hz =3D /bits/ 64 <150000000>; + required-opps =3D <&rpmhpd_opp_svs>; + }; + + opp-300000000 { + opp-hz =3D /bits/ 64 <300000000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + }; }; =20 gpi_dma0: dma-controller@900000 { @@ -2597,6 +2618,27 @@ ice: crypto@1d88000 { clock-names =3D "core", "iface"; power-domains =3D <&gcc GCC_UFS_PHY_GDSC>; + + operating-points-v2 =3D <&ice_opp_table>; + + ice_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-75000000 { + opp-hz =3D /bits/ 64 <75000000>; + required-opps =3D <&rpmhpd_opp_low_svs>; + }; + + opp-150000000 { + opp-hz =3D /bits/ 64 <150000000>; + required-opps =3D <&rpmhpd_opp_svs>; + }; + + opp-300000000 { + opp-hz =3D /bits/ 64 <300000000>; + required-opps =3D <&rpmhpd_opp_nom>; + }; + }; }; =20 cryptobam: dma-controller@1dc4000 { --=20 2.34.1 From nobody Tue Jun 9 01:00:49 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 18A913B0AF1 for ; Mon, 8 Jun 2026 21:49:00 +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=1780955341; cv=none; b=WCex0dfNv46Jk9J/XiYojdkKjKhI07EAAC1kpI1HpwaReMRrvVcEAx1SrxRpupACCixikzhrdud2ctkHBe+nl2L07ICFe6lO+tqi/E7vzck3fgL48IqFQ1QGEgsU5ZYjy0Tl1mDPYErLmH9pETjv2MiSU16BuGtXY310vk9Y3CQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780955341; c=relaxed/simple; bh=DXh2TI45vU1iLpWsE+RYENmxgSc16LkuYVsOKJ6zBAg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Z3Jo3RvVMWQs/Ds/+jf8BzI9jrFph6NwSRP0wiqH7DtBOQ45s0sMHaVVYHNAsjV5UGkcYIHhuHcrMOuo4e7tObKnQgLMMQOAEMWUGLLlMLo/dVGA5pHf3Mrr7RVKRQMSB+vK6WfL7qs0uwAPVLYn5rfEftMsP0s2e8GQuV8tciE= 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=Mmjs4U3v; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Xq1TprqZ; 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="Mmjs4U3v"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Xq1TprqZ" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 658IxBnO348910 for ; Mon, 8 Jun 2026 21:48:59 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= iYYqWEc3U8tcC19eQELIhV1rxr7yBmE/dYW94QG/AcA=; b=Mmjs4U3vXT2qQ//u gQucDQb1FL1F0nKyNt1OH3Xc4JyM0cbCrJDC1C6Qj8ISqiLb/3e1daB2yyKae96k Tub6zD/BBRQcz6O3uPhPCwM5AUAigDpEuZnDgbLYVyFMVDdub/0XBx+wDcPvhtZo jyGBOQUd6/3zLW9EPTBQ1NzZKQFw68+tWfStFQEI4BcZUezzakyC25OMsaEpjBGJ 9vOPK0SwEjBdQaX4U2+Asw42xD2t4zhwKFjdHafZKKXuy5lGxkRK9NSdgk2IP5xx K11jj3G5wSjMoe7dXv43XumwhZk+YWT7OYVJm+KKb+gtj1bRFf5ISxC76IgtRsHG LXMfBQ== Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4enwsvajs4-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 08 Jun 2026 21:48:59 +0000 (GMT) Received: by mail-pf1-f199.google.com with SMTP id d2e1a72fcca58-8423f424d5bso3186608b3a.3 for ; Mon, 08 Jun 2026 14:48:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780955338; x=1781560138; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=iYYqWEc3U8tcC19eQELIhV1rxr7yBmE/dYW94QG/AcA=; b=Xq1TprqZVGbOlRQQ6/rnGBfymqTXxkKD/SK2FAlM0Bm5GGKrOQpi9KnKolAk4zPm5N RFDXYgdVzZuoCaiOIf0D4KaXEUSmpiCleKhpjOv1ZtbGUoT6HnUUlEOFP8Zk6V5w7sAa akacQ/EoDC/LiyfJoGVEQTU4vJzaFww+slOqdM7Bi9wD/fRXTUgoK1ZKwVGALEypJCs2 ETGOuC4B79GaXO/RgFETcXs47J5V9hmMzPfXOcEpmq/KEThiPhGQk2coOKv2giCRfRw9 C/TqyKtmdOmY5fn78PgjFbpWXw2REwocOJMhNQsy3x5FZiNW85BsApgtK4H1W/kR3R0/ KOQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780955338; x=1781560138; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=iYYqWEc3U8tcC19eQELIhV1rxr7yBmE/dYW94QG/AcA=; b=NcOaSCWHv+KaG9v5v0nsD/dFgVxiV8NO3QXXFCNs/mcC302abM4ogSCnszrpW0MUG8 bSAntLccbrB8Sm2x4O53RCZnAL5grLPp1i/afgbgcCDxVKqUtCrucxGnVHGAi+XXH2zR N+9nR7MGkc6kCEeDO04xPfUWzlJbWKvfdhWwvcg2SLg3VE7HCBUxpqkHr3kOxI9tRrdT 38oKpAilw68XobhNmzEfYtI1m4v+AMJC5Cy5P0RkdlB4QnDzSlvlry6mpsOP1qHVC32x 4WmyOBoDGX/d0UZzyLupRBPgQke3blzzB9O37U6fbO6PxI0FmCQwqOmFXxEL+NAziaT5 SyrQ== X-Forwarded-Encrypted: i=1; AFNElJ+VcBMhvxVlZiBmr5kFB5w5Y73Vc+ebgYVMibd4X2KUHtysNZYmamQzrLWST1eGF0UJOLswitMXCPUnjUY=@vger.kernel.org X-Gm-Message-State: AOJu0Yw5vJuir8Pek5CZx2S5TccN/HXp7x7/MmHolauQx+7/+jFzepA3 J4qN1U7ZotIU4spZoZo1ll94A+4tDdTxAl5nlSIrowNErWth4IY3zi7XAlG5nc+YjpQ+hdtcQza rCcouU5m4jdaGClZgTUhtp7lrwrjCrAes5nuUqlMIUVWtFMZm4bWUG9pJimrTuzZng5bauh0jTE A= X-Gm-Gg: Acq92OHqsRkP9YQAuPJ019aQdXZc+mYVESFf1/2GX5c2Art7HRwJ9f81niufVxenpvh VTLqapjoNigq685ciXDFf8T17SqQjphQdnQNrKT4u5st1SdAy2nmBcBoqLepWh737qbi8cL72a9 l9rQFQ+jvmXmnF6cT4gI1tmzjrhe9mNCpPe3L3Om5QKHvvz7jCh65s316B+lTSaMEtjZ3w5Nm82 add2rolAV7PYE103uGIAJXwIn/EIZTo8cxuAYzMW1/RxyvA143tgXJXKhGnvuQ6wa4KV2ApujVs +e6H4W8g7o+BfdgX7+JX029N7QS6rVLGSrvPbfHG1fLM9QT9kuf3OFjZ5Yj5GdsX0FxLehr/IWw /JKaHFFe3iRL2W+UE3uDpY6vOLaHFgAKvzbqIGm+IDI8gGWDkBiraCz1n66Nua1ClZzJ6wA== X-Received: by 2002:a05:6a00:3cd6:b0:842:678a:a7dc with SMTP id d2e1a72fcca58-842b0e1300emr18228762b3a.2.1780955338023; Mon, 08 Jun 2026 14:48:58 -0700 (PDT) X-Received: by 2002:a05:6a00:3cd6:b0:842:678a:a7dc with SMTP id d2e1a72fcca58-842b0e1300emr18228716b3a.2.1780955337523; Mon, 08 Jun 2026 14:48:57 -0700 (PDT) Received: from hu-arakshit-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-842828cf783sm19607485b3a.40.2026.06.08.14.48.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jun 2026 14:48:57 -0700 (PDT) From: Abhinaba Rakshit Date: Tue, 09 Jun 2026 03:17:27 +0530 Subject: [PATCH v11 5/6] arm64: dts: qcom: monaco: Add OPP-table for ICE UFS and ICE eMMC nodes Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260609-enable-ice-clock-scaling-v11-5-1cebc8b3275b@oss.qualcomm.com> References: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> In-Reply-To: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , "James E.J. Bottomley" , "Martin K. Petersen" , Adrian Hunter , Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Neeraj Soni , Harshal Dev , Kuldeep Singh Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, Abhinaba Rakshit X-Mailer: b4 0.14.2 X-Proofpoint-GUID: ZEXCuPFKHDKl6_28dhgGjVJ-H4-OZCGw X-Proofpoint-ORIG-GUID: ZEXCuPFKHDKl6_28dhgGjVJ-H4-OZCGw X-Authority-Analysis: v=2.4 cv=dIaWXuZb c=1 sm=1 tr=0 ts=6a2738cb cx=c_pps a=WW5sKcV1LcKqjgzy2JUPuA==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=IFdraIdqUsMg42QbtkkA:9 a=QEXdDO2ut3YA:10 a=OpyuDcXvxspvyRM73sMx:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA4MDE5OSBTYWx0ZWRfX1x1e+vF/EHOo QCSc/Z7XHOYgDKBP3bnnE50PI7ZIaE5Otbt+gruNd2bi8W5Tw2/wCWX8jw6WUuOYpogqpJrax9a vlqZA7zABlWYpwn2wJwrkX6THoFuA/Mx4fFdaTUByK8IDeUXzA52T00zEcIiC3rLahScteNQLev nPi7VhkK9vzV3vgIngecaJyL16MVzu8akvjotL0u8DGNCBzu0u9YdqzD8b8vJxDPtfwZi/PwjEc CPX/5zk4Zvyhnz907g7Z2STA6m5ddulSLgt+mG3SkNzHeZr9JqHnZzq63V1vYMnA0gwltFXU0mu 09kL0dvfbg5jCz2fr9xgdfIid8fZBxB1YlnpNJ8h3/QLePG/s3qQNmtNglBeW6UXoffmtXcIBdU bYC0+22tGoHopSXS9sKwkKF7VQUG37n5kb5IA0H/85iVLiuKgFmA3mBCekXk18FRw1FUNTxyQ3m 0s1fYGksxR6O/ISHKZQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-08_05,2026-06-05_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 lowpriorityscore=0 spamscore=0 malwarescore=0 priorityscore=1501 impostorscore=0 phishscore=0 adultscore=0 bulkscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606080199 Qualcomm Inline Crypto Engine (ICE) platform driver now, supports an optional OPP-table. Add OPP-table for ICE UFS and ICE eMMC device nodes for Monaco platform. Signed-off-by: Abhinaba Rakshit --- arch/arm64/boot/dts/qcom/monaco.dtsi | 37 ++++++++++++++++++++++++++++++++= ++++ 1 file changed, 37 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/monaco.dtsi b/arch/arm64/boot/dts/qco= m/monaco.dtsi index a1b6e6211b84d0d5008231c55613a0ccd61b9450..d9298d8b7874b8669b2cded2a28= a99dce6eadbda 100644 --- a/arch/arm64/boot/dts/qcom/monaco.dtsi +++ b/arch/arm64/boot/dts/qcom/monaco.dtsi @@ -2742,6 +2742,27 @@ ice: crypto@1d88000 { clock-names =3D "core", "iface"; power-domains =3D <&gcc GCC_UFS_PHY_GDSC>; + + operating-points-v2 =3D <&ice_opp_table>; + + ice_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-75000000 { + opp-hz =3D /bits/ 64 <75000000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + + opp-201600000 { + opp-hz =3D /bits/ 64 <201600000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + + opp-403200000 { + opp-hz =3D /bits/ 64 <403200000>; + required-opps =3D <&rpmhpd_opp_nom>; + }; + }; }; =20 crypto: crypto@1dfa000 { @@ -4878,6 +4899,22 @@ sdhc_ice: crypto@87c8000 { clock-names =3D "core", "iface"; power-domains =3D <&rpmhpd RPMHPD_CX>; + + operating-points-v2 =3D <&ice_mmc_opp_table>; + + ice_mmc_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-150000000 { + opp-hz =3D /bits/ 64 <150000000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + + opp-300000000 { + opp-hz =3D /bits/ 64 <300000000>; + required-opps =3D <&rpmhpd_opp_nom>; + }; + }; }; =20 usb_1_hsphy: phy@8904000 { --=20 2.34.1 From nobody Tue Jun 9 01:00:49 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 A60E23B0AD7 for ; Mon, 8 Jun 2026 21:49:05 +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=1780955346; cv=none; b=lum7o3Ryy+BINykanQEQPPfasGfqeLEFPWiZ3I/PjGum11AYG8ydd+VCn1eRZpTMw2mW8LqgWjh6tJtJ1BnOBRQQxi2vzQJje0g5Yx4AROd5jOo4VjXXh3a6mZywy8TXm/2G5h7Ja/PsOtQFUmHXgxpzvcpjwJLv7v3SwUHKLJg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780955346; c=relaxed/simple; bh=HPJrgV/WvcC5J528dV3QG/rkJGKe1vbeM4CVOkeyLQQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=J6nnE7Qzt43zF0rgFW0c165EpleXPsxpDqfWS3N6YSdpVKt0sS0FHizOg83ZTLyl2pVWaNK0fr2tK5ndvfpHaTzru98lqxN9ElL+W9/4tjhoZwhVIRhk2k032P+UCTNlebhEumVMDrApHNAuoLbADehmBwU/I9zXI3LQ4yKQwMg= 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=X8jCRgHZ; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Br35f+n+; 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="X8jCRgHZ"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Br35f+n+" Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 658Ix0vi345920 for ; Mon, 8 Jun 2026 21:49:04 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= 5yZGKQDFpwwqtyl5XA4nQYM3xUM5ByH30DMsiQvsyHU=; b=X8jCRgHZIB8BQlHv tsgXVsM4F/b2XgA6J+HCyya8k9fMZY58SltTJcpVAu6St/lCCejq5dN8BlV4fAS2 S/JRSUoRwfWjwbUQYfhnSL/XlP67jB0I6NN470qo4l/ph9x4A7p7CtWoqvLSooLK 2xx7+JaO8gp0OvRcQMWKj+S2UTdkRUeyUmUaIMp4rT9IGDRjcfJPH4G+tRZilJPA wS1MsU8xxoiJG/UEUJfjs1mLn0mbJYfQgB5ih1FHj8nqx6swUz9DBEJtzmHk8mZq 5YWPiTgm3T3lebChmoq3GgUm7USfY3JpPAgBqzyjcx1eg3qRuoO0/Y10/IZbAcik FeuEpQ== Received: from mail-pg1-f199.google.com (mail-pg1-f199.google.com [209.85.215.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4enxee29nx-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 08 Jun 2026 21:49:04 +0000 (GMT) Received: by mail-pg1-f199.google.com with SMTP id 41be03b00d2f7-c85dc345ac8so2377677a12.1 for ; Mon, 08 Jun 2026 14:49:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780955344; x=1781560144; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=5yZGKQDFpwwqtyl5XA4nQYM3xUM5ByH30DMsiQvsyHU=; b=Br35f+n+2wqMv6HwBFzFndeXCQHesVKuaXZZ6XuyO/8Wmu+CN8K6Izm0LMtO1bhvJZ v6dNuHbR2GSM1mABh21axmkZeH0OvVkXaN1jx0v5XkHljIhBKwnwtMQkWHFMVhPkTn4I Dsy9RFUZIh/yJCo8OWwgOJ+6lqw2eQpsVjE6Q4gu+LldA9ffl1rWp7JvBx71fERmf8XL GvHk7KXTS6bC0tR+pw+8UwYT790TXAmp6JLfERKaZQjwfTHfPJjgP190X/07aoL4lqCX 5wIVv1nQR1UOJnp9LKpLhtp93W/wbAxbbrhQ8iBCtvOcQxy0DVOjrIapjn1+yRoCuoFU +uEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780955344; x=1781560144; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=5yZGKQDFpwwqtyl5XA4nQYM3xUM5ByH30DMsiQvsyHU=; b=iqAOTT/RYlVqoUsLu7AUrokJjD3m13zAecr8/Zwgf/yvDSvyx8TM5sxa+tvj3Mz2pd ZLd5z/Q97ZRmlGn2NG/fsz/qTI5eHEaETnHce9znYZ8LlElYUNMKY4ujP/OHlRgR+EpF yobHGKJ9+NhyOIZOt5AtAtksbdq3CO+q74K6yEgEJbD3NUbhJPglZ0cgyX1qDQSAn0+K BrXOsLqiozdzhsPNlevvBF2u6i0yf9rx5Oa42lPOMGmyhD+3SxjHIJIeAdlQJM/9tf/D LFC0cIisF3lIOlde+i4+O3/IQjo2+JLMvJxMxeUnlXtKmjtpvN6CG4URPgWK0TQJ8SMj Q0Lg== X-Forwarded-Encrypted: i=1; AFNElJ8+1vlWzaePGJgsvA3JieRwyOLvrmwtIbNJW2xoPdbELMpCSxPY+84Jaj4VLw5Tj25ta0s20Auhm0jA/ik=@vger.kernel.org X-Gm-Message-State: AOJu0YymQNHZc2OMdN5+mknHAgCLmqZDF2UFfRY+zp44MM6ud/EoYybj wibFFGjty2ZCY81jpFA/r1jyMPSS3HSnLWOX8yKe/uK4AkmIAj6Caw6Ma5Wv1RQ6JhS9roq+M8s i3Av55eiiD45wxScD4mfj2rHwf3YT6dxDFpFjhFVxTYApNGJ8kdzQPHY81vY9INKt8pNQ4qGC8x E= X-Gm-Gg: Acq92OG5J9j9P2D0T/z6QDn5JI/BvYrqXKZf/1UfusFGb/pJ27dslB8yMBYI8rucqeO A86pgNo38Fg+300LcwpXgStHCzN8/kaESwb0AqghmQPi4ScCnR+kMxQA1GRhivCPgydhkQRXCyu Z19UwQWaKognGeyGIi+/Cd+kpnTAce2FW+Jz7e1jcw3m6Ti/v6+gvq82ma11GXSTqa9VZndmp2L 3szQ2Fzi0NYc+wTH/2bKGWuV15Lzn8tY76z4OAhQYj6W31JNkOmoeGi25HvovaKEN5x8EEvcu2T oCUTjb+/vTxHCFO1g8owVKzWG8AK9e8NWrX1MmrCyNPmhODACKbvAvHxRy0D6YZv2PV+dXhiOx3 2EdvQ2ixLg6nDbJQ8b9aBApMOEtEa+/4Ern/soBrTnahMgC8OiNX02q5hNHxWDWb6WQgLPQ== X-Received: by 2002:a05:6a00:10c5:b0:842:3aee:12c2 with SMTP id d2e1a72fcca58-842b0e661e5mr16882668b3a.18.1780955343668; Mon, 08 Jun 2026 14:49:03 -0700 (PDT) X-Received: by 2002:a05:6a00:10c5:b0:842:3aee:12c2 with SMTP id d2e1a72fcca58-842b0e661e5mr16882639b3a.18.1780955343219; Mon, 08 Jun 2026 14:49:03 -0700 (PDT) Received: from hu-arakshit-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-842828cf783sm19607485b3a.40.2026.06.08.14.48.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jun 2026 14:49:02 -0700 (PDT) From: Abhinaba Rakshit Date: Tue, 09 Jun 2026 03:17:28 +0530 Subject: [PATCH v11 6/6] arm64: dts: qcom: lemans: Add OPP-table for ICE UFS device node Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260609-enable-ice-clock-scaling-v11-6-1cebc8b3275b@oss.qualcomm.com> References: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> In-Reply-To: <20260609-enable-ice-clock-scaling-v11-0-1cebc8b3275b@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , "James E.J. Bottomley" , "Martin K. Petersen" , Adrian Hunter , Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Neeraj Soni , Harshal Dev , Kuldeep Singh Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, Abhinaba Rakshit X-Mailer: b4 0.14.2 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA4MDE5OSBTYWx0ZWRfX61gYrmwhnbR/ JNyzFm2F5LCo/xqs7VBzUMzXhawpXZf2kWwZ1dSUVybaEgRsxsNWazM5r+b7imcDaP71cLuFwjL c1mBjaH1lsjp+4ui8+bOTJf4e78kyEakmsCsqvdEeuxl8AxBIW3n9VJuSFNQdlDMUeQMSunuDW0 A3TdqwNU1wOphhZas9FXJo1lmnsYjqQAeECSRf/SGELwPVquPFNHII+7lAUxZRfZrQ1GbpatuCT hLM6aUdRyNkgeM2oMWx39BTl1XzSCIUzA6Nk+fMxl8aoZJqMqI/ob17FkCHltULoLGeQwicOiGO xGwRhs7IIa5SkihGe/C4Og5I5ojlGT5NZ56IuZvoBDws2OMlaizCamnyyKn97EfYnsvIf/JFhZH nvClPBz0thQHKYmDOerY1MCpalIceX3O3Eipoc1OZKgPCAiMwX2vr5p6wD0Y4b985fJer0rKVvl gMKbDHtAcCr21KU8i3A== X-Authority-Analysis: v=2.4 cv=V6BNF+ni c=1 sm=1 tr=0 ts=6a2738d0 cx=c_pps a=Oh5Dbbf/trHjhBongsHeRQ==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=EUspDBNiAAAA:8 a=ASeq7m8wwX9lxpDCPrQA:9 a=QEXdDO2ut3YA:10 a=_Vgx9l1VpLgwpw_dHYaR:22 X-Proofpoint-GUID: AJ1hwfMMClkzJjChPy55z_SImCAvHmyE X-Proofpoint-ORIG-GUID: AJ1hwfMMClkzJjChPy55z_SImCAvHmyE X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-08_05,2026-06-05_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 adultscore=0 spamscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 suspectscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606080199 Qualcomm Inline Crypto Engine (ICE) platform driver now supports an optional OPP-table. Add OPP-table for ICE UFS device nodes for LeMans platform. Signed-off-by: Abhinaba Rakshit --- arch/arm64/boot/dts/qcom/lemans.dtsi | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/lemans.dtsi b/arch/arm64/boot/dts/qco= m/lemans.dtsi index 353a6e6fd3acb22ef228bee340212b8b2c300957..f100d706edde465730873702f0b= 0a00b44050c23 100644 --- a/arch/arm64/boot/dts/qcom/lemans.dtsi +++ b/arch/arm64/boot/dts/qcom/lemans.dtsi @@ -3109,6 +3109,32 @@ ice: crypto@1d88000 { clock-names =3D "core", "iface"; power-domains =3D <&gcc UFS_PHY_GDSC>; + + operating-points-v2 =3D <&ice_opp_table>; + + ice_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-75000000 { + opp-hz =3D /bits/ 64 <75000000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + + opp-150000000 { + opp-hz =3D /bits/ 64 <150000000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + + opp-300000000 { + opp-hz =3D /bits/ 64 <300000000>; + required-opps =3D <&rpmhpd_opp_nom>; + }; + + opp-600000000 { + opp-hz =3D /bits/ 64 <600000000>; + required-opps =3D <&rpmhpd_opp_nom>; + }; + }; }; =20 cryptobam: dma-controller@1dc4000 { --=20 2.34.1