2019-12-19 09:28:18 -08:00
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id : http://devicetree.org/schemas/thermal/allwinner,sun8i-a83t-ths.yaml#
$schema : http://devicetree.org/meta-schemas/core.yaml#
title : Allwinner SUN8I Thermal Controller Device Tree Bindings
maintainers :
- Vasily Khoruzhick <anarsoul@gmail.com>
- Yangtao Li <tiny.windzz@gmail.com>
properties :
compatible :
enum :
- allwinner,sun8i-a83t-ths
- allwinner,sun8i-h3-ths
- allwinner,sun8i-r40-ths
- allwinner,sun50i-a64-ths
2020-07-24 15:10:57 +08:00
- allwinner,sun50i-a100-ths
2019-12-19 09:28:18 -08:00
- allwinner,sun50i-h5-ths
- allwinner,sun50i-h6-ths
clocks :
minItems : 1
maxItems : 2
items :
- description : Bus Clock
- description : Module Clock
clock-names :
minItems : 1
maxItems : 2
items :
- const : bus
- const : mod
reg :
maxItems : 1
interrupts :
maxItems : 1
resets :
maxItems : 1
nvmem-cells :
maxItems : 1
description : Calibration data for thermal sensors
nvmem-cell-names :
const : calibration
2020-07-20 17:13:08 +05:30
# See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for details
2019-12-19 09:28:18 -08:00
"#thermal-sensor-cells" :
enum :
- 0
- 1
allOf :
- if :
properties :
compatible :
contains :
2020-07-24 15:10:57 +08:00
enum :
- allwinner,sun50i-a100-ths
- allwinner,sun50i-h6-ths
2019-12-19 09:28:18 -08:00
then :
properties :
clocks :
maxItems : 1
clock-names :
maxItems : 1
else :
properties :
clocks :
minItems : 2
clock-names :
minItems : 2
- if :
properties :
compatible :
contains :
const : allwinner,sun8i-h3-ths
then :
properties :
"#thermal-sensor-cells" :
const : 0
else :
properties :
"#thermal-sensor-cells" :
const : 1
- if :
properties :
compatible :
contains :
enum :
- const : allwinner,sun8i-h3-ths
- const : allwinner,sun8i-r40-ths
- const : allwinner,sun50i-a64-ths
2020-07-24 15:10:57 +08:00
- const : allwinner,sun50i-a100-ths
2019-12-19 09:28:18 -08:00
- const : allwinner,sun50i-h5-ths
- const : allwinner,sun50i-h6-ths
then :
required :
- clocks
- clock-names
- resets
required :
- compatible
- reg
- interrupts
- '#thermal-sensor-cells'
additionalProperties : false
examples :
- |
thermal-sensor@1f04000 {
compatible = "allwinner,sun8i-a83t-ths";
reg = <0x01f04000 0x100>;
interrupts = <0 31 0>;
nvmem-cells = <&ths_calibration>;
nvmem-cell-names = "calibration";
#thermal-sensor-cells = <1>;
};
- |
thermal-sensor@1c25000 {
compatible = "allwinner,sun8i-h3-ths";
reg = <0x01c25000 0x400>;
clocks = <&ccu 0>, <&ccu 1>;
clock-names = "bus", "mod";
resets = <&ccu 2>;
interrupts = <0 31 0>;
nvmem-cells = <&ths_calibration>;
nvmem-cell-names = "calibration";
#thermal-sensor-cells = <0>;
};
- |
thermal-sensor@5070400 {
compatible = "allwinner,sun50i-h6-ths";
reg = <0x05070400 0x100>;
clocks = <&ccu 0>;
clock-names = "bus";
resets = <&ccu 2>;
interrupts = <0 15 0>;
nvmem-cells = <&ths_calibration>;
nvmem-cell-names = "calibration";
#thermal-sensor-cells = <1>;
};
...