| /kernel/linux/linux-6.6/Documentation/driver-api/thermal/ |
| D | sysfs-api.rst | 2 Generic Thermal Sysfs driver How To 15 The generic thermal sysfs provides a set of interfaces for thermal zone 16 devices (sensors) and thermal cooling devices (fan, processor...) to register 17 with the thermal management solution and to be a part of it. 19 This how-to focuses on enabling new thermal zone and cooling devices to 20 participate in thermal management. 21 This solution is platform independent and any type of thermal zone devices 24 The main task of the thermal sysfs driver is to expose thermal zone attributes 26 An intelligent thermal management application can make decisions based on 27 inputs from thermal zone attributes (the current temperature and trip point [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/thermal/ |
| D | sysfs-api.rst | 2 Generic Thermal Sysfs driver How To 15 The generic thermal sysfs provides a set of interfaces for thermal zone 16 devices (sensors) and thermal cooling devices (fan, processor...) to register 17 with the thermal management solution and to be a part of it. 19 This how-to focuses on enabling new thermal zone and cooling devices to 20 participate in thermal management. 21 This solution is platform independent and any type of thermal zone devices 24 The main task of the thermal sysfs driver is to expose thermal zone attributes 26 An intelligent thermal management application can make decisions based on 27 inputs from thermal zone attributes (the current temperature and trip point [all …]
|
| /kernel/linux/linux-6.6/Documentation/ABI/testing/ |
| D | sysfs-class-thermal | 1 What: /sys/class/thermal/thermal_zoneX/type 3 Strings which represent the thermal zone type. 4 This is given by thermal zone driver as part of registration. 5 E.g: "acpitz" indicates it's an ACPI thermal device. 12 What: /sys/class/thermal/thermal_zoneX/temp 14 Current temperature as reported by thermal zone (sensor). 20 What: /sys/class/thermal/thermal_zoneX/mode 24 currently managing the thermal zone. It can be either default 28 enable Kernel Thermal management. 30 Preventing kernel thermal zone driver actions upon [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/thermal/ |
| D | thermal-zones.yaml | 1 # SPDX-License-Identifier: (GPL-2.0) 4 --- 5 $id: http://devicetree.org/schemas/thermal/thermal-zones.yaml# 6 $schema: http://devicetree.org/meta-schemas/base.yaml# 8 title: Thermal zone 11 - Amit Kucheria <amitk@kernel.org> 14 Thermal management is achieved in devicetree by describing the sensor hardware 15 and the software abstraction of cooling devices and thermal zones required to 16 take appropriate action to mitigate thermal overloads. 18 The following node types are used to completely describe a thermal management [all …]
|
| D | rcar-thermal.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 4 --- 5 $id: http://devicetree.org/schemas/thermal/rcar-thermal.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Renesas R-Car Thermal 11 - Niklas Söderlund <niklas.soderlund@ragnatech.se> 16 - items: 17 - enum: 18 - renesas,thermal-r8a73a4 # R-Mobile APE6 19 - renesas,thermal-r8a7779 # R-Car H1 [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/thermal/ |
| D | thermal-zones.yaml | 1 # SPDX-License-Identifier: (GPL-2.0) 4 --- 5 $id: http://devicetree.org/schemas/thermal/thermal-zones.yaml# 6 $schema: http://devicetree.org/meta-schemas/base.yaml# 8 title: Thermal zone binding 11 - Amit Kucheria <amitk@kernel.org> 14 Thermal management is achieved in devicetree by describing the sensor hardware 15 and the software abstraction of cooling devices and thermal zones required to 16 take appropriate action to mitigate thermal overloads. 18 The following node types are used to completely describe a thermal management [all …]
|
| D | rcar-thermal.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 4 --- 5 $id: http://devicetree.org/schemas/thermal/rcar-thermal.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Renesas R-Car Thermal 11 - Niklas Söderlund <niklas.soderlund@ragnatech.se> 16 - items: 17 - enum: 18 - renesas,thermal-r8a73a4 # R-Mobile APE6 19 - renesas,thermal-r8a7779 # R-Car H1 [all …]
|
| /kernel/linux/linux-5.10/drivers/thermal/ |
| D | da9062-thermal.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Thermal device driver for DA9062 and DA9061 7 /* When over-temperature is reached, an interrupt from the device will be 11 * implementation of the thermal driver will include a .notify() function 14 * These uevents are intended to indicate non-invasive temperature control 17 * the IRQ is re-enabled so the start of a new over-temperature event can 27 #include <linux/thermal.h> 51 struct thermal_zone_device *zone; member 61 struct da9062_thermal *thermal = container_of(work, in da9062_thermal_poll_on() local 69 ret = regmap_write(thermal->hw->regmap, in da9062_thermal_poll_on() [all …]
|
| D | thermal_of.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * of-thermal.c - Generic Thermal Management device tree support. 16 #include <linux/thermal.h> 22 /*** Private data structures to represent thermal device tree data ***/ 25 * struct __thermal_cooling_bind_param - a cooling device for a trip point 38 * struct __thermal_bind_param - a match between trip and cooling device 53 * struct __thermal_zone - internal representation of a thermal zone 55 * @polling_delay: zone polling interval 59 * @trips: an array of trip points (0..ntrips - 1) 60 * @num_tbps: number of thermal bind params [all …]
|
| D | thermal_core.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * thermal.c - Generic Thermal Management Sysfs support. 18 #include <linux/thermal.h> 25 #include <trace/events/thermal.h> 47 * Governor section: set of functions to handle thermal governors 49 * Functions to help in the life cycle of thermal governors within 50 * the thermal core and by the thermal governor code. 61 if (!strncasecmp(name, pos->name, THERMAL_NAME_LENGTH)) in __find_governor() 68 * bind_previous_governor() - bind the previous governor of the thermal zone 72 * Register the previous governor of the thermal zone after a new [all …]
|
| /kernel/linux/linux-6.6/drivers/thermal/ |
| D | da9062-thermal.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Thermal device driver for DA9062 and DA9061 7 /* When over-temperature is reached, an interrupt from the device will be 11 * implementation of the thermal driver will include a .notify() function 14 * These uevents are intended to indicate non-invasive temperature control 17 * the IRQ is re-enabled so the start of a new over-temperature event can 27 #include <linux/thermal.h> 53 struct thermal_zone_device *zone; member 63 struct da9062_thermal *thermal = container_of(work, in da9062_thermal_poll_on() local 71 ret = regmap_write(thermal->hw->regmap, in da9062_thermal_poll_on() [all …]
|
| D | thermal_core.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * thermal.c - Generic Thermal Management Sysfs support. 18 #include <linux/thermal.h> 43 * Governor section: set of functions to handle thermal governors 45 * Functions to help in the life cycle of thermal governors within 46 * the thermal core and by the thermal governor code. 57 if (!strncasecmp(name, pos->name, THERMAL_NAME_LENGTH)) in __find_governor() 64 * bind_previous_governor() - bind the previous governor of the thermal zone 68 * Register the previous governor of the thermal zone after a new 74 if (tz->governor && tz->governor->bind_to_tz) { in bind_previous_governor() [all …]
|
| D | thermal_of.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * of-thermal.c - Generic Thermal Management device tree support. 15 #include <linux/thermal.h> 32 return -EINVAL; in of_find_trip_id() 47 i = -ENXIO; in of_find_trip_id() 55 * It maps 'enum thermal_trip_type' found in include/linux/thermal.h 66 * thermal_of_get_trip_type - Get phy mode for given device_node 91 return -ENODEV; in thermal_of_get_trip_type() 105 trip->temperature = prop; in thermal_of_populate_trip() 112 trip->hysteresis = prop; in thermal_of_populate_trip() [all …]
|
| D | thermal_acpi.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Library routines for populating a generic thermal trip point structure 15 * Minimum temperature for full military grade is 218°K (-55°C) and 30 status = acpi_evaluate_integer(adev->handle, obj_name, NULL, &temp); in thermal_acpi_trip_temp() 32 acpi_handle_debug(adev->handle, "%s evaluation failed\n", obj_name); in thermal_acpi_trip_temp() 33 return -ENODATA; in thermal_acpi_trip_temp() 39 acpi_handle_debug(adev->handle, "%s result %llu out of range\n", in thermal_acpi_trip_temp() 48 * thermal_acpi_active_trip_temp - Retrieve active trip point temperature 49 * @adev: Target thermal zone ACPI device object. 50 * @id: Active cooling level (0 - 9). [all …]
|
| D | thermal_helpers.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * thermal_helpers.c - helper functions to handle thermal devices 27 struct thermal_trip *trip = tz->trips ? &tz->trips[trip_index] : NULL; in get_tz_trend() 30 if (tz->emul_temperature || !tz->ops->get_trend || in get_tz_trend() 31 tz->ops->get_trend(tz, trip, &trend)) { in get_tz_trend() 32 if (tz->temperature > tz->last_temperature) in get_tz_trend() 34 else if (tz->temperature < tz->last_temperature) in get_tz_trend() 51 mutex_lock(&tz->lock); in get_thermal_instance() 52 mutex_lock(&cdev->lock); in get_thermal_instance() 54 trip = &tz->trips[trip_index]; in get_thermal_instance() [all …]
|
| D | gov_power_allocator.c | 1 // SPDX-License-Identifier: GPL-2.0 12 #include <linux/thermal.h> 19 #define INVALID_TRIP -1 26 * mul_frac() - multiply two fixed-point numbers 30 * Return: the result of multiplying two fixed-point numbers. The 31 * result is also a fixed-point number. 39 * div_frac() - divide two fixed-point numbers 43 * Return: the result of dividing two fixed-point numbers. The 44 * result is also a fixed-point number. 52 * struct power_allocator_params - parameters for the power allocator governor [all …]
|
| /kernel/linux/linux-5.10/include/uapi/linux/ |
| D | thermal.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 20 #define THERMAL_GENL_FAMILY_NAME "thermal" 50 #define THERMAL_GENL_ATTR_MAX (__THERMAL_GENL_ATTR_MAX - 1) 56 #define THERMAL_GENL_SAMPLING_MAX (__THERMAL_GENL_SAMPLING_MAX - 1) 61 THERMAL_GENL_EVENT_TZ_CREATE, /* Thermal zone creation */ 62 THERMAL_GENL_EVENT_TZ_DELETE, /* Thermal zone deletion */ 63 THERMAL_GENL_EVENT_TZ_DISABLE, /* Thermal zone disabed */ 64 THERMAL_GENL_EVENT_TZ_ENABLE, /* Thermal zone enabled */ 70 THERMAL_GENL_EVENT_CDEV_ADD, /* Cdev bound to the thermal zone */ 76 #define THERMAL_GENL_EVENT_MAX (__THERMAL_GENL_EVENT_MAX - 1) [all …]
|
| /kernel/linux/linux-6.6/include/uapi/linux/ |
| D | thermal.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 20 #define THERMAL_GENL_FAMILY_NAME "thermal" 53 #define THERMAL_GENL_ATTR_MAX (__THERMAL_GENL_ATTR_MAX - 1) 59 #define THERMAL_GENL_SAMPLING_MAX (__THERMAL_GENL_SAMPLING_MAX - 1) 64 THERMAL_GENL_EVENT_TZ_CREATE, /* Thermal zone creation */ 65 THERMAL_GENL_EVENT_TZ_DELETE, /* Thermal zone deletion */ 66 THERMAL_GENL_EVENT_TZ_DISABLE, /* Thermal zone disabled */ 67 THERMAL_GENL_EVENT_TZ_ENABLE, /* Thermal zone enabled */ 73 THERMAL_GENL_EVENT_CDEV_ADD, /* Cdev bound to the thermal zone */ 80 #define THERMAL_GENL_EVENT_MAX (__THERMAL_GENL_EVENT_MAX - 1) [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | thermal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * thermal.h ($Revision: 0 $) 18 #include <uapi/linux/thermal.h> 20 #define THERMAL_TRIPS_NONE -1 24 #define THERMAL_CSTATE_INVALID -1UL 33 #define THERMAL_TEMP_INVALID -274000 48 /* Thermal notification reason */ 54 THERMAL_DEVICE_DOWN, /* Thermal device is down */ 55 THERMAL_DEVICE_UP, /* Thermal device is up after a down event */ 57 THERMAL_TABLE_CHANGED, /* Thermal table(s) changed */ [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | thermal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * thermal.h ($Revision: 0 $) 18 #include <uapi/linux/thermal.h> 21 #define THERMAL_CSTATE_INVALID -1UL 30 #define THERMAL_TEMP_INVALID -274000 43 /* Thermal notification reason */ 49 THERMAL_DEVICE_DOWN, /* Thermal device is down */ 50 THERMAL_DEVICE_UP, /* Thermal device is up after a down event */ 52 THERMAL_TABLE_CHANGED, /* Thermal table(s) changed */ 57 * struct thermal_trip - representation of a point in temperature domain [all …]
|
| /kernel/linux/linux-6.6/tools/thermal/tmon/ |
| D | tmon.8 | 2 # SPDX-License-Identifier: GPL-2.0 4 \fBtmon\fP - A monitoring and testing tool for Linux kernel thermal subsystem 12 \fBtmon \fP can be used to visualize thermal relationship and 13 real-time thermal data; tune 14 and test cooling devices and sensors; collect thermal data for offline 21 1. Thermal relationships: 22 - show thermal zone information 23 - show cooling device information 24 - show trip point binding within each thermal zone 25 - show trip point and cooling device instance bindings [all …]
|
| /kernel/linux/linux-5.10/tools/thermal/tmon/ |
| D | tmon.8 | 2 # SPDX-License-Identifier: GPL-2.0 4 \fBtmon\fP - A monitoring and testing tool for Linux kernel thermal subsystem 12 \fBtmon \fP can be used to visualize thermal relationship and 13 real-time thermal data; tune 14 and test cooling devices and sensors; collect thermal data for offline 21 1. Thermal relationships: 22 - show thermal zone information 23 - show cooling device information 24 - show trip point binding within each thermal zone 25 - show trip point and cooling device instance bindings [all …]
|
| /kernel/linux/linux-5.10/drivers/thermal/intel/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 8 enforce idle time which results in more package C-state residency. The 9 user interface is exposed via generic thermal framework. 12 tristate "X86 package temperature thermal driver" 19 thermal zone. Each package will have its own thermal zone. There are 20 two trip points which can be set by user to get notifications via thermal 34 tristate "Intel SoCs DTS thermal driver" 42 thermal zone. There are two trip points. One of the trip point can 43 be set by user mode programs to get notifications via Linux thermal 48 tristate "Intel Quark DTS thermal driver" [all …]
|
| /kernel/linux/linux-6.6/drivers/thermal/intel/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 11 enforce idle time which results in more package C-state residency. The 12 user interface is exposed via generic thermal framework. 23 tristate "X86 package temperature thermal driver" 31 thermal zone. Each package will have its own thermal zone. There are 32 two trip points which can be set by user to get notifications via thermal 47 tristate "Intel SoCs DTS thermal driver" 55 thermal zone. There are two trip points. One of the trip point can 56 be set by user mode programs to get notifications via Linux thermal 61 tristate "Intel Quark DTS thermal driver" [all …]
|
| /kernel/linux/linux-6.6/tools/thermal/thermometer/ |
| D | thermometer.8 | 2 # SPDX-License-Identifier: GPL-2.0 4 \fBthermometer\fP - A thermal profiling tool 13 \fBthermometer \fP captures the thermal zones temperature at a 21 If no configuration file is specified, then all the thermal zones will 23 the thermal zone names and the desired sampling period. A thermal zone 24 name can be a regular expression to specify a group of thermal zone. 26 The sampling of the different thermal zones will be written into 27 separate files with the thermal zone name. It is possible to specify a 31 Without any parameters, \fBthermometer \fP captures all the thermal 32 zone temperatures every 250ms and write to the current directory the [all …]
|