1=================================== 2Kernel driver: x86_pkg_temp_thermal 3=================================== 4 5Supported chips: 6 7* x86: with package level thermal management 8 9(Verify using: CPUID.06H:EAX[bit 6] =1) 10 11Authors: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> 12 13Reference 14--------- 15 16Intel® 64 and IA-32 Architectures Software Developer’s Manual (Jan, 2013): 17Chapter 14.6: PACKAGE LEVEL THERMAL MANAGEMENT 18 19Description 20----------- 21 22This driver register CPU digital temperature package level sensor as a thermal 23zone with maximum two user mode configurable trip points. Number of trip points 24depends on the capability of the package. Once the trip point is violated, 25user mode can receive notification via thermal notification mechanism and can 26take any action to control temperature. 27 28 29Threshold management 30-------------------- 31Each package will register as a thermal zone under /sys/class/thermal. 32 33Example:: 34 35 /sys/class/thermal/thermal_zone1 36 37This contains two trip points: 38 39- trip_point_0_temp 40- trip_point_1_temp 41 42User can set any temperature between 0 to TJ-Max temperature. Temperature units 43are in milli-degree Celsius. Refer to "Documentation/driver-api/thermal/sysfs-api.rst" for 44thermal sys-fs details. 45 46Any value other than 0 in these trip points, can trigger thermal notifications. 47Setting 0, stops sending thermal notifications. 48 49Thermal notifications: 50To get kobject-uevent notifications, set the thermal zone 51policy to "user_space". 52 53For example:: 54 55 echo -n "user_space" > policy 56