From nobody Thu Apr 9 08:58:36 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 5CD303ED111 for ; Tue, 10 Mar 2026 08:08:20 +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=1773130101; cv=none; b=dwFsjQB3o6/4a5UuzDmw8Uzxy7vMK9gSo+dP6fkxdWxVW8OwU91x2I9B+a44zYFoqf2FTnhWUKw1IXd1dJF5DcXhZ3NNcf2P/qwyH68a0RR/xKcXzct70S8V5wI7Ic/2LbW4UDOi9nfxMm3ed5w2ePOrTtUcSWsUWK8KtZrF40A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773130101; c=relaxed/simple; bh=G9ixEOwpkM6AQ7Gv5+X9OI3maNywSVPU6yqttuFKDno=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=R2xKVB9NQDhTtr537QjenZhOCjIVXLUXwn31QqHTuCubB99W55r44+QUb7uyk+KgNktZTdQmSPOnGmhvgwWUMVbsHqv9XZp8M64k9v+0+RitZ74i8CMawS72G59U70G1BIIVeDaYnYHbcJebJvyZsUoU8qkwJ8YLmIb/F1TMYMo= 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=RDoUPGkX; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=IB5o7Ms4; 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="RDoUPGkX"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="IB5o7Ms4" 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 62A2EUvr2020757 for ; Tue, 10 Mar 2026 08:08:19 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= aLh+yiUZuoUGLqqiHdB7dyI7NuqsJNxkPrS+/r6wS+E=; b=RDoUPGkXvdLMsiJ6 ZRKPC39R/Glo+E9wnvHk5LHn5O5sAkdEbk7W+uUtjKNJTLm3jrafvcsj91ZpNFuN ZkOPewREZuVNcE4V4d0Zd+D8Of8NU8Y4zmNOZzpttVr2+YhY6e6PUexwp4KOMhXc GE1Qr906r/8OkiPw8v0lU54yjcy3QwMcjhycrXyhmb42wwg0fENn4VN6p50MzkSo 8pbWJXoVNpkvxmoSQU30d9aOVJBLIfaPra8Q1wP2oxNSqNSgAmqHCerL83MYKuUB UtXbObV3S+lwhvS8R1ac63QtdZrKMDHgAFa9mZ4UFfnsbRe3uuu8dAWfGSmD1P2U gnW7aw== Received: from mail-pj1-f70.google.com (mail-pj1-f70.google.com [209.85.216.70]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csyhbu7v0-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 08:08:19 +0000 (GMT) Received: by mail-pj1-f70.google.com with SMTP id 98e67ed59e1d1-3594620fe97so64869531a91.1 for ; Tue, 10 Mar 2026 01:08:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773130098; x=1773734898; 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=aLh+yiUZuoUGLqqiHdB7dyI7NuqsJNxkPrS+/r6wS+E=; b=IB5o7Ms4nqSNGjbcsIuQIS0umzyCBFffZoPqNYJSB8s4zUNP6MrWTbgedWYFSxaWPB QXXVNmGtoYMLIgsgBMjUgg66Xb1KMzJlf1NFAEoqLTRtrhINDEiBSgz9a25wOFQ1oLs/ pUzlvT9SIBgEch/FNGuL+mytSywCO9s0PnaWj1uIkjMrVjTNvCJ9VFmuVM2gBfKamoxx O58i8zjCD5SF/w3o6wLs2fPhXJZE7GylAkOESR0a0qrF0I6k410VAApVkqG1vB0tX40W Qat5dU+VCfxhktEJ6g+vHIoFy+j1w7mJuthB2NkzPM8dajzmzG8BxHX28iIxanRSEWMi iAiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773130098; x=1773734898; 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=aLh+yiUZuoUGLqqiHdB7dyI7NuqsJNxkPrS+/r6wS+E=; b=reD7+OBnX0gp+hfEdWti6II2mzPNpmBfQZ+R7ABU3lluaX2ywQtTHWLXTqWoVvWI4M zfh+7nq00FtAqNpV2E4TZ5w4TYpoWEXOcX85zInay3wfCvG7yPHAXJzgk4QyuGippJNm g0YEcMoK34S2tnwbLiKYlDPedBEIuqHeKp1cK+0VVjOk8Gab/LaSF3GA/eWILB2Q7y5L dsq00SF1npT0UyQYEvCEKN9t+xQhLd6TAo4RKvX3aTQhxId56JiSMc4dHZFR9Wb7FZF+ 0d7QrQp3isrBu8UvOpywZMv4xghGbjYZcE7Ml6u8bTGUKBFNhkALeGs+UPALnh8kvWDI HaAQ== X-Forwarded-Encrypted: i=1; AJvYcCVDhbUzFop34bJ0s/6SQ/XKcCkomLdfp49XcX1UQLTYqlkqi9r9gK6XYiSuRovKF+/hxtMZ+iULNPclF60=@vger.kernel.org X-Gm-Message-State: AOJu0YyH6pkOUxQMDfvy9Ay5yc5Fe9cQhfJkvBluK81M1gzGCMO1SrWK vHsEVm2u7nDcluTcwPpjD5yy87J7W1ORzZQmNgJNopj2TaXnZzMPsFj13X9GxyUDq4p23UCcKdn 7SxUJkSbW8MnW3oRK0IeGrEeiM8QMN5dBPfG9BW9dfxr5BHdJeIb+C/EwbcZ36VGQOv0= X-Gm-Gg: ATEYQzw/d3EAcmw8ExjaohU4Zcqr9wnKuBAg2PYK+fVjJNtnXJAYuBAlboF8Cz9WNTH aKQY2bOBWD7+7wswzBtIbu+hr93PBp4FnqRxJeLrEAuh2/i6Zhu7JXgnwuTcwY6MW0wm3SUWrNy 603tcL4IHPeVZhfeQm0091FsyY9qfypqSUsCV94AIEsYHs87WG781QlkjHP7FqifaXaeuc1vcnY Fqb2Vge6QKAOuA9uEGG2oDaTXz3o+7Ll9f9bDONBnCDD0SAVmZHkmMtEF80EsgsiX+F6uynnO8L Z8Qo7xwZcetLn9S+6CFx4dVN7TljYHa66cfeF6WPlwoUMMjgWJyRe8zu+6T1jdhf4DGkf7j9Mq+ PXUR5MeLGHSFyOd/9O37U9qe+UcJa75DP3bcrYlSku6g5vyE= X-Received: by 2002:a17:90b:4d86:b0:349:2154:eef4 with SMTP id 98e67ed59e1d1-359be2339a2mr13209870a91.5.1773130098317; Tue, 10 Mar 2026 01:08:18 -0700 (PDT) X-Received: by 2002:a17:90b:4d86:b0:349:2154:eef4 with SMTP id 98e67ed59e1d1-359be2339a2mr13209823a91.5.1773130097821; Tue, 10 Mar 2026 01:08:17 -0700 (PDT) Received: from hu-hdev-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c739e195c40sm11121969a12.31.2026.03.10.01.08.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 01:08:17 -0700 (PDT) From: Harshal Dev Date: Tue, 10 Mar 2026 13:36:37 +0530 Subject: [PATCH v2 11/11] soc: qcom: ice: Allow explicit votes on 'iface' clock 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: <20260310-qcom_ice_power_and_clk_vote-v2-11-b9c2a5471d9e@oss.qualcomm.com> References: <20260310-qcom_ice_power_and_clk_vote-v2-0-b9c2a5471d9e@oss.qualcomm.com> In-Reply-To: <20260310-qcom_ice_power_and_clk_vote-v2-0-b9c2a5471d9e@oss.qualcomm.com> To: Herbert Xu , "David S. Miller" , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Bjorn Andersson , Konrad Dybcio , Abel Vesa , Manivannan Sadhasivam , cros-qcom-dts-watchers@chromium.org, Eric Biggers , Dmitry Baryshkov , Jingyi Wang , Tengfei Fan , Bartosz Golaszewski , Yuvaraj Ranganathan , David Wronek , Luca Weiss , Neil Armstrong , Melody Olvera Cc: Brian Masney , Neeraj Soni , Gaurav Kashyap , linux-arm-msm@vger.kernel.org, linux-crypto@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Krzysztof Kozlowski , Konrad Dybcio , Harshal Dev X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773129997; l=1945; i=harshal.dev@oss.qualcomm.com; s=20251124; h=from:subject:message-id; bh=G9ixEOwpkM6AQ7Gv5+X9OI3maNywSVPU6yqttuFKDno=; b=RlNpgKM72mbBIQq5XMGzBE6lqHa0BE2Fex6m97GZXlEgTgjQYsdPDVS9skum6BMu2Tl8ep9yG OCR2btGFZG/BMmTsZsGbDBpinmrel1g1YGy65NrX6qlxi+K2Z5fSTBk X-Developer-Key: i=harshal.dev@oss.qualcomm.com; a=ed25519; pk=SHJ8K4SglF5t7KmfMKXl6Mby40WczSeLs4Qus7yFO7c= X-Authority-Analysis: v=2.4 cv=Rcmdyltv c=1 sm=1 tr=0 ts=69afd173 cx=c_pps a=0uOsjrqzRL749jD1oC5vDA==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=mORad39sGlqzgvJT29EA:9 a=QEXdDO2ut3YA:10 a=mQ_c8vxmzFEMiUWkPHU9:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDA2OCBTYWx0ZWRfX0WEOk14DvEVT WG6dgmWbOsCu+JUj6ub8W2iOcaSdbdhKqY5eRlgA5dCSA9Mry99osPIwtUDkJvCaBbCEPl/8HLL 027VqyTyLtcSTfJPsmoISZIRf8Jk3oS0p9Y3Al0XY4DkH95Y1eEsHT2Dn8hiR/tR5dBPNhCt2V2 9aVtsOsb9B7ijrXIFTkER94H3wNhuDm8WL9AwEbjFOZxD3+5f9/+U/m/siEAlnbgO5kCGGhmkzl flmopnyBzXeclc/GUlSaeINfcynaeSODY+R6CjXOClT6oVPUdFsnx4lJWw6a8erPy7LQOphvrdC DUH4XtIE+mW8YA63ogs8QTfvS6kDhjDet07f58/ApIZ19jg4mLZLVS4OP/PoF0cYHu69u43vH4K mCNuk5OTRI54QUE+sS39mTZ++M3wBMDHfisTVl0eWYEqllEWDBtCqT3fRWzkTm2whXL1/doqOTe XplAob+dM4gxYEY+RsA== X-Proofpoint-GUID: gYPhCOIsmP_xZ-lHvwIROZ7EAHXggDEh X-Proofpoint-ORIG-GUID: gYPhCOIsmP_xZ-lHvwIROZ7EAHXggDEh X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 adultscore=0 suspectscore=0 spamscore=0 priorityscore=1501 impostorscore=0 clxscore=1015 bulkscore=0 phishscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100068 Since Qualcomm inline-crypto engine (ICE) is now a dedicated driver de-coupled from the QCOM UFS driver, it explicitly votes for its required clocks during probe. For scenarios where the 'clk_ignore_unused' flag is not passed on the kernel command line, to avoid potential unclocked ICE hardware register access during probe the ICE driver should additionally vote on the 'iface' clock. Also update the suspend and resume callbacks to handle un-voting and voting on the 'iface' clock. Fixes: 2afbf43a4aec6 ("soc: qcom: Make the Qualcomm UFS/SDCC ICE a dedicate= d driver") Signed-off-by: Harshal Dev --- drivers/soc/qcom/ice.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/drivers/soc/qcom/ice.c b/drivers/soc/qcom/ice.c index b203bc685cad..e05dc7b274e0 100644 --- a/drivers/soc/qcom/ice.c +++ b/drivers/soc/qcom/ice.c @@ -108,6 +108,7 @@ struct qcom_ice { void __iomem *base; =20 struct clk *core_clk; + struct clk *iface_clk; bool use_hwkm; bool hwkm_init_complete; u8 hwkm_version; @@ -316,6 +317,13 @@ int qcom_ice_resume(struct qcom_ice *ice) err); return err; } + + err =3D clk_prepare_enable(ice->iface_clk); + if (err) { + dev_err(dev, "failed to enable iface clock (%d)\n", + err); + return err; + } qcom_ice_hwkm_init(ice); return qcom_ice_wait_bist_status(ice); } @@ -323,6 +331,7 @@ EXPORT_SYMBOL_GPL(qcom_ice_resume); =20 int qcom_ice_suspend(struct qcom_ice *ice) { + clk_disable_unprepare(ice->iface_clk); clk_disable_unprepare(ice->core_clk); ice->hwkm_init_complete =3D false; =20 @@ -584,6 +593,8 @@ static struct qcom_ice *qcom_ice_create(struct device *= dev, if (IS_ERR(engine->core_clk)) return ERR_CAST(engine->core_clk); =20 + engine->iface_clk =3D devm_clk_get_optional_enabled(dev, "iface_clk"); + if (!qcom_ice_check_supported(engine)) return ERR_PTR(-EOPNOTSUPP); =20 --=20 2.34.1