dt-bindings: thermal: Add Qualcomm MBG thermal monitor support

Add bindings for the Qualcomm MBG (Master Bandgap) temperature alarm
peripheral found on the PM8775 PMIC. Unlike the existing SPMI temp alarm
peripheral, the MBG peripheral supports both hot and cold threshold
monitoring across two programmable levels (LVL1 and LVL2), with interrupt
status reported via a fault status register over SPMI.

Signed-off-by: Satya Priya Kakitapalli <quic_skakitap@quicinc.com>
Co-developed-by: Sachin Gupta <sachin.gupta@oss.qualcomm.com>
Signed-off-by: Sachin Gupta <sachin.gupta@oss.qualcomm.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@kernel.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260722-spmi-mbg-driver-v3-1-ef73064f2789@oss.qualcomm.com
This commit is contained in:
Satya Priya Kakitapalli
2026-07-22 16:14:41 +05:30
committed by Daniel Lezcano
parent bcc6d886e5
commit 5d901d7d10
2 changed files with 76 additions and 0 deletions

View File

@@ -193,6 +193,10 @@ patternProperties:
type: object
$ref: /schemas/thermal/qcom,spmi-temp-alarm.yaml#
"^temperature-sensor@[0-9a-f]+$":
type: object
$ref: /schemas/thermal/qcom,pm8775-mbg-tm.yaml#
"^typec@[0-9a-f]+$":
type: object
$ref: /schemas/usb/qcom,pmic-typec.yaml#

View File

@@ -0,0 +1,72 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/thermal/qcom,pm8775-mbg-tm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm's SPMI PMIC MBG Thermal Monitoring
maintainers:
- Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
- Kamal Wadhwa <kamal.wadhwa@oss.qualcomm.com>
description:
Qualcomm's MBG(Master Bandgap) temperature alarm monitors the die
temperature and generates an interrupt if the PMIC die temperature is
over a set of programmable temperature thresholds. It allows monitoring
for both hot and cold, LVL1 and LVL2 thresholds, which makes it different
from the existing temp alarm peripheral. The interrupt comes over SPMI
and the MBG's fault status register gives details to understand whether
it is a hot/cold and LVL1/LVL2 violation.
properties:
compatible:
const: qcom,pm8775-mbg-tm
reg:
maxItems: 1
interrupts:
maxItems: 1
io-channels:
items:
- description: ADC channel, which reports chip die temperature.
io-channel-names:
items:
- const: thermal
'#thermal-sensor-cells':
const: 0
required:
- compatible
- reg
- interrupts
- io-channels
- io-channel-names
allOf:
- $ref: thermal-sensor.yaml#
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/irq.h>
pmic {
#address-cells = <1>;
#size-cells = <0>;
temperature-sensor@d700 {
compatible = "qcom,pm8775-mbg-tm";
reg = <0xd700>;
interrupts = <0x1 0xd7 0x0 IRQ_TYPE_EDGE_RISING>;
io-channels = <&pm8775_adc 0x3>;
io-channel-names = "thermal";
#thermal-sensor-cells = <0>;
};
};
...