Based on kernel version 5.11
. Page generated on 2021-02-15 21:59 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 | * ZTE zx2967 family Thermal Required Properties: - compatible: should be one of the following. * zte,zx296718-thermal - reg: physical base address of the controller and length of memory mapped region. - clocks : Pairs of phandle and specifier referencing the controller's clocks. - clock-names: "topcrm" for the topcrm clock. "apb" for the apb clock. - #thermal-sensor-cells: must be 0. Please note: slope coefficient defined in thermal-zones section need to be multiplied by 1000. Example for tempsensor: tempsensor: tempsensor@148a000 { compatible = "zte,zx296718-thermal"; reg = <0x0148a000 0x20>; clocks = <&topcrm TEMPSENSOR_GATE>, <&audiocrm AUDIO_TS_PCLK>; clock-names = "topcrm", "apb"; #thermal-sensor-cells = <0>; }; Example for cooling device: cooling_dev: cooling_dev { cluster0_cooling_dev: cluster0-cooling-dev { #cooling-cells = <2>; cpumask = <0xf>; capacitance = <1500>; }; cluster1_cooling_dev: cluster1-cooling-dev { #cooling-cells = <2>; cpumask = <0x30>; capacitance = <2000>; }; }; Example for thermal zones: thermal-zones { zx296718_thermal: zx296718_thermal { polling-delay-passive = <500>; polling-delay = <1000>; sustainable-power = <6500>; thermal-sensors = <&tempsensor 0>; /* * slope need to be multiplied by 1000. */ coefficients = <1951 (-922)>; trips { trip0: switch_on_temperature { temperature = <90000>; hysteresis = <2000>; type = "passive"; }; trip1: desired_temperature { temperature = <100000>; hysteresis = <2000>; type = "passive"; }; crit: critical_temperature { temperature = <110000>; hysteresis = <2000>; type = "critical"; }; }; cooling-maps { map0 { trip = <&trip0>; cooling-device = <&gpu 2 5>; }; map1 { trip = <&trip0>; cooling-device = <&cluster0_cooling_dev 1 2>; }; map2 { trip = <&trip1>; cooling-device = <&cluster0_cooling_dev 1 2>; }; map3 { trip = <&crit>; cooling-device = <&cluster0_cooling_dev 1 2>; }; map4 { trip = <&trip0>; cooling-device = <&cluster1_cooling_dev 1 2>; contribution = <9000>; }; map5 { trip = <&trip1>; cooling-device = <&cluster1_cooling_dev 1 2>; contribution = <4096>; }; map6 { trip = <&crit>; cooling-device = <&cluster1_cooling_dev 1 2>; contribution = <4096>; }; }; }; }; |