1a877e768SAmit Kucheria# SPDX-License-Identifier: (GPL-2.0 OR MIT) 2a877e768SAmit Kucheria# Copyright 2019 Linaro Ltd. 3a877e768SAmit Kucheria%YAML 1.2 4a877e768SAmit Kucheria--- 5a877e768SAmit Kucheria$id: http://devicetree.org/schemas/thermal/qcom-tsens.yaml# 6a877e768SAmit Kucheria$schema: http://devicetree.org/meta-schemas/core.yaml# 7a877e768SAmit Kucheria 8a877e768SAmit Kucheriatitle: QCOM SoC Temperature Sensor (TSENS) 9a877e768SAmit Kucheria 10a877e768SAmit Kucheriamaintainers: 1171eef84eSAmit Kucheria - Amit Kucheria <amitk@kernel.org> 12a877e768SAmit Kucheria 13a877e768SAmit Kucheriadescription: | 14a877e768SAmit Kucheria QCOM SoCs have TSENS IP to allow temperature measurement. There are currently 15a877e768SAmit Kucheria three distinct major versions of the IP that is supported by a single driver. 16a877e768SAmit Kucheria The IP versions are named v0.1, v1 and v2 in the driver, where v0.1 captures 17a877e768SAmit Kucheria everything before v1 when there was no versioning information. 18a877e768SAmit Kucheria 19a877e768SAmit Kucheriaproperties: 20a877e768SAmit Kucheria compatible: 21a877e768SAmit Kucheria oneOf: 22a63fa2b6SDmitry Baryshkov - description: msm8960 TSENS based 2326b2f03dSAnsuel Smith items: 2426b2f03dSAnsuel Smith - enum: 2526b2f03dSAnsuel Smith - qcom,ipq8064-tsens 26a63fa2b6SDmitry Baryshkov - qcom,msm8960-tsens 2726b2f03dSAnsuel Smith 28a877e768SAmit Kucheria - description: v0.1 of TSENS 29a877e768SAmit Kucheria items: 30a877e768SAmit Kucheria - enum: 3195778161SKonrad Dybcio - qcom,mdm9607-tsens 32a877e768SAmit Kucheria - qcom,msm8226-tsens 33ec99756aSKonrad Dybcio - qcom,msm8909-tsens 34a877e768SAmit Kucheria - qcom,msm8916-tsens 35a877e768SAmit Kucheria - qcom,msm8939-tsens 36a877e768SAmit Kucheria - qcom,msm8974-tsens 37a877e768SAmit Kucheria - const: qcom,tsens-v0_1 38a877e768SAmit Kucheria 39a877e768SAmit Kucheria - description: v1 of TSENS 408c142145SDmitry Baryshkov items: 41da73f9b8SAngeloGioacchino Del Regno - enum: 42a877e768SAmit Kucheria - qcom,msm8956-tsens 43a877e768SAmit Kucheria - qcom,msm8976-tsens 44a877e768SAmit Kucheria - qcom,qcs404-tsens 45a877e768SAmit Kucheria - const: qcom,tsens-v1 46a877e768SAmit Kucheria 47a877e768SAmit Kucheria - description: v2 of TSENS 48e8ec6bb3SLuca Weiss items: 49a877e768SAmit Kucheria - enum: 50a877e768SAmit Kucheria - qcom,msm8953-tsens 512f8caa9fSRajeshwari - qcom,msm8996-tsens 52c6e66f5cSRajeshwari Ravindra Kamble - qcom,msm8998-tsens 53481bd297SBjorn Andersson - qcom,qcm2290-tsens 5430988d3bSBjorn Andersson - qcom,sc7180-tsens 557c54b82bSKonrad Dybcio - qcom,sc7280-tsens 56a877e768SAmit Kucheria - qcom,sc8180x-tsens 5747612a9fSAdam Skladowski - qcom,sc8280xp-tsens 580bd17679SLuca Weiss - qcom,sdm630-tsens 59cedddb26SAmit Kucheria - qcom,sdm845-tsens 60cedddb26SAmit Kucheria - qcom,sm6115-tsens 61c0612265SRobert Foss - qcom,sm6350-tsens 62f0f4c3adSLuca Weiss - qcom,sm6375-tsens 634a9f2011SNeil Armstrong - qcom,sm8150-tsens 64a877e768SAmit Kucheria - qcom,sm8250-tsens 65a877e768SAmit Kucheria - qcom,sm8350-tsens 66c6db32ecSRobert Marko - qcom,sm8450-tsens 67c6db32ecSRobert Marko - qcom,sm8550-tsens 68c6db32ecSRobert Marko - const: qcom,tsens-v2 69c6db32ecSRobert Marko 70a877e768SAmit Kucheria - description: v2 of TSENS with combined interrupt 71a877e768SAmit Kucheria enum: 72a877e768SAmit Kucheria - qcom,ipq8074-tsens 73a877e768SAmit Kucheria 74a877e768SAmit Kucheria - description: v2 of TSENS with combined interrupt 7527f747b1SRob Herring items: 7627f747b1SRob Herring - enum: 77c6db32ecSRobert Marko - qcom,ipq9574-tsens 7827f747b1SRob Herring - const: qcom,ipq8074-tsens 7927f747b1SRob Herring 8027f747b1SRob Herring reg: 81c6db32ecSRobert Marko items: 8227f747b1SRob Herring - description: TM registers 83a877e768SAmit Kucheria - description: SROT registers 844f4292bfSDmitry Baryshkov 854f4292bfSDmitry Baryshkov interrupts: 86a877e768SAmit Kucheria minItems: 1 87a877e768SAmit Kucheria maxItems: 2 88a877e768SAmit Kucheria 894f4292bfSDmitry Baryshkov interrupt-names: 904f4292bfSDmitry Baryshkov minItems: 1 914f4292bfSDmitry Baryshkov maxItems: 2 924f4292bfSDmitry Baryshkov 934f4292bfSDmitry Baryshkov nvmem-cells: 94acd31b9fSDmitry Baryshkov oneOf: 95acd31b9fSDmitry Baryshkov - minItems: 1 96acd31b9fSDmitry Baryshkov maxItems: 2 97acd31b9fSDmitry Baryshkov description: 98acd31b9fSDmitry Baryshkov Reference to an nvmem node for the calibration data 99a877e768SAmit Kucheria - minItems: 5 100b9589defSRob Herring maxItems: 35 1014f4292bfSDmitry Baryshkov description: | 1024f4292bfSDmitry Baryshkov Reference to nvmem cells for the calibration mode, two calibration 103a877e768SAmit Kucheria bases and two cells per each sensor 104b9589defSRob Herring # special case for msm8974 / apq8084 10526b2f03dSAnsuel Smith - maxItems: 51 10626b2f03dSAnsuel Smith description: | 10726b2f03dSAnsuel Smith Reference to nvmem cells for the calibration mode, two calibration 1084f4292bfSDmitry Baryshkov bases and two cells per each sensor, main and backup copies, plus use_backup cell 1094f4292bfSDmitry Baryshkov 1104f4292bfSDmitry Baryshkov nvmem-cell-names: 1114f4292bfSDmitry Baryshkov oneOf: 1124f4292bfSDmitry Baryshkov - minItems: 1 1134f4292bfSDmitry Baryshkov items: 1144f4292bfSDmitry Baryshkov - const: calib 1154f4292bfSDmitry Baryshkov - enum: 1164f4292bfSDmitry Baryshkov - calib_backup 1174f4292bfSDmitry Baryshkov - calib_sel 1184f4292bfSDmitry Baryshkov - minItems: 5 1194f4292bfSDmitry Baryshkov items: 1204f4292bfSDmitry Baryshkov - const: mode 1214f4292bfSDmitry Baryshkov - const: base1 1224f4292bfSDmitry Baryshkov - const: base2 1234f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1244f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1254f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1264f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1274f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1284f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1294f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1304f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1314f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1324f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1334f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1344f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1354f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1364f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1374f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1384f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1394f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1404f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1414f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1424f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 1434f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 1444f4292bfSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 145acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 146acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 147acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 148acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 149acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 150acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 151acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 152acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 153acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p1$' 154acd31b9fSDmitry Baryshkov - pattern: '^s[0-9]+_p2$' 155acd31b9fSDmitry Baryshkov # special case for msm8974 / apq8084 156acd31b9fSDmitry Baryshkov - items: 157acd31b9fSDmitry Baryshkov - const: mode 158acd31b9fSDmitry Baryshkov - const: base1 159acd31b9fSDmitry Baryshkov - const: base2 160acd31b9fSDmitry Baryshkov - const: use_backup 161acd31b9fSDmitry Baryshkov - const: mode_backup 162acd31b9fSDmitry Baryshkov - const: base1_backup 163acd31b9fSDmitry Baryshkov - const: base2_backup 164acd31b9fSDmitry Baryshkov - const: s0_p1 165acd31b9fSDmitry Baryshkov - const: s0_p2 166acd31b9fSDmitry Baryshkov - const: s1_p1 167acd31b9fSDmitry Baryshkov - const: s1_p2 168acd31b9fSDmitry Baryshkov - const: s2_p1 169acd31b9fSDmitry Baryshkov - const: s2_p2 170acd31b9fSDmitry Baryshkov - const: s3_p1 171acd31b9fSDmitry Baryshkov - const: s3_p2 172acd31b9fSDmitry Baryshkov - const: s4_p1 173acd31b9fSDmitry Baryshkov - const: s4_p2 174acd31b9fSDmitry Baryshkov - const: s5_p1 175acd31b9fSDmitry Baryshkov - const: s5_p2 176acd31b9fSDmitry Baryshkov - const: s6_p1 177acd31b9fSDmitry Baryshkov - const: s6_p2 178acd31b9fSDmitry Baryshkov - const: s7_p1 179acd31b9fSDmitry Baryshkov - const: s7_p2 180acd31b9fSDmitry Baryshkov - const: s8_p1 181acd31b9fSDmitry Baryshkov - const: s8_p2 182acd31b9fSDmitry Baryshkov - const: s9_p1 183acd31b9fSDmitry Baryshkov - const: s9_p2 184acd31b9fSDmitry Baryshkov - const: s10_p1 185acd31b9fSDmitry Baryshkov - const: s10_p2 186acd31b9fSDmitry Baryshkov - const: s0_p1_backup 187acd31b9fSDmitry Baryshkov - const: s0_p2_backup 188acd31b9fSDmitry Baryshkov - const: s1_p1_backup 189acd31b9fSDmitry Baryshkov - const: s1_p2_backup 190acd31b9fSDmitry Baryshkov - const: s2_p1_backup 191acd31b9fSDmitry Baryshkov - const: s2_p2_backup 192acd31b9fSDmitry Baryshkov - const: s3_p1_backup 193acd31b9fSDmitry Baryshkov - const: s3_p2_backup 194acd31b9fSDmitry Baryshkov - const: s4_p1_backup 195acd31b9fSDmitry Baryshkov - const: s4_p2_backup 196acd31b9fSDmitry Baryshkov - const: s5_p1_backup 197acd31b9fSDmitry Baryshkov - const: s5_p2_backup 198a877e768SAmit Kucheria - const: s6_p1_backup 199a877e768SAmit Kucheria - const: s6_p2_backup 200a877e768SAmit Kucheria - const: s7_p1_backup 201a877e768SAmit Kucheria - const: s7_p2_backup 2023d21a460SRob Herring - const: s8_p1_backup 2033d21a460SRob Herring - const: s8_p2_backup 2043d21a460SRob Herring - const: s9_p1_backup 205a877e768SAmit Kucheria - const: s9_p2_backup 206a877e768SAmit Kucheria - const: s10_p1_backup 207a877e768SAmit Kucheria - const: s10_p2_backup 208a877e768SAmit Kucheria 209a877e768SAmit Kucheria "#qcom,sensors": 210a877e768SAmit Kucheria description: 211a877e768SAmit Kucheria Number of sensors enabled on this platform 21226b2f03dSAnsuel Smith $ref: /schemas/types.yaml#/definitions/uint32 21326b2f03dSAnsuel Smith minimum: 1 21426b2f03dSAnsuel Smith maximum: 16 21526b2f03dSAnsuel Smith 21626b2f03dSAnsuel Smith "#thermal-sensor-cells": 21726b2f03dSAnsuel Smith const: 1 21826b2f03dSAnsuel Smith description: 219a877e768SAmit Kucheria Number of cells required to uniquely identify the thermal sensors. Since 220a877e768SAmit Kucheria we have multiple sensors this is set to 1 221a877e768SAmit Kucheria 222a877e768SAmit Kucheriarequired: 223a877e768SAmit Kucheria - compatible 224a877e768SAmit Kucheria - interrupts 22526b2f03dSAnsuel Smith - interrupt-names 22695778161SKonrad Dybcio - "#thermal-sensor-cells" 227a877e768SAmit Kucheria - "#qcom,sensors" 228a63fa2b6SDmitry Baryshkov 229a877e768SAmit KucheriaallOf: 230da73f9b8SAngeloGioacchino Del Regno - if: 231a877e768SAmit Kucheria properties: 232a877e768SAmit Kucheria compatible: 233a877e768SAmit Kucheria contains: 234a877e768SAmit Kucheria enum: 235a877e768SAmit Kucheria - qcom,ipq8064-tsens 236a877e768SAmit Kucheria - qcom,msm8960-tsens 237c6db32ecSRobert Marko - qcom,tsens-v0_1 238c6db32ecSRobert Marko - qcom,tsens-v1 239a877e768SAmit Kucheria then: 240c6db32ecSRobert Marko properties: 241c6db32ecSRobert Marko interrupts: 242a877e768SAmit Kucheria items: 24326b2f03dSAnsuel Smith - description: Combined interrupt if upper or lower threshold crossed 24426b2f03dSAnsuel Smith interrupt-names: 24526b2f03dSAnsuel Smith items: 24626b2f03dSAnsuel Smith - const: uplow 24726b2f03dSAnsuel Smith 248c6db32ecSRobert Marko - if: 249c6db32ecSRobert Marko properties: 250c6db32ecSRobert Marko compatible: 251c6db32ecSRobert Marko contains: 252c6db32ecSRobert Marko const: qcom,tsens-v2 253c6db32ecSRobert Marko then: 254fa17c413SKrzysztof Kozlowski properties: 255c6db32ecSRobert Marko interrupts: 256c6db32ecSRobert Marko items: 257fa17c413SKrzysztof Kozlowski - description: Combined interrupt if upper or lower threshold crossed 258c6db32ecSRobert Marko - description: Interrupt if critical threshold crossed 259c6db32ecSRobert Marko interrupt-names: 260c6db32ecSRobert Marko items: 261fa17c413SKrzysztof Kozlowski - const: uplow 262c6db32ecSRobert Marko - const: critical 263c6db32ecSRobert Marko 264c6db32ecSRobert Marko - if: 265c6db32ecSRobert Marko properties: 266c6db32ecSRobert Marko compatible: 267c6db32ecSRobert Marko contains: 268c6db32ecSRobert Marko enum: 269c6db32ecSRobert Marko - qcom,ipq8074-tsens 270c6db32ecSRobert Marko then: 271c6db32ecSRobert Marko properties: 272c6db32ecSRobert Marko interrupts: 273c6db32ecSRobert Marko items: 274c6db32ecSRobert Marko - description: Combined interrupt if upper, lower or critical thresholds crossed 275c6db32ecSRobert Marko interrupt-names: 276c6db32ecSRobert Marko items: 277c6db32ecSRobert Marko - const: combined 278c6db32ecSRobert Marko 279c6db32ecSRobert Marko - if: 280c6db32ecSRobert Marko properties: 281c6db32ecSRobert Marko compatible: 282c6db32ecSRobert Marko contains: 283c6db32ecSRobert Marko enum: 284c6db32ecSRobert Marko - qcom,ipq8074-tsens 285c6db32ecSRobert Marko - qcom,tsens-v0_1 286c6db32ecSRobert Marko - qcom,tsens-v1 287c6db32ecSRobert Marko - qcom,tsens-v2 288c6db32ecSRobert Marko 289c6db32ecSRobert Marko then: 290c6db32ecSRobert Marko required: 291c6db32ecSRobert Marko - reg 292c6db32ecSRobert Marko 293c6db32ecSRobert MarkoadditionalProperties: false 294c6db32ecSRobert Marko 29526b2f03dSAnsuel Smithexamples: 29626b2f03dSAnsuel Smith - | 29726b2f03dSAnsuel Smith #include <dt-bindings/interrupt-controller/arm-gic.h> 29826b2f03dSAnsuel Smith // Example msm9860 based SoC (ipq8064): 29926b2f03dSAnsuel Smith gcc: clock-controller { 300a877e768SAmit Kucheria 301a877e768SAmit Kucheria /* ... */ 302a877e768SAmit Kucheria 30327f747b1SRob Herring tsens: thermal-sensor { 30427f747b1SRob Herring compatible = "qcom,ipq8064-tsens"; 305a877e768SAmit Kucheria 306a877e768SAmit Kucheria nvmem-cells = <&tsens_calib>, <&tsens_calib_backup>; 307a877e768SAmit Kucheria nvmem-cell-names = "calib", "calib_backup"; 30826b2f03dSAnsuel Smith interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>; 30926b2f03dSAnsuel Smith interrupt-names = "uplow"; 31026b2f03dSAnsuel Smith 31126b2f03dSAnsuel Smith #qcom,sensors = <11>; 31226b2f03dSAnsuel Smith #thermal-sensor-cells = <1>; 31326b2f03dSAnsuel Smith }; 31426b2f03dSAnsuel Smith }; 31526b2f03dSAnsuel Smith 31626b2f03dSAnsuel Smith - | 31726b2f03dSAnsuel Smith #include <dt-bindings/interrupt-controller/arm-gic.h> 31826b2f03dSAnsuel Smith // Example 1 (new calbiration data: for pre v1 IP): 31926b2f03dSAnsuel Smith thermal-sensor@4a9000 { 32026b2f03dSAnsuel Smith compatible = "qcom,msm8916-tsens", "qcom,tsens-v0_1"; 32126b2f03dSAnsuel Smith reg = <0x4a9000 0x1000>, /* TM */ 32226b2f03dSAnsuel Smith <0x4a8000 0x1000>; /* SROT */ 32326b2f03dSAnsuel Smith 32426b2f03dSAnsuel Smith nvmem-cells = <&tsens_mode>, 32526b2f03dSAnsuel Smith <&tsens_base1>, <&tsens_base2>, 32626b2f03dSAnsuel Smith <&tsens_s0_p1>, <&tsens_s0_p2>, 32726b2f03dSAnsuel Smith <&tsens_s1_p1>, <&tsens_s1_p2>, 3284f4292bfSDmitry Baryshkov <&tsens_s2_p1>, <&tsens_s2_p2>, 329*2afa82d1SKrzysztof Kozlowski <&tsens_s4_p1>, <&tsens_s4_p2>, 3304f4292bfSDmitry Baryshkov <&tsens_s5_p1>, <&tsens_s5_p2>; 3314f4292bfSDmitry Baryshkov nvmem-cell-names = "mode", 3324f4292bfSDmitry Baryshkov "base1", "base2", 3334f4292bfSDmitry Baryshkov "s0_p1", "s0_p2", 3344f4292bfSDmitry Baryshkov "s1_p1", "s1_p2", 3354f4292bfSDmitry Baryshkov "s2_p1", "s2_p2", 3364f4292bfSDmitry Baryshkov "s4_p1", "s4_p2", 3374f4292bfSDmitry Baryshkov "s5_p1", "s5_p2"; 3384f4292bfSDmitry Baryshkov 3394f4292bfSDmitry Baryshkov interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 3404f4292bfSDmitry Baryshkov interrupt-names = "uplow"; 3414f4292bfSDmitry Baryshkov 3424f4292bfSDmitry Baryshkov #qcom,sensors = <5>; 3434f4292bfSDmitry Baryshkov #thermal-sensor-cells = <1>; 3444f4292bfSDmitry Baryshkov }; 3454f4292bfSDmitry Baryshkov 3464f4292bfSDmitry Baryshkov - | 3474f4292bfSDmitry Baryshkov #include <dt-bindings/interrupt-controller/arm-gic.h> 3484f4292bfSDmitry Baryshkov // Example 1 (legacy: for pre v1 IP): 3494f4292bfSDmitry Baryshkov tsens1: thermal-sensor@4a9000 { 3504f4292bfSDmitry Baryshkov compatible = "qcom,msm8916-tsens", "qcom,tsens-v0_1"; 3514f4292bfSDmitry Baryshkov reg = <0x4a9000 0x1000>, /* TM */ 3524f4292bfSDmitry Baryshkov <0x4a8000 0x1000>; /* SROT */ 3534f4292bfSDmitry Baryshkov 3544f4292bfSDmitry Baryshkov nvmem-cells = <&tsens_caldata>, <&tsens_calsel>; 3554f4292bfSDmitry Baryshkov nvmem-cell-names = "calib", "calib_sel"; 3564f4292bfSDmitry Baryshkov 3574f4292bfSDmitry Baryshkov interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 358a877e768SAmit Kucheria interrupt-names = "uplow"; 359*2afa82d1SKrzysztof Kozlowski 360a877e768SAmit Kucheria #qcom,sensors = <5>; 361a877e768SAmit Kucheria #thermal-sensor-cells = <1>; 362a877e768SAmit Kucheria }; 363a877e768SAmit Kucheria 364a877e768SAmit Kucheria - | 365b9589defSRob Herring #include <dt-bindings/interrupt-controller/arm-gic.h> 366a877e768SAmit Kucheria // Example 2 (for any platform containing v1 of the TSENS IP): 367a877e768SAmit Kucheria tsens2: thermal-sensor@4a9000 { 368a877e768SAmit Kucheria compatible = "qcom,qcs404-tsens", "qcom,tsens-v1"; 369a877e768SAmit Kucheria reg = <0x004a9000 0x1000>, /* TM */ 370a877e768SAmit Kucheria <0x004a8000 0x1000>; /* SROT */ 371a877e768SAmit Kucheria 372a877e768SAmit Kucheria nvmem-cells = <&tsens_caldata>; 373a877e768SAmit Kucheria nvmem-cell-names = "calib"; 374a877e768SAmit Kucheria 375a877e768SAmit Kucheria interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>; 376a877e768SAmit Kucheria interrupt-names = "uplow"; 377a877e768SAmit Kucheria 378a877e768SAmit Kucheria #qcom,sensors = <10>; 379a877e768SAmit Kucheria #thermal-sensor-cells = <1>; 380a877e768SAmit Kucheria }; 381a877e768SAmit Kucheria 382a877e768SAmit Kucheria - | 383a877e768SAmit Kucheria #include <dt-bindings/interrupt-controller/arm-gic.h> 384a877e768SAmit Kucheria // Example 3 (for any platform containing v2 of the TSENS IP): 385a877e768SAmit Kucheria tsens3: thermal-sensor@c263000 { 386a877e768SAmit Kucheria compatible = "qcom,sdm845-tsens", "qcom,tsens-v2"; 387a877e768SAmit Kucheria reg = <0xc263000 0x1ff>, 388a877e768SAmit Kucheria <0xc222000 0x1ff>; 389a877e768SAmit Kucheria 390a877e768SAmit Kucheria interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>, 391a877e768SAmit Kucheria <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>; 392a877e768SAmit Kucheria interrupt-names = "uplow", "critical"; 393a877e768SAmit Kucheria 394a877e768SAmit Kucheria #qcom,sensors = <13>; 395a877e768SAmit Kucheria #thermal-sensor-cells = <1>; 396a877e768SAmit Kucheria }; 397a877e768SAmit Kucheria 398a877e768SAmit Kucheria - | 399a877e768SAmit Kucheria #include <dt-bindings/interrupt-controller/arm-gic.h> 400a877e768SAmit Kucheria // Example 4 (for any IPQ8074 based SoC-s): 401a877e768SAmit Kucheria tsens4: thermal-sensor@4a9000 { 402a877e768SAmit Kucheria compatible = "qcom,ipq8074-tsens"; 403a877e768SAmit Kucheria reg = <0x4a9000 0x1000>, 404a877e768SAmit Kucheria <0x4a8000 0x1000>; 405a877e768SAmit Kucheria 406a877e768SAmit Kucheria interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 407c6db32ecSRobert Marko interrupt-names = "combined"; 408c6db32ecSRobert Marko 409c6db32ecSRobert Marko #qcom,sensors = <16>; 410c6db32ecSRobert Marko #thermal-sensor-cells = <1>; 411c6db32ecSRobert Marko }; 412c6db32ecSRobert Marko... 413c6db32ecSRobert Marko