Merge tag 'block-5.11-2021-01-16' of git://git.kernel.dk/linux-block
[linux/fpc-iii.git] / tools / thermal / tmon / README
blob457949897a8efe3f51200a1862918b2fcb14d29b
1 TMON - A Monitoring and Testing Tool for Linux kernel thermal subsystem
3 Why TMON?
4 ==========
5 Increasingly, Linux is running on thermally constrained devices. The simple
6 thermal relationship between processor and fan has become past for modern
7 computers.
9 As hardware vendors cope with the thermal constraints on their products, more
10 and more sensors are added, new cooling capabilities are introduced. The
11 complexity of the thermal relationship can grow exponentially among cooling
12 devices, zones, sensors, and trip points. They can also change dynamically.
14 To expose such relationship to the userspace, Linux generic thermal layer
15 introduced sysfs entry at /sys/class/thermal with a matrix of symbolic
16 links, trip point bindings, and device instances. To traverse such
17 matrix by hand is not a trivial task. Testing is also difficult in that
18 thermal conditions are often exception cases that hard to reach in
19 normal operations.
21 TMON is conceived as a tool to help visualize, tune, and test the
22 complex thermal subsystem.
24 Files
25 =====
26         tmon.c : main function for set up and configurations.
27         tui.c : handles ncurses based user interface
28         sysfs.c : access to the generic thermal sysfs
29         pid.c : a proportional-integral-derivative (PID) controller
30         that can be used for thermal relationship training.
32 Requirements
33 ============
34 Depends on ncurses
36 Build
37 =========
38 $ make
39 $ sudo ./tmon -h
40 Usage: tmon [OPTION...]
41   -c, --control         cooling device in control
42   -d, --daemon          run as daemon, no TUI
43   -l, --log             log data to /var/tmp/tmon.log
44   -h, --help            show this help message
45   -t, --time-interval   set time interval for sampling
46   -v, --version         show version
47   -g, --debug           debug message in syslog
49 1. For monitoring only:
50 $ sudo ./tmon