56 lines · plain
1===================================2Kernel driver: x86_pkg_temp_thermal3===================================4 5Supported chips:6 7* x86: with package level thermal management8 9(Verify using: CPUID.06H:EAX[bit 6] =1)10 11Authors: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>12 13Reference14---------15 16Intel® 64 and IA-32 Architectures Software Developer’s Manual (Jan, 2013):17Chapter 14.6: PACKAGE LEVEL THERMAL MANAGEMENT18 19Description20-----------21 22This driver register CPU digital temperature package level sensor as a thermal23zone with maximum two user mode configurable trip points. Number of trip points24depends on the capability of the package. Once the trip point is violated,25user mode can receive notification via thermal notification mechanism and can26take any action to control temperature.27 28 29Threshold management30--------------------31Each package will register as a thermal zone under /sys/class/thermal.32 33Example::34 35 /sys/class/thermal/thermal_zone136 37This contains two trip points:38 39- trip_point_0_temp40- trip_point_1_temp41 42User can set any temperature between 0 to TJ-Max temperature. Temperature units43are in milli-degree Celsius. Refer to "Documentation/driver-api/thermal/sysfs-api.rst" for44thermal 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 zone51policy to "user_space".52 53For example::54 55 echo -n "user_space" > policy56