Back to home page

OSCL-LXR

 
 

    


0001 ===================================
0002 Kernel driver: x86_pkg_temp_thermal
0003 ===================================
0004 
0005 Supported chips:
0006 
0007 * x86: with package level thermal management
0008 
0009 (Verify using: CPUID.06H:EAX[bit 6] =1)
0010 
0011 Authors: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
0012 
0013 Reference
0014 ---------
0015 
0016 Intel® 64 and IA-32 Architectures Software Developer’s Manual (Jan, 2013):
0017 Chapter 14.6: PACKAGE LEVEL THERMAL MANAGEMENT
0018 
0019 Description
0020 -----------
0021 
0022 This driver register CPU digital temperature package level sensor as a thermal
0023 zone with maximum two user mode configurable trip points. Number of trip points
0024 depends on the capability of the package. Once the trip point is violated,
0025 user mode can receive notification via thermal notification mechanism and can
0026 take any action to control temperature.
0027 
0028 
0029 Threshold management
0030 --------------------
0031 Each package will register as a thermal zone under /sys/class/thermal.
0032 
0033 Example::
0034 
0035         /sys/class/thermal/thermal_zone1
0036 
0037 This contains two trip points:
0038 
0039 - trip_point_0_temp
0040 - trip_point_1_temp
0041 
0042 User can set any temperature between 0 to TJ-Max temperature. Temperature units
0043 are in milli-degree Celsius. Refer to "Documentation/driver-api/thermal/sysfs-api.rst" for
0044 thermal sys-fs details.
0045 
0046 Any value other than 0 in these trip points, can trigger thermal notifications.
0047 Setting 0, stops sending thermal notifications.
0048 
0049 Thermal notifications:
0050 To get kobject-uevent notifications, set the thermal zone
0051 policy to "user_space".
0052 
0053 For example::
0054 
0055         echo -n "user_space" > policy