From mboxrd@z Thu Jan 1 00:00:00 1970 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 C34DC381E91 for ; Thu, 2 Jul 2026 17:23: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=1783013003; cv=none; b=Il6NW7exvXVliU1CdDIguddFgnAfxeXBGCjXrWDJCnJe+Iwd4gl/bWHx7Lu7RkRJr6ZTMyP3DDVmnVtFLae+iR4udgJyO3bqhk0e1wBgWdkylDy4LtlK8dCVFcu3xvI1Vj70BZy+ifWezgaaCs7IO6PZgNOlHOIdWLSXjr4kDHE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783013003; c=relaxed/simple; bh=SkClX+BRSZeyx/tE3dfrFyvjxOsfCTkuTsmKG3JwtRI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=kjFb374DSGxxMUpZz0Pdv+YLLrF96e19LSxvxZMpgMlo6phi6psXoN9DibrOW/y69kpgFpwB+Wq/kTeQoImBlDHKQTgqgCp+5cQ5TFMIrUkbu4kIaKZL1vp0mEvPoM7gAoDuqjrNMKMbLrO9BleRXv9hNa9cfM6DK48EahKjwBI= 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=iKJVY+5J; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=McelZnUi; 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="iKJVY+5J"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="McelZnUi" 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 662E3VRG666061 for ; Thu, 2 Jul 2026 17:23: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= ZVIXvfF08Zv8MetAzCraK24oPCTEkf7t2xGg8nxuk1k=; b=iKJVY+5JGWYbinO7 vCVteIYV2dbJKlLgwzBEy8CLoOTHlwwsJZVdpWaj9cbAyiSQiCX4FvtmIQ9/noAF vnDRv/uivl9ro4aFDR1bdSr8iCln7iBLcgEAM2J8LwqJWYgkiH+SJyWP6/gQrIFX Z4uLNF6+/XujjfpRk5vi8MGqDdoHwCe5JfQ3KrQfD+C81t1wgLMuaiFk3Cph32uU TSoPqAOyVSomrGzctC4j3uNs2ZvsZq00BKM/wjGqyxt+kTdxIETeeE/lmrdjjK2U N0mBud3dJIozy3JyVRxKW3NmpJjJEMDEX55J5AqkQ0FNsbQH3yaW+/XU+kdgfbtj EjisPA== Received: from mail-pg1-f198.google.com (mail-pg1-f198.google.com [209.85.215.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4f5knc2fat-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 02 Jul 2026 17:23:19 +0000 (GMT) Received: by mail-pg1-f198.google.com with SMTP id 41be03b00d2f7-c891ed872ddso2560379a12.2 for ; Thu, 02 Jul 2026 10:23:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1783012999; x=1783617799; 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=ZVIXvfF08Zv8MetAzCraK24oPCTEkf7t2xGg8nxuk1k=; b=McelZnUiGs4clG+lKu0NBALE1X+krXZQqNaKYQyFBAud1FOS0K633vCnON9UWDJlRi 87CKFAv8XAczwhs/dMb5ucjGnUncr/TvBjlUvmKItJct5KvHu+8joSWRILMBtsirXkUw MKvH6VI8UFaJ0kUt/JyHC2pCSIf761WD00Ri/Q1spOrjdcO7Tsn9zZJizDimUbr0zpEC BONkb2DTSICLXu+radnqfa/msnyXp39QcwFZBF+EBjWu65xQoSv2SXlGKA5UhzE60sYt 29ByPsDpPqezHFP9oIc94ue3Qs05RMQ7t41HcObAoUgw38GcQFsKKaF9PffAo+S+j6Af DTXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783012999; x=1783617799; 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=ZVIXvfF08Zv8MetAzCraK24oPCTEkf7t2xGg8nxuk1k=; b=f79eTDb/bv43Zi7JyneTeel/GWP1rKZyqvoAAXBPYRQEq5CTiU4/7Wo0r+O1fX5eAV CzoSeCfeaKQ/gJIShgxKdX4P50zt9WJ/uHc4ajwp++2kUrKkvttbOQpeUT3v4BKipBcm w6r//uDwCqInnHGr9IWOr9xpEBBbCOVV1uh0+8pZ7jfj4MWJMvh9uPFFpCyPnertdXni Wp+JAI7C4MfRzslDqcvH5zgLofw6fTgxR94E/A8rqkGzO1nO8+BOaaEDcfejs1F9WDA6 1xQckSvbZ9I0xUbP6/Ayx729w0fQzIGpcnCZOpFI3akCKp4txdYb+GR1FERmQ3ZgSvyq TIqw== X-Forwarded-Encrypted: i=1; AFNElJ8suiX2mQSs0X+NwuL5I57lpsL3u+G/pTMV4Cj97qSoS/cbHaYrHumczx27skzlTF+TfhZJq9d8/gcZsdc=@vger.kernel.org X-Gm-Message-State: AOJu0Yyxlj7SEyeWKwyFrr5Hpa0Jyw09lPFbF5CjGNKKQx/c8+TYIWsN FC7oAVti1KKQM39dNpqkk8Zf3Eymwv0zaK1MQydmSQhlodPEDaa0adBCvp9TN7cY1I5aja0sW8C BAr15lJ3IMF38gCN0noRNf0oxV4bLKW+MrieXHsvrvCQuDfCpuPLgsWMMCCdSaaV019g= X-Gm-Gg: AfdE7ckjf1ojoXwBmYDBVThMOjkWJtPmDYM+A+XQsuRE43dO/NYT3Cd4QuAxGgReILQ TsxXrZzsw4vPR1T74Cc6wnePIasogVN4vNSrNxP5fEwoh2IL1oYbnLY5fkn4qDrcEi3Y0PcabQg yZJ51iRHS2TsuLZ6PxV1Bjp7T8l2frHpCjXOUCYJJ+pnC7exsYqA10YZUsHk3C7RqokzWEPjozG BPVgRaDssVeiD92iLyjnGF80km3jZFet6uys4L2HVbsrNEhCbTXYNpR+yqw6ZWJMEht+e5GcgIK NvgNRZcwiLJ3qMFBhknqkrv6amv8vR5eaQZDMAg5/W8fkFI5uJ3KTCPXShaHNC5lFldxbp3NlYc 7pt9zgm0u04uaS5Luf9Iq7VgEPpxius0OjwrFdQJEmSg38g== X-Received: by 2002:a05:6a21:400d:b0:3a0:bc61:62e6 with SMTP id adf61e73a8af0-3bfed0f659bmr7633117637.8.1783012998549; Thu, 02 Jul 2026 10:23:18 -0700 (PDT) X-Received: by 2002:a05:6a21:400d:b0:3a0:bc61:62e6 with SMTP id adf61e73a8af0-3bfed0f659bmr7633060637.8.1783012997955; Thu, 02 Jul 2026 10:23:17 -0700 (PDT) Received: from hu-manafm-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-13b3ececfe4sm10564289c88.8.2026.07.02.10.23.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Jul 2026 10:23:17 -0700 (PDT) From: Manaf Meethalavalappu Pallikunhi Date: Thu, 02 Jul 2026 22:52:55 +0530 Subject: [PATCH v3 2/4] dt-bindings: power: limits: Describe Qualcomm SPEL hardware 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: 7bit Message-Id: <20260702-qcom_spel_driver_upstream-v3-2-434d50f0c5b0@oss.qualcomm.com> References: <20260702-qcom_spel_driver_upstream-v3-0-434d50f0c5b0@oss.qualcomm.com> In-Reply-To: <20260702-qcom_spel_driver_upstream-v3-0-434d50f0c5b0@oss.qualcomm.com> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , "Rafael J. Wysocki" , Bjorn Andersson , Konrad Dybcio , Daniel Lezcano Cc: Gaurav Kohli , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, Manaf Meethalavalappu Pallikunhi X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1783012984; l=3981; i=manaf.pallikunhi@oss.qualcomm.com; s=20260206; h=from:subject:message-id; bh=SkClX+BRSZeyx/tE3dfrFyvjxOsfCTkuTsmKG3JwtRI=; b=yClmCf9za530h3JJpKiRDGS2JiTZ2o7Vib+IN6Cvc+NhSYxbjEUsbUEJGgvNtymDJpCXeF48A wqoVqi+0pdrCyJryFPTEUM/291Ql+8RkOHGrUnU2SA3eQ4aszmawO3H X-Developer-Key: i=manaf.pallikunhi@oss.qualcomm.com; a=ed25519; pk=oZ3x9jh+FDyPwxHmCbyzEMQHMzKqrH6hUbbL7dEBe2g= X-Proofpoint-ORIG-GUID: _eTqOWniRNPnKFblboOVmsUYttLcHbea X-Authority-Analysis: v=2.4 cv=a4kAM0SF c=1 sm=1 tr=0 ts=6a469e87 cx=c_pps a=Qgeoaf8Lrialg5Z894R3/Q==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=gEfo2CItAAAA:8 a=EUspDBNiAAAA:8 a=VwQbUJbxAAAA:8 a=3TBu0n0mUwvVB62lRZQA:9 a=QEXdDO2ut3YA:10 a=x9snwWr2DeNwDh03kgHS:22 a=sptkURWiP4Gy88Gu7hUp:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzAyMDE4MyBTYWx0ZWRfX6WlEvaxvqkN1 B2al4MhVjjfXtPPX5biyRgWAsRFidrqoYwiltS6SXhNpGkTyi4Wl7E9LaysRl0rH56tuilWqueZ ALjakFUH65RJJs5ERhvs+fkOOPFe47twJo89WfkORJXJgQuTFReWRtG6hhojlLWABW3iZf+uQpo /T666M2N0tUyIFhD/aEuGCi+Kcwe9h66utTpeKB4SNtjXoJpxzYILLG72IE6KvRp5vy4RMBAUtr mfR6lpLwwaVYNJwUJ/n+/8lFUMfw4+wSXwCnJBhtDytlisZ21nRX1h8q3XuDgyZZjtLNkaTHzx8 4SX/HDIVRC4a/j33x/mYGUmNzWzgZ31FFxFk4Djuxui/A9msnqgp16Ll058nWGc+Geec14hKgpt tfZgz2FeO0VVrvZ8kgDJQglqNbxXHdq4746i+3YaKW4A/oXUG+UCKus8RkxAxs9YAGTLXuNojLT fapNzOUQ1kUdQuXGw3g== X-Proofpoint-Spam-Info: AW1haW4tMjYwNzAyMDE4MyBTYWx0ZWRfX4s4kf5D2YLp3 VEt7j1o094AZQgzgdvtqzzSNyj93pJ1mZDPhyHJMU5Kl4tUU89JLoX0CFtQeWcDpXbT0UR/kMDR LStkyA/+D5aX1JMfdt0NmMwpyyzcxJA= X-Proofpoint-GUID: _eTqOWniRNPnKFblboOVmsUYttLcHbea 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-07-02_02,2026-06-26_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 clxscore=1015 impostorscore=0 malwarescore=0 adultscore=0 suspectscore=0 priorityscore=1501 bulkscore=0 spamscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607020183 The Qualcomm SPEL (SoC Power and Electrical Limits) is a hardware block that provides power monitoring and limiting capabilities for various power domains in Qualcomm SoCs. SPEL enforces power consumption limits to prevent thermal overload, maintain system stability, and comply with platform power budgets. It provides: - Hardware-enforced power capping with configurable power limits - Time window controls for power averaging - Energy counter monitoring for each power domain - Automatic throttling when power limits are exceeded The hardware supports multiple power domains including system (SYS), SoC, CPU clusters, GPU, memory, and peripheral subsystems. Each domain can have independent power limits and monitoring. Add a DeviceTree binding to describe the SPEL block on Qualcomm's SoC. Signed-off-by: Manaf Meethalavalappu Pallikunhi --- .../bindings/power/limits/qcom,glymur-spel.yaml | 61 ++++++++++++++++++++++ MAINTAINERS | 7 +++ 2 files changed, 68 insertions(+) diff --git a/Documentation/devicetree/bindings/power/limits/qcom,glymur-spel.yaml b/Documentation/devicetree/bindings/power/limits/qcom,glymur-spel.yaml new file mode 100644 index 000000000000..e8d974cbdc64 --- /dev/null +++ b/Documentation/devicetree/bindings/power/limits/qcom,glymur-spel.yaml @@ -0,0 +1,61 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/power/limits/qcom,glymur-spel.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Glymur SoC Power and Electrical Limits (SPEL) + +maintainers: + - Manaf Meethalavalappu Pallikunhi + +description: + The Qualcomm SPEL (SoC Power and Electrical Limits) is a hardware block that + provides power monitoring and limiting capabilities for various power domains + in Qualcomm SoCs. + + SPEL enforces power consumption limits to prevent thermal overload, maintain + system stability, and comply with platform power budgets. It provides + - Hardware-enforced power capping with configurable power limits + - Time window controls for power averaging + - Energy counter monitoring for each power domain + - Automatic throttling when power limits are exceeded + + The hardware supports multiple power domains including system (SYS), SoC, + CPU clusters, GPU, memory, and peripheral subsystems. Each domain can have + independent power limits and monitoring. + +allOf: + - $ref: power-limit-controller.yaml# + +properties: + compatible: + const: qcom,glymur-spel + + reg: + maxItems: 3 + + reg-names: + items: + - const: config + - const: constraints + - const: nodes + +required: + - compatible + - reg + - reg-names + +unevaluatedProperties: false + +examples: + - | + power-limits@ef3b000 { + compatible = "qcom,glymur-spel"; + reg = <0x0ef3b000 0x1000>, + <0x0ef3d000 0x1000>, + <0x0ef3e000 0x1000>; + reg-names = "config", + "constraints", + "nodes"; + }; diff --git a/MAINTAINERS b/MAINTAINERS index db3d8c441e4c..44e90b2d5e85 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -22368,6 +22368,13 @@ F: Documentation/networking/device_drivers/cellular/qualcomm/rmnet.rst F: drivers/net/ethernet/qualcomm/rmnet/ F: include/linux/if_rmnet.h +QUALCOMM SPEL POWERCAP DRIVER +M: Manaf Meethalavalappu Pallikunhi +L: linux-arm-msm@vger.kernel.org +S: Maintained +F: Documentation/devicetree/bindings/power/limits/power-limit-controller.yaml +F: Documentation/devicetree/bindings/power/limits/qcom,glymur-spel.yaml + QUALCOMM TEE (QCOMTEE) DRIVER M: Amirreza Zarrabi L: linux-arm-msm@vger.kernel.org -- 2.43.0