[PATCH v3 2/4] dt-bindings: power: limits: Describe Qualcomm SPEL hardware

From: Manaf Meethalavalappu Pallikunhi

Date: Thu Jul 02 2026 - 13:24:06 EST


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 <manaf.pallikunhi@xxxxxxxxxxxxxxxx>
---
.../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 <manaf.pallikunhi@xxxxxxxxxxxxxxxx>
+
+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 <manaf.pallikunhi@xxxxxxxxxxxxxxxx>
+L: linux-arm-msm@xxxxxxxxxxxxxxx
+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 <amirreza.zarrabi@xxxxxxxxxxxxxxxx>
L: linux-arm-msm@xxxxxxxxxxxxxxx

--
2.43.0