1*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/type 2*80da1b50SMauro Carvalho ChehabDescription: 3*80da1b50SMauro Carvalho Chehab Strings which represent the thermal zone type. 4*80da1b50SMauro Carvalho Chehab This is given by thermal zone driver as part of registration. 5*80da1b50SMauro Carvalho Chehab E.g: "acpitz" indicates it's an ACPI thermal device. 6*80da1b50SMauro Carvalho Chehab In order to keep it consistent with hwmon sys attribute; this 7*80da1b50SMauro Carvalho Chehab shouldbe a short, lowercase string, not containing spaces nor 8*80da1b50SMauro Carvalho Chehab dashes. 9*80da1b50SMauro Carvalho Chehab 10*80da1b50SMauro Carvalho Chehab RO, Required 11*80da1b50SMauro Carvalho Chehab 12*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/temp 13*80da1b50SMauro Carvalho ChehabDescription: 14*80da1b50SMauro Carvalho Chehab Current temperature as reported by thermal zone (sensor). 15*80da1b50SMauro Carvalho Chehab 16*80da1b50SMauro Carvalho Chehab Unit: millidegree Celsius 17*80da1b50SMauro Carvalho Chehab 18*80da1b50SMauro Carvalho Chehab RO, Required 19*80da1b50SMauro Carvalho Chehab 20*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/mode 21*80da1b50SMauro Carvalho ChehabDescription: 22*80da1b50SMauro Carvalho Chehab One of the predefined values in [enabled, disabled]. 23*80da1b50SMauro Carvalho Chehab This file gives information about the algorithm that is 24*80da1b50SMauro Carvalho Chehab currently managing the thermal zone. It can be either default 25*80da1b50SMauro Carvalho Chehab kernel based algorithm or user space application. 26*80da1b50SMauro Carvalho Chehab 27*80da1b50SMauro Carvalho Chehab enabled 28*80da1b50SMauro Carvalho Chehab enable Kernel Thermal management. 29*80da1b50SMauro Carvalho Chehab disabled 30*80da1b50SMauro Carvalho Chehab Preventing kernel thermal zone driver actions upon 31*80da1b50SMauro Carvalho Chehab trip points so that user application can take full 32*80da1b50SMauro Carvalho Chehab charge of the thermal management. 33*80da1b50SMauro Carvalho Chehab 34*80da1b50SMauro Carvalho Chehab RW, Optional 35*80da1b50SMauro Carvalho Chehab 36*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/policy 37*80da1b50SMauro Carvalho ChehabDescription: 38*80da1b50SMauro Carvalho Chehab One of the various thermal governors used for a particular zone. 39*80da1b50SMauro Carvalho Chehab 40*80da1b50SMauro Carvalho Chehab RW, Required 41*80da1b50SMauro Carvalho Chehab 42*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/available_policies 43*80da1b50SMauro Carvalho ChehabDescription: 44*80da1b50SMauro Carvalho Chehab Available thermal governors which can be used for a 45*80da1b50SMauro Carvalho Chehab particular zone. 46*80da1b50SMauro Carvalho Chehab 47*80da1b50SMauro Carvalho Chehab RO, Required 48*80da1b50SMauro Carvalho Chehab 49*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/trip_point_Y_temp 50*80da1b50SMauro Carvalho ChehabDescription: 51*80da1b50SMauro Carvalho Chehab The temperature above which trip point will be fired. 52*80da1b50SMauro Carvalho Chehab 53*80da1b50SMauro Carvalho Chehab Unit: millidegree Celsius 54*80da1b50SMauro Carvalho Chehab 55*80da1b50SMauro Carvalho Chehab RO, Optional 56*80da1b50SMauro Carvalho Chehab 57*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/trip_point_Y_type 58*80da1b50SMauro Carvalho ChehabDescription: 59*80da1b50SMauro Carvalho Chehab Strings which indicate the type of the trip point. 60*80da1b50SMauro Carvalho Chehab 61*80da1b50SMauro Carvalho Chehab E.g. it can be one of critical, hot, passive, `active[0-*]` 62*80da1b50SMauro Carvalho Chehab for ACPI thermal zone. 63*80da1b50SMauro Carvalho Chehab 64*80da1b50SMauro Carvalho Chehab RO, Optional 65*80da1b50SMauro Carvalho Chehab 66*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/trip_point_Y_hyst 67*80da1b50SMauro Carvalho ChehabDescription: 68*80da1b50SMauro Carvalho Chehab The hysteresis value for a trip point, represented as an 69*80da1b50SMauro Carvalho Chehab integer. 70*80da1b50SMauro Carvalho Chehab 71*80da1b50SMauro Carvalho Chehab Unit: Celsius 72*80da1b50SMauro Carvalho Chehab 73*80da1b50SMauro Carvalho Chehab RW, Optional 74*80da1b50SMauro Carvalho Chehab 75*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/cdevY 76*80da1b50SMauro Carvalho ChehabDescription: 77*80da1b50SMauro Carvalho Chehab Sysfs link to the thermal cooling device node where the sys I/F 78*80da1b50SMauro Carvalho Chehab for cooling device throttling control represents. 79*80da1b50SMauro Carvalho Chehab 80*80da1b50SMauro Carvalho Chehab RO, Optional 81*80da1b50SMauro Carvalho Chehab 82*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/cdevY_trip_point 83*80da1b50SMauro Carvalho ChehabDescription: 84*80da1b50SMauro Carvalho Chehab The trip point in this thermal zone which `cdev[0-*]` is 85*80da1b50SMauro Carvalho Chehab associated with; -1 means the cooling device is not 86*80da1b50SMauro Carvalho Chehab associated with any trip point. 87*80da1b50SMauro Carvalho Chehab 88*80da1b50SMauro Carvalho Chehab RO, Optional 89*80da1b50SMauro Carvalho Chehab 90*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/cdevY_weight 91*80da1b50SMauro Carvalho ChehabDescription: 92*80da1b50SMauro Carvalho Chehab The influence of `cdev[0-*]` in this thermal zone. This value 93*80da1b50SMauro Carvalho Chehab is relative to the rest of cooling devices in the thermal 94*80da1b50SMauro Carvalho Chehab zone. For example, if a cooling device has a weight double 95*80da1b50SMauro Carvalho Chehab than that of other, it's twice as effective in cooling the 96*80da1b50SMauro Carvalho Chehab thermal zone. 97*80da1b50SMauro Carvalho Chehab 98*80da1b50SMauro Carvalho Chehab RW, Optional 99*80da1b50SMauro Carvalho Chehab 100*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/emul_temp 101*80da1b50SMauro Carvalho ChehabDescription: 102*80da1b50SMauro Carvalho Chehab Interface to set the emulated temperature method in thermal zone 103*80da1b50SMauro Carvalho Chehab (sensor). After setting this temperature, the thermal zone may 104*80da1b50SMauro Carvalho Chehab pass this temperature to platform emulation function if 105*80da1b50SMauro Carvalho Chehab registered or cache it locally. This is useful in debugging 106*80da1b50SMauro Carvalho Chehab different temperature threshold and its associated cooling 107*80da1b50SMauro Carvalho Chehab action. This is write only node and writing 0 on this node 108*80da1b50SMauro Carvalho Chehab should disable emulation. 109*80da1b50SMauro Carvalho Chehab 110*80da1b50SMauro Carvalho Chehab Unit: millidegree Celsius 111*80da1b50SMauro Carvalho Chehab 112*80da1b50SMauro Carvalho Chehab WO, Optional 113*80da1b50SMauro Carvalho Chehab 114*80da1b50SMauro Carvalho Chehab WARNING: 115*80da1b50SMauro Carvalho Chehab Be careful while enabling this option on production systems, 116*80da1b50SMauro Carvalho Chehab because userland can easily disable the thermal policy by simply 117*80da1b50SMauro Carvalho Chehab flooding this sysfs node with low temperature values. 118*80da1b50SMauro Carvalho Chehab 119*80da1b50SMauro Carvalho Chehab 120*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/k_d 121*80da1b50SMauro Carvalho ChehabDescription: 122*80da1b50SMauro Carvalho Chehab The derivative term of the power allocator governor's PID 123*80da1b50SMauro Carvalho Chehab controller. For more information see 124*80da1b50SMauro Carvalho Chehab Documentation/driver-api/thermal/power_allocator.rst 125*80da1b50SMauro Carvalho Chehab 126*80da1b50SMauro Carvalho Chehab RW, Optional 127*80da1b50SMauro Carvalho Chehab 128*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/k_i 129*80da1b50SMauro Carvalho ChehabDescription: 130*80da1b50SMauro Carvalho Chehab The integral term of the power allocator governor's PID 131*80da1b50SMauro Carvalho Chehab controller. This term allows the PID controller to compensate 132*80da1b50SMauro Carvalho Chehab for long term drift. For more information see 133*80da1b50SMauro Carvalho Chehab Documentation/driver-api/thermal/power_allocator.rst 134*80da1b50SMauro Carvalho Chehab 135*80da1b50SMauro Carvalho Chehab RW, Optional 136*80da1b50SMauro Carvalho Chehab 137*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/k_po 138*80da1b50SMauro Carvalho ChehabDescription: 139*80da1b50SMauro Carvalho Chehab The proportional term of the power allocator governor's PID 140*80da1b50SMauro Carvalho Chehab controller during temperature overshoot. Temperature overshoot 141*80da1b50SMauro Carvalho Chehab is when the current temperature is above the "desired 142*80da1b50SMauro Carvalho Chehab temperature" trip point. For more information see 143*80da1b50SMauro Carvalho Chehab Documentation/driver-api/thermal/power_allocator.rst 144*80da1b50SMauro Carvalho Chehab 145*80da1b50SMauro Carvalho Chehab RW, Optional 146*80da1b50SMauro Carvalho Chehab 147*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/k_pu 148*80da1b50SMauro Carvalho ChehabDescription: 149*80da1b50SMauro Carvalho Chehab The proportional term of the power allocator governor's PID 150*80da1b50SMauro Carvalho Chehab controller during temperature undershoot. Temperature undershoot 151*80da1b50SMauro Carvalho Chehab is when the current temperature is below the "desired 152*80da1b50SMauro Carvalho Chehab temperature" trip point. For more information see 153*80da1b50SMauro Carvalho Chehab Documentation/driver-api/thermal/power_allocator.rst 154*80da1b50SMauro Carvalho Chehab 155*80da1b50SMauro Carvalho Chehab RW, Optional 156*80da1b50SMauro Carvalho Chehab 157*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/integral_cutoff 158*80da1b50SMauro Carvalho ChehabDescription: 159*80da1b50SMauro Carvalho Chehab Temperature offset from the desired temperature trip point 160*80da1b50SMauro Carvalho Chehab above which the integral term of the power allocator 161*80da1b50SMauro Carvalho Chehab governor's PID controller starts accumulating errors. For 162*80da1b50SMauro Carvalho Chehab example, if integral_cutoff is 0, then the integral term only 163*80da1b50SMauro Carvalho Chehab accumulates error when temperature is above the desired 164*80da1b50SMauro Carvalho Chehab temperature trip point. For more information see 165*80da1b50SMauro Carvalho Chehab Documentation/driver-api/thermal/power_allocator.rst 166*80da1b50SMauro Carvalho Chehab 167*80da1b50SMauro Carvalho Chehab Unit: millidegree Celsius 168*80da1b50SMauro Carvalho Chehab 169*80da1b50SMauro Carvalho Chehab RW, Optional 170*80da1b50SMauro Carvalho Chehab 171*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/slope 172*80da1b50SMauro Carvalho ChehabDescription: 173*80da1b50SMauro Carvalho Chehab The slope constant used in a linear extrapolation model 174*80da1b50SMauro Carvalho Chehab to determine a hotspot temperature based off the sensor's 175*80da1b50SMauro Carvalho Chehab raw readings. It is up to the device driver to determine 176*80da1b50SMauro Carvalho Chehab the usage of these values. 177*80da1b50SMauro Carvalho Chehab 178*80da1b50SMauro Carvalho Chehab RW, Optional 179*80da1b50SMauro Carvalho Chehab 180*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/offset 181*80da1b50SMauro Carvalho ChehabDescription: 182*80da1b50SMauro Carvalho Chehab The offset constant used in a linear extrapolation model 183*80da1b50SMauro Carvalho Chehab to determine a hotspot temperature based off the sensor's 184*80da1b50SMauro Carvalho Chehab raw readings. It is up to the device driver to determine 185*80da1b50SMauro Carvalho Chehab the usage of these values. 186*80da1b50SMauro Carvalho Chehab 187*80da1b50SMauro Carvalho Chehab RW, Optional 188*80da1b50SMauro Carvalho Chehab 189*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/thermal_zoneX/sustainable_power 190*80da1b50SMauro Carvalho ChehabDescription: 191*80da1b50SMauro Carvalho Chehab An estimate of the sustained power that can be dissipated by 192*80da1b50SMauro Carvalho Chehab the thermal zone. Used by the power allocator governor. For 193*80da1b50SMauro Carvalho Chehab more information see 194*80da1b50SMauro Carvalho Chehab Documentation/driver-api/thermal/power_allocator.rst 195*80da1b50SMauro Carvalho Chehab 196*80da1b50SMauro Carvalho Chehab Unit: milliwatts 197*80da1b50SMauro Carvalho Chehab 198*80da1b50SMauro Carvalho Chehab RW, Optional 199*80da1b50SMauro Carvalho Chehab 200*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/cooling_deviceX/type 201*80da1b50SMauro Carvalho ChehabDescription: 202*80da1b50SMauro Carvalho Chehab String which represents the type of device, e.g: 203*80da1b50SMauro Carvalho Chehab 204*80da1b50SMauro Carvalho Chehab - for generic ACPI: should be "Fan", "Processor" or "LCD" 205*80da1b50SMauro Carvalho Chehab - for memory controller device on intel_menlow platform: 206*80da1b50SMauro Carvalho Chehab should be "Memory controller". 207*80da1b50SMauro Carvalho Chehab 208*80da1b50SMauro Carvalho Chehab RO, Required 209*80da1b50SMauro Carvalho Chehab 210*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/cooling_deviceX/max_state 211*80da1b50SMauro Carvalho ChehabDescription: 212*80da1b50SMauro Carvalho Chehab The maximum permissible cooling state of this cooling device. 213*80da1b50SMauro Carvalho Chehab 214*80da1b50SMauro Carvalho Chehab RO, Required 215*80da1b50SMauro Carvalho Chehab 216*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/cooling_deviceX/cur_state 217*80da1b50SMauro Carvalho ChehabDescription: 218*80da1b50SMauro Carvalho Chehab The current cooling state of this cooling device. 219*80da1b50SMauro Carvalho Chehab The value can any integer numbers between 0 and max_state: 220*80da1b50SMauro Carvalho Chehab 221*80da1b50SMauro Carvalho Chehab - cur_state == 0 means no cooling 222*80da1b50SMauro Carvalho Chehab - cur_state == max_state means the maximum cooling. 223*80da1b50SMauro Carvalho Chehab 224*80da1b50SMauro Carvalho Chehab RW, Required 225*80da1b50SMauro Carvalho Chehab 226*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/cooling_deviceX/stats/reset 227*80da1b50SMauro Carvalho ChehabDescription: 228*80da1b50SMauro Carvalho Chehab Writing any value resets the cooling device's statistics. 229*80da1b50SMauro Carvalho Chehab 230*80da1b50SMauro Carvalho Chehab WO, Required 231*80da1b50SMauro Carvalho Chehab 232*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/cooling_deviceX/stats/time_in_state_ms: 233*80da1b50SMauro Carvalho ChehabDescription: 234*80da1b50SMauro Carvalho Chehab The amount of time spent by the cooling device in various 235*80da1b50SMauro Carvalho Chehab cooling states. The output will have "<state> <time>" pair 236*80da1b50SMauro Carvalho Chehab in each line, which will mean this cooling device spent <time> 237*80da1b50SMauro Carvalho Chehab msec of time at <state>. 238*80da1b50SMauro Carvalho Chehab 239*80da1b50SMauro Carvalho Chehab Output will have one line for each of the supported states. 240*80da1b50SMauro Carvalho Chehab 241*80da1b50SMauro Carvalho Chehab RO, Required 242*80da1b50SMauro Carvalho Chehab 243*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/cooling_deviceX/stats/total_trans 244*80da1b50SMauro Carvalho ChehabDescription: 245*80da1b50SMauro Carvalho Chehab A single positive value showing the total number of times 246*80da1b50SMauro Carvalho Chehab the state of a cooling device is changed. 247*80da1b50SMauro Carvalho Chehab 248*80da1b50SMauro Carvalho Chehab RO, Required 249*80da1b50SMauro Carvalho Chehab 250*80da1b50SMauro Carvalho ChehabWhat: /sys/class/thermal/cooling_deviceX/stats/trans_table 251*80da1b50SMauro Carvalho ChehabDescription: 252*80da1b50SMauro Carvalho Chehab This gives fine grained information about all the cooling state 253*80da1b50SMauro Carvalho Chehab transitions. The cat output here is a two dimensional matrix, 254*80da1b50SMauro Carvalho Chehab where an entry <i,j> (row i, column j) represents the number 255*80da1b50SMauro Carvalho Chehab of transitions from State_i to State_j. If the transition 256*80da1b50SMauro Carvalho Chehab table is bigger than PAGE_SIZE, reading this will return 257*80da1b50SMauro Carvalho Chehab an -EFBIG error. 258*80da1b50SMauro Carvalho Chehab 259*80da1b50SMauro Carvalho Chehab RO, Required 260