From nobody Mon Feb 9 01:50:53 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 825C721D3E8 for ; Thu, 1 Jan 2026 16:52:19 +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=1767286341; cv=none; b=QmqgHBsv3jRVgGK2+VgdWPl/zvJZf3EKD/Jx1N3a0RK70GRQ3R0aci7VghFFWiO79LRPeU6hp4Pek8emYa/xa1bfbsR4+c4BNm6+eNBSMgmiq1usKxLh+29Fob+6smqrPFCB4pvgzNEZTcRNgHBoRRCBLnBrFwPtc4FgCC/R93I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767286341; c=relaxed/simple; bh=CN9+piqYU2nRNNc814BMIlhkmO7iuBRqZMMzlGDUZQU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KRo5oJhngAEwAEG4AnHajUB8wzf2GFKCanawzdCerhmNbMU4OMlOKibxpPIdp67B9htDCbI2Fe/LzERfOx7bwBXygcbA+tMnkobe2b7mq4RcbQ7GzguHX/HgecbClovldA4aPe2sHI9WdTPsqAECxg7AlHyWpEq7CK14u/oAxPg= 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=l0Euvl9Y; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=cYc1XU/c; 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="l0Euvl9Y"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="cYc1XU/c" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6014qMUG1236050 for ; Thu, 1 Jan 2026 16:52:13 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=/85oUn6Cidu DRwj+B41HKFKfTsIhRmw6/va6Abau3QA=; b=l0Euvl9Yso5DbB5Tah+Hh9zbgpI LX3we6DjDdj3Efkx+2bJTUbENyqDolZZrHHs2Gxbq/M8/LkXBq/lVvtRYZL7nEfj dgWjKXl0gWQk+yCKMmlvlAvfIWYyMidE4W+K01G+4HGMsezAuFA1FJ34V6an6nnq PLzNVoYnUGeI+hn2z2/LFFyEf2d6acx7fRbqANLJXmEfljD0DN0Mdmlk+MrbtXg7 0n/MeR5Sp/Ul6xTU3TPEXsTolLsK+YKaw1vOf2/JD1Ambn+lrFFQS9FtkkfpM14X lbXQXwSfOE71rkTKT+38jvkGGjKxKPS1AO1Vr93H9tIx+GQKSK2ijHfGG2Q== 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 4bd76n9sr6-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 01 Jan 2026 16:52:13 +0000 (GMT) Received: by mail-pl1-f200.google.com with SMTP id d9443c01a7336-29f25e494c2so125332895ad.0 for ; Thu, 01 Jan 2026 08:52:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767286333; x=1767891133; 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=/85oUn6CiduDRwj+B41HKFKfTsIhRmw6/va6Abau3QA=; b=cYc1XU/cGgLoEUxgOJPG8sjDeqgUFJFMmJA/wlCu5tqfCrZvEUoj+2gL69tftQu3pw jmrGM6QctvljY87MWj/os9b84h9bIvfwwRsyHKr5l7Q7S7tGD02so3HYYG+amRmryeOw Uua5CsiiG4m7Gfpj5RcWhy5QurY17ZvruUv++FWS9yXyVlWJJvbA/DKZuVrS7r8SFEy0 g7jofieVBiQ00QpT7FxLIxxTIjn5axTtpxMVVGy6V4TZvlyEWcDzZIwtBDNyAfV96w7c mjbO9s3v+vZqAlFE26fR+RK0R4EdrYvbsxG7SwSKyCLTjoxAD17bV2ZWNsW2wPaTjAl6 HLzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767286333; x=1767891133; 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=/85oUn6CiduDRwj+B41HKFKfTsIhRmw6/va6Abau3QA=; b=IIDt9cJtoSvG60xtZgD6rrSLbmeH9tzQ7X/iniG0+wnM4gacQ3TPUT1GNiso2W+yBC uole8OhDbfio6/Nav3++OqglgyxU1rKHjtXTCIkDuNd6o/iJHV3nW8ZLCUS1JwqINzde IxgMf4d7kOcN9tnKZMVnadxqRYb2b3HwY2L3n9a4BRTZ49+JEPRZnMoX5g14b5TB0zaL 9H3jD2tgziLH7eI7JWTLbie6qRNbFff30OxliOniGWafjGoNVWAZ9mn3eQ6VbviRjv6q tWct7lyudQhRi+X2Le1aPPOAHSBok7er9VUiGbrimipsD1ngj2c75gwshh+GZR8JvT2/ 8n9g== X-Forwarded-Encrypted: i=1; AJvYcCXhGeCB/EMUsf2KxljxTMD23YCj4LUtPhauRVm05qYXr4fOdjzWIybAyop9Yj6ZY7odAXoU9sB0xamhFXY=@vger.kernel.org X-Gm-Message-State: AOJu0YwsR9L69p+9Aj6pxzpsnSP7Zg7B/0LmxDXgJhHW5MvkwUp6RsT1 UvyVS0BO2dcUt6TyFufRD/Q0D+fV0f/BGlGK63r6WktcHNASAdr4tBKA+XOEI2kCnxEUYq97xa7 rZqKWt6i7trZA/FIx9B2vLMjbupAySCyipM4qQr96RkzIiwB5TcYSdHIXPAZOWHVK2SQ= X-Gm-Gg: AY/fxX6gULLTiSH5zcgX55uxSabqOC8omE81GMfYLpXtNQ7LGDuYvgUp82ZXQvoN2G6 83owa5x2uQr8krcO+FGQEciksHuTWyfGEDqovj4Fu4Ga9j2e/el+HWiafzyEKwnfI+diMiPDhp3 DJelMRAoJ5+r4homMYkdnuozwer0JZ0rQ5oCZzj2By9uXTNc2FyqDMKlbXbv4G/o+4IapaKZl/E upU/Aitx5WjO/FijFdbPpUOOMRFWDzWyKqpXuizImMj0MZwL/jIoXGfzHk58AE0d2KnPAa5Cyx8 gZyMD5weJ4qO37e/jl4hn2Vy8W0/r3a1d9Dc1r3b/wfH6bvcExsYN9Zo93dYGSwOsjfBBrToomO ttSU28POV6GFkSpzNcIdzcwS7Ng== X-Received: by 2002:a17:902:f641:b0:2a0:acdb:ce0c with SMTP id d9443c01a7336-2a2f0d5e6b6mr451197385ad.29.1767286332620; Thu, 01 Jan 2026 08:52:12 -0800 (PST) X-Google-Smtp-Source: AGHT+IE0LuO2brOjcuc/oced29DvcpXqw7het94MNPTu1lzNBZWBQefRp6AgtYNRInRgnHSXcGSX6A== X-Received: by 2002:a17:902:f641:b0:2a0:acdb:ce0c with SMTP id d9443c01a7336-2a2f0d5e6b6mr451197225ad.29.1767286332119; Thu, 01 Jan 2026 08:52:12 -0800 (PST) Received: from work.. ([120.60.56.77]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2a2f3c9c0acsm353854135ad.44.2026.01.01.08.52.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jan 2026 08:52:11 -0800 (PST) From: Manivannan Sadhasivam To: andersson@kernel.org, konradybcio@kernel.org Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, mani@kernel.org, Manivannan Sadhasivam Subject: [RFC PATCH 1/1] soc: qcom: rpmh-rsc: Register s2idle_ops to indicate s2ram behavior in s2idle Date: Thu, 1 Jan 2026 22:21:58 +0530 Message-ID: <20260101165158.7251-2-manivannan.sadhasivam@oss.qualcomm.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20260101165158.7251-1-manivannan.sadhasivam@oss.qualcomm.com> References: <20260101165158.7251-1-manivannan.sadhasivam@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: AW1haW4tMjYwMTAxMDE1MiBTYWx0ZWRfXx08vfPA26Lq2 rHCcTws21SFs5E8ux8fZ5DloHffjlqE3O6MixYzZ9EI9vZh7V90t54fvSzeDo9iBhWjOOmitGap IlH4xkUke3BEwGCAJ1eIKoySXGF3TzIBGOlvObyAQ1iSVKwCluEqqc9xFjTeHstJc0Xtefy33Gh KTKW6dpmicwyboNmVnGLSZJ4wmJ1dByqtcqlJzXIfAZG2dVNseQJfg9UU+ydVIWkYemtd3Abem8 pJXn+As3nk9vMawI/T96/c7hvkVqKEbdgzmLrXnOJLlfRiVcQfRtSXvvS1wEML3YleBXAif/qZH sq69oN1edrvVYs+yHxFZ5b/J5lqBeJ+3esTN0otma4hD4Sz5hsBbi6tgSdRe3JZQge5zHzkBBVm wDJXYL2JdJ3aHsAIFZv9yz7pGRX4riu3FGeCmjnTKxo4O9WPe6ltAMk1m65G6vwxdsWvz/6cNQe k9/UMoS/yXp17p423YA== X-Proofpoint-ORIG-GUID: IRcnWhIy10_c3N5y4xhTMYVSjH4MQR6x X-Authority-Analysis: v=2.4 cv=TdmbdBQh c=1 sm=1 tr=0 ts=6956a63d cx=c_pps a=IZJwPbhc+fLeJZngyXXI0A==:117 a=8IDmrAvK+qXhUoYjRFLHtA==:17 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=EWIu1AOeq_QherZyXQMA:9 a=uG9DUKGECoFWVXl0Dc02:22 X-Proofpoint-GUID: IRcnWhIy10_c3N5y4xhTMYVSjH4MQR6x 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=2026-01-01_06,2025-12-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 lowpriorityscore=0 priorityscore=1501 phishscore=0 spamscore=0 bulkscore=0 adultscore=0 suspectscore=0 clxscore=1015 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601010152 Content-Type: text/plain; charset="utf-8" RPMh in some Qcom SoCs like Makena (SC8280XP) implement deeper low power state similar to that of Suspend to RAM (S2RAM) despite PSCI firmware only supporting s2idle. So the OS never knows the platform will be transitioning to deeper low power state and the device drivers do not prepare for the possible power loss during system suspend. So register the s2idle_ops for this platform and invoke pm_set_{suspend/resume}_via_firmware() APIs in the callbacks to let the drivers know that the firmware is going to get involved in the suspend process and they need to be prepared for that by taking actions such as shutting down or resetting the devices. Signed-off-by: Manivannan Sadhasivam --- drivers/soc/qcom/rpmh-rsc.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/drivers/soc/qcom/rpmh-rsc.c b/drivers/soc/qcom/rpmh-rsc.c index c6f7d5c9c493..a7a03b50c289 100644 --- a/drivers/soc/qcom/rpmh-rsc.c +++ b/drivers/soc/qcom/rpmh-rsc.c @@ -25,6 +25,7 @@ #include #include #include +#include #include =20 #include @@ -1028,6 +1029,25 @@ static int rpmh_probe_tcs_config(struct platform_dev= ice *pdev, struct rsc_drv *d return 0; } =20 +static int rpmh_rsc_s2idle_begin(void) +{ + pm_set_suspend_via_firmware(); + + return 0; +} + +static int rpmh_rsc_s2idle_prepare_late(void) +{ + pm_set_resume_via_firmware(); + + return 0; +} + +static const struct platform_s2idle_ops rpmh_rsc_s2idle_ops =3D { + .begin =3D rpmh_rsc_s2idle_begin, + .prepare_late =3D rpmh_rsc_s2idle_prepare_late, +}; + static int rpmh_rsc_probe(struct platform_device *pdev) { struct device_node *dn =3D pdev->dev.of_node; @@ -1122,6 +1142,9 @@ static int rpmh_rsc_probe(struct platform_device *pde= v) dev_set_drvdata(&pdev->dev, drv); drv->dev =3D &pdev->dev; =20 + if (of_machine_is_compatible("qcom,sc8280xp")) + s2idle_set_ops(&rpmh_rsc_s2idle_ops); + ret =3D devm_of_platform_populate(&pdev->dev); if (ret && pdev->dev.pm_domain) { dev_pm_genpd_remove_notifier(&pdev->dev); --=20 2.48.1