blob: 7613530d04d53187963f0e1e1bb762c8aec277f6 [file] [log] [blame]
Patrick Ventured8012182018-03-08 08:21:38 -08001ThermalControllers and FanControllers are derived objects from a common PID
2Controller object. The design implemented in this structure is a facsimile of
3what was published in the Chrome OS source.
4
5One has any number of ThermalControllers that run through a PID step to
Patrick Venture7280e272019-02-11 10:45:32 -08006generate a setpoint RPM to reach its thermal setpoint. The maximum output
Patrick Ventured8012182018-03-08 08:21:38 -08007from the set of ThermalControllers is taken as the input to all the
8FanController PID loops.
9
10Each group of these controllers is managed within a zone. A PIDZone object
11helps manage them by providing a sensor value cache and overall execution.